gtk4_sys/
lib.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from gir-files (https://github.com/gtk-rs/gir-files)
3// DO NOT EDIT
4
5#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
6#![allow(
7    clippy::approx_constant,
8    clippy::type_complexity,
9    clippy::unreadable_literal,
10    clippy::upper_case_acronyms
11)]
12#![cfg_attr(docsrs, feature(doc_cfg))]
13
14use cairo_sys as cairo;
15use gdk4_sys as gdk;
16use gdk_pixbuf_sys as gdk_pixbuf;
17use gio_sys as gio;
18use glib_sys as glib;
19use gobject_sys as gobject;
20use graphene_sys as graphene;
21use gsk4_sys as gsk;
22use pango_sys as pango;
23
24#[cfg(unix)]
25#[allow(unused_imports)]
26use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
27#[allow(unused_imports)]
28use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
29#[allow(unused_imports)]
30use std::ffi::{
31    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
32};
33
34#[allow(unused_imports)]
35use glib::{gboolean, gconstpointer, gpointer, GType};
36
37pub const GTK_ENTRY_BUFFER_MAX_SIZE: u16 = u16::MAX;
38
39// Aliases
40pub type GtkAllocation = gdk::GdkRectangle;
41
42// Enums
43pub type GtkAccessibleAnnouncementPriority = c_int;
44pub const GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_LOW: GtkAccessibleAnnouncementPriority = 0;
45pub const GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_MEDIUM: GtkAccessibleAnnouncementPriority = 1;
46pub const GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_HIGH: GtkAccessibleAnnouncementPriority = 2;
47
48pub type GtkAccessibleAutocomplete = c_int;
49pub const GTK_ACCESSIBLE_AUTOCOMPLETE_NONE: GtkAccessibleAutocomplete = 0;
50pub const GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE: GtkAccessibleAutocomplete = 1;
51pub const GTK_ACCESSIBLE_AUTOCOMPLETE_LIST: GtkAccessibleAutocomplete = 2;
52pub const GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH: GtkAccessibleAutocomplete = 3;
53
54pub type GtkAccessibleInvalidState = c_int;
55pub const GTK_ACCESSIBLE_INVALID_FALSE: GtkAccessibleInvalidState = 0;
56pub const GTK_ACCESSIBLE_INVALID_TRUE: GtkAccessibleInvalidState = 1;
57pub const GTK_ACCESSIBLE_INVALID_GRAMMAR: GtkAccessibleInvalidState = 2;
58pub const GTK_ACCESSIBLE_INVALID_SPELLING: GtkAccessibleInvalidState = 3;
59
60pub type GtkAccessiblePlatformState = c_int;
61pub const GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSABLE: GtkAccessiblePlatformState = 0;
62pub const GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSED: GtkAccessiblePlatformState = 1;
63pub const GTK_ACCESSIBLE_PLATFORM_STATE_ACTIVE: GtkAccessiblePlatformState = 2;
64
65pub type GtkAccessibleProperty = c_int;
66pub const GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE: GtkAccessibleProperty = 0;
67pub const GTK_ACCESSIBLE_PROPERTY_DESCRIPTION: GtkAccessibleProperty = 1;
68pub const GTK_ACCESSIBLE_PROPERTY_HAS_POPUP: GtkAccessibleProperty = 2;
69pub const GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS: GtkAccessibleProperty = 3;
70pub const GTK_ACCESSIBLE_PROPERTY_LABEL: GtkAccessibleProperty = 4;
71pub const GTK_ACCESSIBLE_PROPERTY_LEVEL: GtkAccessibleProperty = 5;
72pub const GTK_ACCESSIBLE_PROPERTY_MODAL: GtkAccessibleProperty = 6;
73pub const GTK_ACCESSIBLE_PROPERTY_MULTI_LINE: GtkAccessibleProperty = 7;
74pub const GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE: GtkAccessibleProperty = 8;
75pub const GTK_ACCESSIBLE_PROPERTY_ORIENTATION: GtkAccessibleProperty = 9;
76pub const GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER: GtkAccessibleProperty = 10;
77pub const GTK_ACCESSIBLE_PROPERTY_READ_ONLY: GtkAccessibleProperty = 11;
78pub const GTK_ACCESSIBLE_PROPERTY_REQUIRED: GtkAccessibleProperty = 12;
79pub const GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION: GtkAccessibleProperty = 13;
80pub const GTK_ACCESSIBLE_PROPERTY_SORT: GtkAccessibleProperty = 14;
81pub const GTK_ACCESSIBLE_PROPERTY_VALUE_MAX: GtkAccessibleProperty = 15;
82pub const GTK_ACCESSIBLE_PROPERTY_VALUE_MIN: GtkAccessibleProperty = 16;
83pub const GTK_ACCESSIBLE_PROPERTY_VALUE_NOW: GtkAccessibleProperty = 17;
84pub const GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT: GtkAccessibleProperty = 18;
85#[cfg(feature = "v4_16")]
86#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
87pub const GTK_ACCESSIBLE_PROPERTY_HELP_TEXT: GtkAccessibleProperty = 19;
88
89pub type GtkAccessibleRelation = c_int;
90pub const GTK_ACCESSIBLE_RELATION_ACTIVE_DESCENDANT: GtkAccessibleRelation = 0;
91pub const GTK_ACCESSIBLE_RELATION_COL_COUNT: GtkAccessibleRelation = 1;
92pub const GTK_ACCESSIBLE_RELATION_COL_INDEX: GtkAccessibleRelation = 2;
93pub const GTK_ACCESSIBLE_RELATION_COL_INDEX_TEXT: GtkAccessibleRelation = 3;
94pub const GTK_ACCESSIBLE_RELATION_COL_SPAN: GtkAccessibleRelation = 4;
95pub const GTK_ACCESSIBLE_RELATION_CONTROLS: GtkAccessibleRelation = 5;
96pub const GTK_ACCESSIBLE_RELATION_DESCRIBED_BY: GtkAccessibleRelation = 6;
97pub const GTK_ACCESSIBLE_RELATION_DETAILS: GtkAccessibleRelation = 7;
98pub const GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE: GtkAccessibleRelation = 8;
99pub const GTK_ACCESSIBLE_RELATION_FLOW_TO: GtkAccessibleRelation = 9;
100pub const GTK_ACCESSIBLE_RELATION_LABELLED_BY: GtkAccessibleRelation = 10;
101pub const GTK_ACCESSIBLE_RELATION_OWNS: GtkAccessibleRelation = 11;
102pub const GTK_ACCESSIBLE_RELATION_POS_IN_SET: GtkAccessibleRelation = 12;
103pub const GTK_ACCESSIBLE_RELATION_ROW_COUNT: GtkAccessibleRelation = 13;
104pub const GTK_ACCESSIBLE_RELATION_ROW_INDEX: GtkAccessibleRelation = 14;
105pub const GTK_ACCESSIBLE_RELATION_ROW_INDEX_TEXT: GtkAccessibleRelation = 15;
106pub const GTK_ACCESSIBLE_RELATION_ROW_SPAN: GtkAccessibleRelation = 16;
107pub const GTK_ACCESSIBLE_RELATION_SET_SIZE: GtkAccessibleRelation = 17;
108#[cfg(feature = "v4_18")]
109#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
110pub const GTK_ACCESSIBLE_RELATION_LABEL_FOR: GtkAccessibleRelation = 18;
111#[cfg(feature = "v4_18")]
112#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
113pub const GTK_ACCESSIBLE_RELATION_DESCRIPTION_FOR: GtkAccessibleRelation = 19;
114#[cfg(feature = "v4_18")]
115#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
116pub const GTK_ACCESSIBLE_RELATION_CONTROLLED_BY: GtkAccessibleRelation = 20;
117#[cfg(feature = "v4_18")]
118#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
119pub const GTK_ACCESSIBLE_RELATION_DETAILS_FOR: GtkAccessibleRelation = 21;
120#[cfg(feature = "v4_18")]
121#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
122pub const GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE_FOR: GtkAccessibleRelation = 22;
123#[cfg(feature = "v4_18")]
124#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
125pub const GTK_ACCESSIBLE_RELATION_FLOW_FROM: GtkAccessibleRelation = 23;
126
127pub type GtkAccessibleRole = c_int;
128pub const GTK_ACCESSIBLE_ROLE_ALERT: GtkAccessibleRole = 0;
129pub const GTK_ACCESSIBLE_ROLE_ALERT_DIALOG: GtkAccessibleRole = 1;
130pub const GTK_ACCESSIBLE_ROLE_BANNER: GtkAccessibleRole = 2;
131pub const GTK_ACCESSIBLE_ROLE_BUTTON: GtkAccessibleRole = 3;
132pub const GTK_ACCESSIBLE_ROLE_CAPTION: GtkAccessibleRole = 4;
133pub const GTK_ACCESSIBLE_ROLE_CELL: GtkAccessibleRole = 5;
134pub const GTK_ACCESSIBLE_ROLE_CHECKBOX: GtkAccessibleRole = 6;
135pub const GTK_ACCESSIBLE_ROLE_COLUMN_HEADER: GtkAccessibleRole = 7;
136pub const GTK_ACCESSIBLE_ROLE_COMBO_BOX: GtkAccessibleRole = 8;
137pub const GTK_ACCESSIBLE_ROLE_COMMAND: GtkAccessibleRole = 9;
138pub const GTK_ACCESSIBLE_ROLE_COMPOSITE: GtkAccessibleRole = 10;
139pub const GTK_ACCESSIBLE_ROLE_DIALOG: GtkAccessibleRole = 11;
140pub const GTK_ACCESSIBLE_ROLE_DOCUMENT: GtkAccessibleRole = 12;
141pub const GTK_ACCESSIBLE_ROLE_FEED: GtkAccessibleRole = 13;
142pub const GTK_ACCESSIBLE_ROLE_FORM: GtkAccessibleRole = 14;
143pub const GTK_ACCESSIBLE_ROLE_GENERIC: GtkAccessibleRole = 15;
144pub const GTK_ACCESSIBLE_ROLE_GRID: GtkAccessibleRole = 16;
145pub const GTK_ACCESSIBLE_ROLE_GRID_CELL: GtkAccessibleRole = 17;
146pub const GTK_ACCESSIBLE_ROLE_GROUP: GtkAccessibleRole = 18;
147pub const GTK_ACCESSIBLE_ROLE_HEADING: GtkAccessibleRole = 19;
148pub const GTK_ACCESSIBLE_ROLE_IMG: GtkAccessibleRole = 20;
149pub const GTK_ACCESSIBLE_ROLE_INPUT: GtkAccessibleRole = 21;
150pub const GTK_ACCESSIBLE_ROLE_LABEL: GtkAccessibleRole = 22;
151pub const GTK_ACCESSIBLE_ROLE_LANDMARK: GtkAccessibleRole = 23;
152pub const GTK_ACCESSIBLE_ROLE_LEGEND: GtkAccessibleRole = 24;
153pub const GTK_ACCESSIBLE_ROLE_LINK: GtkAccessibleRole = 25;
154pub const GTK_ACCESSIBLE_ROLE_LIST: GtkAccessibleRole = 26;
155pub const GTK_ACCESSIBLE_ROLE_LIST_BOX: GtkAccessibleRole = 27;
156pub const GTK_ACCESSIBLE_ROLE_LIST_ITEM: GtkAccessibleRole = 28;
157pub const GTK_ACCESSIBLE_ROLE_LOG: GtkAccessibleRole = 29;
158pub const GTK_ACCESSIBLE_ROLE_MAIN: GtkAccessibleRole = 30;
159pub const GTK_ACCESSIBLE_ROLE_MARQUEE: GtkAccessibleRole = 31;
160pub const GTK_ACCESSIBLE_ROLE_MATH: GtkAccessibleRole = 32;
161pub const GTK_ACCESSIBLE_ROLE_METER: GtkAccessibleRole = 33;
162pub const GTK_ACCESSIBLE_ROLE_MENU: GtkAccessibleRole = 34;
163pub const GTK_ACCESSIBLE_ROLE_MENU_BAR: GtkAccessibleRole = 35;
164pub const GTK_ACCESSIBLE_ROLE_MENU_ITEM: GtkAccessibleRole = 36;
165pub const GTK_ACCESSIBLE_ROLE_MENU_ITEM_CHECKBOX: GtkAccessibleRole = 37;
166pub const GTK_ACCESSIBLE_ROLE_MENU_ITEM_RADIO: GtkAccessibleRole = 38;
167pub const GTK_ACCESSIBLE_ROLE_NAVIGATION: GtkAccessibleRole = 39;
168pub const GTK_ACCESSIBLE_ROLE_NONE: GtkAccessibleRole = 40;
169pub const GTK_ACCESSIBLE_ROLE_NOTE: GtkAccessibleRole = 41;
170pub const GTK_ACCESSIBLE_ROLE_OPTION: GtkAccessibleRole = 42;
171pub const GTK_ACCESSIBLE_ROLE_PRESENTATION: GtkAccessibleRole = 43;
172pub const GTK_ACCESSIBLE_ROLE_PROGRESS_BAR: GtkAccessibleRole = 44;
173pub const GTK_ACCESSIBLE_ROLE_RADIO: GtkAccessibleRole = 45;
174pub const GTK_ACCESSIBLE_ROLE_RADIO_GROUP: GtkAccessibleRole = 46;
175pub const GTK_ACCESSIBLE_ROLE_RANGE: GtkAccessibleRole = 47;
176pub const GTK_ACCESSIBLE_ROLE_REGION: GtkAccessibleRole = 48;
177pub const GTK_ACCESSIBLE_ROLE_ROW: GtkAccessibleRole = 49;
178pub const GTK_ACCESSIBLE_ROLE_ROW_GROUP: GtkAccessibleRole = 50;
179pub const GTK_ACCESSIBLE_ROLE_ROW_HEADER: GtkAccessibleRole = 51;
180pub const GTK_ACCESSIBLE_ROLE_SCROLLBAR: GtkAccessibleRole = 52;
181pub const GTK_ACCESSIBLE_ROLE_SEARCH: GtkAccessibleRole = 53;
182pub const GTK_ACCESSIBLE_ROLE_SEARCH_BOX: GtkAccessibleRole = 54;
183pub const GTK_ACCESSIBLE_ROLE_SECTION: GtkAccessibleRole = 55;
184pub const GTK_ACCESSIBLE_ROLE_SECTION_HEAD: GtkAccessibleRole = 56;
185pub const GTK_ACCESSIBLE_ROLE_SELECT: GtkAccessibleRole = 57;
186pub const GTK_ACCESSIBLE_ROLE_SEPARATOR: GtkAccessibleRole = 58;
187pub const GTK_ACCESSIBLE_ROLE_SLIDER: GtkAccessibleRole = 59;
188pub const GTK_ACCESSIBLE_ROLE_SPIN_BUTTON: GtkAccessibleRole = 60;
189pub const GTK_ACCESSIBLE_ROLE_STATUS: GtkAccessibleRole = 61;
190pub const GTK_ACCESSIBLE_ROLE_STRUCTURE: GtkAccessibleRole = 62;
191pub const GTK_ACCESSIBLE_ROLE_SWITCH: GtkAccessibleRole = 63;
192pub const GTK_ACCESSIBLE_ROLE_TAB: GtkAccessibleRole = 64;
193pub const GTK_ACCESSIBLE_ROLE_TABLE: GtkAccessibleRole = 65;
194pub const GTK_ACCESSIBLE_ROLE_TAB_LIST: GtkAccessibleRole = 66;
195pub const GTK_ACCESSIBLE_ROLE_TAB_PANEL: GtkAccessibleRole = 67;
196pub const GTK_ACCESSIBLE_ROLE_TEXT_BOX: GtkAccessibleRole = 68;
197pub const GTK_ACCESSIBLE_ROLE_TIME: GtkAccessibleRole = 69;
198pub const GTK_ACCESSIBLE_ROLE_TIMER: GtkAccessibleRole = 70;
199pub const GTK_ACCESSIBLE_ROLE_TOOLBAR: GtkAccessibleRole = 71;
200pub const GTK_ACCESSIBLE_ROLE_TOOLTIP: GtkAccessibleRole = 72;
201pub const GTK_ACCESSIBLE_ROLE_TREE: GtkAccessibleRole = 73;
202pub const GTK_ACCESSIBLE_ROLE_TREE_GRID: GtkAccessibleRole = 74;
203pub const GTK_ACCESSIBLE_ROLE_TREE_ITEM: GtkAccessibleRole = 75;
204pub const GTK_ACCESSIBLE_ROLE_WIDGET: GtkAccessibleRole = 76;
205pub const GTK_ACCESSIBLE_ROLE_WINDOW: GtkAccessibleRole = 77;
206#[cfg(feature = "v4_10")]
207#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
208pub const GTK_ACCESSIBLE_ROLE_TOGGLE_BUTTON: GtkAccessibleRole = 78;
209#[cfg(feature = "v4_12")]
210#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
211pub const GTK_ACCESSIBLE_ROLE_APPLICATION: GtkAccessibleRole = 79;
212#[cfg(feature = "v4_14")]
213#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
214pub const GTK_ACCESSIBLE_ROLE_PARAGRAPH: GtkAccessibleRole = 80;
215#[cfg(feature = "v4_14")]
216#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
217pub const GTK_ACCESSIBLE_ROLE_BLOCK_QUOTE: GtkAccessibleRole = 81;
218#[cfg(feature = "v4_14")]
219#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
220pub const GTK_ACCESSIBLE_ROLE_ARTICLE: GtkAccessibleRole = 82;
221#[cfg(feature = "v4_14")]
222#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
223pub const GTK_ACCESSIBLE_ROLE_COMMENT: GtkAccessibleRole = 83;
224#[cfg(feature = "v4_14")]
225#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
226pub const GTK_ACCESSIBLE_ROLE_TERMINAL: GtkAccessibleRole = 84;
227
228pub type GtkAccessibleSort = c_int;
229pub const GTK_ACCESSIBLE_SORT_NONE: GtkAccessibleSort = 0;
230pub const GTK_ACCESSIBLE_SORT_ASCENDING: GtkAccessibleSort = 1;
231pub const GTK_ACCESSIBLE_SORT_DESCENDING: GtkAccessibleSort = 2;
232pub const GTK_ACCESSIBLE_SORT_OTHER: GtkAccessibleSort = 3;
233
234pub type GtkAccessibleState = c_int;
235pub const GTK_ACCESSIBLE_STATE_BUSY: GtkAccessibleState = 0;
236pub const GTK_ACCESSIBLE_STATE_CHECKED: GtkAccessibleState = 1;
237pub const GTK_ACCESSIBLE_STATE_DISABLED: GtkAccessibleState = 2;
238pub const GTK_ACCESSIBLE_STATE_EXPANDED: GtkAccessibleState = 3;
239pub const GTK_ACCESSIBLE_STATE_HIDDEN: GtkAccessibleState = 4;
240pub const GTK_ACCESSIBLE_STATE_INVALID: GtkAccessibleState = 5;
241pub const GTK_ACCESSIBLE_STATE_PRESSED: GtkAccessibleState = 6;
242pub const GTK_ACCESSIBLE_STATE_SELECTED: GtkAccessibleState = 7;
243#[cfg(feature = "v4_12")]
244#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
245pub const GTK_ACCESSIBLE_STATE_VISITED: GtkAccessibleState = 8;
246
247pub type GtkAccessibleTextContentChange = c_int;
248pub const GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_INSERT: GtkAccessibleTextContentChange = 0;
249pub const GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_REMOVE: GtkAccessibleTextContentChange = 1;
250
251pub type GtkAccessibleTextGranularity = c_int;
252pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_CHARACTER: GtkAccessibleTextGranularity = 0;
253pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_WORD: GtkAccessibleTextGranularity = 1;
254pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_SENTENCE: GtkAccessibleTextGranularity = 2;
255pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_LINE: GtkAccessibleTextGranularity = 3;
256pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_PARAGRAPH: GtkAccessibleTextGranularity = 4;
257
258pub type GtkAccessibleTristate = c_int;
259pub const GTK_ACCESSIBLE_TRISTATE_FALSE: GtkAccessibleTristate = 0;
260pub const GTK_ACCESSIBLE_TRISTATE_TRUE: GtkAccessibleTristate = 1;
261pub const GTK_ACCESSIBLE_TRISTATE_MIXED: GtkAccessibleTristate = 2;
262
263pub type GtkAlign = c_int;
264pub const GTK_ALIGN_FILL: GtkAlign = 0;
265pub const GTK_ALIGN_START: GtkAlign = 1;
266pub const GTK_ALIGN_END: GtkAlign = 2;
267pub const GTK_ALIGN_CENTER: GtkAlign = 3;
268#[cfg(feature = "v4_12")]
269#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
270pub const GTK_ALIGN_BASELINE_FILL: GtkAlign = 4;
271pub const GTK_ALIGN_BASELINE: GtkAlign = 4;
272#[cfg(feature = "v4_12")]
273#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
274pub const GTK_ALIGN_BASELINE_CENTER: GtkAlign = 5;
275
276pub type GtkArrowType = c_int;
277pub const GTK_ARROW_UP: GtkArrowType = 0;
278pub const GTK_ARROW_DOWN: GtkArrowType = 1;
279pub const GTK_ARROW_LEFT: GtkArrowType = 2;
280pub const GTK_ARROW_RIGHT: GtkArrowType = 3;
281pub const GTK_ARROW_NONE: GtkArrowType = 4;
282
283pub type GtkAssistantPageType = c_int;
284pub const GTK_ASSISTANT_PAGE_CONTENT: GtkAssistantPageType = 0;
285pub const GTK_ASSISTANT_PAGE_INTRO: GtkAssistantPageType = 1;
286pub const GTK_ASSISTANT_PAGE_CONFIRM: GtkAssistantPageType = 2;
287pub const GTK_ASSISTANT_PAGE_SUMMARY: GtkAssistantPageType = 3;
288pub const GTK_ASSISTANT_PAGE_PROGRESS: GtkAssistantPageType = 4;
289pub const GTK_ASSISTANT_PAGE_CUSTOM: GtkAssistantPageType = 5;
290
291pub type GtkBaselinePosition = c_int;
292pub const GTK_BASELINE_POSITION_TOP: GtkBaselinePosition = 0;
293pub const GTK_BASELINE_POSITION_CENTER: GtkBaselinePosition = 1;
294pub const GTK_BASELINE_POSITION_BOTTOM: GtkBaselinePosition = 2;
295
296pub type GtkBorderStyle = c_int;
297pub const GTK_BORDER_STYLE_NONE: GtkBorderStyle = 0;
298pub const GTK_BORDER_STYLE_HIDDEN: GtkBorderStyle = 1;
299pub const GTK_BORDER_STYLE_SOLID: GtkBorderStyle = 2;
300pub const GTK_BORDER_STYLE_INSET: GtkBorderStyle = 3;
301pub const GTK_BORDER_STYLE_OUTSET: GtkBorderStyle = 4;
302pub const GTK_BORDER_STYLE_DOTTED: GtkBorderStyle = 5;
303pub const GTK_BORDER_STYLE_DASHED: GtkBorderStyle = 6;
304pub const GTK_BORDER_STYLE_DOUBLE: GtkBorderStyle = 7;
305pub const GTK_BORDER_STYLE_GROOVE: GtkBorderStyle = 8;
306pub const GTK_BORDER_STYLE_RIDGE: GtkBorderStyle = 9;
307
308pub type GtkBuilderError = c_int;
309pub const GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION: GtkBuilderError = 0;
310pub const GTK_BUILDER_ERROR_UNHANDLED_TAG: GtkBuilderError = 1;
311pub const GTK_BUILDER_ERROR_MISSING_ATTRIBUTE: GtkBuilderError = 2;
312pub const GTK_BUILDER_ERROR_INVALID_ATTRIBUTE: GtkBuilderError = 3;
313pub const GTK_BUILDER_ERROR_INVALID_TAG: GtkBuilderError = 4;
314pub const GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE: GtkBuilderError = 5;
315pub const GTK_BUILDER_ERROR_INVALID_VALUE: GtkBuilderError = 6;
316pub const GTK_BUILDER_ERROR_VERSION_MISMATCH: GtkBuilderError = 7;
317pub const GTK_BUILDER_ERROR_DUPLICATE_ID: GtkBuilderError = 8;
318pub const GTK_BUILDER_ERROR_OBJECT_TYPE_REFUSED: GtkBuilderError = 9;
319pub const GTK_BUILDER_ERROR_TEMPLATE_MISMATCH: GtkBuilderError = 10;
320pub const GTK_BUILDER_ERROR_INVALID_PROPERTY: GtkBuilderError = 11;
321pub const GTK_BUILDER_ERROR_INVALID_SIGNAL: GtkBuilderError = 12;
322pub const GTK_BUILDER_ERROR_INVALID_ID: GtkBuilderError = 13;
323pub const GTK_BUILDER_ERROR_INVALID_FUNCTION: GtkBuilderError = 14;
324
325pub type GtkButtonsType = c_int;
326pub const GTK_BUTTONS_NONE: GtkButtonsType = 0;
327pub const GTK_BUTTONS_OK: GtkButtonsType = 1;
328pub const GTK_BUTTONS_CLOSE: GtkButtonsType = 2;
329pub const GTK_BUTTONS_CANCEL: GtkButtonsType = 3;
330pub const GTK_BUTTONS_YES_NO: GtkButtonsType = 4;
331pub const GTK_BUTTONS_OK_CANCEL: GtkButtonsType = 5;
332
333pub type GtkCellRendererAccelMode = c_int;
334pub const GTK_CELL_RENDERER_ACCEL_MODE_GTK: GtkCellRendererAccelMode = 0;
335pub const GTK_CELL_RENDERER_ACCEL_MODE_OTHER: GtkCellRendererAccelMode = 1;
336
337pub type GtkCellRendererMode = c_int;
338pub const GTK_CELL_RENDERER_MODE_INERT: GtkCellRendererMode = 0;
339pub const GTK_CELL_RENDERER_MODE_ACTIVATABLE: GtkCellRendererMode = 1;
340pub const GTK_CELL_RENDERER_MODE_EDITABLE: GtkCellRendererMode = 2;
341
342pub type GtkCollation = c_int;
343pub const GTK_COLLATION_NONE: GtkCollation = 0;
344pub const GTK_COLLATION_UNICODE: GtkCollation = 1;
345pub const GTK_COLLATION_FILENAME: GtkCollation = 2;
346
347pub type GtkConstraintAttribute = c_int;
348pub const GTK_CONSTRAINT_ATTRIBUTE_NONE: GtkConstraintAttribute = 0;
349pub const GTK_CONSTRAINT_ATTRIBUTE_LEFT: GtkConstraintAttribute = 1;
350pub const GTK_CONSTRAINT_ATTRIBUTE_RIGHT: GtkConstraintAttribute = 2;
351pub const GTK_CONSTRAINT_ATTRIBUTE_TOP: GtkConstraintAttribute = 3;
352pub const GTK_CONSTRAINT_ATTRIBUTE_BOTTOM: GtkConstraintAttribute = 4;
353pub const GTK_CONSTRAINT_ATTRIBUTE_START: GtkConstraintAttribute = 5;
354pub const GTK_CONSTRAINT_ATTRIBUTE_END: GtkConstraintAttribute = 6;
355pub const GTK_CONSTRAINT_ATTRIBUTE_WIDTH: GtkConstraintAttribute = 7;
356pub const GTK_CONSTRAINT_ATTRIBUTE_HEIGHT: GtkConstraintAttribute = 8;
357pub const GTK_CONSTRAINT_ATTRIBUTE_CENTER_X: GtkConstraintAttribute = 9;
358pub const GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y: GtkConstraintAttribute = 10;
359pub const GTK_CONSTRAINT_ATTRIBUTE_BASELINE: GtkConstraintAttribute = 11;
360
361pub type GtkConstraintRelation = c_int;
362pub const GTK_CONSTRAINT_RELATION_LE: GtkConstraintRelation = -1;
363pub const GTK_CONSTRAINT_RELATION_EQ: GtkConstraintRelation = 0;
364pub const GTK_CONSTRAINT_RELATION_GE: GtkConstraintRelation = 1;
365
366pub type GtkConstraintStrength = c_int;
367pub const GTK_CONSTRAINT_STRENGTH_REQUIRED: GtkConstraintStrength = 1001001000;
368pub const GTK_CONSTRAINT_STRENGTH_STRONG: GtkConstraintStrength = 1000000000;
369pub const GTK_CONSTRAINT_STRENGTH_MEDIUM: GtkConstraintStrength = 1000;
370pub const GTK_CONSTRAINT_STRENGTH_WEAK: GtkConstraintStrength = 1;
371
372pub type GtkConstraintVflParserError = c_int;
373pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL: GtkConstraintVflParserError = 0;
374pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE: GtkConstraintVflParserError = 1;
375pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW: GtkConstraintVflParserError = 2;
376pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC: GtkConstraintVflParserError = 3;
377pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY: GtkConstraintVflParserError = 4;
378pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION: GtkConstraintVflParserError = 5;
379
380pub type GtkContentFit = c_int;
381pub const GTK_CONTENT_FIT_FILL: GtkContentFit = 0;
382pub const GTK_CONTENT_FIT_CONTAIN: GtkContentFit = 1;
383pub const GTK_CONTENT_FIT_COVER: GtkContentFit = 2;
384pub const GTK_CONTENT_FIT_SCALE_DOWN: GtkContentFit = 3;
385
386pub type GtkCornerType = c_int;
387pub const GTK_CORNER_TOP_LEFT: GtkCornerType = 0;
388pub const GTK_CORNER_BOTTOM_LEFT: GtkCornerType = 1;
389pub const GTK_CORNER_TOP_RIGHT: GtkCornerType = 2;
390pub const GTK_CORNER_BOTTOM_RIGHT: GtkCornerType = 3;
391
392pub type GtkCssParserError = c_int;
393pub const GTK_CSS_PARSER_ERROR_FAILED: GtkCssParserError = 0;
394pub const GTK_CSS_PARSER_ERROR_SYNTAX: GtkCssParserError = 1;
395pub const GTK_CSS_PARSER_ERROR_IMPORT: GtkCssParserError = 2;
396pub const GTK_CSS_PARSER_ERROR_NAME: GtkCssParserError = 3;
397pub const GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE: GtkCssParserError = 4;
398
399pub type GtkCssParserWarning = c_int;
400pub const GTK_CSS_PARSER_WARNING_DEPRECATED: GtkCssParserWarning = 0;
401pub const GTK_CSS_PARSER_WARNING_SYNTAX: GtkCssParserWarning = 1;
402pub const GTK_CSS_PARSER_WARNING_UNIMPLEMENTED: GtkCssParserWarning = 2;
403
404pub type GtkDeleteType = c_int;
405pub const GTK_DELETE_CHARS: GtkDeleteType = 0;
406pub const GTK_DELETE_WORD_ENDS: GtkDeleteType = 1;
407pub const GTK_DELETE_WORDS: GtkDeleteType = 2;
408pub const GTK_DELETE_DISPLAY_LINES: GtkDeleteType = 3;
409pub const GTK_DELETE_DISPLAY_LINE_ENDS: GtkDeleteType = 4;
410pub const GTK_DELETE_PARAGRAPH_ENDS: GtkDeleteType = 5;
411pub const GTK_DELETE_PARAGRAPHS: GtkDeleteType = 6;
412pub const GTK_DELETE_WHITESPACE: GtkDeleteType = 7;
413
414pub type GtkDialogError = c_int;
415pub const GTK_DIALOG_ERROR_FAILED: GtkDialogError = 0;
416pub const GTK_DIALOG_ERROR_CANCELLED: GtkDialogError = 1;
417pub const GTK_DIALOG_ERROR_DISMISSED: GtkDialogError = 2;
418
419pub type GtkDirectionType = c_int;
420pub const GTK_DIR_TAB_FORWARD: GtkDirectionType = 0;
421pub const GTK_DIR_TAB_BACKWARD: GtkDirectionType = 1;
422pub const GTK_DIR_UP: GtkDirectionType = 2;
423pub const GTK_DIR_DOWN: GtkDirectionType = 3;
424pub const GTK_DIR_LEFT: GtkDirectionType = 4;
425pub const GTK_DIR_RIGHT: GtkDirectionType = 5;
426
427pub type GtkEditableProperties = c_int;
428pub const GTK_EDITABLE_PROP_TEXT: GtkEditableProperties = 0;
429pub const GTK_EDITABLE_PROP_CURSOR_POSITION: GtkEditableProperties = 1;
430pub const GTK_EDITABLE_PROP_SELECTION_BOUND: GtkEditableProperties = 2;
431pub const GTK_EDITABLE_PROP_EDITABLE: GtkEditableProperties = 3;
432pub const GTK_EDITABLE_PROP_WIDTH_CHARS: GtkEditableProperties = 4;
433pub const GTK_EDITABLE_PROP_MAX_WIDTH_CHARS: GtkEditableProperties = 5;
434pub const GTK_EDITABLE_PROP_XALIGN: GtkEditableProperties = 6;
435pub const GTK_EDITABLE_PROP_ENABLE_UNDO: GtkEditableProperties = 7;
436pub const GTK_EDITABLE_NUM_PROPERTIES: GtkEditableProperties = 8;
437
438pub type GtkEntryIconPosition = c_int;
439pub const GTK_ENTRY_ICON_PRIMARY: GtkEntryIconPosition = 0;
440pub const GTK_ENTRY_ICON_SECONDARY: GtkEntryIconPosition = 1;
441
442pub type GtkEventSequenceState = c_int;
443pub const GTK_EVENT_SEQUENCE_NONE: GtkEventSequenceState = 0;
444pub const GTK_EVENT_SEQUENCE_CLAIMED: GtkEventSequenceState = 1;
445pub const GTK_EVENT_SEQUENCE_DENIED: GtkEventSequenceState = 2;
446
447pub type GtkFileChooserAction = c_int;
448pub const GTK_FILE_CHOOSER_ACTION_OPEN: GtkFileChooserAction = 0;
449pub const GTK_FILE_CHOOSER_ACTION_SAVE: GtkFileChooserAction = 1;
450pub const GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER: GtkFileChooserAction = 2;
451
452pub type GtkFileChooserError = c_int;
453pub const GTK_FILE_CHOOSER_ERROR_NONEXISTENT: GtkFileChooserError = 0;
454pub const GTK_FILE_CHOOSER_ERROR_BAD_FILENAME: GtkFileChooserError = 1;
455pub const GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS: GtkFileChooserError = 2;
456pub const GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME: GtkFileChooserError = 3;
457
458pub type GtkFilterChange = c_int;
459pub const GTK_FILTER_CHANGE_DIFFERENT: GtkFilterChange = 0;
460pub const GTK_FILTER_CHANGE_LESS_STRICT: GtkFilterChange = 1;
461pub const GTK_FILTER_CHANGE_MORE_STRICT: GtkFilterChange = 2;
462#[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_ELEMENT: GtkSvgError = 0;
912pub const GTK_SVG_ERROR_INVALID_ATTRIBUTE: GtkSvgError = 1;
913pub const GTK_SVG_ERROR_MISSING_ATTRIBUTE: GtkSvgError = 2;
914pub const GTK_SVG_ERROR_INVALID_REFERENCE: GtkSvgError = 3;
915pub const GTK_SVG_ERROR_FAILED_UPDATE: GtkSvgError = 4;
916pub const GTK_SVG_ERROR_FAILED_RENDERING: GtkSvgError = 5;
917
918pub type GtkSymbolicColor = c_int;
919pub const GTK_SYMBOLIC_COLOR_FOREGROUND: GtkSymbolicColor = 0;
920pub const GTK_SYMBOLIC_COLOR_ERROR: GtkSymbolicColor = 1;
921pub const GTK_SYMBOLIC_COLOR_WARNING: GtkSymbolicColor = 2;
922pub const GTK_SYMBOLIC_COLOR_SUCCESS: GtkSymbolicColor = 3;
923#[cfg(feature = "v4_22")]
924#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
925pub const GTK_SYMBOLIC_COLOR_ACCENT: GtkSymbolicColor = 4;
926
927pub type GtkSystemSetting = c_int;
928pub const GTK_SYSTEM_SETTING_DPI: GtkSystemSetting = 0;
929pub const GTK_SYSTEM_SETTING_FONT_NAME: GtkSystemSetting = 1;
930pub const GTK_SYSTEM_SETTING_FONT_CONFIG: GtkSystemSetting = 2;
931pub const GTK_SYSTEM_SETTING_DISPLAY: GtkSystemSetting = 3;
932pub const GTK_SYSTEM_SETTING_ICON_THEME: GtkSystemSetting = 4;
933
934pub type GtkTextDirection = c_int;
935pub const GTK_TEXT_DIR_NONE: GtkTextDirection = 0;
936pub const GTK_TEXT_DIR_LTR: GtkTextDirection = 1;
937pub const GTK_TEXT_DIR_RTL: GtkTextDirection = 2;
938
939pub type GtkTextExtendSelection = c_int;
940pub const GTK_TEXT_EXTEND_SELECTION_WORD: GtkTextExtendSelection = 0;
941pub const GTK_TEXT_EXTEND_SELECTION_LINE: GtkTextExtendSelection = 1;
942
943pub type GtkTextViewLayer = c_int;
944pub const GTK_TEXT_VIEW_LAYER_BELOW_TEXT: GtkTextViewLayer = 0;
945pub const GTK_TEXT_VIEW_LAYER_ABOVE_TEXT: GtkTextViewLayer = 1;
946
947pub type GtkTextWindowType = c_int;
948pub const GTK_TEXT_WINDOW_WIDGET: GtkTextWindowType = 1;
949pub const GTK_TEXT_WINDOW_TEXT: GtkTextWindowType = 2;
950pub const GTK_TEXT_WINDOW_LEFT: GtkTextWindowType = 3;
951pub const GTK_TEXT_WINDOW_RIGHT: GtkTextWindowType = 4;
952pub const GTK_TEXT_WINDOW_TOP: GtkTextWindowType = 5;
953pub const GTK_TEXT_WINDOW_BOTTOM: GtkTextWindowType = 6;
954
955pub type GtkTreeViewColumnSizing = c_int;
956pub const GTK_TREE_VIEW_COLUMN_GROW_ONLY: GtkTreeViewColumnSizing = 0;
957pub const GTK_TREE_VIEW_COLUMN_AUTOSIZE: GtkTreeViewColumnSizing = 1;
958pub const GTK_TREE_VIEW_COLUMN_FIXED: GtkTreeViewColumnSizing = 2;
959
960pub type GtkTreeViewDropPosition = c_int;
961pub const GTK_TREE_VIEW_DROP_BEFORE: GtkTreeViewDropPosition = 0;
962pub const GTK_TREE_VIEW_DROP_AFTER: GtkTreeViewDropPosition = 1;
963pub const GTK_TREE_VIEW_DROP_INTO_OR_BEFORE: GtkTreeViewDropPosition = 2;
964pub const GTK_TREE_VIEW_DROP_INTO_OR_AFTER: GtkTreeViewDropPosition = 3;
965
966pub type GtkTreeViewGridLines = c_int;
967pub const GTK_TREE_VIEW_GRID_LINES_NONE: GtkTreeViewGridLines = 0;
968pub const GTK_TREE_VIEW_GRID_LINES_HORIZONTAL: GtkTreeViewGridLines = 1;
969pub const GTK_TREE_VIEW_GRID_LINES_VERTICAL: GtkTreeViewGridLines = 2;
970pub const GTK_TREE_VIEW_GRID_LINES_BOTH: GtkTreeViewGridLines = 3;
971
972pub type GtkUnit = c_int;
973pub const GTK_UNIT_NONE: GtkUnit = 0;
974pub const GTK_UNIT_POINTS: GtkUnit = 1;
975pub const GTK_UNIT_INCH: GtkUnit = 2;
976pub const GTK_UNIT_MM: GtkUnit = 3;
977
978pub type GtkWindowGravity = c_int;
979pub const GTK_WINDOW_GRAVITY_TOP_LEFT: GtkWindowGravity = 0;
980pub const GTK_WINDOW_GRAVITY_TOP: GtkWindowGravity = 1;
981pub const GTK_WINDOW_GRAVITY_TOP_RIGHT: GtkWindowGravity = 2;
982pub const GTK_WINDOW_GRAVITY_LEFT: GtkWindowGravity = 3;
983pub const GTK_WINDOW_GRAVITY_CENTER: GtkWindowGravity = 4;
984pub const GTK_WINDOW_GRAVITY_RIGHT: GtkWindowGravity = 5;
985pub const GTK_WINDOW_GRAVITY_BOTTOM_LEFT: GtkWindowGravity = 6;
986pub const GTK_WINDOW_GRAVITY_BOTTOM: GtkWindowGravity = 7;
987pub const GTK_WINDOW_GRAVITY_BOTTOM_RIGHT: GtkWindowGravity = 8;
988pub const GTK_WINDOW_GRAVITY_TOP_START: GtkWindowGravity = 9;
989pub const GTK_WINDOW_GRAVITY_TOP_END: GtkWindowGravity = 10;
990pub const GTK_WINDOW_GRAVITY_START: GtkWindowGravity = 11;
991pub const GTK_WINDOW_GRAVITY_END: GtkWindowGravity = 12;
992pub const GTK_WINDOW_GRAVITY_BOTTOM_START: GtkWindowGravity = 13;
993pub const GTK_WINDOW_GRAVITY_BOTTOM_END: GtkWindowGravity = 14;
994
995pub type GtkWrapMode = c_int;
996pub const GTK_WRAP_NONE: GtkWrapMode = 0;
997pub const GTK_WRAP_CHAR: GtkWrapMode = 1;
998pub const GTK_WRAP_WORD: GtkWrapMode = 2;
999pub const GTK_WRAP_WORD_CHAR: GtkWrapMode = 3;
1000
1001// Constants
1002pub const GTK_ACCESSIBLE_ATTRIBUTE_BACKGROUND: &[u8] = b"bg-color\0";
1003pub const GTK_ACCESSIBLE_ATTRIBUTE_FAMILY: &[u8] = b"family-name\0";
1004pub const GTK_ACCESSIBLE_ATTRIBUTE_FOREGROUND: &[u8] = b"fg-color\0";
1005pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE: &[u8] = b"overline\0";
1006pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE_NONE: &[u8] = b"none\0";
1007pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE_SINGLE: &[u8] = b"single\0";
1008pub const GTK_ACCESSIBLE_ATTRIBUTE_SIZE: &[u8] = b"size\0";
1009pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH: &[u8] = b"stretch\0";
1010pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_CONDENSED: &[u8] = b"condensed\0";
1011pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXPANDED: &[u8] = b"expanded\0";
1012pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXTRA_CONDENSED: &[u8] = b"extra_condensed\0";
1013pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXTRA_EXPANDED: &[u8] = b"extra_expanded\0";
1014pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_NORMAL: &[u8] = b"normal\0";
1015pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_SEMI_CONDENSED: &[u8] = b"semi_condensed\0";
1016pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_SEMI_EXPANDED: &[u8] = b"semi_expanded\0";
1017pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_ULTRA_CONDENSED: &[u8] = b"ultra_condensed\0";
1018pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_ULTRA_EXPANDED: &[u8] = b"ultra_expanded\0";
1019pub const GTK_ACCESSIBLE_ATTRIBUTE_STRIKETHROUGH: &[u8] = b"strikethrough\0";
1020pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE: &[u8] = b"style\0";
1021pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_ITALIC: &[u8] = b"italic\0";
1022pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_NORMAL: &[u8] = b"normal\0";
1023pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_OBLIQUE: &[u8] = b"oblique\0";
1024pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE: &[u8] = b"underline\0";
1025pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_DOUBLE: &[u8] = b"double\0";
1026pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_ERROR: &[u8] = b"error\0";
1027pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_NONE: &[u8] = b"none\0";
1028pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_SINGLE: &[u8] = b"single\0";
1029pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT: &[u8] = b"variant\0";
1030pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_ALL_PETITE_CAPS: &[u8] = b"all-petite-caps\0";
1031pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_ALL_SMALL_CAPS: &[u8] = b"all-small-caps\0";
1032pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_PETITE_CAPS: &[u8] = b"petite-caps\0";
1033pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_SMALL_CAPS: &[u8] = b"small-caps\0";
1034pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_TITLE_CAPS: &[u8] = b"title-caps\0";
1035pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_UNICASE: &[u8] = b"unicase\0";
1036pub const GTK_ACCESSIBLE_ATTRIBUTE_WEIGHT: &[u8] = b"weight\0";
1037pub const GTK_ACCESSIBLE_VALUE_UNDEFINED: c_int = -1;
1038pub const GTK_IM_MODULE_EXTENSION_POINT_NAME: &[u8] = b"gtk-im-module\0";
1039pub const GTK_INPUT_ERROR: c_int = -1;
1040pub const GTK_INVALID_LIST_POSITION: c_uint = 4294967295;
1041pub const GTK_LEVEL_BAR_OFFSET_FULL: &[u8] = b"full\0";
1042pub const GTK_LEVEL_BAR_OFFSET_HIGH: &[u8] = b"high\0";
1043pub const GTK_LEVEL_BAR_OFFSET_LOW: &[u8] = b"low\0";
1044pub const GTK_MAX_COMPOSE_LEN: c_int = 7;
1045pub const GTK_MEDIA_FILE_EXTENSION_POINT_NAME: &[u8] = b"gtk-media-file\0";
1046pub const GTK_PAPER_NAME_A3: &[u8] = b"iso_a3\0";
1047pub const GTK_PAPER_NAME_A4: &[u8] = b"iso_a4\0";
1048pub const GTK_PAPER_NAME_A5: &[u8] = b"iso_a5\0";
1049pub const GTK_PAPER_NAME_B5: &[u8] = b"iso_b5\0";
1050pub const GTK_PAPER_NAME_EXECUTIVE: &[u8] = b"na_executive\0";
1051pub const GTK_PAPER_NAME_LEGAL: &[u8] = b"na_legal\0";
1052pub const GTK_PAPER_NAME_LETTER: &[u8] = b"na_letter\0";
1053pub const GTK_PRINT_SETTINGS_COLLATE: &[u8] = b"collate\0";
1054pub const GTK_PRINT_SETTINGS_DEFAULT_SOURCE: &[u8] = b"default-source\0";
1055pub const GTK_PRINT_SETTINGS_DITHER: &[u8] = b"dither\0";
1056pub const GTK_PRINT_SETTINGS_DUPLEX: &[u8] = b"duplex\0";
1057pub const GTK_PRINT_SETTINGS_FINISHINGS: &[u8] = b"finishings\0";
1058pub const GTK_PRINT_SETTINGS_MEDIA_TYPE: &[u8] = b"media-type\0";
1059pub const GTK_PRINT_SETTINGS_NUMBER_UP: &[u8] = b"number-up\0";
1060pub const GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT: &[u8] = b"number-up-layout\0";
1061pub const GTK_PRINT_SETTINGS_N_COPIES: &[u8] = b"n-copies\0";
1062pub const GTK_PRINT_SETTINGS_ORIENTATION: &[u8] = b"orientation\0";
1063pub const GTK_PRINT_SETTINGS_OUTPUT_BASENAME: &[u8] = b"output-basename\0";
1064pub const GTK_PRINT_SETTINGS_OUTPUT_BIN: &[u8] = b"output-bin\0";
1065pub const GTK_PRINT_SETTINGS_OUTPUT_DIR: &[u8] = b"output-dir\0";
1066pub const GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT: &[u8] = b"output-file-format\0";
1067pub const GTK_PRINT_SETTINGS_OUTPUT_URI: &[u8] = b"output-uri\0";
1068pub const GTK_PRINT_SETTINGS_PAGE_RANGES: &[u8] = b"page-ranges\0";
1069pub const GTK_PRINT_SETTINGS_PAGE_SET: &[u8] = b"page-set\0";
1070pub const GTK_PRINT_SETTINGS_PAPER_FORMAT: &[u8] = b"paper-format\0";
1071pub const GTK_PRINT_SETTINGS_PAPER_HEIGHT: &[u8] = b"paper-height\0";
1072pub const GTK_PRINT_SETTINGS_PAPER_WIDTH: &[u8] = b"paper-width\0";
1073pub const GTK_PRINT_SETTINGS_PRINTER: &[u8] = b"printer\0";
1074pub const GTK_PRINT_SETTINGS_PRINTER_LPI: &[u8] = b"printer-lpi\0";
1075pub const GTK_PRINT_SETTINGS_PRINT_PAGES: &[u8] = b"print-pages\0";
1076pub const GTK_PRINT_SETTINGS_QUALITY: &[u8] = b"quality\0";
1077pub const GTK_PRINT_SETTINGS_RESOLUTION: &[u8] = b"resolution\0";
1078pub const GTK_PRINT_SETTINGS_RESOLUTION_X: &[u8] = b"resolution-x\0";
1079pub const GTK_PRINT_SETTINGS_RESOLUTION_Y: &[u8] = b"resolution-y\0";
1080pub const GTK_PRINT_SETTINGS_REVERSE: &[u8] = b"reverse\0";
1081pub const GTK_PRINT_SETTINGS_SCALE: &[u8] = b"scale\0";
1082pub const GTK_PRINT_SETTINGS_USE_COLOR: &[u8] = b"use-color\0";
1083pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_EXTRA: &[u8] = b"win32-driver-extra\0";
1084pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_VERSION: &[u8] = b"win32-driver-version\0";
1085pub const GTK_PRIORITY_RESIZE: c_int = 110;
1086pub const GTK_STYLE_PROVIDER_PRIORITY_APPLICATION: c_int = 600;
1087pub const GTK_STYLE_PROVIDER_PRIORITY_FALLBACK: c_int = 1;
1088pub const GTK_STYLE_PROVIDER_PRIORITY_SETTINGS: c_int = 400;
1089pub const GTK_STYLE_PROVIDER_PRIORITY_THEME: c_int = 200;
1090pub const GTK_STYLE_PROVIDER_PRIORITY_USER: c_int = 800;
1091pub const GTK_SVG_ALL_FEATURES: c_int = 15;
1092pub const GTK_TEXT_VIEW_PRIORITY_VALIDATE: c_int = 125;
1093pub const GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID: c_int = -1;
1094pub const GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID: c_int = -2;
1095
1096// Flags
1097pub type GtkApplicationInhibitFlags = c_uint;
1098pub const GTK_APPLICATION_INHIBIT_LOGOUT: GtkApplicationInhibitFlags = 1;
1099pub const GTK_APPLICATION_INHIBIT_SWITCH: GtkApplicationInhibitFlags = 2;
1100pub const GTK_APPLICATION_INHIBIT_SUSPEND: GtkApplicationInhibitFlags = 4;
1101pub const GTK_APPLICATION_INHIBIT_IDLE: GtkApplicationInhibitFlags = 8;
1102
1103pub type GtkBuilderClosureFlags = c_uint;
1104pub const GTK_BUILDER_CLOSURE_SWAPPED: GtkBuilderClosureFlags = 1;
1105
1106pub type GtkCellRendererState = c_uint;
1107pub const GTK_CELL_RENDERER_SELECTED: GtkCellRendererState = 1;
1108pub const GTK_CELL_RENDERER_PRELIT: GtkCellRendererState = 2;
1109pub const GTK_CELL_RENDERER_INSENSITIVE: GtkCellRendererState = 4;
1110pub const GTK_CELL_RENDERER_SORTED: GtkCellRendererState = 8;
1111pub const GTK_CELL_RENDERER_FOCUSED: GtkCellRendererState = 16;
1112pub const GTK_CELL_RENDERER_EXPANDABLE: GtkCellRendererState = 32;
1113pub const GTK_CELL_RENDERER_EXPANDED: GtkCellRendererState = 64;
1114
1115pub type GtkDebugFlags = c_uint;
1116pub const GTK_DEBUG_TEXT: GtkDebugFlags = 1;
1117pub const GTK_DEBUG_TREE: GtkDebugFlags = 2;
1118pub const GTK_DEBUG_KEYBINDINGS: GtkDebugFlags = 4;
1119pub const GTK_DEBUG_MODULES: GtkDebugFlags = 8;
1120pub const GTK_DEBUG_GEOMETRY: GtkDebugFlags = 16;
1121pub const GTK_DEBUG_ICONTHEME: GtkDebugFlags = 32;
1122pub const GTK_DEBUG_PRINTING: GtkDebugFlags = 64;
1123pub const GTK_DEBUG_BUILDER_TRACE: GtkDebugFlags = 128;
1124pub const GTK_DEBUG_SIZE_REQUEST: GtkDebugFlags = 256;
1125pub const GTK_DEBUG_NO_CSS_CACHE: GtkDebugFlags = 512;
1126pub const GTK_DEBUG_INTERACTIVE: GtkDebugFlags = 1024;
1127#[cfg(feature = "v4_20")]
1128#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1129pub const GTK_DEBUG_TOUCHSCREEN: GtkDebugFlags = 2048;
1130pub const GTK_DEBUG_ACTIONS: GtkDebugFlags = 4096;
1131pub const GTK_DEBUG_LAYOUT: GtkDebugFlags = 8192;
1132pub const GTK_DEBUG_SNAPSHOT: GtkDebugFlags = 16384;
1133pub const GTK_DEBUG_CONSTRAINTS: GtkDebugFlags = 32768;
1134pub const GTK_DEBUG_BUILDER_OBJECTS: GtkDebugFlags = 65536;
1135pub const GTK_DEBUG_A11Y: GtkDebugFlags = 131072;
1136#[cfg(feature = "v4_2")]
1137#[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
1138pub const GTK_DEBUG_ICONFALLBACK: GtkDebugFlags = 262144;
1139#[cfg(feature = "v4_8")]
1140#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
1141pub const GTK_DEBUG_INVERT_TEXT_DIR: GtkDebugFlags = 524288;
1142#[cfg(feature = "v4_16")]
1143#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
1144pub const GTK_DEBUG_CSS: GtkDebugFlags = 1048576;
1145#[cfg(feature = "v4_18")]
1146#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
1147pub const GTK_DEBUG_BUILDER: GtkDebugFlags = 2097152;
1148#[cfg(feature = "v4_22")]
1149#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
1150pub const GTK_DEBUG_SESSION: GtkDebugFlags = 4194304;
1151
1152pub type GtkDialogFlags = c_uint;
1153pub const GTK_DIALOG_MODAL: GtkDialogFlags = 1;
1154pub const GTK_DIALOG_DESTROY_WITH_PARENT: GtkDialogFlags = 2;
1155pub const GTK_DIALOG_USE_HEADER_BAR: GtkDialogFlags = 4;
1156
1157pub type GtkEventControllerScrollFlags = c_uint;
1158pub const GTK_EVENT_CONTROLLER_SCROLL_NONE: GtkEventControllerScrollFlags = 0;
1159pub const GTK_EVENT_CONTROLLER_SCROLL_VERTICAL: GtkEventControllerScrollFlags = 1;
1160pub const GTK_EVENT_CONTROLLER_SCROLL_HORIZONTAL: GtkEventControllerScrollFlags = 2;
1161pub const GTK_EVENT_CONTROLLER_SCROLL_DISCRETE: GtkEventControllerScrollFlags = 4;
1162pub const GTK_EVENT_CONTROLLER_SCROLL_KINETIC: GtkEventControllerScrollFlags = 8;
1163#[cfg(feature = "v4_20")]
1164#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1165pub const GTK_EVENT_CONTROLLER_SCROLL_PHYSICAL_DIRECTION: GtkEventControllerScrollFlags = 16;
1166pub const GTK_EVENT_CONTROLLER_SCROLL_BOTH_AXES: GtkEventControllerScrollFlags = 3;
1167
1168pub type GtkFontChooserLevel = c_uint;
1169pub const GTK_FONT_CHOOSER_LEVEL_FAMILY: GtkFontChooserLevel = 0;
1170pub const GTK_FONT_CHOOSER_LEVEL_STYLE: GtkFontChooserLevel = 1;
1171pub const GTK_FONT_CHOOSER_LEVEL_SIZE: GtkFontChooserLevel = 2;
1172pub const GTK_FONT_CHOOSER_LEVEL_VARIATIONS: GtkFontChooserLevel = 4;
1173pub const GTK_FONT_CHOOSER_LEVEL_FEATURES: GtkFontChooserLevel = 8;
1174
1175pub type GtkIconLookupFlags = c_uint;
1176#[cfg(feature = "v4_18")]
1177#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
1178pub const GTK_ICON_LOOKUP_NONE: GtkIconLookupFlags = 0;
1179pub const GTK_ICON_LOOKUP_FORCE_REGULAR: GtkIconLookupFlags = 1;
1180pub const GTK_ICON_LOOKUP_FORCE_SYMBOLIC: GtkIconLookupFlags = 2;
1181pub const GTK_ICON_LOOKUP_PRELOAD: GtkIconLookupFlags = 4;
1182
1183pub type GtkInputHints = c_uint;
1184pub const GTK_INPUT_HINT_NONE: GtkInputHints = 0;
1185pub const GTK_INPUT_HINT_SPELLCHECK: GtkInputHints = 1;
1186pub const GTK_INPUT_HINT_NO_SPELLCHECK: GtkInputHints = 2;
1187pub const GTK_INPUT_HINT_WORD_COMPLETION: GtkInputHints = 4;
1188pub const GTK_INPUT_HINT_LOWERCASE: GtkInputHints = 8;
1189pub const GTK_INPUT_HINT_UPPERCASE_CHARS: GtkInputHints = 16;
1190pub const GTK_INPUT_HINT_UPPERCASE_WORDS: GtkInputHints = 32;
1191pub const GTK_INPUT_HINT_UPPERCASE_SENTENCES: GtkInputHints = 64;
1192pub const GTK_INPUT_HINT_INHIBIT_OSK: GtkInputHints = 128;
1193pub const GTK_INPUT_HINT_VERTICAL_WRITING: GtkInputHints = 256;
1194pub const GTK_INPUT_HINT_EMOJI: GtkInputHints = 512;
1195pub const GTK_INPUT_HINT_NO_EMOJI: GtkInputHints = 1024;
1196pub const GTK_INPUT_HINT_PRIVATE: GtkInputHints = 2048;
1197
1198pub type GtkListScrollFlags = c_uint;
1199pub const GTK_LIST_SCROLL_NONE: GtkListScrollFlags = 0;
1200pub const GTK_LIST_SCROLL_FOCUS: GtkListScrollFlags = 1;
1201pub const GTK_LIST_SCROLL_SELECT: GtkListScrollFlags = 2;
1202
1203pub type GtkPickFlags = c_uint;
1204pub const GTK_PICK_DEFAULT: GtkPickFlags = 0;
1205pub const GTK_PICK_INSENSITIVE: GtkPickFlags = 1;
1206pub const GTK_PICK_NON_TARGETABLE: GtkPickFlags = 2;
1207
1208pub type GtkPopoverMenuFlags = c_uint;
1209#[cfg(feature = "v4_14")]
1210#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1211pub const GTK_POPOVER_MENU_SLIDING: GtkPopoverMenuFlags = 0;
1212pub const GTK_POPOVER_MENU_NESTED: GtkPopoverMenuFlags = 1;
1213
1214pub type GtkPrintCapabilities = c_uint;
1215pub const GTK_PRINT_CAPABILITY_PAGE_SET: GtkPrintCapabilities = 1;
1216pub const GTK_PRINT_CAPABILITY_COPIES: GtkPrintCapabilities = 2;
1217pub const GTK_PRINT_CAPABILITY_COLLATE: GtkPrintCapabilities = 4;
1218pub const GTK_PRINT_CAPABILITY_REVERSE: GtkPrintCapabilities = 8;
1219pub const GTK_PRINT_CAPABILITY_SCALE: GtkPrintCapabilities = 16;
1220pub const GTK_PRINT_CAPABILITY_GENERATE_PDF: GtkPrintCapabilities = 32;
1221pub const GTK_PRINT_CAPABILITY_GENERATE_PS: GtkPrintCapabilities = 64;
1222pub const GTK_PRINT_CAPABILITY_PREVIEW: GtkPrintCapabilities = 128;
1223pub const GTK_PRINT_CAPABILITY_NUMBER_UP: GtkPrintCapabilities = 256;
1224pub const GTK_PRINT_CAPABILITY_NUMBER_UP_LAYOUT: GtkPrintCapabilities = 512;
1225
1226pub type GtkShortcutActionFlags = c_uint;
1227pub const GTK_SHORTCUT_ACTION_EXCLUSIVE: GtkShortcutActionFlags = 1;
1228
1229pub type GtkStateFlags = c_uint;
1230pub const GTK_STATE_FLAG_NORMAL: GtkStateFlags = 0;
1231pub const GTK_STATE_FLAG_ACTIVE: GtkStateFlags = 1;
1232pub const GTK_STATE_FLAG_PRELIGHT: GtkStateFlags = 2;
1233pub const GTK_STATE_FLAG_SELECTED: GtkStateFlags = 4;
1234pub const GTK_STATE_FLAG_INSENSITIVE: GtkStateFlags = 8;
1235pub const GTK_STATE_FLAG_INCONSISTENT: GtkStateFlags = 16;
1236pub const GTK_STATE_FLAG_FOCUSED: GtkStateFlags = 32;
1237pub const GTK_STATE_FLAG_BACKDROP: GtkStateFlags = 64;
1238pub const GTK_STATE_FLAG_DIR_LTR: GtkStateFlags = 128;
1239pub const GTK_STATE_FLAG_DIR_RTL: GtkStateFlags = 256;
1240pub const GTK_STATE_FLAG_LINK: GtkStateFlags = 512;
1241pub const GTK_STATE_FLAG_VISITED: GtkStateFlags = 1024;
1242pub const GTK_STATE_FLAG_CHECKED: GtkStateFlags = 2048;
1243pub const GTK_STATE_FLAG_DROP_ACTIVE: GtkStateFlags = 4096;
1244pub const GTK_STATE_FLAG_FOCUS_VISIBLE: GtkStateFlags = 8192;
1245pub const GTK_STATE_FLAG_FOCUS_WITHIN: GtkStateFlags = 16384;
1246
1247pub type GtkStyleContextPrintFlags = c_uint;
1248pub const GTK_STYLE_CONTEXT_PRINT_NONE: GtkStyleContextPrintFlags = 0;
1249pub const GTK_STYLE_CONTEXT_PRINT_RECURSE: GtkStyleContextPrintFlags = 1;
1250pub const GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE: GtkStyleContextPrintFlags = 2;
1251pub const GTK_STYLE_CONTEXT_PRINT_SHOW_CHANGE: GtkStyleContextPrintFlags = 4;
1252
1253pub type GtkSvgFeatures = c_uint;
1254pub const GTK_SVG_ANIMATIONS: GtkSvgFeatures = 1;
1255pub const GTK_SVG_SYSTEM_RESOURCES: GtkSvgFeatures = 2;
1256pub const GTK_SVG_EXTERNAL_RESOURCES: GtkSvgFeatures = 4;
1257pub const GTK_SVG_EXTENSIONS: GtkSvgFeatures = 8;
1258
1259pub type GtkTextBufferNotifyFlags = c_uint;
1260pub const GTK_TEXT_BUFFER_NOTIFY_BEFORE_INSERT: GtkTextBufferNotifyFlags = 1;
1261pub const GTK_TEXT_BUFFER_NOTIFY_AFTER_INSERT: GtkTextBufferNotifyFlags = 2;
1262pub const GTK_TEXT_BUFFER_NOTIFY_BEFORE_DELETE: GtkTextBufferNotifyFlags = 4;
1263pub const GTK_TEXT_BUFFER_NOTIFY_AFTER_DELETE: GtkTextBufferNotifyFlags = 8;
1264
1265pub type GtkTextSearchFlags = c_uint;
1266pub const GTK_TEXT_SEARCH_VISIBLE_ONLY: GtkTextSearchFlags = 1;
1267pub const GTK_TEXT_SEARCH_TEXT_ONLY: GtkTextSearchFlags = 2;
1268pub const GTK_TEXT_SEARCH_CASE_INSENSITIVE: GtkTextSearchFlags = 4;
1269
1270pub type GtkTreeModelFlags = c_uint;
1271pub const GTK_TREE_MODEL_ITERS_PERSIST: GtkTreeModelFlags = 1;
1272pub const GTK_TREE_MODEL_LIST_ONLY: GtkTreeModelFlags = 2;
1273
1274// Callbacks
1275pub type GtkAssistantPageFunc = Option<unsafe extern "C" fn(c_int, gpointer) -> c_int>;
1276pub type GtkCellAllocCallback = Option<
1277    unsafe extern "C" fn(
1278        *mut GtkCellRenderer,
1279        *const gdk::GdkRectangle,
1280        *const gdk::GdkRectangle,
1281        gpointer,
1282    ) -> gboolean,
1283>;
1284pub type GtkCellCallback = Option<unsafe extern "C" fn(*mut GtkCellRenderer, gpointer) -> gboolean>;
1285pub type GtkCellLayoutDataFunc = Option<
1286    unsafe extern "C" fn(
1287        *mut GtkCellLayout,
1288        *mut GtkCellRenderer,
1289        *mut GtkTreeModel,
1290        *mut GtkTreeIter,
1291        gpointer,
1292    ),
1293>;
1294pub type GtkCustomAllocateFunc = Option<unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, c_int)>;
1295pub type GtkCustomFilterFunc =
1296    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> gboolean>;
1297pub type GtkCustomMeasureFunc = Option<
1298    unsafe extern "C" fn(
1299        *mut GtkWidget,
1300        GtkOrientation,
1301        c_int,
1302        *mut c_int,
1303        *mut c_int,
1304        *mut c_int,
1305        *mut c_int,
1306    ),
1307>;
1308pub type GtkCustomRequestModeFunc =
1309    Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>;
1310pub type GtkDrawingAreaDrawFunc =
1311    Option<unsafe extern "C" fn(*mut GtkDrawingArea, *mut cairo::cairo_t, c_int, c_int, gpointer)>;
1312pub type GtkEntryCompletionMatchFunc = Option<
1313    unsafe extern "C" fn(
1314        *mut GtkEntryCompletion,
1315        *const c_char,
1316        *mut GtkTreeIter,
1317        gpointer,
1318    ) -> gboolean,
1319>;
1320pub type GtkExpressionNotify = Option<unsafe extern "C" fn(gpointer)>;
1321pub type GtkFlowBoxCreateWidgetFunc =
1322    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1323pub type GtkFlowBoxFilterFunc =
1324    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, gpointer) -> gboolean>;
1325pub type GtkFlowBoxForeachFunc =
1326    Option<unsafe extern "C" fn(*mut GtkFlowBox, *mut GtkFlowBoxChild, gpointer)>;
1327pub type GtkFlowBoxSortFunc =
1328    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, *mut GtkFlowBoxChild, gpointer) -> c_int>;
1329pub type GtkFontFilterFunc = Option<
1330    unsafe extern "C" fn(
1331        *const pango::PangoFontFamily,
1332        *const pango::PangoFontFace,
1333        gpointer,
1334    ) -> gboolean,
1335>;
1336pub type GtkIconViewForeachFunc =
1337    Option<unsafe extern "C" fn(*mut GtkIconView, *mut GtkTreePath, gpointer)>;
1338pub type GtkListBoxCreateWidgetFunc =
1339    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1340pub type GtkListBoxFilterFunc =
1341    Option<unsafe extern "C" fn(*mut GtkListBoxRow, gpointer) -> gboolean>;
1342pub type GtkListBoxForeachFunc =
1343    Option<unsafe extern "C" fn(*mut GtkListBox, *mut GtkListBoxRow, gpointer)>;
1344pub type GtkListBoxSortFunc =
1345    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer) -> c_int>;
1346pub type GtkListBoxUpdateHeaderFunc =
1347    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer)>;
1348pub type GtkMapListModelMapFunc =
1349    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut gobject::GObject>;
1350pub type GtkMenuButtonCreatePopupFunc = Option<unsafe extern "C" fn(*mut GtkMenuButton, gpointer)>;
1351pub type GtkPageSetupDoneFunc = Option<unsafe extern "C" fn(*mut GtkPageSetup, gpointer)>;
1352pub type GtkPrintJobCompleteFunc =
1353    Option<unsafe extern "C" fn(*mut GtkPrintJob, gpointer, *const glib::GError)>;
1354pub type GtkPrintSettingsFunc =
1355    Option<unsafe extern "C" fn(*const c_char, *const c_char, gpointer)>;
1356pub type GtkPrinterFunc = Option<unsafe extern "C" fn(*mut GtkPrinter, gpointer) -> gboolean>;
1357pub type GtkScaleFormatValueFunc =
1358    Option<unsafe extern "C" fn(*mut GtkScale, c_double, gpointer) -> *mut c_char>;
1359pub type GtkShortcutFunc =
1360    Option<unsafe extern "C" fn(*mut GtkWidget, *mut glib::GVariant, gpointer) -> gboolean>;
1361pub type GtkTextBufferCommitNotify = Option<
1362    unsafe extern "C" fn(*mut GtkTextBuffer, GtkTextBufferNotifyFlags, c_uint, c_uint, gpointer),
1363>;
1364pub type GtkTextCharPredicate = Option<unsafe extern "C" fn(u32, gpointer) -> gboolean>;
1365pub type GtkTextTagTableForeach = Option<unsafe extern "C" fn(*mut GtkTextTag, gpointer)>;
1366pub type GtkTickCallback =
1367    Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkFrameClock, gpointer) -> gboolean>;
1368pub type GtkTreeCellDataFunc = Option<
1369    unsafe extern "C" fn(
1370        *mut GtkTreeViewColumn,
1371        *mut GtkCellRenderer,
1372        *mut GtkTreeModel,
1373        *mut GtkTreeIter,
1374        gpointer,
1375    ),
1376>;
1377pub type GtkTreeIterCompareFunc = Option<
1378    unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter, gpointer) -> c_int,
1379>;
1380pub type GtkTreeListModelCreateModelFunc =
1381    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut gio::GListModel>;
1382pub type GtkTreeModelFilterModifyFunc = Option<
1383    unsafe extern "C" fn(
1384        *mut GtkTreeModel,
1385        *mut GtkTreeIter,
1386        *mut gobject::GValue,
1387        c_int,
1388        gpointer,
1389    ),
1390>;
1391pub type GtkTreeModelFilterVisibleFunc =
1392    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1393pub type GtkTreeModelForeachFunc = Option<
1394    unsafe extern "C" fn(
1395        *mut GtkTreeModel,
1396        *mut GtkTreePath,
1397        *mut GtkTreeIter,
1398        gpointer,
1399    ) -> gboolean,
1400>;
1401pub type GtkTreeSelectionForeachFunc =
1402    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, gpointer)>;
1403pub type GtkTreeSelectionFunc = Option<
1404    unsafe extern "C" fn(
1405        *mut GtkTreeSelection,
1406        *mut GtkTreeModel,
1407        *mut GtkTreePath,
1408        gboolean,
1409        gpointer,
1410    ) -> gboolean,
1411>;
1412pub type GtkTreeViewColumnDropFunc = Option<
1413    unsafe extern "C" fn(
1414        *mut GtkTreeView,
1415        *mut GtkTreeViewColumn,
1416        *mut GtkTreeViewColumn,
1417        *mut GtkTreeViewColumn,
1418        gpointer,
1419    ) -> gboolean,
1420>;
1421pub type GtkTreeViewMappingFunc =
1422    Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, gpointer)>;
1423pub type GtkTreeViewRowSeparatorFunc =
1424    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1425pub type GtkTreeViewSearchEqualFunc = Option<
1426    unsafe extern "C" fn(
1427        *mut GtkTreeModel,
1428        c_int,
1429        *const c_char,
1430        *mut GtkTreeIter,
1431        gpointer,
1432    ) -> gboolean,
1433>;
1434pub type GtkWidgetActionActivateFunc =
1435    Option<unsafe extern "C" fn(*mut GtkWidget, *const c_char, *mut glib::GVariant)>;
1436
1437// Records
1438#[repr(C)]
1439#[allow(dead_code)]
1440pub struct _GtkATContextClass {
1441    _data: [u8; 0],
1442    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1443}
1444
1445pub type GtkATContextClass = _GtkATContextClass;
1446
1447#[derive(Copy, Clone)]
1448#[repr(C)]
1449pub struct GtkAccessibleHyperlinkClass {
1450    pub parent_class: gobject::GObjectClass,
1451}
1452
1453impl ::std::fmt::Debug for GtkAccessibleHyperlinkClass {
1454    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1455        f.debug_struct(&format!("GtkAccessibleHyperlinkClass @ {self:p}"))
1456            .field("parent_class", &self.parent_class)
1457            .finish()
1458    }
1459}
1460
1461#[derive(Copy, Clone)]
1462#[repr(C)]
1463pub struct GtkAccessibleHypertextInterface {
1464    pub g_iface: gobject::GTypeInterface,
1465    pub get_n_links: Option<unsafe extern "C" fn(*mut GtkAccessibleHypertext) -> c_uint>,
1466    pub get_link: Option<
1467        unsafe extern "C" fn(*mut GtkAccessibleHypertext, c_uint) -> *mut GtkAccessibleHyperlink,
1468    >,
1469    pub get_link_at: Option<unsafe extern "C" fn(*mut GtkAccessibleHypertext, c_uint) -> c_uint>,
1470}
1471
1472impl ::std::fmt::Debug for GtkAccessibleHypertextInterface {
1473    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1474        f.debug_struct(&format!("GtkAccessibleHypertextInterface @ {self:p}"))
1475            .field("get_n_links", &self.get_n_links)
1476            .field("get_link", &self.get_link)
1477            .field("get_link_at", &self.get_link_at)
1478            .finish()
1479    }
1480}
1481
1482#[derive(Copy, Clone)]
1483#[repr(C)]
1484pub struct GtkAccessibleInterface {
1485    pub g_iface: gobject::GTypeInterface,
1486    pub get_at_context: Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkATContext>,
1487    pub get_platform_state:
1488        Option<unsafe extern "C" fn(*mut GtkAccessible, GtkAccessiblePlatformState) -> gboolean>,
1489    pub get_accessible_parent:
1490        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1491    pub get_first_accessible_child:
1492        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1493    pub get_next_accessible_sibling:
1494        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1495    pub get_bounds: Option<
1496        unsafe extern "C" fn(
1497            *mut GtkAccessible,
1498            *mut c_int,
1499            *mut c_int,
1500            *mut c_int,
1501            *mut c_int,
1502        ) -> gboolean,
1503    >,
1504}
1505
1506impl ::std::fmt::Debug for GtkAccessibleInterface {
1507    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1508        f.debug_struct(&format!("GtkAccessibleInterface @ {self:p}"))
1509            .field("g_iface", &self.g_iface)
1510            .field("get_at_context", &self.get_at_context)
1511            .field("get_platform_state", &self.get_platform_state)
1512            .field("get_accessible_parent", &self.get_accessible_parent)
1513            .field(
1514                "get_first_accessible_child",
1515                &self.get_first_accessible_child,
1516            )
1517            .field(
1518                "get_next_accessible_sibling",
1519                &self.get_next_accessible_sibling,
1520            )
1521            .field("get_bounds", &self.get_bounds)
1522            .finish()
1523    }
1524}
1525
1526#[repr(C)]
1527#[allow(dead_code)]
1528pub struct GtkAccessibleList {
1529    _data: [u8; 0],
1530    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1531}
1532
1533impl ::std::fmt::Debug for GtkAccessibleList {
1534    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1535        f.debug_struct(&format!("GtkAccessibleList @ {self:p}"))
1536            .finish()
1537    }
1538}
1539
1540#[derive(Copy, Clone)]
1541#[repr(C)]
1542pub struct GtkAccessibleRangeInterface {
1543    pub g_iface: gobject::GTypeInterface,
1544    pub set_current_value:
1545        Option<unsafe extern "C" fn(*mut GtkAccessibleRange, c_double) -> gboolean>,
1546}
1547
1548impl ::std::fmt::Debug for GtkAccessibleRangeInterface {
1549    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1550        f.debug_struct(&format!("GtkAccessibleRangeInterface @ {self:p}"))
1551            .field("g_iface", &self.g_iface)
1552            .field("set_current_value", &self.set_current_value)
1553            .finish()
1554    }
1555}
1556
1557#[derive(Copy, Clone)]
1558#[repr(C)]
1559pub struct GtkAccessibleTextInterface {
1560    pub g_iface: gobject::GTypeInterface,
1561    pub get_contents:
1562        Option<unsafe extern "C" fn(*mut GtkAccessibleText, c_uint, c_uint) -> *mut glib::GBytes>,
1563    pub get_contents_at: Option<
1564        unsafe extern "C" fn(
1565            *mut GtkAccessibleText,
1566            c_uint,
1567            GtkAccessibleTextGranularity,
1568            *mut c_uint,
1569            *mut c_uint,
1570        ) -> *mut glib::GBytes,
1571    >,
1572    pub get_caret_position: Option<unsafe extern "C" fn(*mut GtkAccessibleText) -> c_uint>,
1573    pub get_selection: Option<
1574        unsafe extern "C" fn(
1575            *mut GtkAccessibleText,
1576            *mut size_t,
1577            *mut *mut GtkAccessibleTextRange,
1578        ) -> gboolean,
1579    >,
1580    pub get_attributes: Option<
1581        unsafe extern "C" fn(
1582            *mut GtkAccessibleText,
1583            c_uint,
1584            *mut size_t,
1585            *mut *mut GtkAccessibleTextRange,
1586            *mut *mut *mut c_char,
1587            *mut *mut *mut c_char,
1588        ) -> gboolean,
1589    >,
1590    pub get_default_attributes: Option<
1591        unsafe extern "C" fn(*mut GtkAccessibleText, *mut *mut *mut c_char, *mut *mut *mut c_char),
1592    >,
1593    pub get_extents: Option<
1594        unsafe extern "C" fn(
1595            *mut GtkAccessibleText,
1596            c_uint,
1597            c_uint,
1598            *mut graphene::graphene_rect_t,
1599        ) -> gboolean,
1600    >,
1601    pub get_offset: Option<
1602        unsafe extern "C" fn(
1603            *mut GtkAccessibleText,
1604            *const graphene::graphene_point_t,
1605            *mut c_uint,
1606        ) -> gboolean,
1607    >,
1608    pub set_caret_position:
1609        Option<unsafe extern "C" fn(*mut GtkAccessibleText, c_uint) -> gboolean>,
1610    pub set_selection: Option<
1611        unsafe extern "C" fn(
1612            *mut GtkAccessibleText,
1613            size_t,
1614            *mut GtkAccessibleTextRange,
1615        ) -> gboolean,
1616    >,
1617}
1618
1619impl ::std::fmt::Debug for GtkAccessibleTextInterface {
1620    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1621        f.debug_struct(&format!("GtkAccessibleTextInterface @ {self:p}"))
1622            .field("get_contents", &self.get_contents)
1623            .field("get_contents_at", &self.get_contents_at)
1624            .field("get_caret_position", &self.get_caret_position)
1625            .field("get_selection", &self.get_selection)
1626            .field("get_attributes", &self.get_attributes)
1627            .field("get_default_attributes", &self.get_default_attributes)
1628            .field("get_extents", &self.get_extents)
1629            .field("get_offset", &self.get_offset)
1630            .field("set_caret_position", &self.set_caret_position)
1631            .field("set_selection", &self.set_selection)
1632            .finish()
1633    }
1634}
1635
1636#[derive(Copy, Clone)]
1637#[repr(C)]
1638pub struct GtkAccessibleTextRange {
1639    pub start: size_t,
1640    pub length: size_t,
1641}
1642
1643impl ::std::fmt::Debug for GtkAccessibleTextRange {
1644    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1645        f.debug_struct(&format!("GtkAccessibleTextRange @ {self:p}"))
1646            .field("start", &self.start)
1647            .field("length", &self.length)
1648            .finish()
1649    }
1650}
1651
1652#[derive(Copy, Clone)]
1653#[repr(C)]
1654pub struct GtkActionableInterface {
1655    pub g_iface: gobject::GTypeInterface,
1656    pub get_action_name: Option<unsafe extern "C" fn(*mut GtkActionable) -> *const c_char>,
1657    pub set_action_name: Option<unsafe extern "C" fn(*mut GtkActionable, *const c_char)>,
1658    pub get_action_target_value:
1659        Option<unsafe extern "C" fn(*mut GtkActionable) -> *mut glib::GVariant>,
1660    pub set_action_target_value:
1661        Option<unsafe extern "C" fn(*mut GtkActionable, *mut glib::GVariant)>,
1662}
1663
1664impl ::std::fmt::Debug for GtkActionableInterface {
1665    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1666        f.debug_struct(&format!("GtkActionableInterface @ {self:p}"))
1667            .field("get_action_name", &self.get_action_name)
1668            .field("set_action_name", &self.set_action_name)
1669            .field("get_action_target_value", &self.get_action_target_value)
1670            .field("set_action_target_value", &self.set_action_target_value)
1671            .finish()
1672    }
1673}
1674
1675#[repr(C)]
1676#[allow(dead_code)]
1677pub struct _GtkActivateActionClass {
1678    _data: [u8; 0],
1679    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1680}
1681
1682pub type GtkActivateActionClass = _GtkActivateActionClass;
1683
1684#[derive(Copy, Clone)]
1685#[repr(C)]
1686pub struct GtkAdjustmentClass {
1687    pub parent_class: gobject::GInitiallyUnownedClass,
1688    pub changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1689    pub value_changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1690    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1691    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1692    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1693    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1694}
1695
1696impl ::std::fmt::Debug for GtkAdjustmentClass {
1697    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1698        f.debug_struct(&format!("GtkAdjustmentClass @ {self:p}"))
1699            .field("parent_class", &self.parent_class)
1700            .field("changed", &self.changed)
1701            .field("value_changed", &self.value_changed)
1702            .field("_gtk_reserved1", &self._gtk_reserved1)
1703            .field("_gtk_reserved2", &self._gtk_reserved2)
1704            .field("_gtk_reserved3", &self._gtk_reserved3)
1705            .field("_gtk_reserved4", &self._gtk_reserved4)
1706            .finish()
1707    }
1708}
1709
1710#[derive(Copy, Clone)]
1711#[repr(C)]
1712pub struct GtkAlertDialogClass {
1713    pub parent_class: gobject::GObjectClass,
1714}
1715
1716impl ::std::fmt::Debug for GtkAlertDialogClass {
1717    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1718        f.debug_struct(&format!("GtkAlertDialogClass @ {self:p}"))
1719            .field("parent_class", &self.parent_class)
1720            .finish()
1721    }
1722}
1723
1724#[repr(C)]
1725#[allow(dead_code)]
1726pub struct _GtkAlternativeTriggerClass {
1727    _data: [u8; 0],
1728    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1729}
1730
1731pub type GtkAlternativeTriggerClass = _GtkAlternativeTriggerClass;
1732
1733#[repr(C)]
1734#[allow(dead_code)]
1735pub struct _GtkAnyFilterClass {
1736    _data: [u8; 0],
1737    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1738}
1739
1740pub type GtkAnyFilterClass = _GtkAnyFilterClass;
1741
1742#[derive(Copy, Clone)]
1743#[repr(C)]
1744pub struct GtkApplicationClass {
1745    pub parent_class: gio::GApplicationClass,
1746    pub window_added: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
1747    pub window_removed: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
1748    pub save_state:
1749        Option<unsafe extern "C" fn(*mut GtkApplication, *mut glib::GVariantDict) -> gboolean>,
1750    pub restore_state: Option<
1751        unsafe extern "C" fn(
1752            *mut GtkApplication,
1753            GtkRestoreReason,
1754            *mut glib::GVariant,
1755        ) -> gboolean,
1756    >,
1757    pub restore_window:
1758        Option<unsafe extern "C" fn(*mut GtkApplication, GtkRestoreReason, *mut glib::GVariant)>,
1759    pub padding: [gpointer; 5],
1760}
1761
1762impl ::std::fmt::Debug for GtkApplicationClass {
1763    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1764        f.debug_struct(&format!("GtkApplicationClass @ {self:p}"))
1765            .field("parent_class", &self.parent_class)
1766            .field("window_added", &self.window_added)
1767            .field("window_removed", &self.window_removed)
1768            .field("save_state", &self.save_state)
1769            .field("restore_state", &self.restore_state)
1770            .field("restore_window", &self.restore_window)
1771            .finish()
1772    }
1773}
1774
1775#[derive(Copy, Clone)]
1776#[repr(C)]
1777pub struct GtkApplicationWindowClass {
1778    pub parent_class: GtkWindowClass,
1779    pub save_state: Option<
1780        unsafe extern "C" fn(*mut GtkApplicationWindow, *mut glib::GVariantDict) -> gboolean,
1781    >,
1782    pub padding: [gpointer; 7],
1783}
1784
1785impl ::std::fmt::Debug for GtkApplicationWindowClass {
1786    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1787        f.debug_struct(&format!("GtkApplicationWindowClass @ {self:p}"))
1788            .field("parent_class", &self.parent_class)
1789            .field("save_state", &self.save_state)
1790            .finish()
1791    }
1792}
1793
1794#[derive(Copy, Clone)]
1795#[repr(C)]
1796pub struct GtkBinLayoutClass {
1797    pub parent_class: GtkLayoutManagerClass,
1798}
1799
1800impl ::std::fmt::Debug for GtkBinLayoutClass {
1801    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1802        f.debug_struct(&format!("GtkBinLayoutClass @ {self:p}"))
1803            .field("parent_class", &self.parent_class)
1804            .finish()
1805    }
1806}
1807
1808#[repr(C)]
1809#[allow(dead_code)]
1810pub struct GtkBitset {
1811    _data: [u8; 0],
1812    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1813}
1814
1815impl ::std::fmt::Debug for GtkBitset {
1816    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1817        f.debug_struct(&format!("GtkBitset @ {self:p}")).finish()
1818    }
1819}
1820
1821#[derive(Copy, Clone)]
1822#[repr(C)]
1823pub struct GtkBitsetIter {
1824    pub private_data: [gpointer; 10],
1825}
1826
1827impl ::std::fmt::Debug for GtkBitsetIter {
1828    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1829        f.debug_struct(&format!("GtkBitsetIter @ {self:p}"))
1830            .finish()
1831    }
1832}
1833
1834#[derive(Copy, Clone)]
1835#[repr(C)]
1836pub struct GtkBookmarkListClass {
1837    pub parent_class: gobject::GObjectClass,
1838}
1839
1840impl ::std::fmt::Debug for GtkBookmarkListClass {
1841    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1842        f.debug_struct(&format!("GtkBookmarkListClass @ {self:p}"))
1843            .field("parent_class", &self.parent_class)
1844            .finish()
1845    }
1846}
1847
1848#[derive(Copy, Clone)]
1849#[repr(C)]
1850pub struct GtkBoolFilterClass {
1851    pub parent_class: GtkFilterClass,
1852}
1853
1854impl ::std::fmt::Debug for GtkBoolFilterClass {
1855    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1856        f.debug_struct(&format!("GtkBoolFilterClass @ {self:p}"))
1857            .field("parent_class", &self.parent_class)
1858            .finish()
1859    }
1860}
1861
1862#[derive(Copy, Clone)]
1863#[repr(C)]
1864pub struct GtkBorder {
1865    pub left: i16,
1866    pub right: i16,
1867    pub top: i16,
1868    pub bottom: i16,
1869}
1870
1871impl ::std::fmt::Debug for GtkBorder {
1872    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1873        f.debug_struct(&format!("GtkBorder @ {self:p}"))
1874            .field("left", &self.left)
1875            .field("right", &self.right)
1876            .field("top", &self.top)
1877            .field("bottom", &self.bottom)
1878            .finish()
1879    }
1880}
1881
1882#[derive(Copy, Clone)]
1883#[repr(C)]
1884pub struct GtkBoxClass {
1885    pub parent_class: GtkWidgetClass,
1886    pub padding: [gpointer; 8],
1887}
1888
1889impl ::std::fmt::Debug for GtkBoxClass {
1890    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1891        f.debug_struct(&format!("GtkBoxClass @ {self:p}"))
1892            .field("parent_class", &self.parent_class)
1893            .finish()
1894    }
1895}
1896
1897#[derive(Copy, Clone)]
1898#[repr(C)]
1899pub struct GtkBoxLayoutClass {
1900    pub parent_class: GtkLayoutManagerClass,
1901}
1902
1903impl ::std::fmt::Debug for GtkBoxLayoutClass {
1904    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1905        f.debug_struct(&format!("GtkBoxLayoutClass @ {self:p}"))
1906            .field("parent_class", &self.parent_class)
1907            .finish()
1908    }
1909}
1910
1911#[derive(Copy, Clone)]
1912#[repr(C)]
1913pub struct GtkBuildableIface {
1914    pub g_iface: gobject::GTypeInterface,
1915    pub set_id: Option<unsafe extern "C" fn(*mut GtkBuildable, *const c_char)>,
1916    pub get_id: Option<unsafe extern "C" fn(*mut GtkBuildable) -> *const c_char>,
1917    pub add_child: Option<
1918        unsafe extern "C" fn(
1919            *mut GtkBuildable,
1920            *mut GtkBuilder,
1921            *mut gobject::GObject,
1922            *const c_char,
1923        ),
1924    >,
1925    pub set_buildable_property: Option<
1926        unsafe extern "C" fn(
1927            *mut GtkBuildable,
1928            *mut GtkBuilder,
1929            *const c_char,
1930            *const gobject::GValue,
1931        ),
1932    >,
1933    pub construct_child: Option<
1934        unsafe extern "C" fn(
1935            *mut GtkBuildable,
1936            *mut GtkBuilder,
1937            *const c_char,
1938        ) -> *mut gobject::GObject,
1939    >,
1940    pub custom_tag_start: Option<
1941        unsafe extern "C" fn(
1942            *mut GtkBuildable,
1943            *mut GtkBuilder,
1944            *mut gobject::GObject,
1945            *const c_char,
1946            *mut GtkBuildableParser,
1947            *mut gpointer,
1948        ) -> gboolean,
1949    >,
1950    pub custom_tag_end: Option<
1951        unsafe extern "C" fn(
1952            *mut GtkBuildable,
1953            *mut GtkBuilder,
1954            *mut gobject::GObject,
1955            *const c_char,
1956            gpointer,
1957        ),
1958    >,
1959    pub custom_finished: Option<
1960        unsafe extern "C" fn(
1961            *mut GtkBuildable,
1962            *mut GtkBuilder,
1963            *mut gobject::GObject,
1964            *const c_char,
1965            gpointer,
1966        ),
1967    >,
1968    pub parser_finished: Option<unsafe extern "C" fn(*mut GtkBuildable, *mut GtkBuilder)>,
1969    pub get_internal_child: Option<
1970        unsafe extern "C" fn(
1971            *mut GtkBuildable,
1972            *mut GtkBuilder,
1973            *const c_char,
1974        ) -> *mut gobject::GObject,
1975    >,
1976}
1977
1978impl ::std::fmt::Debug for GtkBuildableIface {
1979    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1980        f.debug_struct(&format!("GtkBuildableIface @ {self:p}"))
1981            .field("g_iface", &self.g_iface)
1982            .field("set_id", &self.set_id)
1983            .field("get_id", &self.get_id)
1984            .field("add_child", &self.add_child)
1985            .field("set_buildable_property", &self.set_buildable_property)
1986            .field("construct_child", &self.construct_child)
1987            .field("custom_tag_start", &self.custom_tag_start)
1988            .field("custom_tag_end", &self.custom_tag_end)
1989            .field("custom_finished", &self.custom_finished)
1990            .field("parser_finished", &self.parser_finished)
1991            .field("get_internal_child", &self.get_internal_child)
1992            .finish()
1993    }
1994}
1995
1996#[repr(C)]
1997#[allow(dead_code)]
1998pub struct _GtkBuildableParseContext {
1999    _data: [u8; 0],
2000    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2001}
2002
2003pub type GtkBuildableParseContext = _GtkBuildableParseContext;
2004
2005#[derive(Copy, Clone)]
2006#[repr(C)]
2007pub struct GtkBuildableParser {
2008    pub start_element: Option<
2009        unsafe extern "C" fn(
2010            *mut GtkBuildableParseContext,
2011            *const c_char,
2012            *mut *const c_char,
2013            *mut *const c_char,
2014            gpointer,
2015            *mut *mut glib::GError,
2016        ),
2017    >,
2018    pub end_element: Option<
2019        unsafe extern "C" fn(
2020            *mut GtkBuildableParseContext,
2021            *const c_char,
2022            gpointer,
2023            *mut *mut glib::GError,
2024        ),
2025    >,
2026    pub text: Option<
2027        unsafe extern "C" fn(
2028            *mut GtkBuildableParseContext,
2029            *const c_char,
2030            size_t,
2031            gpointer,
2032            *mut *mut glib::GError,
2033        ),
2034    >,
2035    pub error:
2036        Option<unsafe extern "C" fn(*mut GtkBuildableParseContext, *mut glib::GError, gpointer)>,
2037    pub padding: [gpointer; 4],
2038}
2039
2040impl ::std::fmt::Debug for GtkBuildableParser {
2041    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2042        f.debug_struct(&format!("GtkBuildableParser @ {self:p}"))
2043            .field("start_element", &self.start_element)
2044            .field("end_element", &self.end_element)
2045            .field("text", &self.text)
2046            .field("error", &self.error)
2047            .finish()
2048    }
2049}
2050
2051#[derive(Copy, Clone)]
2052#[repr(C)]
2053pub struct GtkBuilderCScopeClass {
2054    pub parent_class: gobject::GObjectClass,
2055}
2056
2057impl ::std::fmt::Debug for GtkBuilderCScopeClass {
2058    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2059        f.debug_struct(&format!("GtkBuilderCScopeClass @ {self:p}"))
2060            .field("parent_class", &self.parent_class)
2061            .finish()
2062    }
2063}
2064
2065#[repr(C)]
2066#[allow(dead_code)]
2067pub struct _GtkBuilderClass {
2068    _data: [u8; 0],
2069    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2070}
2071
2072pub type GtkBuilderClass = _GtkBuilderClass;
2073
2074#[repr(C)]
2075#[allow(dead_code)]
2076pub struct _GtkBuilderListItemFactoryClass {
2077    _data: [u8; 0],
2078    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2079}
2080
2081pub type GtkBuilderListItemFactoryClass = _GtkBuilderListItemFactoryClass;
2082
2083#[derive(Copy, Clone)]
2084#[repr(C)]
2085pub struct GtkBuilderScopeInterface {
2086    pub g_iface: gobject::GTypeInterface,
2087    pub get_type_from_name:
2088        Option<unsafe extern "C" fn(*mut GtkBuilderScope, *mut GtkBuilder, *const c_char) -> GType>,
2089    pub get_type_from_function:
2090        Option<unsafe extern "C" fn(*mut GtkBuilderScope, *mut GtkBuilder, *const c_char) -> GType>,
2091    pub create_closure: Option<
2092        unsafe extern "C" fn(
2093            *mut GtkBuilderScope,
2094            *mut GtkBuilder,
2095            *const c_char,
2096            GtkBuilderClosureFlags,
2097            *mut gobject::GObject,
2098            *mut *mut glib::GError,
2099        ) -> *mut gobject::GClosure,
2100    >,
2101}
2102
2103impl ::std::fmt::Debug for GtkBuilderScopeInterface {
2104    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2105        f.debug_struct(&format!("GtkBuilderScopeInterface @ {self:p}"))
2106            .field("get_type_from_name", &self.get_type_from_name)
2107            .field("get_type_from_function", &self.get_type_from_function)
2108            .field("create_closure", &self.create_closure)
2109            .finish()
2110    }
2111}
2112
2113#[derive(Copy, Clone)]
2114#[repr(C)]
2115pub struct GtkButtonClass {
2116    pub parent_class: GtkWidgetClass,
2117    pub clicked: Option<unsafe extern "C" fn(*mut GtkButton)>,
2118    pub activate: Option<unsafe extern "C" fn(*mut GtkButton)>,
2119    pub padding: [gpointer; 8],
2120}
2121
2122impl ::std::fmt::Debug for GtkButtonClass {
2123    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2124        f.debug_struct(&format!("GtkButtonClass @ {self:p}"))
2125            .field("parent_class", &self.parent_class)
2126            .field("clicked", &self.clicked)
2127            .field("activate", &self.activate)
2128            .finish()
2129    }
2130}
2131
2132#[repr(C)]
2133#[allow(dead_code)]
2134pub struct _GtkButtonPrivate {
2135    _data: [u8; 0],
2136    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2137}
2138
2139pub type GtkButtonPrivate = _GtkButtonPrivate;
2140
2141#[repr(C)]
2142#[allow(dead_code)]
2143pub struct _GtkCallbackActionClass {
2144    _data: [u8; 0],
2145    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2146}
2147
2148pub type GtkCallbackActionClass = _GtkCallbackActionClass;
2149
2150#[derive(Copy, Clone)]
2151#[repr(C)]
2152pub struct GtkCellAreaClass {
2153    pub parent_class: gobject::GInitiallyUnownedClass,
2154    pub add: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2155    pub remove: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2156    pub foreach: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkCellCallback, gpointer)>,
2157    pub foreach_alloc: Option<
2158        unsafe extern "C" fn(
2159            *mut GtkCellArea,
2160            *mut GtkCellAreaContext,
2161            *mut GtkWidget,
2162            *const gdk::GdkRectangle,
2163            *const gdk::GdkRectangle,
2164            GtkCellAllocCallback,
2165            gpointer,
2166        ),
2167    >,
2168    pub event: Option<
2169        unsafe extern "C" fn(
2170            *mut GtkCellArea,
2171            *mut GtkCellAreaContext,
2172            *mut GtkWidget,
2173            *mut gdk::GdkEvent,
2174            *const gdk::GdkRectangle,
2175            GtkCellRendererState,
2176        ) -> c_int,
2177    >,
2178    pub snapshot: Option<
2179        unsafe extern "C" fn(
2180            *mut GtkCellArea,
2181            *mut GtkCellAreaContext,
2182            *mut GtkWidget,
2183            *mut GtkSnapshot,
2184            *const gdk::GdkRectangle,
2185            *const gdk::GdkRectangle,
2186            GtkCellRendererState,
2187            gboolean,
2188        ),
2189    >,
2190    pub apply_attributes: Option<
2191        unsafe extern "C" fn(
2192            *mut GtkCellArea,
2193            *mut GtkTreeModel,
2194            *mut GtkTreeIter,
2195            gboolean,
2196            gboolean,
2197        ),
2198    >,
2199    pub create_context: Option<unsafe extern "C" fn(*mut GtkCellArea) -> *mut GtkCellAreaContext>,
2200    pub copy_context: Option<
2201        unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellAreaContext) -> *mut GtkCellAreaContext,
2202    >,
2203    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellArea) -> GtkSizeRequestMode>,
2204    pub get_preferred_width: Option<
2205        unsafe extern "C" fn(
2206            *mut GtkCellArea,
2207            *mut GtkCellAreaContext,
2208            *mut GtkWidget,
2209            *mut c_int,
2210            *mut c_int,
2211        ),
2212    >,
2213    pub get_preferred_height_for_width: Option<
2214        unsafe extern "C" fn(
2215            *mut GtkCellArea,
2216            *mut GtkCellAreaContext,
2217            *mut GtkWidget,
2218            c_int,
2219            *mut c_int,
2220            *mut c_int,
2221        ),
2222    >,
2223    pub get_preferred_height: Option<
2224        unsafe extern "C" fn(
2225            *mut GtkCellArea,
2226            *mut GtkCellAreaContext,
2227            *mut GtkWidget,
2228            *mut c_int,
2229            *mut c_int,
2230        ),
2231    >,
2232    pub get_preferred_width_for_height: Option<
2233        unsafe extern "C" fn(
2234            *mut GtkCellArea,
2235            *mut GtkCellAreaContext,
2236            *mut GtkWidget,
2237            c_int,
2238            *mut c_int,
2239            *mut c_int,
2240        ),
2241    >,
2242    pub set_cell_property: Option<
2243        unsafe extern "C" fn(
2244            *mut GtkCellArea,
2245            *mut GtkCellRenderer,
2246            c_uint,
2247            *mut gobject::GValue,
2248            *mut gobject::GParamSpec,
2249        ),
2250    >,
2251    pub get_cell_property: Option<
2252        unsafe extern "C" fn(
2253            *mut GtkCellArea,
2254            *mut GtkCellRenderer,
2255            c_uint,
2256            *mut gobject::GValue,
2257            *mut gobject::GParamSpec,
2258        ),
2259    >,
2260    pub focus: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkDirectionType) -> gboolean>,
2261    pub is_activatable: Option<unsafe extern "C" fn(*mut GtkCellArea) -> gboolean>,
2262    pub activate: Option<
2263        unsafe extern "C" fn(
2264            *mut GtkCellArea,
2265            *mut GtkCellAreaContext,
2266            *mut GtkWidget,
2267            *const gdk::GdkRectangle,
2268            GtkCellRendererState,
2269            gboolean,
2270        ) -> gboolean,
2271    >,
2272    pub padding: [gpointer; 8],
2273}
2274
2275impl ::std::fmt::Debug for GtkCellAreaClass {
2276    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2277        f.debug_struct(&format!("GtkCellAreaClass @ {self:p}"))
2278            .field("add", &self.add)
2279            .field("remove", &self.remove)
2280            .field("foreach", &self.foreach)
2281            .field("foreach_alloc", &self.foreach_alloc)
2282            .field("event", &self.event)
2283            .field("snapshot", &self.snapshot)
2284            .field("apply_attributes", &self.apply_attributes)
2285            .field("create_context", &self.create_context)
2286            .field("copy_context", &self.copy_context)
2287            .field("get_request_mode", &self.get_request_mode)
2288            .field("get_preferred_width", &self.get_preferred_width)
2289            .field(
2290                "get_preferred_height_for_width",
2291                &self.get_preferred_height_for_width,
2292            )
2293            .field("get_preferred_height", &self.get_preferred_height)
2294            .field(
2295                "get_preferred_width_for_height",
2296                &self.get_preferred_width_for_height,
2297            )
2298            .field("set_cell_property", &self.set_cell_property)
2299            .field("get_cell_property", &self.get_cell_property)
2300            .field("focus", &self.focus)
2301            .field("is_activatable", &self.is_activatable)
2302            .field("activate", &self.activate)
2303            .finish()
2304    }
2305}
2306
2307#[derive(Copy, Clone)]
2308#[repr(C)]
2309pub struct GtkCellAreaContextClass {
2310    pub parent_class: gobject::GObjectClass,
2311    pub allocate: Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, c_int)>,
2312    pub reset: Option<unsafe extern "C" fn(*mut GtkCellAreaContext)>,
2313    pub get_preferred_height_for_width:
2314        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2315    pub get_preferred_width_for_height:
2316        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2317    pub padding: [gpointer; 8],
2318}
2319
2320impl ::std::fmt::Debug for GtkCellAreaContextClass {
2321    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2322        f.debug_struct(&format!("GtkCellAreaContextClass @ {self:p}"))
2323            .field("allocate", &self.allocate)
2324            .field("reset", &self.reset)
2325            .field(
2326                "get_preferred_height_for_width",
2327                &self.get_preferred_height_for_width,
2328            )
2329            .field(
2330                "get_preferred_width_for_height",
2331                &self.get_preferred_width_for_height,
2332            )
2333            .finish()
2334    }
2335}
2336
2337#[repr(C)]
2338#[allow(dead_code)]
2339pub struct _GtkCellAreaContextPrivate {
2340    _data: [u8; 0],
2341    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2342}
2343
2344pub type GtkCellAreaContextPrivate = _GtkCellAreaContextPrivate;
2345
2346#[derive(Copy, Clone)]
2347#[repr(C)]
2348pub struct GtkCellEditableIface {
2349    pub g_iface: gobject::GTypeInterface,
2350    pub editing_done: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
2351    pub remove_widget: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
2352    pub start_editing: Option<unsafe extern "C" fn(*mut GtkCellEditable, *mut gdk::GdkEvent)>,
2353}
2354
2355impl ::std::fmt::Debug for GtkCellEditableIface {
2356    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2357        f.debug_struct(&format!("GtkCellEditableIface @ {self:p}"))
2358            .field("editing_done", &self.editing_done)
2359            .field("remove_widget", &self.remove_widget)
2360            .field("start_editing", &self.start_editing)
2361            .finish()
2362    }
2363}
2364
2365#[derive(Copy, Clone)]
2366#[repr(C)]
2367pub struct GtkCellLayoutIface {
2368    pub g_iface: gobject::GTypeInterface,
2369    pub pack_start:
2370        Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
2371    pub pack_end: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
2372    pub clear: Option<unsafe extern "C" fn(*mut GtkCellLayout)>,
2373    pub add_attribute: Option<
2374        unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, *const c_char, c_int),
2375    >,
2376    pub set_cell_data_func: Option<
2377        unsafe extern "C" fn(
2378            *mut GtkCellLayout,
2379            *mut GtkCellRenderer,
2380            GtkCellLayoutDataFunc,
2381            gpointer,
2382            glib::GDestroyNotify,
2383        ),
2384    >,
2385    pub clear_attributes: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer)>,
2386    pub reorder: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, c_int)>,
2387    pub get_cells: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut glib::GList>,
2388    pub get_area: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut GtkCellArea>,
2389}
2390
2391impl ::std::fmt::Debug for GtkCellLayoutIface {
2392    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2393        f.debug_struct(&format!("GtkCellLayoutIface @ {self:p}"))
2394            .field("pack_start", &self.pack_start)
2395            .field("pack_end", &self.pack_end)
2396            .field("clear", &self.clear)
2397            .field("add_attribute", &self.add_attribute)
2398            .field("set_cell_data_func", &self.set_cell_data_func)
2399            .field("clear_attributes", &self.clear_attributes)
2400            .field("reorder", &self.reorder)
2401            .field("get_cells", &self.get_cells)
2402            .field("get_area", &self.get_area)
2403            .finish()
2404    }
2405}
2406
2407#[derive(Copy, Clone)]
2408#[repr(C)]
2409pub struct GtkCellRendererClass {
2410    pub parent_class: gobject::GInitiallyUnownedClass,
2411    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellRenderer) -> GtkSizeRequestMode>,
2412    pub get_preferred_width:
2413        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
2414    pub get_preferred_height_for_width: Option<
2415        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
2416    >,
2417    pub get_preferred_height:
2418        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
2419    pub get_preferred_width_for_height: Option<
2420        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
2421    >,
2422    pub get_aligned_area: Option<
2423        unsafe extern "C" fn(
2424            *mut GtkCellRenderer,
2425            *mut GtkWidget,
2426            GtkCellRendererState,
2427            *const gdk::GdkRectangle,
2428            *mut gdk::GdkRectangle,
2429        ),
2430    >,
2431    pub snapshot: Option<
2432        unsafe extern "C" fn(
2433            *mut GtkCellRenderer,
2434            *mut GtkSnapshot,
2435            *mut GtkWidget,
2436            *const gdk::GdkRectangle,
2437            *const gdk::GdkRectangle,
2438            GtkCellRendererState,
2439        ),
2440    >,
2441    pub activate: Option<
2442        unsafe extern "C" fn(
2443            *mut GtkCellRenderer,
2444            *mut gdk::GdkEvent,
2445            *mut GtkWidget,
2446            *const c_char,
2447            *const gdk::GdkRectangle,
2448            *const gdk::GdkRectangle,
2449            GtkCellRendererState,
2450        ) -> gboolean,
2451    >,
2452    pub start_editing: Option<
2453        unsafe extern "C" fn(
2454            *mut GtkCellRenderer,
2455            *mut gdk::GdkEvent,
2456            *mut GtkWidget,
2457            *const c_char,
2458            *const gdk::GdkRectangle,
2459            *const gdk::GdkRectangle,
2460            GtkCellRendererState,
2461        ) -> *mut GtkCellEditable,
2462    >,
2463    pub editing_canceled: Option<unsafe extern "C" fn(*mut GtkCellRenderer)>,
2464    pub editing_started:
2465        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkCellEditable, *const c_char)>,
2466    pub padding: [gpointer; 8],
2467}
2468
2469impl ::std::fmt::Debug for GtkCellRendererClass {
2470    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2471        f.debug_struct(&format!("GtkCellRendererClass @ {self:p}"))
2472            .field("get_request_mode", &self.get_request_mode)
2473            .field("get_preferred_width", &self.get_preferred_width)
2474            .field(
2475                "get_preferred_height_for_width",
2476                &self.get_preferred_height_for_width,
2477            )
2478            .field("get_preferred_height", &self.get_preferred_height)
2479            .field(
2480                "get_preferred_width_for_height",
2481                &self.get_preferred_width_for_height,
2482            )
2483            .field("get_aligned_area", &self.get_aligned_area)
2484            .field("snapshot", &self.snapshot)
2485            .field("activate", &self.activate)
2486            .field("start_editing", &self.start_editing)
2487            .field("editing_canceled", &self.editing_canceled)
2488            .field("editing_started", &self.editing_started)
2489            .finish()
2490    }
2491}
2492
2493#[repr(C)]
2494#[allow(dead_code)]
2495pub struct _GtkCellRendererClassPrivate {
2496    _data: [u8; 0],
2497    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2498}
2499
2500pub type GtkCellRendererClassPrivate = _GtkCellRendererClassPrivate;
2501
2502#[repr(C)]
2503#[allow(dead_code)]
2504pub struct _GtkCellRendererPrivate {
2505    _data: [u8; 0],
2506    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2507}
2508
2509pub type GtkCellRendererPrivate = _GtkCellRendererPrivate;
2510
2511#[derive(Copy, Clone)]
2512#[repr(C)]
2513pub struct GtkCellRendererTextClass {
2514    pub parent_class: GtkCellRendererClass,
2515    pub edited:
2516        Option<unsafe extern "C" fn(*mut GtkCellRendererText, *const c_char, *const c_char)>,
2517    pub padding: [gpointer; 8],
2518}
2519
2520impl ::std::fmt::Debug for GtkCellRendererTextClass {
2521    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2522        f.debug_struct(&format!("GtkCellRendererTextClass @ {self:p}"))
2523            .field("parent_class", &self.parent_class)
2524            .field("edited", &self.edited)
2525            .finish()
2526    }
2527}
2528
2529#[repr(C)]
2530#[allow(dead_code)]
2531pub struct _GtkCenterBoxClass {
2532    _data: [u8; 0],
2533    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2534}
2535
2536pub type GtkCenterBoxClass = _GtkCenterBoxClass;
2537
2538#[derive(Copy, Clone)]
2539#[repr(C)]
2540pub struct GtkCenterLayoutClass {
2541    pub parent_class: GtkLayoutManagerClass,
2542}
2543
2544impl ::std::fmt::Debug for GtkCenterLayoutClass {
2545    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2546        f.debug_struct(&format!("GtkCenterLayoutClass @ {self:p}"))
2547            .field("parent_class", &self.parent_class)
2548            .finish()
2549    }
2550}
2551
2552#[derive(Copy, Clone)]
2553#[repr(C)]
2554pub struct GtkCheckButtonClass {
2555    pub parent_class: GtkWidgetClass,
2556    pub toggled: Option<unsafe extern "C" fn(*mut GtkCheckButton)>,
2557    pub activate: Option<unsafe extern "C" fn(*mut GtkCheckButton)>,
2558    pub padding: [gpointer; 7],
2559}
2560
2561impl ::std::fmt::Debug for GtkCheckButtonClass {
2562    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2563        f.debug_struct(&format!("GtkCheckButtonClass @ {self:p}"))
2564            .field("parent_class", &self.parent_class)
2565            .field("toggled", &self.toggled)
2566            .field("activate", &self.activate)
2567            .finish()
2568    }
2569}
2570
2571#[derive(Copy, Clone)]
2572#[repr(C)]
2573pub struct GtkColorChooserInterface {
2574    pub base_interface: gobject::GTypeInterface,
2575    pub get_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2576    pub set_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2577    pub add_palette: Option<
2578        unsafe extern "C" fn(*mut GtkColorChooser, GtkOrientation, c_int, c_int, *mut gdk::GdkRGBA),
2579    >,
2580    pub color_activated: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2581    pub padding: [gpointer; 12],
2582}
2583
2584impl ::std::fmt::Debug for GtkColorChooserInterface {
2585    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2586        f.debug_struct(&format!("GtkColorChooserInterface @ {self:p}"))
2587            .field("base_interface", &self.base_interface)
2588            .field("get_rgba", &self.get_rgba)
2589            .field("set_rgba", &self.set_rgba)
2590            .field("add_palette", &self.add_palette)
2591            .field("color_activated", &self.color_activated)
2592            .finish()
2593    }
2594}
2595
2596#[derive(Copy, Clone)]
2597#[repr(C)]
2598pub struct GtkColorDialogButtonClass {
2599    pub parent_class: GtkWidgetClass,
2600}
2601
2602impl ::std::fmt::Debug for GtkColorDialogButtonClass {
2603    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2604        f.debug_struct(&format!("GtkColorDialogButtonClass @ {self:p}"))
2605            .field("parent_class", &self.parent_class)
2606            .finish()
2607    }
2608}
2609
2610#[derive(Copy, Clone)]
2611#[repr(C)]
2612pub struct GtkColorDialogClass {
2613    pub parent_class: gobject::GObjectClass,
2614}
2615
2616impl ::std::fmt::Debug for GtkColorDialogClass {
2617    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2618        f.debug_struct(&format!("GtkColorDialogClass @ {self:p}"))
2619            .field("parent_class", &self.parent_class)
2620            .finish()
2621    }
2622}
2623
2624#[repr(C)]
2625#[allow(dead_code)]
2626pub struct _GtkColumnViewCellClass {
2627    _data: [u8; 0],
2628    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2629}
2630
2631pub type GtkColumnViewCellClass = _GtkColumnViewCellClass;
2632
2633#[repr(C)]
2634#[allow(dead_code)]
2635pub struct _GtkColumnViewClass {
2636    _data: [u8; 0],
2637    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2638}
2639
2640pub type GtkColumnViewClass = _GtkColumnViewClass;
2641
2642#[repr(C)]
2643#[allow(dead_code)]
2644pub struct _GtkColumnViewColumnClass {
2645    _data: [u8; 0],
2646    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2647}
2648
2649pub type GtkColumnViewColumnClass = _GtkColumnViewColumnClass;
2650
2651#[repr(C)]
2652#[allow(dead_code)]
2653pub struct _GtkColumnViewRowClass {
2654    _data: [u8; 0],
2655    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2656}
2657
2658pub type GtkColumnViewRowClass = _GtkColumnViewRowClass;
2659
2660#[derive(Copy, Clone)]
2661#[repr(C)]
2662pub struct GtkColumnViewSorterClass {
2663    pub parent_class: GtkSorterClass,
2664}
2665
2666impl ::std::fmt::Debug for GtkColumnViewSorterClass {
2667    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2668        f.debug_struct(&format!("GtkColumnViewSorterClass @ {self:p}"))
2669            .field("parent_class", &self.parent_class)
2670            .finish()
2671    }
2672}
2673
2674#[derive(Copy, Clone)]
2675#[repr(C)]
2676pub struct GtkComboBoxClass {
2677    pub parent_class: GtkWidgetClass,
2678    pub changed: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
2679    pub format_entry_text:
2680        Option<unsafe extern "C" fn(*mut GtkComboBox, *const c_char) -> *mut c_char>,
2681    pub activate: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
2682    pub padding: [gpointer; 7],
2683}
2684
2685impl ::std::fmt::Debug for GtkComboBoxClass {
2686    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2687        f.debug_struct(&format!("GtkComboBoxClass @ {self:p}"))
2688            .field("parent_class", &self.parent_class)
2689            .field("changed", &self.changed)
2690            .field("format_entry_text", &self.format_entry_text)
2691            .field("activate", &self.activate)
2692            .finish()
2693    }
2694}
2695
2696#[derive(Copy, Clone)]
2697#[repr(C)]
2698pub struct GtkConstraintClass {
2699    pub parent_class: gobject::GObjectClass,
2700}
2701
2702impl ::std::fmt::Debug for GtkConstraintClass {
2703    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2704        f.debug_struct(&format!("GtkConstraintClass @ {self:p}"))
2705            .field("parent_class", &self.parent_class)
2706            .finish()
2707    }
2708}
2709
2710#[derive(Copy, Clone)]
2711#[repr(C)]
2712pub struct GtkConstraintGuideClass {
2713    pub parent_class: gobject::GObjectClass,
2714}
2715
2716impl ::std::fmt::Debug for GtkConstraintGuideClass {
2717    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2718        f.debug_struct(&format!("GtkConstraintGuideClass @ {self:p}"))
2719            .field("parent_class", &self.parent_class)
2720            .finish()
2721    }
2722}
2723
2724#[derive(Copy, Clone)]
2725#[repr(C)]
2726pub struct GtkConstraintLayoutChildClass {
2727    pub parent_class: GtkLayoutChildClass,
2728}
2729
2730impl ::std::fmt::Debug for GtkConstraintLayoutChildClass {
2731    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2732        f.debug_struct(&format!("GtkConstraintLayoutChildClass @ {self:p}"))
2733            .field("parent_class", &self.parent_class)
2734            .finish()
2735    }
2736}
2737
2738#[derive(Copy, Clone)]
2739#[repr(C)]
2740pub struct GtkConstraintLayoutClass {
2741    pub parent_class: GtkLayoutManagerClass,
2742}
2743
2744impl ::std::fmt::Debug for GtkConstraintLayoutClass {
2745    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2746        f.debug_struct(&format!("GtkConstraintLayoutClass @ {self:p}"))
2747            .field("parent_class", &self.parent_class)
2748            .finish()
2749    }
2750}
2751
2752#[repr(C)]
2753#[allow(dead_code)]
2754pub struct _GtkConstraintTargetInterface {
2755    _data: [u8; 0],
2756    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2757}
2758
2759pub type GtkConstraintTargetInterface = _GtkConstraintTargetInterface;
2760
2761#[derive(Copy, Clone)]
2762#[repr(C)]
2763pub struct GtkCssLocation {
2764    pub bytes: size_t,
2765    pub chars: size_t,
2766    pub lines: size_t,
2767    pub line_bytes: size_t,
2768    pub line_chars: size_t,
2769}
2770
2771impl ::std::fmt::Debug for GtkCssLocation {
2772    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2773        f.debug_struct(&format!("GtkCssLocation @ {self:p}"))
2774            .field("bytes", &self.bytes)
2775            .field("chars", &self.chars)
2776            .field("lines", &self.lines)
2777            .field("line_bytes", &self.line_bytes)
2778            .field("line_chars", &self.line_chars)
2779            .finish()
2780    }
2781}
2782
2783#[repr(C)]
2784#[allow(dead_code)]
2785pub struct _GtkCssProviderClass {
2786    _data: [u8; 0],
2787    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2788}
2789
2790pub type GtkCssProviderClass = _GtkCssProviderClass;
2791
2792#[repr(C)]
2793#[allow(dead_code)]
2794pub struct _GtkCssProviderPrivate {
2795    _data: [u8; 0],
2796    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2797}
2798
2799pub type GtkCssProviderPrivate = _GtkCssProviderPrivate;
2800
2801#[repr(C)]
2802#[allow(dead_code)]
2803pub struct GtkCssSection {
2804    _data: [u8; 0],
2805    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2806}
2807
2808impl ::std::fmt::Debug for GtkCssSection {
2809    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2810        f.debug_struct(&format!("GtkCssSection @ {self:p}"))
2811            .finish()
2812    }
2813}
2814
2815#[repr(C)]
2816#[allow(dead_code)]
2817pub struct _GtkCssStyleChange {
2818    _data: [u8; 0],
2819    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2820}
2821
2822pub type GtkCssStyleChange = _GtkCssStyleChange;
2823
2824#[derive(Copy, Clone)]
2825#[repr(C)]
2826pub struct GtkCustomFilterClass {
2827    pub parent_class: GtkFilterClass,
2828}
2829
2830impl ::std::fmt::Debug for GtkCustomFilterClass {
2831    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2832        f.debug_struct(&format!("GtkCustomFilterClass @ {self:p}"))
2833            .field("parent_class", &self.parent_class)
2834            .finish()
2835    }
2836}
2837
2838#[derive(Copy, Clone)]
2839#[repr(C)]
2840pub struct GtkCustomLayoutClass {
2841    pub parent_class: GtkLayoutManagerClass,
2842}
2843
2844impl ::std::fmt::Debug for GtkCustomLayoutClass {
2845    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2846        f.debug_struct(&format!("GtkCustomLayoutClass @ {self:p}"))
2847            .field("parent_class", &self.parent_class)
2848            .finish()
2849    }
2850}
2851
2852#[derive(Copy, Clone)]
2853#[repr(C)]
2854pub struct GtkCustomSorterClass {
2855    pub parent_class: GtkSorterClass,
2856}
2857
2858impl ::std::fmt::Debug for GtkCustomSorterClass {
2859    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2860        f.debug_struct(&format!("GtkCustomSorterClass @ {self:p}"))
2861            .field("parent_class", &self.parent_class)
2862            .finish()
2863    }
2864}
2865
2866#[derive(Copy, Clone)]
2867#[repr(C)]
2868pub struct GtkDialogClass {
2869    pub parent_class: GtkWindowClass,
2870    pub response: Option<unsafe extern "C" fn(*mut GtkDialog, GtkResponseType)>,
2871    pub close: Option<unsafe extern "C" fn(*mut GtkDialog)>,
2872    pub padding: [gpointer; 8],
2873}
2874
2875impl ::std::fmt::Debug for GtkDialogClass {
2876    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2877        f.debug_struct(&format!("GtkDialogClass @ {self:p}"))
2878            .field("parent_class", &self.parent_class)
2879            .field("response", &self.response)
2880            .field("close", &self.close)
2881            .finish()
2882    }
2883}
2884
2885#[derive(Copy, Clone)]
2886#[repr(C)]
2887pub struct GtkDirectoryListClass {
2888    pub parent_class: gobject::GObjectClass,
2889}
2890
2891impl ::std::fmt::Debug for GtkDirectoryListClass {
2892    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2893        f.debug_struct(&format!("GtkDirectoryListClass @ {self:p}"))
2894            .field("parent_class", &self.parent_class)
2895            .finish()
2896    }
2897}
2898
2899#[derive(Copy, Clone)]
2900#[repr(C)]
2901pub struct GtkDragIconClass {
2902    pub parent_class: GtkWidgetClass,
2903}
2904
2905impl ::std::fmt::Debug for GtkDragIconClass {
2906    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2907        f.debug_struct(&format!("GtkDragIconClass @ {self:p}"))
2908            .field("parent_class", &self.parent_class)
2909            .finish()
2910    }
2911}
2912
2913#[repr(C)]
2914#[allow(dead_code)]
2915pub struct _GtkDragSourceClass {
2916    _data: [u8; 0],
2917    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2918}
2919
2920pub type GtkDragSourceClass = _GtkDragSourceClass;
2921
2922#[derive(Copy, Clone)]
2923#[repr(C)]
2924pub struct GtkDrawingAreaClass {
2925    pub parent_class: GtkWidgetClass,
2926    pub resize: Option<unsafe extern "C" fn(*mut GtkDrawingArea, c_int, c_int)>,
2927    pub padding: [gpointer; 8],
2928}
2929
2930impl ::std::fmt::Debug for GtkDrawingAreaClass {
2931    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2932        f.debug_struct(&format!("GtkDrawingAreaClass @ {self:p}"))
2933            .field("parent_class", &self.parent_class)
2934            .field("resize", &self.resize)
2935            .finish()
2936    }
2937}
2938
2939#[repr(C)]
2940#[allow(dead_code)]
2941pub struct _GtkDropControllerMotionClass {
2942    _data: [u8; 0],
2943    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2944}
2945
2946pub type GtkDropControllerMotionClass = _GtkDropControllerMotionClass;
2947
2948#[derive(Copy, Clone)]
2949#[repr(C)]
2950pub struct GtkDropDownClass {
2951    pub parent_class: GtkWidgetClass,
2952}
2953
2954impl ::std::fmt::Debug for GtkDropDownClass {
2955    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2956        f.debug_struct(&format!("GtkDropDownClass @ {self:p}"))
2957            .field("parent_class", &self.parent_class)
2958            .finish()
2959    }
2960}
2961
2962#[repr(C)]
2963#[allow(dead_code)]
2964pub struct _GtkDropTargetAsyncClass {
2965    _data: [u8; 0],
2966    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2967}
2968
2969pub type GtkDropTargetAsyncClass = _GtkDropTargetAsyncClass;
2970
2971#[repr(C)]
2972#[allow(dead_code)]
2973pub struct _GtkDropTargetClass {
2974    _data: [u8; 0],
2975    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2976}
2977
2978pub type GtkDropTargetClass = _GtkDropTargetClass;
2979
2980#[derive(Copy, Clone)]
2981#[repr(C)]
2982pub struct GtkEditableInterface {
2983    pub base_iface: gobject::GTypeInterface,
2984    pub insert_text:
2985        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
2986    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2987    pub changed: Option<unsafe extern "C" fn(*mut GtkEditable)>,
2988    pub get_text: Option<unsafe extern "C" fn(*mut GtkEditable) -> *const c_char>,
2989    pub do_insert_text:
2990        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
2991    pub do_delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2992    pub get_selection_bounds:
2993        Option<unsafe extern "C" fn(*mut GtkEditable, *mut c_int, *mut c_int) -> gboolean>,
2994    pub set_selection_bounds: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2995    pub get_delegate: Option<unsafe extern "C" fn(*mut GtkEditable) -> *mut GtkEditable>,
2996}
2997
2998impl ::std::fmt::Debug for GtkEditableInterface {
2999    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3000        f.debug_struct(&format!("GtkEditableInterface @ {self:p}"))
3001            .field("base_iface", &self.base_iface)
3002            .field("insert_text", &self.insert_text)
3003            .field("delete_text", &self.delete_text)
3004            .field("changed", &self.changed)
3005            .field("get_text", &self.get_text)
3006            .field("do_insert_text", &self.do_insert_text)
3007            .field("do_delete_text", &self.do_delete_text)
3008            .field("get_selection_bounds", &self.get_selection_bounds)
3009            .field("set_selection_bounds", &self.set_selection_bounds)
3010            .field("get_delegate", &self.get_delegate)
3011            .finish()
3012    }
3013}
3014
3015#[derive(Copy, Clone)]
3016#[repr(C)]
3017pub struct GtkEditableLabelClass {
3018    pub parent_class: GtkWidgetClass,
3019}
3020
3021impl ::std::fmt::Debug for GtkEditableLabelClass {
3022    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3023        f.debug_struct(&format!("GtkEditableLabelClass @ {self:p}"))
3024            .field("parent_class", &self.parent_class)
3025            .finish()
3026    }
3027}
3028
3029#[repr(C)]
3030#[allow(dead_code)]
3031pub struct _GtkEmojiChooserClass {
3032    _data: [u8; 0],
3033    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3034}
3035
3036pub type GtkEmojiChooserClass = _GtkEmojiChooserClass;
3037
3038#[derive(Copy, Clone)]
3039#[repr(C)]
3040pub struct GtkEntryBufferClass {
3041    pub parent_class: gobject::GObjectClass,
3042    pub inserted_text:
3043        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint)>,
3044    pub deleted_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint)>,
3045    pub get_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, *mut size_t) -> *const c_char>,
3046    pub get_length: Option<unsafe extern "C" fn(*mut GtkEntryBuffer) -> c_uint>,
3047    pub insert_text:
3048        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint) -> c_uint>,
3049    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint) -> c_uint>,
3050    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3051    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3052    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3053    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3054    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3055    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3056    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3057    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3058}
3059
3060impl ::std::fmt::Debug for GtkEntryBufferClass {
3061    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3062        f.debug_struct(&format!("GtkEntryBufferClass @ {self:p}"))
3063            .field("parent_class", &self.parent_class)
3064            .field("inserted_text", &self.inserted_text)
3065            .field("deleted_text", &self.deleted_text)
3066            .field("get_text", &self.get_text)
3067            .field("get_length", &self.get_length)
3068            .field("insert_text", &self.insert_text)
3069            .field("delete_text", &self.delete_text)
3070            .field("_gtk_reserved1", &self._gtk_reserved1)
3071            .field("_gtk_reserved2", &self._gtk_reserved2)
3072            .field("_gtk_reserved3", &self._gtk_reserved3)
3073            .field("_gtk_reserved4", &self._gtk_reserved4)
3074            .field("_gtk_reserved5", &self._gtk_reserved5)
3075            .field("_gtk_reserved6", &self._gtk_reserved6)
3076            .field("_gtk_reserved7", &self._gtk_reserved7)
3077            .field("_gtk_reserved8", &self._gtk_reserved8)
3078            .finish()
3079    }
3080}
3081
3082#[derive(Copy, Clone)]
3083#[repr(C)]
3084pub struct GtkEntryClass {
3085    pub parent_class: GtkWidgetClass,
3086    pub activate: Option<unsafe extern "C" fn(*mut GtkEntry)>,
3087    pub padding: [gpointer; 8],
3088}
3089
3090impl ::std::fmt::Debug for GtkEntryClass {
3091    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3092        f.debug_struct(&format!("GtkEntryClass @ {self:p}"))
3093            .field("parent_class", &self.parent_class)
3094            .field("activate", &self.activate)
3095            .finish()
3096    }
3097}
3098
3099#[repr(C)]
3100#[allow(dead_code)]
3101pub struct _GtkEventControllerClass {
3102    _data: [u8; 0],
3103    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3104}
3105
3106pub type GtkEventControllerClass = _GtkEventControllerClass;
3107
3108#[repr(C)]
3109#[allow(dead_code)]
3110pub struct _GtkEventControllerFocusClass {
3111    _data: [u8; 0],
3112    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3113}
3114
3115pub type GtkEventControllerFocusClass = _GtkEventControllerFocusClass;
3116
3117#[repr(C)]
3118#[allow(dead_code)]
3119pub struct _GtkEventControllerKeyClass {
3120    _data: [u8; 0],
3121    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3122}
3123
3124pub type GtkEventControllerKeyClass = _GtkEventControllerKeyClass;
3125
3126#[repr(C)]
3127#[allow(dead_code)]
3128pub struct _GtkEventControllerLegacyClass {
3129    _data: [u8; 0],
3130    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3131}
3132
3133pub type GtkEventControllerLegacyClass = _GtkEventControllerLegacyClass;
3134
3135#[repr(C)]
3136#[allow(dead_code)]
3137pub struct _GtkEventControllerMotionClass {
3138    _data: [u8; 0],
3139    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3140}
3141
3142pub type GtkEventControllerMotionClass = _GtkEventControllerMotionClass;
3143
3144#[repr(C)]
3145#[allow(dead_code)]
3146pub struct _GtkEventControllerScrollClass {
3147    _data: [u8; 0],
3148    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3149}
3150
3151pub type GtkEventControllerScrollClass = _GtkEventControllerScrollClass;
3152
3153#[repr(C)]
3154#[allow(dead_code)]
3155pub struct _GtkEveryFilterClass {
3156    _data: [u8; 0],
3157    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3158}
3159
3160pub type GtkEveryFilterClass = _GtkEveryFilterClass;
3161
3162#[repr(C)]
3163#[allow(dead_code)]
3164pub struct GtkExpressionWatch {
3165    _data: [u8; 0],
3166    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3167}
3168
3169impl ::std::fmt::Debug for GtkExpressionWatch {
3170    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3171        f.debug_struct(&format!("GtkExpressionWatch @ {self:p}"))
3172            .finish()
3173    }
3174}
3175
3176#[derive(Copy, Clone)]
3177#[repr(C)]
3178pub struct GtkFileChooserNativeClass {
3179    pub parent_class: GtkNativeDialogClass,
3180}
3181
3182impl ::std::fmt::Debug for GtkFileChooserNativeClass {
3183    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3184        f.debug_struct(&format!("GtkFileChooserNativeClass @ {self:p}"))
3185            .field("parent_class", &self.parent_class)
3186            .finish()
3187    }
3188}
3189
3190#[derive(Copy, Clone)]
3191#[repr(C)]
3192pub struct GtkFileDialogClass {
3193    pub parent_class: gobject::GObjectClass,
3194}
3195
3196impl ::std::fmt::Debug for GtkFileDialogClass {
3197    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3198        f.debug_struct(&format!("GtkFileDialogClass @ {self:p}"))
3199            .field("parent_class", &self.parent_class)
3200            .finish()
3201    }
3202}
3203
3204#[derive(Copy, Clone)]
3205#[repr(C)]
3206pub struct GtkFileLauncherClass {
3207    pub parent_class: gobject::GObjectClass,
3208}
3209
3210impl ::std::fmt::Debug for GtkFileLauncherClass {
3211    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3212        f.debug_struct(&format!("GtkFileLauncherClass @ {self:p}"))
3213            .field("parent_class", &self.parent_class)
3214            .finish()
3215    }
3216}
3217
3218#[derive(Copy, Clone)]
3219#[repr(C)]
3220pub struct GtkFilterClass {
3221    pub parent_class: gobject::GObjectClass,
3222    pub match_: Option<unsafe extern "C" fn(*mut GtkFilter, *mut gobject::GObject) -> gboolean>,
3223    pub get_strictness: Option<unsafe extern "C" fn(*mut GtkFilter) -> GtkFilterMatch>,
3224    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3225    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3226    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3227    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3228    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3229    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3230    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3231    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3232}
3233
3234impl ::std::fmt::Debug for GtkFilterClass {
3235    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3236        f.debug_struct(&format!("GtkFilterClass @ {self:p}"))
3237            .field("parent_class", &self.parent_class)
3238            .field("match_", &self.match_)
3239            .field("get_strictness", &self.get_strictness)
3240            .field("_gtk_reserved1", &self._gtk_reserved1)
3241            .field("_gtk_reserved2", &self._gtk_reserved2)
3242            .field("_gtk_reserved3", &self._gtk_reserved3)
3243            .field("_gtk_reserved4", &self._gtk_reserved4)
3244            .field("_gtk_reserved5", &self._gtk_reserved5)
3245            .field("_gtk_reserved6", &self._gtk_reserved6)
3246            .field("_gtk_reserved7", &self._gtk_reserved7)
3247            .field("_gtk_reserved8", &self._gtk_reserved8)
3248            .finish()
3249    }
3250}
3251
3252#[derive(Copy, Clone)]
3253#[repr(C)]
3254pub struct GtkFilterListModelClass {
3255    pub parent_class: gobject::GObjectClass,
3256}
3257
3258impl ::std::fmt::Debug for GtkFilterListModelClass {
3259    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3260        f.debug_struct(&format!("GtkFilterListModelClass @ {self:p}"))
3261            .field("parent_class", &self.parent_class)
3262            .finish()
3263    }
3264}
3265
3266#[derive(Copy, Clone)]
3267#[repr(C)]
3268pub struct GtkFixedClass {
3269    pub parent_class: GtkWidgetClass,
3270    pub padding: [gpointer; 8],
3271}
3272
3273impl ::std::fmt::Debug for GtkFixedClass {
3274    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3275        f.debug_struct(&format!("GtkFixedClass @ {self:p}"))
3276            .field("parent_class", &self.parent_class)
3277            .finish()
3278    }
3279}
3280
3281#[derive(Copy, Clone)]
3282#[repr(C)]
3283pub struct GtkFixedLayoutChildClass {
3284    pub parent_class: GtkLayoutChildClass,
3285}
3286
3287impl ::std::fmt::Debug for GtkFixedLayoutChildClass {
3288    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3289        f.debug_struct(&format!("GtkFixedLayoutChildClass @ {self:p}"))
3290            .field("parent_class", &self.parent_class)
3291            .finish()
3292    }
3293}
3294
3295#[derive(Copy, Clone)]
3296#[repr(C)]
3297pub struct GtkFixedLayoutClass {
3298    pub parent_class: GtkLayoutManagerClass,
3299}
3300
3301impl ::std::fmt::Debug for GtkFixedLayoutClass {
3302    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3303        f.debug_struct(&format!("GtkFixedLayoutClass @ {self:p}"))
3304            .field("parent_class", &self.parent_class)
3305            .finish()
3306    }
3307}
3308
3309#[derive(Copy, Clone)]
3310#[repr(C)]
3311pub struct GtkFlattenListModelClass {
3312    pub parent_class: gobject::GObjectClass,
3313}
3314
3315impl ::std::fmt::Debug for GtkFlattenListModelClass {
3316    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3317        f.debug_struct(&format!("GtkFlattenListModelClass @ {self:p}"))
3318            .field("parent_class", &self.parent_class)
3319            .finish()
3320    }
3321}
3322
3323#[derive(Copy, Clone)]
3324#[repr(C)]
3325pub struct GtkFlowBoxChildClass {
3326    pub parent_class: GtkWidgetClass,
3327    pub activate: Option<unsafe extern "C" fn(*mut GtkFlowBoxChild)>,
3328    pub padding: [gpointer; 8],
3329}
3330
3331impl ::std::fmt::Debug for GtkFlowBoxChildClass {
3332    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3333        f.debug_struct(&format!("GtkFlowBoxChildClass @ {self:p}"))
3334            .field("activate", &self.activate)
3335            .finish()
3336    }
3337}
3338
3339#[derive(Copy, Clone)]
3340#[repr(C)]
3341pub struct GtkFontChooserIface {
3342    pub base_iface: gobject::GTypeInterface,
3343    pub get_font_family:
3344        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFamily>,
3345    pub get_font_face:
3346        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFace>,
3347    pub get_font_size: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> c_int>,
3348    pub set_filter_func: Option<
3349        unsafe extern "C" fn(
3350            *mut GtkFontChooser,
3351            GtkFontFilterFunc,
3352            gpointer,
3353            glib::GDestroyNotify,
3354        ),
3355    >,
3356    pub font_activated: Option<unsafe extern "C" fn(*mut GtkFontChooser, *const c_char)>,
3357    pub set_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser, *mut pango::PangoFontMap)>,
3358    pub get_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontMap>,
3359    pub padding: [gpointer; 10],
3360}
3361
3362impl ::std::fmt::Debug for GtkFontChooserIface {
3363    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3364        f.debug_struct(&format!("GtkFontChooserIface @ {self:p}"))
3365            .field("base_iface", &self.base_iface)
3366            .field("get_font_family", &self.get_font_family)
3367            .field("get_font_face", &self.get_font_face)
3368            .field("get_font_size", &self.get_font_size)
3369            .field("set_filter_func", &self.set_filter_func)
3370            .field("font_activated", &self.font_activated)
3371            .field("set_font_map", &self.set_font_map)
3372            .field("get_font_map", &self.get_font_map)
3373            .finish()
3374    }
3375}
3376
3377#[derive(Copy, Clone)]
3378#[repr(C)]
3379pub struct GtkFontDialogButtonClass {
3380    pub parent_class: GtkWidgetClass,
3381}
3382
3383impl ::std::fmt::Debug for GtkFontDialogButtonClass {
3384    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3385        f.debug_struct(&format!("GtkFontDialogButtonClass @ {self:p}"))
3386            .field("parent_class", &self.parent_class)
3387            .finish()
3388    }
3389}
3390
3391#[derive(Copy, Clone)]
3392#[repr(C)]
3393pub struct GtkFontDialogClass {
3394    pub parent_class: gobject::GObjectClass,
3395}
3396
3397impl ::std::fmt::Debug for GtkFontDialogClass {
3398    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3399        f.debug_struct(&format!("GtkFontDialogClass @ {self:p}"))
3400            .field("parent_class", &self.parent_class)
3401            .finish()
3402    }
3403}
3404
3405#[derive(Copy, Clone)]
3406#[repr(C)]
3407pub struct GtkFrameClass {
3408    pub parent_class: GtkWidgetClass,
3409    pub compute_child_allocation: Option<unsafe extern "C" fn(*mut GtkFrame, *mut GtkAllocation)>,
3410    pub padding: [gpointer; 8],
3411}
3412
3413impl ::std::fmt::Debug for GtkFrameClass {
3414    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3415        f.debug_struct(&format!("GtkFrameClass @ {self:p}"))
3416            .field("parent_class", &self.parent_class)
3417            .field("compute_child_allocation", &self.compute_child_allocation)
3418            .finish()
3419    }
3420}
3421
3422#[derive(Copy, Clone)]
3423#[repr(C)]
3424pub struct GtkGLAreaClass {
3425    pub parent_class: GtkWidgetClass,
3426    pub render: Option<unsafe extern "C" fn(*mut GtkGLArea, *mut gdk::GdkGLContext) -> gboolean>,
3427    pub resize: Option<unsafe extern "C" fn(*mut GtkGLArea, c_int, c_int)>,
3428    pub create_context: Option<unsafe extern "C" fn(*mut GtkGLArea) -> *mut gdk::GdkGLContext>,
3429    pub _padding: [gpointer; 8],
3430}
3431
3432impl ::std::fmt::Debug for GtkGLAreaClass {
3433    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3434        f.debug_struct(&format!("GtkGLAreaClass @ {self:p}"))
3435            .field("render", &self.render)
3436            .field("resize", &self.resize)
3437            .field("create_context", &self.create_context)
3438            .finish()
3439    }
3440}
3441
3442#[repr(C)]
3443#[allow(dead_code)]
3444pub struct _GtkGestureClass {
3445    _data: [u8; 0],
3446    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3447}
3448
3449pub type GtkGestureClass = _GtkGestureClass;
3450
3451#[repr(C)]
3452#[allow(dead_code)]
3453pub struct _GtkGestureClickClass {
3454    _data: [u8; 0],
3455    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3456}
3457
3458pub type GtkGestureClickClass = _GtkGestureClickClass;
3459
3460#[repr(C)]
3461#[allow(dead_code)]
3462pub struct _GtkGestureDragClass {
3463    _data: [u8; 0],
3464    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3465}
3466
3467pub type GtkGestureDragClass = _GtkGestureDragClass;
3468
3469#[repr(C)]
3470#[allow(dead_code)]
3471pub struct _GtkGestureLongPressClass {
3472    _data: [u8; 0],
3473    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3474}
3475
3476pub type GtkGestureLongPressClass = _GtkGestureLongPressClass;
3477
3478#[repr(C)]
3479#[allow(dead_code)]
3480pub struct _GtkGesturePanClass {
3481    _data: [u8; 0],
3482    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3483}
3484
3485pub type GtkGesturePanClass = _GtkGesturePanClass;
3486
3487#[repr(C)]
3488#[allow(dead_code)]
3489pub struct _GtkGestureRotateClass {
3490    _data: [u8; 0],
3491    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3492}
3493
3494pub type GtkGestureRotateClass = _GtkGestureRotateClass;
3495
3496#[repr(C)]
3497#[allow(dead_code)]
3498pub struct _GtkGestureSingleClass {
3499    _data: [u8; 0],
3500    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3501}
3502
3503pub type GtkGestureSingleClass = _GtkGestureSingleClass;
3504
3505#[repr(C)]
3506#[allow(dead_code)]
3507pub struct _GtkGestureStylusClass {
3508    _data: [u8; 0],
3509    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3510}
3511
3512pub type GtkGestureStylusClass = _GtkGestureStylusClass;
3513
3514#[repr(C)]
3515#[allow(dead_code)]
3516pub struct _GtkGestureSwipeClass {
3517    _data: [u8; 0],
3518    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3519}
3520
3521pub type GtkGestureSwipeClass = _GtkGestureSwipeClass;
3522
3523#[repr(C)]
3524#[allow(dead_code)]
3525pub struct _GtkGestureZoomClass {
3526    _data: [u8; 0],
3527    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3528}
3529
3530pub type GtkGestureZoomClass = _GtkGestureZoomClass;
3531
3532#[derive(Copy, Clone)]
3533#[repr(C)]
3534pub struct GtkGraphicsOffloadClass {
3535    pub parent_class: GtkWidgetClass,
3536}
3537
3538impl ::std::fmt::Debug for GtkGraphicsOffloadClass {
3539    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3540        f.debug_struct(&format!("GtkGraphicsOffloadClass @ {self:p}"))
3541            .field("parent_class", &self.parent_class)
3542            .finish()
3543    }
3544}
3545
3546#[derive(Copy, Clone)]
3547#[repr(C)]
3548pub struct GtkGridClass {
3549    pub parent_class: GtkWidgetClass,
3550    pub padding: [gpointer; 8],
3551}
3552
3553impl ::std::fmt::Debug for GtkGridClass {
3554    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3555        f.debug_struct(&format!("GtkGridClass @ {self:p}"))
3556            .field("parent_class", &self.parent_class)
3557            .finish()
3558    }
3559}
3560
3561#[derive(Copy, Clone)]
3562#[repr(C)]
3563pub struct GtkGridLayoutChildClass {
3564    pub parent_class: GtkLayoutChildClass,
3565}
3566
3567impl ::std::fmt::Debug for GtkGridLayoutChildClass {
3568    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3569        f.debug_struct(&format!("GtkGridLayoutChildClass @ {self:p}"))
3570            .field("parent_class", &self.parent_class)
3571            .finish()
3572    }
3573}
3574
3575#[derive(Copy, Clone)]
3576#[repr(C)]
3577pub struct GtkGridLayoutClass {
3578    pub parent_class: GtkLayoutManagerClass,
3579}
3580
3581impl ::std::fmt::Debug for GtkGridLayoutClass {
3582    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3583        f.debug_struct(&format!("GtkGridLayoutClass @ {self:p}"))
3584            .field("parent_class", &self.parent_class)
3585            .finish()
3586    }
3587}
3588
3589#[repr(C)]
3590#[allow(dead_code)]
3591pub struct _GtkGridViewClass {
3592    _data: [u8; 0],
3593    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3594}
3595
3596pub type GtkGridViewClass = _GtkGridViewClass;
3597
3598#[derive(Copy, Clone)]
3599#[repr(C)]
3600pub struct GtkIMContextClass {
3601    pub parent_class: gobject::GObjectClass,
3602    pub preedit_start: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3603    pub preedit_end: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3604    pub preedit_changed: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3605    pub commit: Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char)>,
3606    pub retrieve_surrounding: Option<unsafe extern "C" fn(*mut GtkIMContext) -> gboolean>,
3607    pub delete_surrounding:
3608        Option<unsafe extern "C" fn(*mut GtkIMContext, c_int, c_int) -> gboolean>,
3609    pub set_client_widget: Option<unsafe extern "C" fn(*mut GtkIMContext, *mut GtkWidget)>,
3610    pub get_preedit_string: Option<
3611        unsafe extern "C" fn(
3612            *mut GtkIMContext,
3613            *mut *mut c_char,
3614            *mut *mut pango::PangoAttrList,
3615            *mut c_int,
3616        ),
3617    >,
3618    pub filter_keypress:
3619        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEvent) -> gboolean>,
3620    pub focus_in: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3621    pub focus_out: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3622    pub reset: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3623    pub set_cursor_location:
3624        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkRectangle)>,
3625    pub set_use_preedit: Option<unsafe extern "C" fn(*mut GtkIMContext, gboolean)>,
3626    pub set_surrounding:
3627        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int)>,
3628    pub get_surrounding:
3629        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut *mut c_char, *mut c_int) -> gboolean>,
3630    pub set_surrounding_with_selection:
3631        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int, c_int)>,
3632    pub get_surrounding_with_selection: Option<
3633        unsafe extern "C" fn(
3634            *mut GtkIMContext,
3635            *mut *mut c_char,
3636            *mut c_int,
3637            *mut c_int,
3638        ) -> gboolean,
3639    >,
3640    pub activate_osk: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3641    pub activate_osk_with_event:
3642        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEvent) -> gboolean>,
3643    pub invalid_composition:
3644        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char) -> gboolean>,
3645    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3646    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3647}
3648
3649impl ::std::fmt::Debug for GtkIMContextClass {
3650    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3651        f.debug_struct(&format!("GtkIMContextClass @ {self:p}"))
3652            .field("preedit_start", &self.preedit_start)
3653            .field("preedit_end", &self.preedit_end)
3654            .field("preedit_changed", &self.preedit_changed)
3655            .field("commit", &self.commit)
3656            .field("retrieve_surrounding", &self.retrieve_surrounding)
3657            .field("delete_surrounding", &self.delete_surrounding)
3658            .field("set_client_widget", &self.set_client_widget)
3659            .field("get_preedit_string", &self.get_preedit_string)
3660            .field("filter_keypress", &self.filter_keypress)
3661            .field("focus_in", &self.focus_in)
3662            .field("focus_out", &self.focus_out)
3663            .field("reset", &self.reset)
3664            .field("set_cursor_location", &self.set_cursor_location)
3665            .field("set_use_preedit", &self.set_use_preedit)
3666            .field("set_surrounding", &self.set_surrounding)
3667            .field("get_surrounding", &self.get_surrounding)
3668            .field(
3669                "set_surrounding_with_selection",
3670                &self.set_surrounding_with_selection,
3671            )
3672            .field(
3673                "get_surrounding_with_selection",
3674                &self.get_surrounding_with_selection,
3675            )
3676            .field("activate_osk", &self.activate_osk)
3677            .field("activate_osk_with_event", &self.activate_osk_with_event)
3678            .field("invalid_composition", &self.invalid_composition)
3679            .field("_gtk_reserved3", &self._gtk_reserved3)
3680            .field("_gtk_reserved4", &self._gtk_reserved4)
3681            .finish()
3682    }
3683}
3684
3685#[derive(Copy, Clone)]
3686#[repr(C)]
3687pub struct GtkIMContextSimpleClass {
3688    pub parent_class: GtkIMContextClass,
3689}
3690
3691impl ::std::fmt::Debug for GtkIMContextSimpleClass {
3692    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3693        f.debug_struct(&format!("GtkIMContextSimpleClass @ {self:p}"))
3694            .field("parent_class", &self.parent_class)
3695            .finish()
3696    }
3697}
3698
3699#[repr(C)]
3700#[allow(dead_code)]
3701pub struct _GtkIMContextSimplePrivate {
3702    _data: [u8; 0],
3703    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3704}
3705
3706pub type GtkIMContextSimplePrivate = _GtkIMContextSimplePrivate;
3707
3708#[derive(Copy, Clone)]
3709#[repr(C)]
3710pub struct GtkIMMulticontextClass {
3711    pub parent_class: GtkIMContextClass,
3712    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3713    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3714    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3715    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3716}
3717
3718impl ::std::fmt::Debug for GtkIMMulticontextClass {
3719    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3720        f.debug_struct(&format!("GtkIMMulticontextClass @ {self:p}"))
3721            .field("parent_class", &self.parent_class)
3722            .field("_gtk_reserved1", &self._gtk_reserved1)
3723            .field("_gtk_reserved2", &self._gtk_reserved2)
3724            .field("_gtk_reserved3", &self._gtk_reserved3)
3725            .field("_gtk_reserved4", &self._gtk_reserved4)
3726            .finish()
3727    }
3728}
3729
3730#[repr(C)]
3731#[allow(dead_code)]
3732pub struct _GtkIMMulticontextPrivate {
3733    _data: [u8; 0],
3734    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3735}
3736
3737pub type GtkIMMulticontextPrivate = _GtkIMMulticontextPrivate;
3738
3739#[derive(Copy, Clone)]
3740#[repr(C)]
3741pub struct GtkIconPaintableClass {
3742    pub parent_class: gobject::GObjectClass,
3743}
3744
3745impl ::std::fmt::Debug for GtkIconPaintableClass {
3746    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3747        f.debug_struct(&format!("GtkIconPaintableClass @ {self:p}"))
3748            .field("parent_class", &self.parent_class)
3749            .finish()
3750    }
3751}
3752
3753#[derive(Copy, Clone)]
3754#[repr(C)]
3755pub struct GtkInscriptionClass {
3756    pub parent_class: GtkWidgetClass,
3757}
3758
3759impl ::std::fmt::Debug for GtkInscriptionClass {
3760    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3761        f.debug_struct(&format!("GtkInscriptionClass @ {self:p}"))
3762            .field("parent_class", &self.parent_class)
3763            .finish()
3764    }
3765}
3766
3767#[repr(C)]
3768#[allow(dead_code)]
3769pub struct _GtkKeyvalTriggerClass {
3770    _data: [u8; 0],
3771    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3772}
3773
3774pub type GtkKeyvalTriggerClass = _GtkKeyvalTriggerClass;
3775
3776#[derive(Copy, Clone)]
3777#[repr(C)]
3778pub struct GtkLayoutChildClass {
3779    pub parent_class: gobject::GObjectClass,
3780}
3781
3782impl ::std::fmt::Debug for GtkLayoutChildClass {
3783    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3784        f.debug_struct(&format!("GtkLayoutChildClass @ {self:p}"))
3785            .finish()
3786    }
3787}
3788
3789#[derive(Copy, Clone)]
3790#[repr(C)]
3791pub struct GtkLayoutManagerClass {
3792    pub parent_class: gobject::GObjectClass,
3793    pub get_request_mode:
3794        Option<unsafe extern "C" fn(*mut GtkLayoutManager, *mut GtkWidget) -> GtkSizeRequestMode>,
3795    pub measure: Option<
3796        unsafe extern "C" fn(
3797            *mut GtkLayoutManager,
3798            *mut GtkWidget,
3799            GtkOrientation,
3800            c_int,
3801            *mut c_int,
3802            *mut c_int,
3803            *mut c_int,
3804            *mut c_int,
3805        ),
3806    >,
3807    pub allocate:
3808        Option<unsafe extern "C" fn(*mut GtkLayoutManager, *mut GtkWidget, c_int, c_int, c_int)>,
3809    pub layout_child_type: GType,
3810    pub create_layout_child: Option<
3811        unsafe extern "C" fn(
3812            *mut GtkLayoutManager,
3813            *mut GtkWidget,
3814            *mut GtkWidget,
3815        ) -> *mut GtkLayoutChild,
3816    >,
3817    pub root: Option<unsafe extern "C" fn(*mut GtkLayoutManager)>,
3818    pub unroot: Option<unsafe extern "C" fn(*mut GtkLayoutManager)>,
3819    pub _padding: [gpointer; 16],
3820}
3821
3822impl ::std::fmt::Debug for GtkLayoutManagerClass {
3823    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3824        f.debug_struct(&format!("GtkLayoutManagerClass @ {self:p}"))
3825            .field("get_request_mode", &self.get_request_mode)
3826            .field("measure", &self.measure)
3827            .field("allocate", &self.allocate)
3828            .field("layout_child_type", &self.layout_child_type)
3829            .field("create_layout_child", &self.create_layout_child)
3830            .field("root", &self.root)
3831            .field("unroot", &self.unroot)
3832            .finish()
3833    }
3834}
3835
3836#[repr(C)]
3837#[allow(dead_code)]
3838pub struct _GtkListBaseClass {
3839    _data: [u8; 0],
3840    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3841}
3842
3843pub type GtkListBaseClass = _GtkListBaseClass;
3844
3845#[derive(Copy, Clone)]
3846#[repr(C)]
3847pub struct GtkListBoxRowClass {
3848    pub parent_class: GtkWidgetClass,
3849    pub activate: Option<unsafe extern "C" fn(*mut GtkListBoxRow)>,
3850    pub padding: [gpointer; 8],
3851}
3852
3853impl ::std::fmt::Debug for GtkListBoxRowClass {
3854    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3855        f.debug_struct(&format!("GtkListBoxRowClass @ {self:p}"))
3856            .field("parent_class", &self.parent_class)
3857            .field("activate", &self.activate)
3858            .finish()
3859    }
3860}
3861
3862#[repr(C)]
3863#[allow(dead_code)]
3864pub struct _GtkListHeaderClass {
3865    _data: [u8; 0],
3866    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3867}
3868
3869pub type GtkListHeaderClass = _GtkListHeaderClass;
3870
3871#[repr(C)]
3872#[allow(dead_code)]
3873pub struct _GtkListItemClass {
3874    _data: [u8; 0],
3875    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3876}
3877
3878pub type GtkListItemClass = _GtkListItemClass;
3879
3880#[repr(C)]
3881#[allow(dead_code)]
3882pub struct _GtkListItemFactoryClass {
3883    _data: [u8; 0],
3884    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3885}
3886
3887pub type GtkListItemFactoryClass = _GtkListItemFactoryClass;
3888
3889#[derive(Copy, Clone)]
3890#[repr(C)]
3891pub struct GtkListStoreClass {
3892    pub parent_class: gobject::GObjectClass,
3893    pub padding: [gpointer; 8],
3894}
3895
3896impl ::std::fmt::Debug for GtkListStoreClass {
3897    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3898        f.debug_struct(&format!("GtkListStoreClass @ {self:p}"))
3899            .field("parent_class", &self.parent_class)
3900            .finish()
3901    }
3902}
3903
3904#[repr(C)]
3905#[allow(dead_code)]
3906pub struct _GtkListStorePrivate {
3907    _data: [u8; 0],
3908    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3909}
3910
3911pub type GtkListStorePrivate = _GtkListStorePrivate;
3912
3913#[repr(C)]
3914#[allow(dead_code)]
3915pub struct _GtkListViewClass {
3916    _data: [u8; 0],
3917    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3918}
3919
3920pub type GtkListViewClass = _GtkListViewClass;
3921
3922#[derive(Copy, Clone)]
3923#[repr(C)]
3924pub struct GtkMapListModelClass {
3925    pub parent_class: gobject::GObjectClass,
3926}
3927
3928impl ::std::fmt::Debug for GtkMapListModelClass {
3929    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3930        f.debug_struct(&format!("GtkMapListModelClass @ {self:p}"))
3931            .field("parent_class", &self.parent_class)
3932            .finish()
3933    }
3934}
3935
3936#[derive(Copy, Clone)]
3937#[repr(C)]
3938pub struct GtkMediaControlsClass {
3939    pub parent_class: GtkWidgetClass,
3940}
3941
3942impl ::std::fmt::Debug for GtkMediaControlsClass {
3943    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3944        f.debug_struct(&format!("GtkMediaControlsClass @ {self:p}"))
3945            .field("parent_class", &self.parent_class)
3946            .finish()
3947    }
3948}
3949
3950#[derive(Copy, Clone)]
3951#[repr(C)]
3952pub struct GtkMediaFileClass {
3953    pub parent_class: GtkMediaStreamClass,
3954    pub open: Option<unsafe extern "C" fn(*mut GtkMediaFile)>,
3955    pub close: Option<unsafe extern "C" fn(*mut GtkMediaFile)>,
3956    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3957    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3958    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3959    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3960}
3961
3962impl ::std::fmt::Debug for GtkMediaFileClass {
3963    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3964        f.debug_struct(&format!("GtkMediaFileClass @ {self:p}"))
3965            .field("parent_class", &self.parent_class)
3966            .field("open", &self.open)
3967            .field("close", &self.close)
3968            .field("_gtk_reserved1", &self._gtk_reserved1)
3969            .field("_gtk_reserved2", &self._gtk_reserved2)
3970            .field("_gtk_reserved3", &self._gtk_reserved3)
3971            .field("_gtk_reserved4", &self._gtk_reserved4)
3972            .finish()
3973    }
3974}
3975
3976#[derive(Copy, Clone)]
3977#[repr(C)]
3978pub struct GtkMediaStreamClass {
3979    pub parent_class: gobject::GObjectClass,
3980    pub play: Option<unsafe extern "C" fn(*mut GtkMediaStream) -> gboolean>,
3981    pub pause: Option<unsafe extern "C" fn(*mut GtkMediaStream)>,
3982    pub seek: Option<unsafe extern "C" fn(*mut GtkMediaStream, i64)>,
3983    pub update_audio: Option<unsafe extern "C" fn(*mut GtkMediaStream, gboolean, c_double)>,
3984    pub realize: Option<unsafe extern "C" fn(*mut GtkMediaStream, *mut gdk::GdkSurface)>,
3985    pub unrealize: Option<unsafe extern "C" fn(*mut GtkMediaStream, *mut gdk::GdkSurface)>,
3986    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3987    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3988    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3989    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3990    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3991    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3992    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3993    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3994}
3995
3996impl ::std::fmt::Debug for GtkMediaStreamClass {
3997    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3998        f.debug_struct(&format!("GtkMediaStreamClass @ {self:p}"))
3999            .field("parent_class", &self.parent_class)
4000            .field("play", &self.play)
4001            .field("pause", &self.pause)
4002            .field("seek", &self.seek)
4003            .field("update_audio", &self.update_audio)
4004            .field("realize", &self.realize)
4005            .field("unrealize", &self.unrealize)
4006            .field("_gtk_reserved1", &self._gtk_reserved1)
4007            .field("_gtk_reserved2", &self._gtk_reserved2)
4008            .field("_gtk_reserved3", &self._gtk_reserved3)
4009            .field("_gtk_reserved4", &self._gtk_reserved4)
4010            .field("_gtk_reserved5", &self._gtk_reserved5)
4011            .field("_gtk_reserved6", &self._gtk_reserved6)
4012            .field("_gtk_reserved7", &self._gtk_reserved7)
4013            .field("_gtk_reserved8", &self._gtk_reserved8)
4014            .finish()
4015    }
4016}
4017
4018#[repr(C)]
4019#[allow(dead_code)]
4020pub struct _GtkMessageDialogClass {
4021    _data: [u8; 0],
4022    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4023}
4024
4025pub type GtkMessageDialogClass = _GtkMessageDialogClass;
4026
4027#[repr(C)]
4028#[allow(dead_code)]
4029pub struct _GtkMnemonicActionClass {
4030    _data: [u8; 0],
4031    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4032}
4033
4034pub type GtkMnemonicActionClass = _GtkMnemonicActionClass;
4035
4036#[repr(C)]
4037#[allow(dead_code)]
4038pub struct _GtkMnemonicTriggerClass {
4039    _data: [u8; 0],
4040    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4041}
4042
4043pub type GtkMnemonicTriggerClass = _GtkMnemonicTriggerClass;
4044
4045#[derive(Copy, Clone)]
4046#[repr(C)]
4047pub struct GtkMountOperationClass {
4048    pub parent_class: gio::GMountOperationClass,
4049    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4050    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4051    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4052    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4053}
4054
4055impl ::std::fmt::Debug for GtkMountOperationClass {
4056    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4057        f.debug_struct(&format!("GtkMountOperationClass @ {self:p}"))
4058            .field("parent_class", &self.parent_class)
4059            .field("_gtk_reserved1", &self._gtk_reserved1)
4060            .field("_gtk_reserved2", &self._gtk_reserved2)
4061            .field("_gtk_reserved3", &self._gtk_reserved3)
4062            .field("_gtk_reserved4", &self._gtk_reserved4)
4063            .finish()
4064    }
4065}
4066
4067#[repr(C)]
4068#[allow(dead_code)]
4069pub struct _GtkMountOperationPrivate {
4070    _data: [u8; 0],
4071    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4072}
4073
4074pub type GtkMountOperationPrivate = _GtkMountOperationPrivate;
4075
4076#[repr(C)]
4077#[allow(dead_code)]
4078pub struct _GtkMultiFilterClass {
4079    _data: [u8; 0],
4080    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4081}
4082
4083pub type GtkMultiFilterClass = _GtkMultiFilterClass;
4084
4085#[derive(Copy, Clone)]
4086#[repr(C)]
4087pub struct GtkMultiSelectionClass {
4088    pub parent_class: gobject::GObjectClass,
4089}
4090
4091impl ::std::fmt::Debug for GtkMultiSelectionClass {
4092    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4093        f.debug_struct(&format!("GtkMultiSelectionClass @ {self:p}"))
4094            .field("parent_class", &self.parent_class)
4095            .finish()
4096    }
4097}
4098
4099#[derive(Copy, Clone)]
4100#[repr(C)]
4101pub struct GtkMultiSorterClass {
4102    pub parent_class: GtkSorterClass,
4103}
4104
4105impl ::std::fmt::Debug for GtkMultiSorterClass {
4106    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4107        f.debug_struct(&format!("GtkMultiSorterClass @ {self:p}"))
4108            .field("parent_class", &self.parent_class)
4109            .finish()
4110    }
4111}
4112
4113#[repr(C)]
4114#[allow(dead_code)]
4115pub struct _GtkNamedActionClass {
4116    _data: [u8; 0],
4117    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4118}
4119
4120pub type GtkNamedActionClass = _GtkNamedActionClass;
4121
4122#[derive(Copy, Clone)]
4123#[repr(C)]
4124pub struct GtkNativeDialogClass {
4125    pub parent_class: gobject::GObjectClass,
4126    pub response: Option<unsafe extern "C" fn(*mut GtkNativeDialog, GtkResponseType)>,
4127    pub show: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
4128    pub hide: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
4129    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4130    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4131    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4132    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4133}
4134
4135impl ::std::fmt::Debug for GtkNativeDialogClass {
4136    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4137        f.debug_struct(&format!("GtkNativeDialogClass @ {self:p}"))
4138            .field("response", &self.response)
4139            .field("show", &self.show)
4140            .field("hide", &self.hide)
4141            .field("_gtk_reserved1", &self._gtk_reserved1)
4142            .field("_gtk_reserved2", &self._gtk_reserved2)
4143            .field("_gtk_reserved3", &self._gtk_reserved3)
4144            .field("_gtk_reserved4", &self._gtk_reserved4)
4145            .finish()
4146    }
4147}
4148
4149#[repr(C)]
4150#[allow(dead_code)]
4151pub struct _GtkNativeInterface {
4152    _data: [u8; 0],
4153    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4154}
4155
4156pub type GtkNativeInterface = _GtkNativeInterface;
4157
4158#[repr(C)]
4159#[allow(dead_code)]
4160pub struct _GtkNeverTriggerClass {
4161    _data: [u8; 0],
4162    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4163}
4164
4165pub type GtkNeverTriggerClass = _GtkNeverTriggerClass;
4166
4167#[derive(Copy, Clone)]
4168#[repr(C)]
4169pub struct GtkNoSelectionClass {
4170    pub parent_class: gobject::GObjectClass,
4171}
4172
4173impl ::std::fmt::Debug for GtkNoSelectionClass {
4174    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4175        f.debug_struct(&format!("GtkNoSelectionClass @ {self:p}"))
4176            .field("parent_class", &self.parent_class)
4177            .finish()
4178    }
4179}
4180
4181#[repr(C)]
4182#[allow(dead_code)]
4183pub struct _GtkNothingActionClass {
4184    _data: [u8; 0],
4185    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4186}
4187
4188pub type GtkNothingActionClass = _GtkNothingActionClass;
4189
4190#[derive(Copy, Clone)]
4191#[repr(C)]
4192pub struct GtkNumericSorterClass {
4193    pub parent_class: GtkSorterClass,
4194}
4195
4196impl ::std::fmt::Debug for GtkNumericSorterClass {
4197    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4198        f.debug_struct(&format!("GtkNumericSorterClass @ {self:p}"))
4199            .field("parent_class", &self.parent_class)
4200            .finish()
4201    }
4202}
4203
4204#[derive(Copy, Clone)]
4205#[repr(C)]
4206pub struct GtkOrientableIface {
4207    pub base_iface: gobject::GTypeInterface,
4208}
4209
4210impl ::std::fmt::Debug for GtkOrientableIface {
4211    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4212        f.debug_struct(&format!("GtkOrientableIface @ {self:p}"))
4213            .field("base_iface", &self.base_iface)
4214            .finish()
4215    }
4216}
4217
4218#[derive(Copy, Clone)]
4219#[repr(C)]
4220pub struct GtkOverlayLayoutChildClass {
4221    pub parent_class: GtkLayoutChildClass,
4222}
4223
4224impl ::std::fmt::Debug for GtkOverlayLayoutChildClass {
4225    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4226        f.debug_struct(&format!("GtkOverlayLayoutChildClass @ {self:p}"))
4227            .field("parent_class", &self.parent_class)
4228            .finish()
4229    }
4230}
4231
4232#[derive(Copy, Clone)]
4233#[repr(C)]
4234pub struct GtkOverlayLayoutClass {
4235    pub parent_class: GtkLayoutManagerClass,
4236}
4237
4238impl ::std::fmt::Debug for GtkOverlayLayoutClass {
4239    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4240        f.debug_struct(&format!("GtkOverlayLayoutClass @ {self:p}"))
4241            .field("parent_class", &self.parent_class)
4242            .finish()
4243    }
4244}
4245
4246#[derive(Copy, Clone)]
4247#[repr(C)]
4248pub struct GtkPadActionEntry {
4249    pub type_: GtkPadActionType,
4250    pub index: c_int,
4251    pub mode: c_int,
4252    pub label: *const c_char,
4253    pub action_name: *const c_char,
4254}
4255
4256impl ::std::fmt::Debug for GtkPadActionEntry {
4257    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4258        f.debug_struct(&format!("GtkPadActionEntry @ {self:p}"))
4259            .field("type_", &self.type_)
4260            .field("index", &self.index)
4261            .field("mode", &self.mode)
4262            .field("label", &self.label)
4263            .field("action_name", &self.action_name)
4264            .finish()
4265    }
4266}
4267
4268#[repr(C)]
4269#[allow(dead_code)]
4270pub struct _GtkPadControllerClass {
4271    _data: [u8; 0],
4272    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4273}
4274
4275pub type GtkPadControllerClass = _GtkPadControllerClass;
4276
4277#[derive(Copy, Clone)]
4278#[repr(C)]
4279pub struct GtkPageRange {
4280    pub start: c_int,
4281    pub end: c_int,
4282}
4283
4284impl ::std::fmt::Debug for GtkPageRange {
4285    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4286        f.debug_struct(&format!("GtkPageRange @ {self:p}"))
4287            .field("start", &self.start)
4288            .field("end", &self.end)
4289            .finish()
4290    }
4291}
4292
4293#[repr(C)]
4294#[allow(dead_code)]
4295pub struct GtkPaperSize {
4296    _data: [u8; 0],
4297    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4298}
4299
4300impl ::std::fmt::Debug for GtkPaperSize {
4301    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4302        f.debug_struct(&format!("GtkPaperSize @ {self:p}")).finish()
4303    }
4304}
4305
4306#[derive(Copy, Clone)]
4307#[repr(C)]
4308pub struct GtkPasswordEntryBufferClass {
4309    pub parent_class: GtkEntryBufferClass,
4310}
4311
4312impl ::std::fmt::Debug for GtkPasswordEntryBufferClass {
4313    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4314        f.debug_struct(&format!("GtkPasswordEntryBufferClass @ {self:p}"))
4315            .field("parent_class", &self.parent_class)
4316            .finish()
4317    }
4318}
4319
4320#[repr(C)]
4321#[allow(dead_code)]
4322pub struct _GtkPasswordEntryClass {
4323    _data: [u8; 0],
4324    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4325}
4326
4327pub type GtkPasswordEntryClass = _GtkPasswordEntryClass;
4328
4329#[derive(Copy, Clone)]
4330#[repr(C)]
4331pub struct GtkPictureClass {
4332    pub parent_class: GtkWidgetClass,
4333}
4334
4335impl ::std::fmt::Debug for GtkPictureClass {
4336    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4337        f.debug_struct(&format!("GtkPictureClass @ {self:p}"))
4338            .field("parent_class", &self.parent_class)
4339            .finish()
4340    }
4341}
4342
4343#[derive(Copy, Clone)]
4344#[repr(C)]
4345pub struct GtkPopoverClass {
4346    pub parent_class: GtkWidgetClass,
4347    pub closed: Option<unsafe extern "C" fn(*mut GtkPopover)>,
4348    pub activate_default: Option<unsafe extern "C" fn(*mut GtkPopover)>,
4349    pub reserved: [gpointer; 8],
4350}
4351
4352impl ::std::fmt::Debug for GtkPopoverClass {
4353    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4354        f.debug_struct(&format!("GtkPopoverClass @ {self:p}"))
4355            .field("parent_class", &self.parent_class)
4356            .field("closed", &self.closed)
4357            .field("activate_default", &self.activate_default)
4358            .finish()
4359    }
4360}
4361
4362#[repr(C)]
4363#[allow(dead_code)]
4364pub struct _GtkPrintBackend {
4365    _data: [u8; 0],
4366    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4367}
4368
4369pub type GtkPrintBackend = _GtkPrintBackend;
4370
4371#[derive(Copy, Clone)]
4372#[repr(C)]
4373pub struct GtkPrintDialogClass {
4374    pub parent_class: gobject::GObjectClass,
4375}
4376
4377impl ::std::fmt::Debug for GtkPrintDialogClass {
4378    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4379        f.debug_struct(&format!("GtkPrintDialogClass @ {self:p}"))
4380            .field("parent_class", &self.parent_class)
4381            .finish()
4382    }
4383}
4384
4385#[derive(Copy, Clone)]
4386#[repr(C)]
4387pub struct GtkPrintOperationClass {
4388    pub parent_class: gobject::GObjectClass,
4389    pub done: Option<unsafe extern "C" fn(*mut GtkPrintOperation, GtkPrintOperationResult)>,
4390    pub begin_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
4391    pub paginate:
4392        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext) -> gboolean>,
4393    pub request_page_setup: Option<
4394        unsafe extern "C" fn(
4395            *mut GtkPrintOperation,
4396            *mut GtkPrintContext,
4397            c_int,
4398            *mut GtkPageSetup,
4399        ),
4400    >,
4401    pub draw_page:
4402        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext, c_int)>,
4403    pub end_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
4404    pub status_changed: Option<unsafe extern "C" fn(*mut GtkPrintOperation)>,
4405    pub create_custom_widget:
4406        Option<unsafe extern "C" fn(*mut GtkPrintOperation) -> *mut GtkWidget>,
4407    pub custom_widget_apply: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkWidget)>,
4408    pub preview: Option<
4409        unsafe extern "C" fn(
4410            *mut GtkPrintOperation,
4411            *mut GtkPrintOperationPreview,
4412            *mut GtkPrintContext,
4413            *mut GtkWindow,
4414        ) -> gboolean,
4415    >,
4416    pub update_custom_widget: Option<
4417        unsafe extern "C" fn(
4418            *mut GtkPrintOperation,
4419            *mut GtkWidget,
4420            *mut GtkPageSetup,
4421            *mut GtkPrintSettings,
4422        ),
4423    >,
4424    pub padding: [gpointer; 8],
4425}
4426
4427impl ::std::fmt::Debug for GtkPrintOperationClass {
4428    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4429        f.debug_struct(&format!("GtkPrintOperationClass @ {self:p}"))
4430            .field("parent_class", &self.parent_class)
4431            .field("done", &self.done)
4432            .field("begin_print", &self.begin_print)
4433            .field("paginate", &self.paginate)
4434            .field("request_page_setup", &self.request_page_setup)
4435            .field("draw_page", &self.draw_page)
4436            .field("end_print", &self.end_print)
4437            .field("status_changed", &self.status_changed)
4438            .field("create_custom_widget", &self.create_custom_widget)
4439            .field("custom_widget_apply", &self.custom_widget_apply)
4440            .field("preview", &self.preview)
4441            .field("update_custom_widget", &self.update_custom_widget)
4442            .finish()
4443    }
4444}
4445
4446#[derive(Copy, Clone)]
4447#[repr(C)]
4448pub struct GtkPrintOperationPreviewIface {
4449    pub g_iface: gobject::GTypeInterface,
4450    pub ready: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, *mut GtkPrintContext)>,
4451    pub got_page_size: Option<
4452        unsafe extern "C" fn(
4453            *mut GtkPrintOperationPreview,
4454            *mut GtkPrintContext,
4455            *mut GtkPageSetup,
4456        ),
4457    >,
4458    pub render_page: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int)>,
4459    pub is_selected: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int) -> gboolean>,
4460    pub end_preview: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview)>,
4461    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4462    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4463    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4464    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4465    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4466    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4467    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4468    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4469}
4470
4471impl ::std::fmt::Debug for GtkPrintOperationPreviewIface {
4472    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4473        f.debug_struct(&format!("GtkPrintOperationPreviewIface @ {self:p}"))
4474            .field("g_iface", &self.g_iface)
4475            .field("ready", &self.ready)
4476            .field("got_page_size", &self.got_page_size)
4477            .field("render_page", &self.render_page)
4478            .field("is_selected", &self.is_selected)
4479            .field("end_preview", &self.end_preview)
4480            .field("_gtk_reserved1", &self._gtk_reserved1)
4481            .field("_gtk_reserved2", &self._gtk_reserved2)
4482            .field("_gtk_reserved3", &self._gtk_reserved3)
4483            .field("_gtk_reserved4", &self._gtk_reserved4)
4484            .field("_gtk_reserved5", &self._gtk_reserved5)
4485            .field("_gtk_reserved6", &self._gtk_reserved6)
4486            .field("_gtk_reserved7", &self._gtk_reserved7)
4487            .field("_gtk_reserved8", &self._gtk_reserved8)
4488            .finish()
4489    }
4490}
4491
4492#[repr(C)]
4493#[allow(dead_code)]
4494pub struct _GtkPrintOperationPrivate {
4495    _data: [u8; 0],
4496    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4497}
4498
4499pub type GtkPrintOperationPrivate = _GtkPrintOperationPrivate;
4500
4501#[repr(C)]
4502#[allow(dead_code)]
4503pub struct GtkPrintSetup {
4504    _data: [u8; 0],
4505    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4506}
4507
4508impl ::std::fmt::Debug for GtkPrintSetup {
4509    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4510        f.debug_struct(&format!("GtkPrintSetup @ {self:p}"))
4511            .finish()
4512    }
4513}
4514
4515#[derive(Copy, Clone)]
4516#[repr(C)]
4517pub struct GtkRangeClass {
4518    pub parent_class: GtkWidgetClass,
4519    pub value_changed: Option<unsafe extern "C" fn(*mut GtkRange)>,
4520    pub adjust_bounds: Option<unsafe extern "C" fn(*mut GtkRange, c_double)>,
4521    pub move_slider: Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType)>,
4522    pub get_range_border: Option<unsafe extern "C" fn(*mut GtkRange, *mut GtkBorder)>,
4523    pub change_value:
4524        Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType, c_double) -> gboolean>,
4525    pub padding: [gpointer; 8],
4526}
4527
4528impl ::std::fmt::Debug for GtkRangeClass {
4529    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4530        f.debug_struct(&format!("GtkRangeClass @ {self:p}"))
4531            .field("parent_class", &self.parent_class)
4532            .field("value_changed", &self.value_changed)
4533            .field("adjust_bounds", &self.adjust_bounds)
4534            .field("move_slider", &self.move_slider)
4535            .field("get_range_border", &self.get_range_border)
4536            .field("change_value", &self.change_value)
4537            .finish()
4538    }
4539}
4540
4541#[derive(Copy, Clone)]
4542#[repr(C)]
4543pub struct GtkRecentData {
4544    pub display_name: *mut c_char,
4545    pub description: *mut c_char,
4546    pub mime_type: *mut c_char,
4547    pub app_name: *mut c_char,
4548    pub app_exec: *mut c_char,
4549    pub groups: *mut *mut c_char,
4550    pub is_private: gboolean,
4551}
4552
4553impl ::std::fmt::Debug for GtkRecentData {
4554    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4555        f.debug_struct(&format!("GtkRecentData @ {self:p}"))
4556            .field("display_name", &self.display_name)
4557            .field("description", &self.description)
4558            .field("mime_type", &self.mime_type)
4559            .field("app_name", &self.app_name)
4560            .field("app_exec", &self.app_exec)
4561            .field("groups", &self.groups)
4562            .field("is_private", &self.is_private)
4563            .finish()
4564    }
4565}
4566
4567#[repr(C)]
4568#[allow(dead_code)]
4569pub struct GtkRecentInfo {
4570    _data: [u8; 0],
4571    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4572}
4573
4574impl ::std::fmt::Debug for GtkRecentInfo {
4575    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4576        f.debug_struct(&format!("GtkRecentInfo @ {self:p}"))
4577            .finish()
4578    }
4579}
4580
4581#[derive(Copy, Clone)]
4582#[repr(C)]
4583pub struct GtkRecentManagerClass {
4584    pub parent_class: gobject::GObjectClass,
4585    pub changed: Option<unsafe extern "C" fn(*mut GtkRecentManager)>,
4586    pub _gtk_recent1: Option<unsafe extern "C" fn()>,
4587    pub _gtk_recent2: Option<unsafe extern "C" fn()>,
4588    pub _gtk_recent3: Option<unsafe extern "C" fn()>,
4589    pub _gtk_recent4: Option<unsafe extern "C" fn()>,
4590}
4591
4592impl ::std::fmt::Debug for GtkRecentManagerClass {
4593    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4594        f.debug_struct(&format!("GtkRecentManagerClass @ {self:p}"))
4595            .field("changed", &self.changed)
4596            .field("_gtk_recent1", &self._gtk_recent1)
4597            .field("_gtk_recent2", &self._gtk_recent2)
4598            .field("_gtk_recent3", &self._gtk_recent3)
4599            .field("_gtk_recent4", &self._gtk_recent4)
4600            .finish()
4601    }
4602}
4603
4604#[repr(C)]
4605#[allow(dead_code)]
4606pub struct _GtkRecentManagerPrivate {
4607    _data: [u8; 0],
4608    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4609}
4610
4611pub type GtkRecentManagerPrivate = _GtkRecentManagerPrivate;
4612
4613#[derive(Copy, Clone)]
4614#[repr(C)]
4615pub struct GtkRequestedSize {
4616    pub data: gpointer,
4617    pub minimum_size: c_int,
4618    pub natural_size: c_int,
4619}
4620
4621impl ::std::fmt::Debug for GtkRequestedSize {
4622    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4623        f.debug_struct(&format!("GtkRequestedSize @ {self:p}"))
4624            .field("data", &self.data)
4625            .field("minimum_size", &self.minimum_size)
4626            .field("natural_size", &self.natural_size)
4627            .finish()
4628    }
4629}
4630
4631#[derive(Copy, Clone)]
4632#[repr(C)]
4633pub struct GtkRequisition {
4634    pub width: c_int,
4635    pub height: c_int,
4636}
4637
4638impl ::std::fmt::Debug for GtkRequisition {
4639    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4640        f.debug_struct(&format!("GtkRequisition @ {self:p}"))
4641            .field("width", &self.width)
4642            .field("height", &self.height)
4643            .finish()
4644    }
4645}
4646
4647#[repr(C)]
4648#[allow(dead_code)]
4649pub struct _GtkRootInterface {
4650    _data: [u8; 0],
4651    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4652}
4653
4654pub type GtkRootInterface = _GtkRootInterface;
4655
4656#[derive(Copy, Clone)]
4657#[repr(C)]
4658pub struct GtkScaleButtonClass {
4659    pub parent_class: GtkWidgetClass,
4660    pub value_changed: Option<unsafe extern "C" fn(*mut GtkScaleButton, c_double)>,
4661    pub padding: [gpointer; 8],
4662}
4663
4664impl ::std::fmt::Debug for GtkScaleButtonClass {
4665    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4666        f.debug_struct(&format!("GtkScaleButtonClass @ {self:p}"))
4667            .field("parent_class", &self.parent_class)
4668            .field("value_changed", &self.value_changed)
4669            .finish()
4670    }
4671}
4672
4673#[derive(Copy, Clone)]
4674#[repr(C)]
4675pub struct GtkScaleClass {
4676    pub parent_class: GtkRangeClass,
4677    pub get_layout_offsets: Option<unsafe extern "C" fn(*mut GtkScale, *mut c_int, *mut c_int)>,
4678    pub padding: [gpointer; 8],
4679}
4680
4681impl ::std::fmt::Debug for GtkScaleClass {
4682    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4683        f.debug_struct(&format!("GtkScaleClass @ {self:p}"))
4684            .field("parent_class", &self.parent_class)
4685            .field("get_layout_offsets", &self.get_layout_offsets)
4686            .finish()
4687    }
4688}
4689
4690#[repr(C)]
4691#[allow(dead_code)]
4692pub struct GtkScrollInfo {
4693    _data: [u8; 0],
4694    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4695}
4696
4697impl ::std::fmt::Debug for GtkScrollInfo {
4698    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4699        f.debug_struct(&format!("GtkScrollInfo @ {self:p}"))
4700            .finish()
4701    }
4702}
4703
4704#[derive(Copy, Clone)]
4705#[repr(C)]
4706pub struct GtkScrollableInterface {
4707    pub base_iface: gobject::GTypeInterface,
4708    pub get_border: Option<unsafe extern "C" fn(*mut GtkScrollable, *mut GtkBorder) -> gboolean>,
4709}
4710
4711impl ::std::fmt::Debug for GtkScrollableInterface {
4712    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4713        f.debug_struct(&format!("GtkScrollableInterface @ {self:p}"))
4714            .field("base_iface", &self.base_iface)
4715            .field("get_border", &self.get_border)
4716            .finish()
4717    }
4718}
4719
4720#[derive(Copy, Clone)]
4721#[repr(C)]
4722pub struct GtkSectionModelInterface {
4723    pub g_iface: gobject::GTypeInterface,
4724    pub get_section:
4725        Option<unsafe extern "C" fn(*mut GtkSectionModel, c_uint, *mut c_uint, *mut c_uint)>,
4726}
4727
4728impl ::std::fmt::Debug for GtkSectionModelInterface {
4729    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4730        f.debug_struct(&format!("GtkSectionModelInterface @ {self:p}"))
4731            .field("get_section", &self.get_section)
4732            .finish()
4733    }
4734}
4735
4736#[derive(Copy, Clone)]
4737#[repr(C)]
4738pub struct GtkSelectionFilterModelClass {
4739    pub parent_class: gobject::GObjectClass,
4740}
4741
4742impl ::std::fmt::Debug for GtkSelectionFilterModelClass {
4743    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4744        f.debug_struct(&format!("GtkSelectionFilterModelClass @ {self:p}"))
4745            .field("parent_class", &self.parent_class)
4746            .finish()
4747    }
4748}
4749
4750#[derive(Copy, Clone)]
4751#[repr(C)]
4752pub struct GtkSelectionModelInterface {
4753    pub g_iface: gobject::GTypeInterface,
4754    pub is_selected: Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint) -> gboolean>,
4755    pub get_selection_in_range:
4756        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint) -> *mut GtkBitset>,
4757    pub select_item:
4758        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, gboolean) -> gboolean>,
4759    pub unselect_item: Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint) -> gboolean>,
4760    pub select_range:
4761        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint, gboolean) -> gboolean>,
4762    pub unselect_range:
4763        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint) -> gboolean>,
4764    pub select_all: Option<unsafe extern "C" fn(*mut GtkSelectionModel) -> gboolean>,
4765    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkSelectionModel) -> gboolean>,
4766    pub set_selection: Option<
4767        unsafe extern "C" fn(*mut GtkSelectionModel, *mut GtkBitset, *mut GtkBitset) -> gboolean,
4768    >,
4769}
4770
4771impl ::std::fmt::Debug for GtkSelectionModelInterface {
4772    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4773        f.debug_struct(&format!("GtkSelectionModelInterface @ {self:p}"))
4774            .field("is_selected", &self.is_selected)
4775            .field("get_selection_in_range", &self.get_selection_in_range)
4776            .field("select_item", &self.select_item)
4777            .field("unselect_item", &self.unselect_item)
4778            .field("select_range", &self.select_range)
4779            .field("unselect_range", &self.unselect_range)
4780            .field("select_all", &self.select_all)
4781            .field("unselect_all", &self.unselect_all)
4782            .field("set_selection", &self.set_selection)
4783            .finish()
4784    }
4785}
4786
4787#[repr(C)]
4788#[allow(dead_code)]
4789pub struct _GtkShortcutActionClass {
4790    _data: [u8; 0],
4791    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4792}
4793
4794pub type GtkShortcutActionClass = _GtkShortcutActionClass;
4795
4796#[derive(Copy, Clone)]
4797#[repr(C)]
4798pub struct GtkShortcutClass {
4799    pub parent_class: gobject::GObjectClass,
4800}
4801
4802impl ::std::fmt::Debug for GtkShortcutClass {
4803    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4804        f.debug_struct(&format!("GtkShortcutClass @ {self:p}"))
4805            .field("parent_class", &self.parent_class)
4806            .finish()
4807    }
4808}
4809
4810#[repr(C)]
4811#[allow(dead_code)]
4812pub struct _GtkShortcutControllerClass {
4813    _data: [u8; 0],
4814    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4815}
4816
4817pub type GtkShortcutControllerClass = _GtkShortcutControllerClass;
4818
4819#[repr(C)]
4820#[allow(dead_code)]
4821pub struct _GtkShortcutLabelClass {
4822    _data: [u8; 0],
4823    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4824}
4825
4826pub type GtkShortcutLabelClass = _GtkShortcutLabelClass;
4827
4828#[derive(Copy, Clone)]
4829#[repr(C)]
4830pub struct GtkShortcutManagerInterface {
4831    pub g_iface: gobject::GTypeInterface,
4832    pub add_controller:
4833        Option<unsafe extern "C" fn(*mut GtkShortcutManager, *mut GtkShortcutController)>,
4834    pub remove_controller:
4835        Option<unsafe extern "C" fn(*mut GtkShortcutManager, *mut GtkShortcutController)>,
4836}
4837
4838impl ::std::fmt::Debug for GtkShortcutManagerInterface {
4839    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4840        f.debug_struct(&format!("GtkShortcutManagerInterface @ {self:p}"))
4841            .field("add_controller", &self.add_controller)
4842            .field("remove_controller", &self.remove_controller)
4843            .finish()
4844    }
4845}
4846
4847#[repr(C)]
4848#[allow(dead_code)]
4849pub struct _GtkShortcutTriggerClass {
4850    _data: [u8; 0],
4851    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4852}
4853
4854pub type GtkShortcutTriggerClass = _GtkShortcutTriggerClass;
4855
4856#[repr(C)]
4857#[allow(dead_code)]
4858pub struct _GtkShortcutsGroupClass {
4859    _data: [u8; 0],
4860    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4861}
4862
4863pub type GtkShortcutsGroupClass = _GtkShortcutsGroupClass;
4864
4865#[repr(C)]
4866#[allow(dead_code)]
4867pub struct _GtkShortcutsSectionClass {
4868    _data: [u8; 0],
4869    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4870}
4871
4872pub type GtkShortcutsSectionClass = _GtkShortcutsSectionClass;
4873
4874#[repr(C)]
4875#[allow(dead_code)]
4876pub struct _GtkShortcutsShortcutClass {
4877    _data: [u8; 0],
4878    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4879}
4880
4881pub type GtkShortcutsShortcutClass = _GtkShortcutsShortcutClass;
4882
4883#[repr(C)]
4884#[allow(dead_code)]
4885pub struct _GtkSignalActionClass {
4886    _data: [u8; 0],
4887    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4888}
4889
4890pub type GtkSignalActionClass = _GtkSignalActionClass;
4891
4892#[repr(C)]
4893#[allow(dead_code)]
4894pub struct _GtkSignalListItemFactoryClass {
4895    _data: [u8; 0],
4896    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4897}
4898
4899pub type GtkSignalListItemFactoryClass = _GtkSignalListItemFactoryClass;
4900
4901#[derive(Copy, Clone)]
4902#[repr(C)]
4903pub struct GtkSingleSelectionClass {
4904    pub parent_class: gobject::GObjectClass,
4905}
4906
4907impl ::std::fmt::Debug for GtkSingleSelectionClass {
4908    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4909        f.debug_struct(&format!("GtkSingleSelectionClass @ {self:p}"))
4910            .field("parent_class", &self.parent_class)
4911            .finish()
4912    }
4913}
4914
4915#[derive(Copy, Clone)]
4916#[repr(C)]
4917pub struct GtkSliceListModelClass {
4918    pub parent_class: gobject::GObjectClass,
4919}
4920
4921impl ::std::fmt::Debug for GtkSliceListModelClass {
4922    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4923        f.debug_struct(&format!("GtkSliceListModelClass @ {self:p}"))
4924            .field("parent_class", &self.parent_class)
4925            .finish()
4926    }
4927}
4928
4929#[repr(C)]
4930#[allow(dead_code)]
4931pub struct _GtkSnapshotClass {
4932    _data: [u8; 0],
4933    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4934}
4935
4936pub type GtkSnapshotClass = _GtkSnapshotClass;
4937
4938#[derive(Copy, Clone)]
4939#[repr(C)]
4940pub struct GtkSortListModelClass {
4941    pub parent_class: gobject::GObjectClass,
4942}
4943
4944impl ::std::fmt::Debug for GtkSortListModelClass {
4945    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4946        f.debug_struct(&format!("GtkSortListModelClass @ {self:p}"))
4947            .field("parent_class", &self.parent_class)
4948            .finish()
4949    }
4950}
4951
4952#[derive(Copy, Clone)]
4953#[repr(C)]
4954pub struct GtkSorterClass {
4955    pub parent_class: gobject::GObjectClass,
4956    pub compare: Option<
4957        unsafe extern "C" fn(
4958            *mut GtkSorter,
4959            *mut gobject::GObject,
4960            *mut gobject::GObject,
4961        ) -> GtkOrdering,
4962    >,
4963    pub get_order: Option<unsafe extern "C" fn(*mut GtkSorter) -> GtkSorterOrder>,
4964    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4965    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4966    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4967    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4968    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4969    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4970    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4971    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4972}
4973
4974impl ::std::fmt::Debug for GtkSorterClass {
4975    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4976        f.debug_struct(&format!("GtkSorterClass @ {self:p}"))
4977            .field("parent_class", &self.parent_class)
4978            .field("compare", &self.compare)
4979            .field("get_order", &self.get_order)
4980            .field("_gtk_reserved1", &self._gtk_reserved1)
4981            .field("_gtk_reserved2", &self._gtk_reserved2)
4982            .field("_gtk_reserved3", &self._gtk_reserved3)
4983            .field("_gtk_reserved4", &self._gtk_reserved4)
4984            .field("_gtk_reserved5", &self._gtk_reserved5)
4985            .field("_gtk_reserved6", &self._gtk_reserved6)
4986            .field("_gtk_reserved7", &self._gtk_reserved7)
4987            .field("_gtk_reserved8", &self._gtk_reserved8)
4988            .finish()
4989    }
4990}
4991
4992#[derive(Copy, Clone)]
4993#[repr(C)]
4994pub struct GtkStringFilterClass {
4995    pub parent_class: GtkFilterClass,
4996}
4997
4998impl ::std::fmt::Debug for GtkStringFilterClass {
4999    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5000        f.debug_struct(&format!("GtkStringFilterClass @ {self:p}"))
5001            .field("parent_class", &self.parent_class)
5002            .finish()
5003    }
5004}
5005
5006#[derive(Copy, Clone)]
5007#[repr(C)]
5008pub struct GtkStringListClass {
5009    pub parent_class: gobject::GObjectClass,
5010}
5011
5012impl ::std::fmt::Debug for GtkStringListClass {
5013    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5014        f.debug_struct(&format!("GtkStringListClass @ {self:p}"))
5015            .field("parent_class", &self.parent_class)
5016            .finish()
5017    }
5018}
5019
5020#[derive(Copy, Clone)]
5021#[repr(C)]
5022pub struct GtkStringObjectClass {
5023    pub parent_class: gobject::GObjectClass,
5024}
5025
5026impl ::std::fmt::Debug for GtkStringObjectClass {
5027    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5028        f.debug_struct(&format!("GtkStringObjectClass @ {self:p}"))
5029            .field("parent_class", &self.parent_class)
5030            .finish()
5031    }
5032}
5033
5034#[derive(Copy, Clone)]
5035#[repr(C)]
5036pub struct GtkStringSorterClass {
5037    pub parent_class: GtkSorterClass,
5038}
5039
5040impl ::std::fmt::Debug for GtkStringSorterClass {
5041    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5042        f.debug_struct(&format!("GtkStringSorterClass @ {self:p}"))
5043            .field("parent_class", &self.parent_class)
5044            .finish()
5045    }
5046}
5047
5048#[derive(Copy, Clone)]
5049#[repr(C)]
5050pub struct GtkStyleContextClass {
5051    pub parent_class: gobject::GObjectClass,
5052    pub changed: Option<unsafe extern "C" fn(*mut GtkStyleContext)>,
5053    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5054    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5055    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5056    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5057}
5058
5059impl ::std::fmt::Debug for GtkStyleContextClass {
5060    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5061        f.debug_struct(&format!("GtkStyleContextClass @ {self:p}"))
5062            .field("parent_class", &self.parent_class)
5063            .field("changed", &self.changed)
5064            .field("_gtk_reserved1", &self._gtk_reserved1)
5065            .field("_gtk_reserved2", &self._gtk_reserved2)
5066            .field("_gtk_reserved3", &self._gtk_reserved3)
5067            .field("_gtk_reserved4", &self._gtk_reserved4)
5068            .finish()
5069    }
5070}
5071
5072#[derive(Copy, Clone)]
5073#[repr(C)]
5074pub struct GtkSvgClass {
5075    pub parent_class: gobject::GObjectClass,
5076}
5077
5078impl ::std::fmt::Debug for GtkSvgClass {
5079    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5080        f.debug_struct(&format!("GtkSvgClass @ {self:p}"))
5081            .field("parent_class", &self.parent_class)
5082            .finish()
5083    }
5084}
5085
5086#[derive(Copy, Clone)]
5087#[repr(C)]
5088pub struct GtkSvgLocation {
5089    pub bytes: size_t,
5090    pub lines: size_t,
5091    pub line_chars: size_t,
5092}
5093
5094impl ::std::fmt::Debug for GtkSvgLocation {
5095    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5096        f.debug_struct(&format!("GtkSvgLocation @ {self:p}"))
5097            .field("bytes", &self.bytes)
5098            .field("lines", &self.lines)
5099            .field("line_chars", &self.line_chars)
5100            .finish()
5101    }
5102}
5103
5104#[derive(Copy, Clone)]
5105#[repr(C)]
5106pub struct GtkSymbolicPaintableInterface {
5107    pub g_iface: gobject::GTypeInterface,
5108    pub snapshot_symbolic: Option<
5109        unsafe extern "C" fn(
5110            *mut GtkSymbolicPaintable,
5111            *mut gdk::GdkSnapshot,
5112            c_double,
5113            c_double,
5114            *const gdk::GdkRGBA,
5115            size_t,
5116        ),
5117    >,
5118    pub snapshot_with_weight: Option<
5119        unsafe extern "C" fn(
5120            *mut GtkSymbolicPaintable,
5121            *mut gdk::GdkSnapshot,
5122            c_double,
5123            c_double,
5124            *const gdk::GdkRGBA,
5125            size_t,
5126            c_double,
5127        ),
5128    >,
5129}
5130
5131impl ::std::fmt::Debug for GtkSymbolicPaintableInterface {
5132    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5133        f.debug_struct(&format!("GtkSymbolicPaintableInterface @ {self:p}"))
5134            .field("snapshot_symbolic", &self.snapshot_symbolic)
5135            .field("snapshot_with_weight", &self.snapshot_with_weight)
5136            .finish()
5137    }
5138}
5139
5140#[derive(Copy, Clone)]
5141#[repr(C)]
5142pub struct GtkTextBufferClass {
5143    pub parent_class: gobject::GObjectClass,
5144    pub insert_text:
5145        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *const c_char, c_int)>,
5146    pub insert_paintable:
5147        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut gdk::GdkPaintable)>,
5148    pub insert_child_anchor:
5149        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextChildAnchor)>,
5150    pub delete_range:
5151        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextIter)>,
5152    pub changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5153    pub modified_changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5154    pub mark_set:
5155        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *const GtkTextIter, *mut GtkTextMark)>,
5156    pub mark_deleted: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextMark)>,
5157    pub apply_tag: Option<
5158        unsafe extern "C" fn(
5159            *mut GtkTextBuffer,
5160            *mut GtkTextTag,
5161            *const GtkTextIter,
5162            *const GtkTextIter,
5163        ),
5164    >,
5165    pub remove_tag: Option<
5166        unsafe extern "C" fn(
5167            *mut GtkTextBuffer,
5168            *mut GtkTextTag,
5169            *const GtkTextIter,
5170            *const GtkTextIter,
5171        ),
5172    >,
5173    pub begin_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5174    pub end_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5175    pub paste_done: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut gdk::GdkClipboard)>,
5176    pub undo: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5177    pub redo: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5178    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5179    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5180    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5181    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5182}
5183
5184impl ::std::fmt::Debug for GtkTextBufferClass {
5185    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5186        f.debug_struct(&format!("GtkTextBufferClass @ {self:p}"))
5187            .field("parent_class", &self.parent_class)
5188            .field("insert_text", &self.insert_text)
5189            .field("insert_paintable", &self.insert_paintable)
5190            .field("insert_child_anchor", &self.insert_child_anchor)
5191            .field("delete_range", &self.delete_range)
5192            .field("changed", &self.changed)
5193            .field("modified_changed", &self.modified_changed)
5194            .field("mark_set", &self.mark_set)
5195            .field("mark_deleted", &self.mark_deleted)
5196            .field("apply_tag", &self.apply_tag)
5197            .field("remove_tag", &self.remove_tag)
5198            .field("begin_user_action", &self.begin_user_action)
5199            .field("end_user_action", &self.end_user_action)
5200            .field("paste_done", &self.paste_done)
5201            .field("undo", &self.undo)
5202            .field("redo", &self.redo)
5203            .field("_gtk_reserved1", &self._gtk_reserved1)
5204            .field("_gtk_reserved2", &self._gtk_reserved2)
5205            .field("_gtk_reserved3", &self._gtk_reserved3)
5206            .field("_gtk_reserved4", &self._gtk_reserved4)
5207            .finish()
5208    }
5209}
5210
5211#[repr(C)]
5212#[allow(dead_code)]
5213pub struct _GtkTextBufferPrivate {
5214    _data: [u8; 0],
5215    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5216}
5217
5218pub type GtkTextBufferPrivate = _GtkTextBufferPrivate;
5219
5220#[derive(Copy, Clone)]
5221#[repr(C)]
5222pub struct GtkTextChildAnchorClass {
5223    pub parent_class: gobject::GObjectClass,
5224    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5225    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5226    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5227    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5228}
5229
5230impl ::std::fmt::Debug for GtkTextChildAnchorClass {
5231    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5232        f.debug_struct(&format!("GtkTextChildAnchorClass @ {self:p}"))
5233            .field("parent_class", &self.parent_class)
5234            .field("_gtk_reserved1", &self._gtk_reserved1)
5235            .field("_gtk_reserved2", &self._gtk_reserved2)
5236            .field("_gtk_reserved3", &self._gtk_reserved3)
5237            .field("_gtk_reserved4", &self._gtk_reserved4)
5238            .finish()
5239    }
5240}
5241
5242#[derive(Copy, Clone)]
5243#[repr(C)]
5244pub struct GtkTextIter {
5245    pub dummy1: gpointer,
5246    pub dummy2: gpointer,
5247    pub dummy3: c_int,
5248    pub dummy4: c_int,
5249    pub dummy5: c_int,
5250    pub dummy6: c_int,
5251    pub dummy7: c_int,
5252    pub dummy8: c_int,
5253    pub dummy9: gpointer,
5254    pub dummy10: gpointer,
5255    pub dummy11: c_int,
5256    pub dummy12: c_int,
5257    pub dummy13: c_int,
5258    pub dummy14: gpointer,
5259}
5260
5261impl ::std::fmt::Debug for GtkTextIter {
5262    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5263        f.debug_struct(&format!("GtkTextIter @ {self:p}")).finish()
5264    }
5265}
5266
5267#[derive(Copy, Clone)]
5268#[repr(C)]
5269pub struct GtkTextMarkClass {
5270    pub parent_class: gobject::GObjectClass,
5271    pub padding: [gpointer; 8],
5272}
5273
5274impl ::std::fmt::Debug for GtkTextMarkClass {
5275    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5276        f.debug_struct(&format!("GtkTextMarkClass @ {self:p}"))
5277            .field("parent_class", &self.parent_class)
5278            .finish()
5279    }
5280}
5281
5282#[derive(Copy, Clone)]
5283#[repr(C)]
5284pub struct GtkTextTagClass {
5285    pub parent_class: gobject::GObjectClass,
5286    pub padding: [gpointer; 8],
5287}
5288
5289impl ::std::fmt::Debug for GtkTextTagClass {
5290    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5291        f.debug_struct(&format!("GtkTextTagClass @ {self:p}"))
5292            .field("parent_class", &self.parent_class)
5293            .finish()
5294    }
5295}
5296
5297#[repr(C)]
5298#[allow(dead_code)]
5299pub struct _GtkTextTagPrivate {
5300    _data: [u8; 0],
5301    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5302}
5303
5304pub type GtkTextTagPrivate = _GtkTextTagPrivate;
5305
5306#[derive(Copy, Clone)]
5307#[repr(C)]
5308pub struct GtkTextViewClass {
5309    pub parent_class: GtkWidgetClass,
5310    pub move_cursor:
5311        Option<unsafe extern "C" fn(*mut GtkTextView, GtkMovementStep, c_int, gboolean)>,
5312    pub set_anchor: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5313    pub insert_at_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, *const c_char)>,
5314    pub delete_from_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, GtkDeleteType, c_int)>,
5315    pub backspace: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5316    pub cut_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5317    pub copy_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5318    pub paste_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5319    pub toggle_overwrite: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5320    pub create_buffer: Option<unsafe extern "C" fn(*mut GtkTextView) -> *mut GtkTextBuffer>,
5321    pub snapshot_layer:
5322        Option<unsafe extern "C" fn(*mut GtkTextView, GtkTextViewLayer, *mut GtkSnapshot)>,
5323    pub extend_selection: Option<
5324        unsafe extern "C" fn(
5325            *mut GtkTextView,
5326            GtkTextExtendSelection,
5327            *const GtkTextIter,
5328            *mut GtkTextIter,
5329            *mut GtkTextIter,
5330        ) -> gboolean,
5331    >,
5332    pub insert_emoji: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5333    pub padding: [gpointer; 8],
5334}
5335
5336impl ::std::fmt::Debug for GtkTextViewClass {
5337    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5338        f.debug_struct(&format!("GtkTextViewClass @ {self:p}"))
5339            .field("parent_class", &self.parent_class)
5340            .field("move_cursor", &self.move_cursor)
5341            .field("set_anchor", &self.set_anchor)
5342            .field("insert_at_cursor", &self.insert_at_cursor)
5343            .field("delete_from_cursor", &self.delete_from_cursor)
5344            .field("backspace", &self.backspace)
5345            .field("cut_clipboard", &self.cut_clipboard)
5346            .field("copy_clipboard", &self.copy_clipboard)
5347            .field("paste_clipboard", &self.paste_clipboard)
5348            .field("toggle_overwrite", &self.toggle_overwrite)
5349            .field("create_buffer", &self.create_buffer)
5350            .field("snapshot_layer", &self.snapshot_layer)
5351            .field("extend_selection", &self.extend_selection)
5352            .field("insert_emoji", &self.insert_emoji)
5353            .finish()
5354    }
5355}
5356
5357#[repr(C)]
5358#[allow(dead_code)]
5359pub struct _GtkTextViewPrivate {
5360    _data: [u8; 0],
5361    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5362}
5363
5364pub type GtkTextViewPrivate = _GtkTextViewPrivate;
5365
5366#[derive(Copy, Clone)]
5367#[repr(C)]
5368pub struct GtkToggleButtonClass {
5369    pub parent_class: GtkButtonClass,
5370    pub toggled: Option<unsafe extern "C" fn(*mut GtkToggleButton)>,
5371    pub padding: [gpointer; 8],
5372}
5373
5374impl ::std::fmt::Debug for GtkToggleButtonClass {
5375    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5376        f.debug_struct(&format!("GtkToggleButtonClass @ {self:p}"))
5377            .field("parent_class", &self.parent_class)
5378            .field("toggled", &self.toggled)
5379            .finish()
5380    }
5381}
5382
5383#[derive(Copy, Clone)]
5384#[repr(C)]
5385pub struct GtkTreeDragDestIface {
5386    pub g_iface: gobject::GTypeInterface,
5387    pub drag_data_received: Option<
5388        unsafe extern "C" fn(
5389            *mut GtkTreeDragDest,
5390            *mut GtkTreePath,
5391            *const gobject::GValue,
5392        ) -> gboolean,
5393    >,
5394    pub row_drop_possible: Option<
5395        unsafe extern "C" fn(
5396            *mut GtkTreeDragDest,
5397            *mut GtkTreePath,
5398            *const gobject::GValue,
5399        ) -> gboolean,
5400    >,
5401}
5402
5403impl ::std::fmt::Debug for GtkTreeDragDestIface {
5404    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5405        f.debug_struct(&format!("GtkTreeDragDestIface @ {self:p}"))
5406            .field("drag_data_received", &self.drag_data_received)
5407            .field("row_drop_possible", &self.row_drop_possible)
5408            .finish()
5409    }
5410}
5411
5412#[derive(Copy, Clone)]
5413#[repr(C)]
5414pub struct GtkTreeDragSourceIface {
5415    pub g_iface: gobject::GTypeInterface,
5416    pub row_draggable:
5417        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
5418    pub drag_data_get: Option<
5419        unsafe extern "C" fn(
5420            *mut GtkTreeDragSource,
5421            *mut GtkTreePath,
5422        ) -> *mut gdk::GdkContentProvider,
5423    >,
5424    pub drag_data_delete:
5425        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
5426}
5427
5428impl ::std::fmt::Debug for GtkTreeDragSourceIface {
5429    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5430        f.debug_struct(&format!("GtkTreeDragSourceIface @ {self:p}"))
5431            .field("row_draggable", &self.row_draggable)
5432            .field("drag_data_get", &self.drag_data_get)
5433            .field("drag_data_delete", &self.drag_data_delete)
5434            .finish()
5435    }
5436}
5437
5438#[derive(Copy, Clone)]
5439#[repr(C)]
5440pub struct GtkTreeExpanderClass {
5441    pub parent_class: GtkWidgetClass,
5442}
5443
5444impl ::std::fmt::Debug for GtkTreeExpanderClass {
5445    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5446        f.debug_struct(&format!("GtkTreeExpanderClass @ {self:p}"))
5447            .field("parent_class", &self.parent_class)
5448            .finish()
5449    }
5450}
5451
5452#[derive(Copy, Clone)]
5453#[repr(C)]
5454pub struct GtkTreeIter {
5455    pub stamp: c_int,
5456    pub user_data: gpointer,
5457    pub user_data2: gpointer,
5458    pub user_data3: gpointer,
5459}
5460
5461impl ::std::fmt::Debug for GtkTreeIter {
5462    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5463        f.debug_struct(&format!("GtkTreeIter @ {self:p}"))
5464            .field("stamp", &self.stamp)
5465            .field("user_data", &self.user_data)
5466            .field("user_data2", &self.user_data2)
5467            .field("user_data3", &self.user_data3)
5468            .finish()
5469    }
5470}
5471
5472#[derive(Copy, Clone)]
5473#[repr(C)]
5474pub struct GtkTreeListModelClass {
5475    pub parent_class: gobject::GObjectClass,
5476}
5477
5478impl ::std::fmt::Debug for GtkTreeListModelClass {
5479    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5480        f.debug_struct(&format!("GtkTreeListModelClass @ {self:p}"))
5481            .field("parent_class", &self.parent_class)
5482            .finish()
5483    }
5484}
5485
5486#[derive(Copy, Clone)]
5487#[repr(C)]
5488pub struct GtkTreeListRowClass {
5489    pub parent_class: gobject::GObjectClass,
5490}
5491
5492impl ::std::fmt::Debug for GtkTreeListRowClass {
5493    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5494        f.debug_struct(&format!("GtkTreeListRowClass @ {self:p}"))
5495            .field("parent_class", &self.parent_class)
5496            .finish()
5497    }
5498}
5499
5500#[derive(Copy, Clone)]
5501#[repr(C)]
5502pub struct GtkTreeListRowSorterClass {
5503    pub parent_class: GtkSorterClass,
5504}
5505
5506impl ::std::fmt::Debug for GtkTreeListRowSorterClass {
5507    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5508        f.debug_struct(&format!("GtkTreeListRowSorterClass @ {self:p}"))
5509            .field("parent_class", &self.parent_class)
5510            .finish()
5511    }
5512}
5513
5514#[derive(Copy, Clone)]
5515#[repr(C)]
5516pub struct GtkTreeModelFilterClass {
5517    pub parent_class: gobject::GObjectClass,
5518    pub visible: Option<
5519        unsafe extern "C" fn(
5520            *mut GtkTreeModelFilter,
5521            *mut GtkTreeModel,
5522            *mut GtkTreeIter,
5523        ) -> gboolean,
5524    >,
5525    pub modify: Option<
5526        unsafe extern "C" fn(
5527            *mut GtkTreeModelFilter,
5528            *mut GtkTreeModel,
5529            *mut GtkTreeIter,
5530            *mut gobject::GValue,
5531            c_int,
5532        ),
5533    >,
5534    pub padding: [gpointer; 8],
5535}
5536
5537impl ::std::fmt::Debug for GtkTreeModelFilterClass {
5538    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5539        f.debug_struct(&format!("GtkTreeModelFilterClass @ {self:p}"))
5540            .field("parent_class", &self.parent_class)
5541            .field("visible", &self.visible)
5542            .field("modify", &self.modify)
5543            .finish()
5544    }
5545}
5546
5547#[repr(C)]
5548#[allow(dead_code)]
5549pub struct _GtkTreeModelFilterPrivate {
5550    _data: [u8; 0],
5551    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5552}
5553
5554pub type GtkTreeModelFilterPrivate = _GtkTreeModelFilterPrivate;
5555
5556#[derive(Copy, Clone)]
5557#[repr(C)]
5558pub struct GtkTreeModelIface {
5559    pub g_iface: gobject::GTypeInterface,
5560    pub row_changed:
5561        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5562    pub row_inserted:
5563        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5564    pub row_has_child_toggled:
5565        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5566    pub row_deleted: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath)>,
5567    pub rows_reordered: Option<
5568        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, *mut c_int),
5569    >,
5570    pub get_flags: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> GtkTreeModelFlags>,
5571    pub get_n_columns: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> c_int>,
5572    pub get_column_type: Option<unsafe extern "C" fn(*mut GtkTreeModel, c_int) -> GType>,
5573    pub get_iter: Option<
5574        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5575    >,
5576    pub get_path:
5577        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> *mut GtkTreePath>,
5578    pub get_value: Option<
5579        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, c_int, *mut gobject::GValue),
5580    >,
5581    pub iter_next: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5582    pub iter_previous:
5583        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5584    pub iter_children: Option<
5585        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
5586    >,
5587    pub iter_has_child:
5588        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5589    pub iter_n_children: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> c_int>,
5590    pub iter_nth_child: Option<
5591        unsafe extern "C" fn(
5592            *mut GtkTreeModel,
5593            *mut GtkTreeIter,
5594            *mut GtkTreeIter,
5595            c_int,
5596        ) -> gboolean,
5597    >,
5598    pub iter_parent: Option<
5599        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
5600    >,
5601    pub ref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
5602    pub unref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
5603}
5604
5605impl ::std::fmt::Debug for GtkTreeModelIface {
5606    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5607        f.debug_struct(&format!("GtkTreeModelIface @ {self:p}"))
5608            .field("row_changed", &self.row_changed)
5609            .field("row_inserted", &self.row_inserted)
5610            .field("row_has_child_toggled", &self.row_has_child_toggled)
5611            .field("row_deleted", &self.row_deleted)
5612            .field("rows_reordered", &self.rows_reordered)
5613            .field("get_flags", &self.get_flags)
5614            .field("get_n_columns", &self.get_n_columns)
5615            .field("get_column_type", &self.get_column_type)
5616            .field("get_iter", &self.get_iter)
5617            .field("get_path", &self.get_path)
5618            .field("get_value", &self.get_value)
5619            .field("iter_next", &self.iter_next)
5620            .field("iter_previous", &self.iter_previous)
5621            .field("iter_children", &self.iter_children)
5622            .field("iter_has_child", &self.iter_has_child)
5623            .field("iter_n_children", &self.iter_n_children)
5624            .field("iter_nth_child", &self.iter_nth_child)
5625            .field("iter_parent", &self.iter_parent)
5626            .field("ref_node", &self.ref_node)
5627            .field("unref_node", &self.unref_node)
5628            .finish()
5629    }
5630}
5631
5632#[derive(Copy, Clone)]
5633#[repr(C)]
5634pub struct GtkTreeModelSortClass {
5635    pub parent_class: gobject::GObjectClass,
5636    pub padding: [gpointer; 8],
5637}
5638
5639impl ::std::fmt::Debug for GtkTreeModelSortClass {
5640    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5641        f.debug_struct(&format!("GtkTreeModelSortClass @ {self:p}"))
5642            .field("parent_class", &self.parent_class)
5643            .finish()
5644    }
5645}
5646
5647#[repr(C)]
5648#[allow(dead_code)]
5649pub struct _GtkTreeModelSortPrivate {
5650    _data: [u8; 0],
5651    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5652}
5653
5654pub type GtkTreeModelSortPrivate = _GtkTreeModelSortPrivate;
5655
5656#[repr(C)]
5657#[allow(dead_code)]
5658pub struct GtkTreePath {
5659    _data: [u8; 0],
5660    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5661}
5662
5663impl ::std::fmt::Debug for GtkTreePath {
5664    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5665        f.debug_struct(&format!("GtkTreePath @ {self:p}")).finish()
5666    }
5667}
5668
5669#[repr(C)]
5670#[allow(dead_code)]
5671pub struct GtkTreeRowReference {
5672    _data: [u8; 0],
5673    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5674}
5675
5676impl ::std::fmt::Debug for GtkTreeRowReference {
5677    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5678        f.debug_struct(&format!("GtkTreeRowReference @ {self:p}"))
5679            .finish()
5680    }
5681}
5682
5683#[derive(Copy, Clone)]
5684#[repr(C)]
5685pub struct GtkTreeSortableIface {
5686    pub g_iface: gobject::GTypeInterface,
5687    pub sort_column_changed: Option<unsafe extern "C" fn(*mut GtkTreeSortable)>,
5688    pub get_sort_column_id: Option<
5689        unsafe extern "C" fn(*mut GtkTreeSortable, *mut c_int, *mut GtkSortType) -> gboolean,
5690    >,
5691    pub set_sort_column_id: Option<unsafe extern "C" fn(*mut GtkTreeSortable, c_int, GtkSortType)>,
5692    pub set_sort_func: Option<
5693        unsafe extern "C" fn(
5694            *mut GtkTreeSortable,
5695            c_int,
5696            GtkTreeIterCompareFunc,
5697            gpointer,
5698            glib::GDestroyNotify,
5699        ),
5700    >,
5701    pub set_default_sort_func: Option<
5702        unsafe extern "C" fn(
5703            *mut GtkTreeSortable,
5704            GtkTreeIterCompareFunc,
5705            gpointer,
5706            glib::GDestroyNotify,
5707        ),
5708    >,
5709    pub has_default_sort_func: Option<unsafe extern "C" fn(*mut GtkTreeSortable) -> gboolean>,
5710}
5711
5712impl ::std::fmt::Debug for GtkTreeSortableIface {
5713    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5714        f.debug_struct(&format!("GtkTreeSortableIface @ {self:p}"))
5715            .field("sort_column_changed", &self.sort_column_changed)
5716            .field("get_sort_column_id", &self.get_sort_column_id)
5717            .field("set_sort_column_id", &self.set_sort_column_id)
5718            .field("set_sort_func", &self.set_sort_func)
5719            .field("set_default_sort_func", &self.set_default_sort_func)
5720            .field("has_default_sort_func", &self.has_default_sort_func)
5721            .finish()
5722    }
5723}
5724
5725#[derive(Copy, Clone)]
5726#[repr(C)]
5727pub struct GtkTreeStoreClass {
5728    pub parent_class: gobject::GObjectClass,
5729    pub padding: [gpointer; 8],
5730}
5731
5732impl ::std::fmt::Debug for GtkTreeStoreClass {
5733    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5734        f.debug_struct(&format!("GtkTreeStoreClass @ {self:p}"))
5735            .field("parent_class", &self.parent_class)
5736            .finish()
5737    }
5738}
5739
5740#[repr(C)]
5741#[allow(dead_code)]
5742pub struct _GtkTreeStorePrivate {
5743    _data: [u8; 0],
5744    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5745}
5746
5747pub type GtkTreeStorePrivate = _GtkTreeStorePrivate;
5748
5749#[derive(Copy, Clone)]
5750#[repr(C)]
5751pub struct GtkTreeViewClass {
5752    pub parent_class: GtkWidgetClass,
5753    pub row_activated:
5754        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, *mut GtkTreeViewColumn)>,
5755    pub test_expand_row: Option<
5756        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5757    >,
5758    pub test_collapse_row: Option<
5759        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5760    >,
5761    pub row_expanded:
5762        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
5763    pub row_collapsed:
5764        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
5765    pub columns_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
5766    pub cursor_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
5767    pub move_cursor: Option<
5768        unsafe extern "C" fn(
5769            *mut GtkTreeView,
5770            GtkMovementStep,
5771            c_int,
5772            gboolean,
5773            gboolean,
5774        ) -> gboolean,
5775    >,
5776    pub select_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5777    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5778    pub select_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean) -> gboolean>,
5779    pub toggle_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5780    pub expand_collapse_cursor_row:
5781        Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean, gboolean, gboolean) -> gboolean>,
5782    pub select_cursor_parent: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5783    pub start_interactive_search: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5784    pub _reserved: [gpointer; 16],
5785}
5786
5787impl ::std::fmt::Debug for GtkTreeViewClass {
5788    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5789        f.debug_struct(&format!("GtkTreeViewClass @ {self:p}"))
5790            .field("parent_class", &self.parent_class)
5791            .field("row_activated", &self.row_activated)
5792            .field("test_expand_row", &self.test_expand_row)
5793            .field("test_collapse_row", &self.test_collapse_row)
5794            .field("row_expanded", &self.row_expanded)
5795            .field("row_collapsed", &self.row_collapsed)
5796            .field("columns_changed", &self.columns_changed)
5797            .field("cursor_changed", &self.cursor_changed)
5798            .field("move_cursor", &self.move_cursor)
5799            .field("select_all", &self.select_all)
5800            .field("unselect_all", &self.unselect_all)
5801            .field("select_cursor_row", &self.select_cursor_row)
5802            .field("toggle_cursor_row", &self.toggle_cursor_row)
5803            .field(
5804                "expand_collapse_cursor_row",
5805                &self.expand_collapse_cursor_row,
5806            )
5807            .field("select_cursor_parent", &self.select_cursor_parent)
5808            .field("start_interactive_search", &self.start_interactive_search)
5809            .finish()
5810    }
5811}
5812
5813#[derive(Copy, Clone)]
5814#[repr(C)]
5815pub struct GtkUriLauncherClass {
5816    pub parent_class: gobject::GObjectClass,
5817}
5818
5819impl ::std::fmt::Debug for GtkUriLauncherClass {
5820    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5821        f.debug_struct(&format!("GtkUriLauncherClass @ {self:p}"))
5822            .field("parent_class", &self.parent_class)
5823            .finish()
5824    }
5825}
5826
5827#[derive(Copy, Clone)]
5828#[repr(C)]
5829pub struct GtkVideoClass {
5830    pub parent_class: GtkWidgetClass,
5831}
5832
5833impl ::std::fmt::Debug for GtkVideoClass {
5834    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5835        f.debug_struct(&format!("GtkVideoClass @ {self:p}"))
5836            .field("parent_class", &self.parent_class)
5837            .finish()
5838    }
5839}
5840
5841#[derive(Copy, Clone)]
5842#[repr(C)]
5843pub struct GtkWidgetClass {
5844    pub parent_class: gobject::GInitiallyUnownedClass,
5845    pub show: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5846    pub hide: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5847    pub map: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5848    pub unmap: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5849    pub realize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5850    pub unrealize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5851    pub root: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5852    pub unroot: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5853    pub size_allocate: Option<unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, c_int)>,
5854    pub state_flags_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkStateFlags)>,
5855    pub direction_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkTextDirection)>,
5856    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>,
5857    pub measure: Option<
5858        unsafe extern "C" fn(
5859            *mut GtkWidget,
5860            GtkOrientation,
5861            c_int,
5862            *mut c_int,
5863            *mut c_int,
5864            *mut c_int,
5865            *mut c_int,
5866        ),
5867    >,
5868    pub mnemonic_activate: Option<unsafe extern "C" fn(*mut GtkWidget, gboolean) -> gboolean>,
5869    pub grab_focus: Option<unsafe extern "C" fn(*mut GtkWidget) -> gboolean>,
5870    pub focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
5871    pub set_focus_child: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkWidget)>,
5872    pub move_focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType)>,
5873    pub keynav_failed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
5874    pub query_tooltip: Option<
5875        unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, gboolean, *mut GtkTooltip) -> gboolean,
5876    >,
5877    pub compute_expand: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gboolean, *mut gboolean)>,
5878    pub css_changed: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkCssStyleChange)>,
5879    pub system_setting_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkSystemSetting)>,
5880    pub snapshot: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkSnapshot)>,
5881    pub contains: Option<unsafe extern "C" fn(*mut GtkWidget, c_double, c_double) -> gboolean>,
5882    pub priv_: *mut GtkWidgetClassPrivate,
5883    pub padding: [gpointer; 8],
5884}
5885
5886impl ::std::fmt::Debug for GtkWidgetClass {
5887    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5888        f.debug_struct(&format!("GtkWidgetClass @ {self:p}"))
5889            .field("parent_class", &self.parent_class)
5890            .field("show", &self.show)
5891            .field("hide", &self.hide)
5892            .field("map", &self.map)
5893            .field("unmap", &self.unmap)
5894            .field("realize", &self.realize)
5895            .field("unrealize", &self.unrealize)
5896            .field("root", &self.root)
5897            .field("unroot", &self.unroot)
5898            .field("size_allocate", &self.size_allocate)
5899            .field("state_flags_changed", &self.state_flags_changed)
5900            .field("direction_changed", &self.direction_changed)
5901            .field("get_request_mode", &self.get_request_mode)
5902            .field("measure", &self.measure)
5903            .field("mnemonic_activate", &self.mnemonic_activate)
5904            .field("grab_focus", &self.grab_focus)
5905            .field("focus", &self.focus)
5906            .field("set_focus_child", &self.set_focus_child)
5907            .field("move_focus", &self.move_focus)
5908            .field("keynav_failed", &self.keynav_failed)
5909            .field("query_tooltip", &self.query_tooltip)
5910            .field("compute_expand", &self.compute_expand)
5911            .field("css_changed", &self.css_changed)
5912            .field("system_setting_changed", &self.system_setting_changed)
5913            .field("snapshot", &self.snapshot)
5914            .field("contains", &self.contains)
5915            .finish()
5916    }
5917}
5918
5919#[repr(C)]
5920#[allow(dead_code)]
5921pub struct _GtkWidgetClassPrivate {
5922    _data: [u8; 0],
5923    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5924}
5925
5926pub type GtkWidgetClassPrivate = _GtkWidgetClassPrivate;
5927
5928#[derive(Copy, Clone)]
5929#[repr(C)]
5930pub struct GtkWidgetPaintableClass {
5931    pub parent_class: gobject::GObjectClass,
5932}
5933
5934impl ::std::fmt::Debug for GtkWidgetPaintableClass {
5935    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5936        f.debug_struct(&format!("GtkWidgetPaintableClass @ {self:p}"))
5937            .field("parent_class", &self.parent_class)
5938            .finish()
5939    }
5940}
5941
5942#[repr(C)]
5943#[allow(dead_code)]
5944pub struct _GtkWidgetPrivate {
5945    _data: [u8; 0],
5946    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5947}
5948
5949pub type GtkWidgetPrivate = _GtkWidgetPrivate;
5950
5951#[derive(Copy, Clone)]
5952#[repr(C)]
5953pub struct GtkWindowClass {
5954    pub parent_class: GtkWidgetClass,
5955    pub activate_focus: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5956    pub activate_default: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5957    pub keys_changed: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5958    pub enable_debugging: Option<unsafe extern "C" fn(*mut GtkWindow, gboolean) -> gboolean>,
5959    pub close_request: Option<unsafe extern "C" fn(*mut GtkWindow) -> gboolean>,
5960    pub padding: [gpointer; 8],
5961}
5962
5963impl ::std::fmt::Debug for GtkWindowClass {
5964    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5965        f.debug_struct(&format!("GtkWindowClass @ {self:p}"))
5966            .field("parent_class", &self.parent_class)
5967            .field("activate_focus", &self.activate_focus)
5968            .field("activate_default", &self.activate_default)
5969            .field("keys_changed", &self.keys_changed)
5970            .field("enable_debugging", &self.enable_debugging)
5971            .field("close_request", &self.close_request)
5972            .finish()
5973    }
5974}
5975
5976#[derive(Copy, Clone)]
5977#[repr(C)]
5978pub struct GtkWindowControlsClass {
5979    pub parent_class: GtkWidgetClass,
5980}
5981
5982impl ::std::fmt::Debug for GtkWindowControlsClass {
5983    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5984        f.debug_struct(&format!("GtkWindowControlsClass @ {self:p}"))
5985            .field("parent_class", &self.parent_class)
5986            .finish()
5987    }
5988}
5989
5990#[derive(Copy, Clone)]
5991#[repr(C)]
5992pub struct GtkWindowGroupClass {
5993    pub parent_class: gobject::GObjectClass,
5994    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5995    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5996    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5997    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5998}
5999
6000impl ::std::fmt::Debug for GtkWindowGroupClass {
6001    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6002        f.debug_struct(&format!("GtkWindowGroupClass @ {self:p}"))
6003            .field("parent_class", &self.parent_class)
6004            .field("_gtk_reserved1", &self._gtk_reserved1)
6005            .field("_gtk_reserved2", &self._gtk_reserved2)
6006            .field("_gtk_reserved3", &self._gtk_reserved3)
6007            .field("_gtk_reserved4", &self._gtk_reserved4)
6008            .finish()
6009    }
6010}
6011
6012#[repr(C)]
6013#[allow(dead_code)]
6014pub struct _GtkWindowGroupPrivate {
6015    _data: [u8; 0],
6016    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6017}
6018
6019pub type GtkWindowGroupPrivate = _GtkWindowGroupPrivate;
6020
6021#[derive(Copy, Clone)]
6022#[repr(C)]
6023pub struct GtkWindowHandleClass {
6024    pub parent_class: GtkWidgetClass,
6025}
6026
6027impl ::std::fmt::Debug for GtkWindowHandleClass {
6028    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6029        f.debug_struct(&format!("GtkWindowHandleClass @ {self:p}"))
6030            .field("parent_class", &self.parent_class)
6031            .finish()
6032    }
6033}
6034
6035// Classes
6036#[repr(C)]
6037#[allow(dead_code)]
6038pub struct GtkATContext {
6039    _data: [u8; 0],
6040    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6041}
6042
6043impl ::std::fmt::Debug for GtkATContext {
6044    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6045        f.debug_struct(&format!("GtkATContext @ {self:p}")).finish()
6046    }
6047}
6048
6049#[repr(C)]
6050#[allow(dead_code)]
6051pub struct GtkAboutDialog {
6052    _data: [u8; 0],
6053    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6054}
6055
6056impl ::std::fmt::Debug for GtkAboutDialog {
6057    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6058        f.debug_struct(&format!("GtkAboutDialog @ {self:p}"))
6059            .finish()
6060    }
6061}
6062
6063#[repr(C)]
6064#[allow(dead_code)]
6065pub struct GtkAccessibleHyperlink {
6066    _data: [u8; 0],
6067    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6068}
6069
6070impl ::std::fmt::Debug for GtkAccessibleHyperlink {
6071    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6072        f.debug_struct(&format!("GtkAccessibleHyperlink @ {self:p}"))
6073            .finish()
6074    }
6075}
6076
6077#[repr(C)]
6078#[allow(dead_code)]
6079pub struct GtkActionBar {
6080    _data: [u8; 0],
6081    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6082}
6083
6084impl ::std::fmt::Debug for GtkActionBar {
6085    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6086        f.debug_struct(&format!("GtkActionBar @ {self:p}")).finish()
6087    }
6088}
6089
6090#[repr(C)]
6091#[allow(dead_code)]
6092pub struct GtkActivateAction {
6093    _data: [u8; 0],
6094    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6095}
6096
6097impl ::std::fmt::Debug for GtkActivateAction {
6098    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6099        f.debug_struct(&format!("GtkActivateAction @ {self:p}"))
6100            .finish()
6101    }
6102}
6103
6104#[derive(Copy, Clone)]
6105#[repr(C)]
6106pub struct GtkAdjustment {
6107    pub parent_instance: gobject::GInitiallyUnowned,
6108}
6109
6110impl ::std::fmt::Debug for GtkAdjustment {
6111    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6112        f.debug_struct(&format!("GtkAdjustment @ {self:p}"))
6113            .field("parent_instance", &self.parent_instance)
6114            .finish()
6115    }
6116}
6117
6118#[repr(C)]
6119#[allow(dead_code)]
6120pub struct GtkAlertDialog {
6121    _data: [u8; 0],
6122    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6123}
6124
6125impl ::std::fmt::Debug for GtkAlertDialog {
6126    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6127        f.debug_struct(&format!("GtkAlertDialog @ {self:p}"))
6128            .finish()
6129    }
6130}
6131
6132#[repr(C)]
6133#[allow(dead_code)]
6134pub struct GtkAlternativeTrigger {
6135    _data: [u8; 0],
6136    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6137}
6138
6139impl ::std::fmt::Debug for GtkAlternativeTrigger {
6140    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6141        f.debug_struct(&format!("GtkAlternativeTrigger @ {self:p}"))
6142            .finish()
6143    }
6144}
6145
6146#[repr(C)]
6147#[allow(dead_code)]
6148pub struct GtkAnyFilter {
6149    _data: [u8; 0],
6150    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6151}
6152
6153impl ::std::fmt::Debug for GtkAnyFilter {
6154    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6155        f.debug_struct(&format!("GtkAnyFilter @ {self:p}")).finish()
6156    }
6157}
6158
6159#[repr(C)]
6160#[allow(dead_code)]
6161pub struct GtkAppChooserButton {
6162    _data: [u8; 0],
6163    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6164}
6165
6166impl ::std::fmt::Debug for GtkAppChooserButton {
6167    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6168        f.debug_struct(&format!("GtkAppChooserButton @ {self:p}"))
6169            .finish()
6170    }
6171}
6172
6173#[repr(C)]
6174#[allow(dead_code)]
6175pub struct GtkAppChooserDialog {
6176    _data: [u8; 0],
6177    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6178}
6179
6180impl ::std::fmt::Debug for GtkAppChooserDialog {
6181    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6182        f.debug_struct(&format!("GtkAppChooserDialog @ {self:p}"))
6183            .finish()
6184    }
6185}
6186
6187#[repr(C)]
6188#[allow(dead_code)]
6189pub struct GtkAppChooserWidget {
6190    _data: [u8; 0],
6191    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6192}
6193
6194impl ::std::fmt::Debug for GtkAppChooserWidget {
6195    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6196        f.debug_struct(&format!("GtkAppChooserWidget @ {self:p}"))
6197            .finish()
6198    }
6199}
6200
6201#[derive(Copy, Clone)]
6202#[repr(C)]
6203pub struct GtkApplication {
6204    pub parent_instance: gio::GApplication,
6205}
6206
6207impl ::std::fmt::Debug for GtkApplication {
6208    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6209        f.debug_struct(&format!("GtkApplication @ {self:p}"))
6210            .field("parent_instance", &self.parent_instance)
6211            .finish()
6212    }
6213}
6214
6215#[derive(Copy, Clone)]
6216#[repr(C)]
6217pub struct GtkApplicationWindow {
6218    pub parent_instance: GtkWindow,
6219}
6220
6221impl ::std::fmt::Debug for GtkApplicationWindow {
6222    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6223        f.debug_struct(&format!("GtkApplicationWindow @ {self:p}"))
6224            .field("parent_instance", &self.parent_instance)
6225            .finish()
6226    }
6227}
6228
6229#[repr(C)]
6230#[allow(dead_code)]
6231pub struct GtkAspectFrame {
6232    _data: [u8; 0],
6233    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6234}
6235
6236impl ::std::fmt::Debug for GtkAspectFrame {
6237    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6238        f.debug_struct(&format!("GtkAspectFrame @ {self:p}"))
6239            .finish()
6240    }
6241}
6242
6243#[repr(C)]
6244#[allow(dead_code)]
6245pub struct GtkAssistant {
6246    _data: [u8; 0],
6247    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6248}
6249
6250impl ::std::fmt::Debug for GtkAssistant {
6251    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6252        f.debug_struct(&format!("GtkAssistant @ {self:p}")).finish()
6253    }
6254}
6255
6256#[repr(C)]
6257#[allow(dead_code)]
6258pub struct GtkAssistantPage {
6259    _data: [u8; 0],
6260    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6261}
6262
6263impl ::std::fmt::Debug for GtkAssistantPage {
6264    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6265        f.debug_struct(&format!("GtkAssistantPage @ {self:p}"))
6266            .finish()
6267    }
6268}
6269
6270#[repr(C)]
6271#[allow(dead_code)]
6272pub struct GtkBinLayout {
6273    _data: [u8; 0],
6274    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6275}
6276
6277impl ::std::fmt::Debug for GtkBinLayout {
6278    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6279        f.debug_struct(&format!("GtkBinLayout @ {self:p}")).finish()
6280    }
6281}
6282
6283#[repr(C)]
6284#[allow(dead_code)]
6285pub struct GtkBookmarkList {
6286    _data: [u8; 0],
6287    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6288}
6289
6290impl ::std::fmt::Debug for GtkBookmarkList {
6291    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6292        f.debug_struct(&format!("GtkBookmarkList @ {self:p}"))
6293            .finish()
6294    }
6295}
6296
6297#[repr(C)]
6298#[allow(dead_code)]
6299pub struct GtkBoolFilter {
6300    _data: [u8; 0],
6301    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6302}
6303
6304impl ::std::fmt::Debug for GtkBoolFilter {
6305    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6306        f.debug_struct(&format!("GtkBoolFilter @ {self:p}"))
6307            .finish()
6308    }
6309}
6310
6311#[derive(Copy, Clone)]
6312#[repr(C)]
6313pub struct GtkBox {
6314    pub parent_instance: GtkWidget,
6315}
6316
6317impl ::std::fmt::Debug for GtkBox {
6318    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6319        f.debug_struct(&format!("GtkBox @ {self:p}"))
6320            .field("parent_instance", &self.parent_instance)
6321            .finish()
6322    }
6323}
6324
6325#[repr(C)]
6326#[allow(dead_code)]
6327pub struct GtkBoxLayout {
6328    _data: [u8; 0],
6329    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6330}
6331
6332impl ::std::fmt::Debug for GtkBoxLayout {
6333    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6334        f.debug_struct(&format!("GtkBoxLayout @ {self:p}")).finish()
6335    }
6336}
6337
6338#[repr(C)]
6339#[allow(dead_code)]
6340pub struct GtkBuilder {
6341    _data: [u8; 0],
6342    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6343}
6344
6345impl ::std::fmt::Debug for GtkBuilder {
6346    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6347        f.debug_struct(&format!("GtkBuilder @ {self:p}")).finish()
6348    }
6349}
6350
6351#[derive(Copy, Clone)]
6352#[repr(C)]
6353pub struct GtkBuilderCScope {
6354    pub parent_instance: gobject::GObject,
6355}
6356
6357impl ::std::fmt::Debug for GtkBuilderCScope {
6358    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6359        f.debug_struct(&format!("GtkBuilderCScope @ {self:p}"))
6360            .field("parent_instance", &self.parent_instance)
6361            .finish()
6362    }
6363}
6364
6365#[repr(C)]
6366#[allow(dead_code)]
6367pub struct GtkBuilderListItemFactory {
6368    _data: [u8; 0],
6369    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6370}
6371
6372impl ::std::fmt::Debug for GtkBuilderListItemFactory {
6373    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6374        f.debug_struct(&format!("GtkBuilderListItemFactory @ {self:p}"))
6375            .finish()
6376    }
6377}
6378
6379#[derive(Copy, Clone)]
6380#[repr(C)]
6381pub struct GtkButton {
6382    pub parent_instance: GtkWidget,
6383}
6384
6385impl ::std::fmt::Debug for GtkButton {
6386    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6387        f.debug_struct(&format!("GtkButton @ {self:p}")).finish()
6388    }
6389}
6390
6391#[repr(C)]
6392#[allow(dead_code)]
6393pub struct GtkCClosureExpression {
6394    _data: [u8; 0],
6395    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6396}
6397
6398impl ::std::fmt::Debug for GtkCClosureExpression {
6399    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6400        f.debug_struct(&format!("GtkCClosureExpression @ {self:p}"))
6401            .finish()
6402    }
6403}
6404
6405#[repr(C)]
6406#[allow(dead_code)]
6407pub struct GtkCalendar {
6408    _data: [u8; 0],
6409    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6410}
6411
6412impl ::std::fmt::Debug for GtkCalendar {
6413    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6414        f.debug_struct(&format!("GtkCalendar @ {self:p}")).finish()
6415    }
6416}
6417
6418#[repr(C)]
6419#[allow(dead_code)]
6420pub struct GtkCallbackAction {
6421    _data: [u8; 0],
6422    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6423}
6424
6425impl ::std::fmt::Debug for GtkCallbackAction {
6426    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6427        f.debug_struct(&format!("GtkCallbackAction @ {self:p}"))
6428            .finish()
6429    }
6430}
6431
6432#[derive(Copy, Clone)]
6433#[repr(C)]
6434pub struct GtkCellArea {
6435    pub parent_instance: gobject::GInitiallyUnowned,
6436}
6437
6438impl ::std::fmt::Debug for GtkCellArea {
6439    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6440        f.debug_struct(&format!("GtkCellArea @ {self:p}")).finish()
6441    }
6442}
6443
6444#[repr(C)]
6445#[allow(dead_code)]
6446pub struct GtkCellAreaBox {
6447    _data: [u8; 0],
6448    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6449}
6450
6451impl ::std::fmt::Debug for GtkCellAreaBox {
6452    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6453        f.debug_struct(&format!("GtkCellAreaBox @ {self:p}"))
6454            .finish()
6455    }
6456}
6457
6458#[derive(Copy, Clone)]
6459#[repr(C)]
6460pub struct GtkCellAreaContext {
6461    pub parent_instance: gobject::GObject,
6462}
6463
6464impl ::std::fmt::Debug for GtkCellAreaContext {
6465    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6466        f.debug_struct(&format!("GtkCellAreaContext @ {self:p}"))
6467            .finish()
6468    }
6469}
6470
6471#[derive(Copy, Clone)]
6472#[repr(C)]
6473pub struct GtkCellRenderer {
6474    pub parent_instance: gobject::GInitiallyUnowned,
6475    pub priv_: *mut GtkCellRendererPrivate,
6476}
6477
6478impl ::std::fmt::Debug for GtkCellRenderer {
6479    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6480        f.debug_struct(&format!("GtkCellRenderer @ {self:p}"))
6481            .field("parent_instance", &self.parent_instance)
6482            .finish()
6483    }
6484}
6485
6486#[repr(C)]
6487#[allow(dead_code)]
6488pub struct GtkCellRendererAccel {
6489    _data: [u8; 0],
6490    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6491}
6492
6493impl ::std::fmt::Debug for GtkCellRendererAccel {
6494    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6495        f.debug_struct(&format!("GtkCellRendererAccel @ {self:p}"))
6496            .finish()
6497    }
6498}
6499
6500#[repr(C)]
6501#[allow(dead_code)]
6502pub struct GtkCellRendererCombo {
6503    _data: [u8; 0],
6504    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6505}
6506
6507impl ::std::fmt::Debug for GtkCellRendererCombo {
6508    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6509        f.debug_struct(&format!("GtkCellRendererCombo @ {self:p}"))
6510            .finish()
6511    }
6512}
6513
6514#[repr(C)]
6515#[allow(dead_code)]
6516pub struct GtkCellRendererPixbuf {
6517    _data: [u8; 0],
6518    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6519}
6520
6521impl ::std::fmt::Debug for GtkCellRendererPixbuf {
6522    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6523        f.debug_struct(&format!("GtkCellRendererPixbuf @ {self:p}"))
6524            .finish()
6525    }
6526}
6527
6528#[repr(C)]
6529#[allow(dead_code)]
6530pub struct GtkCellRendererProgress {
6531    _data: [u8; 0],
6532    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6533}
6534
6535impl ::std::fmt::Debug for GtkCellRendererProgress {
6536    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6537        f.debug_struct(&format!("GtkCellRendererProgress @ {self:p}"))
6538            .finish()
6539    }
6540}
6541
6542#[repr(C)]
6543#[allow(dead_code)]
6544pub struct GtkCellRendererSpin {
6545    _data: [u8; 0],
6546    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6547}
6548
6549impl ::std::fmt::Debug for GtkCellRendererSpin {
6550    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6551        f.debug_struct(&format!("GtkCellRendererSpin @ {self:p}"))
6552            .finish()
6553    }
6554}
6555
6556#[repr(C)]
6557#[allow(dead_code)]
6558pub struct GtkCellRendererSpinner {
6559    _data: [u8; 0],
6560    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6561}
6562
6563impl ::std::fmt::Debug for GtkCellRendererSpinner {
6564    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6565        f.debug_struct(&format!("GtkCellRendererSpinner @ {self:p}"))
6566            .finish()
6567    }
6568}
6569
6570#[derive(Copy, Clone)]
6571#[repr(C)]
6572pub struct GtkCellRendererText {
6573    pub parent: GtkCellRenderer,
6574}
6575
6576impl ::std::fmt::Debug for GtkCellRendererText {
6577    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6578        f.debug_struct(&format!("GtkCellRendererText @ {self:p}"))
6579            .field("parent", &self.parent)
6580            .finish()
6581    }
6582}
6583
6584#[repr(C)]
6585#[allow(dead_code)]
6586pub struct GtkCellRendererToggle {
6587    _data: [u8; 0],
6588    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6589}
6590
6591impl ::std::fmt::Debug for GtkCellRendererToggle {
6592    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6593        f.debug_struct(&format!("GtkCellRendererToggle @ {self:p}"))
6594            .finish()
6595    }
6596}
6597
6598#[repr(C)]
6599#[allow(dead_code)]
6600pub struct GtkCellView {
6601    _data: [u8; 0],
6602    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6603}
6604
6605impl ::std::fmt::Debug for GtkCellView {
6606    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6607        f.debug_struct(&format!("GtkCellView @ {self:p}")).finish()
6608    }
6609}
6610
6611#[repr(C)]
6612#[allow(dead_code)]
6613pub struct GtkCenterBox {
6614    _data: [u8; 0],
6615    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6616}
6617
6618impl ::std::fmt::Debug for GtkCenterBox {
6619    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6620        f.debug_struct(&format!("GtkCenterBox @ {self:p}")).finish()
6621    }
6622}
6623
6624#[repr(C)]
6625#[allow(dead_code)]
6626pub struct GtkCenterLayout {
6627    _data: [u8; 0],
6628    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6629}
6630
6631impl ::std::fmt::Debug for GtkCenterLayout {
6632    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6633        f.debug_struct(&format!("GtkCenterLayout @ {self:p}"))
6634            .finish()
6635    }
6636}
6637
6638#[derive(Copy, Clone)]
6639#[repr(C)]
6640pub struct GtkCheckButton {
6641    pub parent_instance: GtkWidget,
6642}
6643
6644impl ::std::fmt::Debug for GtkCheckButton {
6645    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6646        f.debug_struct(&format!("GtkCheckButton @ {self:p}"))
6647            .field("parent_instance", &self.parent_instance)
6648            .finish()
6649    }
6650}
6651
6652#[repr(C)]
6653#[allow(dead_code)]
6654pub struct GtkClosureExpression {
6655    _data: [u8; 0],
6656    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6657}
6658
6659impl ::std::fmt::Debug for GtkClosureExpression {
6660    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6661        f.debug_struct(&format!("GtkClosureExpression @ {self:p}"))
6662            .finish()
6663    }
6664}
6665
6666#[repr(C)]
6667#[allow(dead_code)]
6668pub struct GtkColorButton {
6669    _data: [u8; 0],
6670    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6671}
6672
6673impl ::std::fmt::Debug for GtkColorButton {
6674    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6675        f.debug_struct(&format!("GtkColorButton @ {self:p}"))
6676            .finish()
6677    }
6678}
6679
6680#[repr(C)]
6681#[allow(dead_code)]
6682pub struct GtkColorChooserDialog {
6683    _data: [u8; 0],
6684    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6685}
6686
6687impl ::std::fmt::Debug for GtkColorChooserDialog {
6688    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6689        f.debug_struct(&format!("GtkColorChooserDialog @ {self:p}"))
6690            .finish()
6691    }
6692}
6693
6694#[repr(C)]
6695#[allow(dead_code)]
6696pub struct GtkColorChooserWidget {
6697    _data: [u8; 0],
6698    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6699}
6700
6701impl ::std::fmt::Debug for GtkColorChooserWidget {
6702    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6703        f.debug_struct(&format!("GtkColorChooserWidget @ {self:p}"))
6704            .finish()
6705    }
6706}
6707
6708#[repr(C)]
6709#[allow(dead_code)]
6710pub struct GtkColorDialog {
6711    _data: [u8; 0],
6712    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6713}
6714
6715impl ::std::fmt::Debug for GtkColorDialog {
6716    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6717        f.debug_struct(&format!("GtkColorDialog @ {self:p}"))
6718            .finish()
6719    }
6720}
6721
6722#[repr(C)]
6723#[allow(dead_code)]
6724pub struct GtkColorDialogButton {
6725    _data: [u8; 0],
6726    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6727}
6728
6729impl ::std::fmt::Debug for GtkColorDialogButton {
6730    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6731        f.debug_struct(&format!("GtkColorDialogButton @ {self:p}"))
6732            .finish()
6733    }
6734}
6735
6736#[repr(C)]
6737#[allow(dead_code)]
6738pub struct GtkColumnView {
6739    _data: [u8; 0],
6740    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6741}
6742
6743impl ::std::fmt::Debug for GtkColumnView {
6744    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6745        f.debug_struct(&format!("GtkColumnView @ {self:p}"))
6746            .finish()
6747    }
6748}
6749
6750#[repr(C)]
6751#[allow(dead_code)]
6752pub struct GtkColumnViewCell {
6753    _data: [u8; 0],
6754    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6755}
6756
6757impl ::std::fmt::Debug for GtkColumnViewCell {
6758    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6759        f.debug_struct(&format!("GtkColumnViewCell @ {self:p}"))
6760            .finish()
6761    }
6762}
6763
6764#[repr(C)]
6765#[allow(dead_code)]
6766pub struct GtkColumnViewColumn {
6767    _data: [u8; 0],
6768    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6769}
6770
6771impl ::std::fmt::Debug for GtkColumnViewColumn {
6772    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6773        f.debug_struct(&format!("GtkColumnViewColumn @ {self:p}"))
6774            .finish()
6775    }
6776}
6777
6778#[repr(C)]
6779#[allow(dead_code)]
6780pub struct GtkColumnViewRow {
6781    _data: [u8; 0],
6782    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6783}
6784
6785impl ::std::fmt::Debug for GtkColumnViewRow {
6786    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6787        f.debug_struct(&format!("GtkColumnViewRow @ {self:p}"))
6788            .finish()
6789    }
6790}
6791
6792#[repr(C)]
6793#[allow(dead_code)]
6794pub struct GtkColumnViewSorter {
6795    _data: [u8; 0],
6796    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6797}
6798
6799impl ::std::fmt::Debug for GtkColumnViewSorter {
6800    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6801        f.debug_struct(&format!("GtkColumnViewSorter @ {self:p}"))
6802            .finish()
6803    }
6804}
6805
6806#[derive(Copy, Clone)]
6807#[repr(C)]
6808pub struct GtkComboBox {
6809    pub parent_instance: GtkWidget,
6810}
6811
6812impl ::std::fmt::Debug for GtkComboBox {
6813    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6814        f.debug_struct(&format!("GtkComboBox @ {self:p}"))
6815            .field("parent_instance", &self.parent_instance)
6816            .finish()
6817    }
6818}
6819
6820#[repr(C)]
6821#[allow(dead_code)]
6822pub struct GtkComboBoxText {
6823    _data: [u8; 0],
6824    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6825}
6826
6827impl ::std::fmt::Debug for GtkComboBoxText {
6828    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6829        f.debug_struct(&format!("GtkComboBoxText @ {self:p}"))
6830            .finish()
6831    }
6832}
6833
6834#[repr(C)]
6835#[allow(dead_code)]
6836pub struct GtkConstantExpression {
6837    _data: [u8; 0],
6838    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6839}
6840
6841impl ::std::fmt::Debug for GtkConstantExpression {
6842    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6843        f.debug_struct(&format!("GtkConstantExpression @ {self:p}"))
6844            .finish()
6845    }
6846}
6847
6848#[repr(C)]
6849#[allow(dead_code)]
6850pub struct GtkConstraint {
6851    _data: [u8; 0],
6852    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6853}
6854
6855impl ::std::fmt::Debug for GtkConstraint {
6856    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6857        f.debug_struct(&format!("GtkConstraint @ {self:p}"))
6858            .finish()
6859    }
6860}
6861
6862#[repr(C)]
6863#[allow(dead_code)]
6864pub struct GtkConstraintGuide {
6865    _data: [u8; 0],
6866    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6867}
6868
6869impl ::std::fmt::Debug for GtkConstraintGuide {
6870    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6871        f.debug_struct(&format!("GtkConstraintGuide @ {self:p}"))
6872            .finish()
6873    }
6874}
6875
6876#[repr(C)]
6877#[allow(dead_code)]
6878pub struct GtkConstraintLayout {
6879    _data: [u8; 0],
6880    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6881}
6882
6883impl ::std::fmt::Debug for GtkConstraintLayout {
6884    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6885        f.debug_struct(&format!("GtkConstraintLayout @ {self:p}"))
6886            .finish()
6887    }
6888}
6889
6890#[repr(C)]
6891#[allow(dead_code)]
6892pub struct GtkConstraintLayoutChild {
6893    _data: [u8; 0],
6894    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6895}
6896
6897impl ::std::fmt::Debug for GtkConstraintLayoutChild {
6898    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6899        f.debug_struct(&format!("GtkConstraintLayoutChild @ {self:p}"))
6900            .finish()
6901    }
6902}
6903
6904#[derive(Copy, Clone)]
6905#[repr(C)]
6906pub struct GtkCssProvider {
6907    pub parent_instance: gobject::GObject,
6908}
6909
6910impl ::std::fmt::Debug for GtkCssProvider {
6911    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6912        f.debug_struct(&format!("GtkCssProvider @ {self:p}"))
6913            .field("parent_instance", &self.parent_instance)
6914            .finish()
6915    }
6916}
6917
6918#[repr(C)]
6919#[allow(dead_code)]
6920pub struct GtkCustomFilter {
6921    _data: [u8; 0],
6922    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6923}
6924
6925impl ::std::fmt::Debug for GtkCustomFilter {
6926    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6927        f.debug_struct(&format!("GtkCustomFilter @ {self:p}"))
6928            .finish()
6929    }
6930}
6931
6932#[repr(C)]
6933#[allow(dead_code)]
6934pub struct GtkCustomLayout {
6935    _data: [u8; 0],
6936    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6937}
6938
6939impl ::std::fmt::Debug for GtkCustomLayout {
6940    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6941        f.debug_struct(&format!("GtkCustomLayout @ {self:p}"))
6942            .finish()
6943    }
6944}
6945
6946#[repr(C)]
6947#[allow(dead_code)]
6948pub struct GtkCustomSorter {
6949    _data: [u8; 0],
6950    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6951}
6952
6953impl ::std::fmt::Debug for GtkCustomSorter {
6954    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6955        f.debug_struct(&format!("GtkCustomSorter @ {self:p}"))
6956            .finish()
6957    }
6958}
6959
6960#[derive(Copy, Clone)]
6961#[repr(C)]
6962pub struct GtkDialog {
6963    pub parent_instance: GtkWindow,
6964}
6965
6966impl ::std::fmt::Debug for GtkDialog {
6967    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6968        f.debug_struct(&format!("GtkDialog @ {self:p}"))
6969            .field("parent_instance", &self.parent_instance)
6970            .finish()
6971    }
6972}
6973
6974#[repr(C)]
6975#[allow(dead_code)]
6976pub struct GtkDirectoryList {
6977    _data: [u8; 0],
6978    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6979}
6980
6981impl ::std::fmt::Debug for GtkDirectoryList {
6982    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6983        f.debug_struct(&format!("GtkDirectoryList @ {self:p}"))
6984            .finish()
6985    }
6986}
6987
6988#[repr(C)]
6989#[allow(dead_code)]
6990pub struct GtkDragIcon {
6991    _data: [u8; 0],
6992    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6993}
6994
6995impl ::std::fmt::Debug for GtkDragIcon {
6996    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6997        f.debug_struct(&format!("GtkDragIcon @ {self:p}")).finish()
6998    }
6999}
7000
7001#[repr(C)]
7002#[allow(dead_code)]
7003pub struct GtkDragSource {
7004    _data: [u8; 0],
7005    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7006}
7007
7008impl ::std::fmt::Debug for GtkDragSource {
7009    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7010        f.debug_struct(&format!("GtkDragSource @ {self:p}"))
7011            .finish()
7012    }
7013}
7014
7015#[derive(Copy, Clone)]
7016#[repr(C)]
7017pub struct GtkDrawingArea {
7018    pub widget: GtkWidget,
7019}
7020
7021impl ::std::fmt::Debug for GtkDrawingArea {
7022    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7023        f.debug_struct(&format!("GtkDrawingArea @ {self:p}"))
7024            .field("widget", &self.widget)
7025            .finish()
7026    }
7027}
7028
7029#[repr(C)]
7030#[allow(dead_code)]
7031pub struct GtkDropControllerMotion {
7032    _data: [u8; 0],
7033    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7034}
7035
7036impl ::std::fmt::Debug for GtkDropControllerMotion {
7037    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7038        f.debug_struct(&format!("GtkDropControllerMotion @ {self:p}"))
7039            .finish()
7040    }
7041}
7042
7043#[repr(C)]
7044#[allow(dead_code)]
7045pub struct GtkDropDown {
7046    _data: [u8; 0],
7047    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7048}
7049
7050impl ::std::fmt::Debug for GtkDropDown {
7051    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7052        f.debug_struct(&format!("GtkDropDown @ {self:p}")).finish()
7053    }
7054}
7055
7056#[repr(C)]
7057#[allow(dead_code)]
7058pub struct GtkDropTarget {
7059    _data: [u8; 0],
7060    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7061}
7062
7063impl ::std::fmt::Debug for GtkDropTarget {
7064    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7065        f.debug_struct(&format!("GtkDropTarget @ {self:p}"))
7066            .finish()
7067    }
7068}
7069
7070#[repr(C)]
7071#[allow(dead_code)]
7072pub struct GtkDropTargetAsync {
7073    _data: [u8; 0],
7074    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7075}
7076
7077impl ::std::fmt::Debug for GtkDropTargetAsync {
7078    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7079        f.debug_struct(&format!("GtkDropTargetAsync @ {self:p}"))
7080            .finish()
7081    }
7082}
7083
7084#[repr(C)]
7085#[allow(dead_code)]
7086pub struct GtkEditableLabel {
7087    _data: [u8; 0],
7088    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7089}
7090
7091impl ::std::fmt::Debug for GtkEditableLabel {
7092    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7093        f.debug_struct(&format!("GtkEditableLabel @ {self:p}"))
7094            .finish()
7095    }
7096}
7097
7098#[repr(C)]
7099#[allow(dead_code)]
7100pub struct GtkEmojiChooser {
7101    _data: [u8; 0],
7102    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7103}
7104
7105impl ::std::fmt::Debug for GtkEmojiChooser {
7106    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7107        f.debug_struct(&format!("GtkEmojiChooser @ {self:p}"))
7108            .finish()
7109    }
7110}
7111
7112#[derive(Copy, Clone)]
7113#[repr(C)]
7114pub struct GtkEntry {
7115    pub parent_instance: GtkWidget,
7116}
7117
7118impl ::std::fmt::Debug for GtkEntry {
7119    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7120        f.debug_struct(&format!("GtkEntry @ {self:p}")).finish()
7121    }
7122}
7123
7124#[derive(Copy, Clone)]
7125#[repr(C)]
7126pub struct GtkEntryBuffer {
7127    pub parent_instance: gobject::GObject,
7128}
7129
7130impl ::std::fmt::Debug for GtkEntryBuffer {
7131    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7132        f.debug_struct(&format!("GtkEntryBuffer @ {self:p}"))
7133            .field("parent_instance", &self.parent_instance)
7134            .finish()
7135    }
7136}
7137
7138#[repr(C)]
7139#[allow(dead_code)]
7140pub struct GtkEntryCompletion {
7141    _data: [u8; 0],
7142    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7143}
7144
7145impl ::std::fmt::Debug for GtkEntryCompletion {
7146    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7147        f.debug_struct(&format!("GtkEntryCompletion @ {self:p}"))
7148            .finish()
7149    }
7150}
7151
7152#[repr(C)]
7153#[allow(dead_code)]
7154pub struct GtkEventController {
7155    _data: [u8; 0],
7156    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7157}
7158
7159impl ::std::fmt::Debug for GtkEventController {
7160    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7161        f.debug_struct(&format!("GtkEventController @ {self:p}"))
7162            .finish()
7163    }
7164}
7165
7166#[repr(C)]
7167#[allow(dead_code)]
7168pub struct GtkEventControllerFocus {
7169    _data: [u8; 0],
7170    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7171}
7172
7173impl ::std::fmt::Debug for GtkEventControllerFocus {
7174    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7175        f.debug_struct(&format!("GtkEventControllerFocus @ {self:p}"))
7176            .finish()
7177    }
7178}
7179
7180#[repr(C)]
7181#[allow(dead_code)]
7182pub struct GtkEventControllerKey {
7183    _data: [u8; 0],
7184    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7185}
7186
7187impl ::std::fmt::Debug for GtkEventControllerKey {
7188    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7189        f.debug_struct(&format!("GtkEventControllerKey @ {self:p}"))
7190            .finish()
7191    }
7192}
7193
7194#[repr(C)]
7195#[allow(dead_code)]
7196pub struct GtkEventControllerLegacy {
7197    _data: [u8; 0],
7198    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7199}
7200
7201impl ::std::fmt::Debug for GtkEventControllerLegacy {
7202    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7203        f.debug_struct(&format!("GtkEventControllerLegacy @ {self:p}"))
7204            .finish()
7205    }
7206}
7207
7208#[repr(C)]
7209#[allow(dead_code)]
7210pub struct GtkEventControllerMotion {
7211    _data: [u8; 0],
7212    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7213}
7214
7215impl ::std::fmt::Debug for GtkEventControllerMotion {
7216    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7217        f.debug_struct(&format!("GtkEventControllerMotion @ {self:p}"))
7218            .finish()
7219    }
7220}
7221
7222#[repr(C)]
7223#[allow(dead_code)]
7224pub struct GtkEventControllerScroll {
7225    _data: [u8; 0],
7226    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7227}
7228
7229impl ::std::fmt::Debug for GtkEventControllerScroll {
7230    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7231        f.debug_struct(&format!("GtkEventControllerScroll @ {self:p}"))
7232            .finish()
7233    }
7234}
7235
7236#[repr(C)]
7237#[allow(dead_code)]
7238pub struct GtkEveryFilter {
7239    _data: [u8; 0],
7240    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7241}
7242
7243impl ::std::fmt::Debug for GtkEveryFilter {
7244    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7245        f.debug_struct(&format!("GtkEveryFilter @ {self:p}"))
7246            .finish()
7247    }
7248}
7249
7250#[repr(C)]
7251#[allow(dead_code)]
7252pub struct GtkExpander {
7253    _data: [u8; 0],
7254    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7255}
7256
7257impl ::std::fmt::Debug for GtkExpander {
7258    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7259        f.debug_struct(&format!("GtkExpander @ {self:p}")).finish()
7260    }
7261}
7262
7263#[repr(C)]
7264#[allow(dead_code)]
7265pub struct GtkExpression {
7266    _data: [u8; 0],
7267    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7268}
7269
7270impl ::std::fmt::Debug for GtkExpression {
7271    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7272        f.debug_struct(&format!("GtkExpression @ {self:p}"))
7273            .finish()
7274    }
7275}
7276
7277#[repr(C)]
7278#[allow(dead_code)]
7279pub struct GtkFileChooserDialog {
7280    _data: [u8; 0],
7281    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7282}
7283
7284impl ::std::fmt::Debug for GtkFileChooserDialog {
7285    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7286        f.debug_struct(&format!("GtkFileChooserDialog @ {self:p}"))
7287            .finish()
7288    }
7289}
7290
7291#[repr(C)]
7292#[allow(dead_code)]
7293pub struct GtkFileChooserNative {
7294    _data: [u8; 0],
7295    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7296}
7297
7298impl ::std::fmt::Debug for GtkFileChooserNative {
7299    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7300        f.debug_struct(&format!("GtkFileChooserNative @ {self:p}"))
7301            .finish()
7302    }
7303}
7304
7305#[repr(C)]
7306#[allow(dead_code)]
7307pub struct GtkFileChooserWidget {
7308    _data: [u8; 0],
7309    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7310}
7311
7312impl ::std::fmt::Debug for GtkFileChooserWidget {
7313    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7314        f.debug_struct(&format!("GtkFileChooserWidget @ {self:p}"))
7315            .finish()
7316    }
7317}
7318
7319#[repr(C)]
7320#[allow(dead_code)]
7321pub struct GtkFileDialog {
7322    _data: [u8; 0],
7323    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7324}
7325
7326impl ::std::fmt::Debug for GtkFileDialog {
7327    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7328        f.debug_struct(&format!("GtkFileDialog @ {self:p}"))
7329            .finish()
7330    }
7331}
7332
7333#[repr(C)]
7334#[allow(dead_code)]
7335pub struct GtkFileFilter {
7336    _data: [u8; 0],
7337    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7338}
7339
7340impl ::std::fmt::Debug for GtkFileFilter {
7341    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7342        f.debug_struct(&format!("GtkFileFilter @ {self:p}"))
7343            .finish()
7344    }
7345}
7346
7347#[repr(C)]
7348#[allow(dead_code)]
7349pub struct GtkFileLauncher {
7350    _data: [u8; 0],
7351    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7352}
7353
7354impl ::std::fmt::Debug for GtkFileLauncher {
7355    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7356        f.debug_struct(&format!("GtkFileLauncher @ {self:p}"))
7357            .finish()
7358    }
7359}
7360
7361#[derive(Copy, Clone)]
7362#[repr(C)]
7363pub struct GtkFilter {
7364    pub parent_instance: gobject::GObject,
7365}
7366
7367impl ::std::fmt::Debug for GtkFilter {
7368    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7369        f.debug_struct(&format!("GtkFilter @ {self:p}"))
7370            .field("parent_instance", &self.parent_instance)
7371            .finish()
7372    }
7373}
7374
7375#[repr(C)]
7376#[allow(dead_code)]
7377pub struct GtkFilterListModel {
7378    _data: [u8; 0],
7379    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7380}
7381
7382impl ::std::fmt::Debug for GtkFilterListModel {
7383    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7384        f.debug_struct(&format!("GtkFilterListModel @ {self:p}"))
7385            .finish()
7386    }
7387}
7388
7389#[derive(Copy, Clone)]
7390#[repr(C)]
7391pub struct GtkFixed {
7392    pub parent_instance: GtkWidget,
7393}
7394
7395impl ::std::fmt::Debug for GtkFixed {
7396    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7397        f.debug_struct(&format!("GtkFixed @ {self:p}"))
7398            .field("parent_instance", &self.parent_instance)
7399            .finish()
7400    }
7401}
7402
7403#[repr(C)]
7404#[allow(dead_code)]
7405pub struct GtkFixedLayout {
7406    _data: [u8; 0],
7407    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7408}
7409
7410impl ::std::fmt::Debug for GtkFixedLayout {
7411    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7412        f.debug_struct(&format!("GtkFixedLayout @ {self:p}"))
7413            .finish()
7414    }
7415}
7416
7417#[repr(C)]
7418#[allow(dead_code)]
7419pub struct GtkFixedLayoutChild {
7420    _data: [u8; 0],
7421    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7422}
7423
7424impl ::std::fmt::Debug for GtkFixedLayoutChild {
7425    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7426        f.debug_struct(&format!("GtkFixedLayoutChild @ {self:p}"))
7427            .finish()
7428    }
7429}
7430
7431#[repr(C)]
7432#[allow(dead_code)]
7433pub struct GtkFlattenListModel {
7434    _data: [u8; 0],
7435    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7436}
7437
7438impl ::std::fmt::Debug for GtkFlattenListModel {
7439    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7440        f.debug_struct(&format!("GtkFlattenListModel @ {self:p}"))
7441            .finish()
7442    }
7443}
7444
7445#[repr(C)]
7446#[allow(dead_code)]
7447pub struct GtkFlowBox {
7448    _data: [u8; 0],
7449    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7450}
7451
7452impl ::std::fmt::Debug for GtkFlowBox {
7453    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7454        f.debug_struct(&format!("GtkFlowBox @ {self:p}")).finish()
7455    }
7456}
7457
7458#[derive(Copy, Clone)]
7459#[repr(C)]
7460pub struct GtkFlowBoxChild {
7461    pub parent_instance: GtkWidget,
7462}
7463
7464impl ::std::fmt::Debug for GtkFlowBoxChild {
7465    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7466        f.debug_struct(&format!("GtkFlowBoxChild @ {self:p}"))
7467            .finish()
7468    }
7469}
7470
7471#[repr(C)]
7472#[allow(dead_code)]
7473pub struct GtkFontButton {
7474    _data: [u8; 0],
7475    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7476}
7477
7478impl ::std::fmt::Debug for GtkFontButton {
7479    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7480        f.debug_struct(&format!("GtkFontButton @ {self:p}"))
7481            .finish()
7482    }
7483}
7484
7485#[repr(C)]
7486#[allow(dead_code)]
7487pub struct GtkFontChooserDialog {
7488    _data: [u8; 0],
7489    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7490}
7491
7492impl ::std::fmt::Debug for GtkFontChooserDialog {
7493    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7494        f.debug_struct(&format!("GtkFontChooserDialog @ {self:p}"))
7495            .finish()
7496    }
7497}
7498
7499#[repr(C)]
7500#[allow(dead_code)]
7501pub struct GtkFontChooserWidget {
7502    _data: [u8; 0],
7503    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7504}
7505
7506impl ::std::fmt::Debug for GtkFontChooserWidget {
7507    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7508        f.debug_struct(&format!("GtkFontChooserWidget @ {self:p}"))
7509            .finish()
7510    }
7511}
7512
7513#[repr(C)]
7514#[allow(dead_code)]
7515pub struct GtkFontDialog {
7516    _data: [u8; 0],
7517    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7518}
7519
7520impl ::std::fmt::Debug for GtkFontDialog {
7521    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7522        f.debug_struct(&format!("GtkFontDialog @ {self:p}"))
7523            .finish()
7524    }
7525}
7526
7527#[repr(C)]
7528#[allow(dead_code)]
7529pub struct GtkFontDialogButton {
7530    _data: [u8; 0],
7531    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7532}
7533
7534impl ::std::fmt::Debug for GtkFontDialogButton {
7535    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7536        f.debug_struct(&format!("GtkFontDialogButton @ {self:p}"))
7537            .finish()
7538    }
7539}
7540
7541#[derive(Copy, Clone)]
7542#[repr(C)]
7543pub struct GtkFrame {
7544    pub parent_instance: GtkWidget,
7545}
7546
7547impl ::std::fmt::Debug for GtkFrame {
7548    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7549        f.debug_struct(&format!("GtkFrame @ {self:p}"))
7550            .field("parent_instance", &self.parent_instance)
7551            .finish()
7552    }
7553}
7554
7555#[derive(Copy, Clone)]
7556#[repr(C)]
7557pub struct GtkGLArea {
7558    pub parent_instance: GtkWidget,
7559}
7560
7561impl ::std::fmt::Debug for GtkGLArea {
7562    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7563        f.debug_struct(&format!("GtkGLArea @ {self:p}")).finish()
7564    }
7565}
7566
7567#[repr(C)]
7568#[allow(dead_code)]
7569pub struct GtkGesture {
7570    _data: [u8; 0],
7571    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7572}
7573
7574impl ::std::fmt::Debug for GtkGesture {
7575    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7576        f.debug_struct(&format!("GtkGesture @ {self:p}")).finish()
7577    }
7578}
7579
7580#[repr(C)]
7581#[allow(dead_code)]
7582pub struct GtkGestureClick {
7583    _data: [u8; 0],
7584    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7585}
7586
7587impl ::std::fmt::Debug for GtkGestureClick {
7588    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7589        f.debug_struct(&format!("GtkGestureClick @ {self:p}"))
7590            .finish()
7591    }
7592}
7593
7594#[repr(C)]
7595#[allow(dead_code)]
7596pub struct GtkGestureDrag {
7597    _data: [u8; 0],
7598    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7599}
7600
7601impl ::std::fmt::Debug for GtkGestureDrag {
7602    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7603        f.debug_struct(&format!("GtkGestureDrag @ {self:p}"))
7604            .finish()
7605    }
7606}
7607
7608#[repr(C)]
7609#[allow(dead_code)]
7610pub struct GtkGestureLongPress {
7611    _data: [u8; 0],
7612    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7613}
7614
7615impl ::std::fmt::Debug for GtkGestureLongPress {
7616    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7617        f.debug_struct(&format!("GtkGestureLongPress @ {self:p}"))
7618            .finish()
7619    }
7620}
7621
7622#[repr(C)]
7623#[allow(dead_code)]
7624pub struct GtkGesturePan {
7625    _data: [u8; 0],
7626    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7627}
7628
7629impl ::std::fmt::Debug for GtkGesturePan {
7630    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7631        f.debug_struct(&format!("GtkGesturePan @ {self:p}"))
7632            .finish()
7633    }
7634}
7635
7636#[repr(C)]
7637#[allow(dead_code)]
7638pub struct GtkGestureRotate {
7639    _data: [u8; 0],
7640    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7641}
7642
7643impl ::std::fmt::Debug for GtkGestureRotate {
7644    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7645        f.debug_struct(&format!("GtkGestureRotate @ {self:p}"))
7646            .finish()
7647    }
7648}
7649
7650#[repr(C)]
7651#[allow(dead_code)]
7652pub struct GtkGestureSingle {
7653    _data: [u8; 0],
7654    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7655}
7656
7657impl ::std::fmt::Debug for GtkGestureSingle {
7658    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7659        f.debug_struct(&format!("GtkGestureSingle @ {self:p}"))
7660            .finish()
7661    }
7662}
7663
7664#[repr(C)]
7665#[allow(dead_code)]
7666pub struct GtkGestureStylus {
7667    _data: [u8; 0],
7668    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7669}
7670
7671impl ::std::fmt::Debug for GtkGestureStylus {
7672    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7673        f.debug_struct(&format!("GtkGestureStylus @ {self:p}"))
7674            .finish()
7675    }
7676}
7677
7678#[repr(C)]
7679#[allow(dead_code)]
7680pub struct GtkGestureSwipe {
7681    _data: [u8; 0],
7682    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7683}
7684
7685impl ::std::fmt::Debug for GtkGestureSwipe {
7686    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7687        f.debug_struct(&format!("GtkGestureSwipe @ {self:p}"))
7688            .finish()
7689    }
7690}
7691
7692#[repr(C)]
7693#[allow(dead_code)]
7694pub struct GtkGestureZoom {
7695    _data: [u8; 0],
7696    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7697}
7698
7699impl ::std::fmt::Debug for GtkGestureZoom {
7700    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7701        f.debug_struct(&format!("GtkGestureZoom @ {self:p}"))
7702            .finish()
7703    }
7704}
7705
7706#[repr(C)]
7707#[allow(dead_code)]
7708pub struct GtkGraphicsOffload {
7709    _data: [u8; 0],
7710    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7711}
7712
7713impl ::std::fmt::Debug for GtkGraphicsOffload {
7714    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7715        f.debug_struct(&format!("GtkGraphicsOffload @ {self:p}"))
7716            .finish()
7717    }
7718}
7719
7720#[derive(Copy, Clone)]
7721#[repr(C)]
7722pub struct GtkGrid {
7723    pub parent_instance: GtkWidget,
7724}
7725
7726impl ::std::fmt::Debug for GtkGrid {
7727    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7728        f.debug_struct(&format!("GtkGrid @ {self:p}")).finish()
7729    }
7730}
7731
7732#[repr(C)]
7733#[allow(dead_code)]
7734pub struct GtkGridLayout {
7735    _data: [u8; 0],
7736    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7737}
7738
7739impl ::std::fmt::Debug for GtkGridLayout {
7740    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7741        f.debug_struct(&format!("GtkGridLayout @ {self:p}"))
7742            .finish()
7743    }
7744}
7745
7746#[repr(C)]
7747#[allow(dead_code)]
7748pub struct GtkGridLayoutChild {
7749    _data: [u8; 0],
7750    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7751}
7752
7753impl ::std::fmt::Debug for GtkGridLayoutChild {
7754    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7755        f.debug_struct(&format!("GtkGridLayoutChild @ {self:p}"))
7756            .finish()
7757    }
7758}
7759
7760#[repr(C)]
7761#[allow(dead_code)]
7762pub struct GtkGridView {
7763    _data: [u8; 0],
7764    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7765}
7766
7767impl ::std::fmt::Debug for GtkGridView {
7768    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7769        f.debug_struct(&format!("GtkGridView @ {self:p}")).finish()
7770    }
7771}
7772
7773#[repr(C)]
7774#[allow(dead_code)]
7775pub struct GtkHeaderBar {
7776    _data: [u8; 0],
7777    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7778}
7779
7780impl ::std::fmt::Debug for GtkHeaderBar {
7781    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7782        f.debug_struct(&format!("GtkHeaderBar @ {self:p}")).finish()
7783    }
7784}
7785
7786#[derive(Copy, Clone)]
7787#[repr(C)]
7788pub struct GtkIMContext {
7789    pub parent_instance: gobject::GObject,
7790}
7791
7792impl ::std::fmt::Debug for GtkIMContext {
7793    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7794        f.debug_struct(&format!("GtkIMContext @ {self:p}"))
7795            .field("parent_instance", &self.parent_instance)
7796            .finish()
7797    }
7798}
7799
7800#[derive(Copy, Clone)]
7801#[repr(C)]
7802pub struct GtkIMContextSimple {
7803    pub object: GtkIMContext,
7804    pub priv_: *mut GtkIMContextSimplePrivate,
7805}
7806
7807impl ::std::fmt::Debug for GtkIMContextSimple {
7808    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7809        f.debug_struct(&format!("GtkIMContextSimple @ {self:p}"))
7810            .field("object", &self.object)
7811            .finish()
7812    }
7813}
7814
7815#[derive(Copy, Clone)]
7816#[repr(C)]
7817pub struct GtkIMMulticontext {
7818    pub object: GtkIMContext,
7819    pub priv_: *mut GtkIMMulticontextPrivate,
7820}
7821
7822impl ::std::fmt::Debug for GtkIMMulticontext {
7823    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7824        f.debug_struct(&format!("GtkIMMulticontext @ {self:p}"))
7825            .field("object", &self.object)
7826            .finish()
7827    }
7828}
7829
7830#[repr(C)]
7831#[allow(dead_code)]
7832pub struct GtkIconPaintable {
7833    _data: [u8; 0],
7834    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7835}
7836
7837impl ::std::fmt::Debug for GtkIconPaintable {
7838    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7839        f.debug_struct(&format!("GtkIconPaintable @ {self:p}"))
7840            .finish()
7841    }
7842}
7843
7844#[repr(C)]
7845#[allow(dead_code)]
7846pub struct GtkIconTheme {
7847    _data: [u8; 0],
7848    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7849}
7850
7851impl ::std::fmt::Debug for GtkIconTheme {
7852    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7853        f.debug_struct(&format!("GtkIconTheme @ {self:p}")).finish()
7854    }
7855}
7856
7857#[repr(C)]
7858#[allow(dead_code)]
7859pub struct GtkIconView {
7860    _data: [u8; 0],
7861    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7862}
7863
7864impl ::std::fmt::Debug for GtkIconView {
7865    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7866        f.debug_struct(&format!("GtkIconView @ {self:p}")).finish()
7867    }
7868}
7869
7870#[repr(C)]
7871#[allow(dead_code)]
7872pub struct GtkImage {
7873    _data: [u8; 0],
7874    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7875}
7876
7877impl ::std::fmt::Debug for GtkImage {
7878    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7879        f.debug_struct(&format!("GtkImage @ {self:p}")).finish()
7880    }
7881}
7882
7883#[repr(C)]
7884#[allow(dead_code)]
7885pub struct GtkInfoBar {
7886    _data: [u8; 0],
7887    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7888}
7889
7890impl ::std::fmt::Debug for GtkInfoBar {
7891    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7892        f.debug_struct(&format!("GtkInfoBar @ {self:p}")).finish()
7893    }
7894}
7895
7896#[repr(C)]
7897#[allow(dead_code)]
7898pub struct GtkInscription {
7899    _data: [u8; 0],
7900    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7901}
7902
7903impl ::std::fmt::Debug for GtkInscription {
7904    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7905        f.debug_struct(&format!("GtkInscription @ {self:p}"))
7906            .finish()
7907    }
7908}
7909
7910#[repr(C)]
7911#[allow(dead_code)]
7912pub struct GtkKeyvalTrigger {
7913    _data: [u8; 0],
7914    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7915}
7916
7917impl ::std::fmt::Debug for GtkKeyvalTrigger {
7918    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7919        f.debug_struct(&format!("GtkKeyvalTrigger @ {self:p}"))
7920            .finish()
7921    }
7922}
7923
7924#[repr(C)]
7925#[allow(dead_code)]
7926pub struct GtkLabel {
7927    _data: [u8; 0],
7928    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7929}
7930
7931impl ::std::fmt::Debug for GtkLabel {
7932    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7933        f.debug_struct(&format!("GtkLabel @ {self:p}")).finish()
7934    }
7935}
7936
7937#[derive(Copy, Clone)]
7938#[repr(C)]
7939pub struct GtkLayoutChild {
7940    pub parent_instance: gobject::GObject,
7941}
7942
7943impl ::std::fmt::Debug for GtkLayoutChild {
7944    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7945        f.debug_struct(&format!("GtkLayoutChild @ {self:p}"))
7946            .field("parent_instance", &self.parent_instance)
7947            .finish()
7948    }
7949}
7950
7951#[derive(Copy, Clone)]
7952#[repr(C)]
7953pub struct GtkLayoutManager {
7954    pub parent_instance: gobject::GObject,
7955}
7956
7957impl ::std::fmt::Debug for GtkLayoutManager {
7958    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7959        f.debug_struct(&format!("GtkLayoutManager @ {self:p}"))
7960            .field("parent_instance", &self.parent_instance)
7961            .finish()
7962    }
7963}
7964
7965#[repr(C)]
7966#[allow(dead_code)]
7967pub struct GtkLevelBar {
7968    _data: [u8; 0],
7969    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7970}
7971
7972impl ::std::fmt::Debug for GtkLevelBar {
7973    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7974        f.debug_struct(&format!("GtkLevelBar @ {self:p}")).finish()
7975    }
7976}
7977
7978#[repr(C)]
7979#[allow(dead_code)]
7980pub struct GtkLinkButton {
7981    _data: [u8; 0],
7982    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7983}
7984
7985impl ::std::fmt::Debug for GtkLinkButton {
7986    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7987        f.debug_struct(&format!("GtkLinkButton @ {self:p}"))
7988            .finish()
7989    }
7990}
7991
7992#[repr(C)]
7993#[allow(dead_code)]
7994pub struct GtkListBase {
7995    _data: [u8; 0],
7996    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7997}
7998
7999impl ::std::fmt::Debug for GtkListBase {
8000    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8001        f.debug_struct(&format!("GtkListBase @ {self:p}")).finish()
8002    }
8003}
8004
8005#[repr(C)]
8006#[allow(dead_code)]
8007pub struct GtkListBox {
8008    _data: [u8; 0],
8009    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8010}
8011
8012impl ::std::fmt::Debug for GtkListBox {
8013    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8014        f.debug_struct(&format!("GtkListBox @ {self:p}")).finish()
8015    }
8016}
8017
8018#[derive(Copy, Clone)]
8019#[repr(C)]
8020pub struct GtkListBoxRow {
8021    pub parent_instance: GtkWidget,
8022}
8023
8024impl ::std::fmt::Debug for GtkListBoxRow {
8025    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8026        f.debug_struct(&format!("GtkListBoxRow @ {self:p}"))
8027            .field("parent_instance", &self.parent_instance)
8028            .finish()
8029    }
8030}
8031
8032#[repr(C)]
8033#[allow(dead_code)]
8034pub struct GtkListHeader {
8035    _data: [u8; 0],
8036    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8037}
8038
8039impl ::std::fmt::Debug for GtkListHeader {
8040    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8041        f.debug_struct(&format!("GtkListHeader @ {self:p}"))
8042            .finish()
8043    }
8044}
8045
8046#[repr(C)]
8047#[allow(dead_code)]
8048pub struct GtkListItem {
8049    _data: [u8; 0],
8050    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8051}
8052
8053impl ::std::fmt::Debug for GtkListItem {
8054    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8055        f.debug_struct(&format!("GtkListItem @ {self:p}")).finish()
8056    }
8057}
8058
8059#[repr(C)]
8060#[allow(dead_code)]
8061pub struct GtkListItemFactory {
8062    _data: [u8; 0],
8063    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8064}
8065
8066impl ::std::fmt::Debug for GtkListItemFactory {
8067    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8068        f.debug_struct(&format!("GtkListItemFactory @ {self:p}"))
8069            .finish()
8070    }
8071}
8072
8073#[derive(Copy, Clone)]
8074#[repr(C)]
8075pub struct GtkListStore {
8076    pub parent: gobject::GObject,
8077    pub priv_: *mut GtkListStorePrivate,
8078}
8079
8080impl ::std::fmt::Debug for GtkListStore {
8081    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8082        f.debug_struct(&format!("GtkListStore @ {self:p}"))
8083            .field("parent", &self.parent)
8084            .finish()
8085    }
8086}
8087
8088#[repr(C)]
8089#[allow(dead_code)]
8090pub struct GtkListView {
8091    _data: [u8; 0],
8092    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8093}
8094
8095impl ::std::fmt::Debug for GtkListView {
8096    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8097        f.debug_struct(&format!("GtkListView @ {self:p}")).finish()
8098    }
8099}
8100
8101#[repr(C)]
8102#[allow(dead_code)]
8103pub struct GtkLockButton {
8104    _data: [u8; 0],
8105    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8106}
8107
8108impl ::std::fmt::Debug for GtkLockButton {
8109    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8110        f.debug_struct(&format!("GtkLockButton @ {self:p}"))
8111            .finish()
8112    }
8113}
8114
8115#[repr(C)]
8116#[allow(dead_code)]
8117pub struct GtkMapListModel {
8118    _data: [u8; 0],
8119    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8120}
8121
8122impl ::std::fmt::Debug for GtkMapListModel {
8123    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8124        f.debug_struct(&format!("GtkMapListModel @ {self:p}"))
8125            .finish()
8126    }
8127}
8128
8129#[repr(C)]
8130#[allow(dead_code)]
8131pub struct GtkMediaControls {
8132    _data: [u8; 0],
8133    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8134}
8135
8136impl ::std::fmt::Debug for GtkMediaControls {
8137    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8138        f.debug_struct(&format!("GtkMediaControls @ {self:p}"))
8139            .finish()
8140    }
8141}
8142
8143#[derive(Copy, Clone)]
8144#[repr(C)]
8145pub struct GtkMediaFile {
8146    pub parent_instance: GtkMediaStream,
8147}
8148
8149impl ::std::fmt::Debug for GtkMediaFile {
8150    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8151        f.debug_struct(&format!("GtkMediaFile @ {self:p}"))
8152            .field("parent_instance", &self.parent_instance)
8153            .finish()
8154    }
8155}
8156
8157#[derive(Copy, Clone)]
8158#[repr(C)]
8159pub struct GtkMediaStream {
8160    pub parent_instance: gobject::GObject,
8161}
8162
8163impl ::std::fmt::Debug for GtkMediaStream {
8164    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8165        f.debug_struct(&format!("GtkMediaStream @ {self:p}"))
8166            .field("parent_instance", &self.parent_instance)
8167            .finish()
8168    }
8169}
8170
8171#[repr(C)]
8172#[allow(dead_code)]
8173pub struct GtkMenuButton {
8174    _data: [u8; 0],
8175    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8176}
8177
8178impl ::std::fmt::Debug for GtkMenuButton {
8179    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8180        f.debug_struct(&format!("GtkMenuButton @ {self:p}"))
8181            .finish()
8182    }
8183}
8184
8185#[derive(Copy, Clone)]
8186#[repr(C)]
8187pub struct GtkMessageDialog {
8188    pub parent_instance: GtkDialog,
8189}
8190
8191impl ::std::fmt::Debug for GtkMessageDialog {
8192    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8193        f.debug_struct(&format!("GtkMessageDialog @ {self:p}"))
8194            .field("parent_instance", &self.parent_instance)
8195            .finish()
8196    }
8197}
8198
8199#[repr(C)]
8200#[allow(dead_code)]
8201pub struct GtkMnemonicAction {
8202    _data: [u8; 0],
8203    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8204}
8205
8206impl ::std::fmt::Debug for GtkMnemonicAction {
8207    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8208        f.debug_struct(&format!("GtkMnemonicAction @ {self:p}"))
8209            .finish()
8210    }
8211}
8212
8213#[repr(C)]
8214#[allow(dead_code)]
8215pub struct GtkMnemonicTrigger {
8216    _data: [u8; 0],
8217    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8218}
8219
8220impl ::std::fmt::Debug for GtkMnemonicTrigger {
8221    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8222        f.debug_struct(&format!("GtkMnemonicTrigger @ {self:p}"))
8223            .finish()
8224    }
8225}
8226
8227#[derive(Copy, Clone)]
8228#[repr(C)]
8229pub struct GtkMountOperation {
8230    pub parent_instance: gio::GMountOperation,
8231    pub priv_: *mut GtkMountOperationPrivate,
8232}
8233
8234impl ::std::fmt::Debug for GtkMountOperation {
8235    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8236        f.debug_struct(&format!("GtkMountOperation @ {self:p}"))
8237            .field("parent_instance", &self.parent_instance)
8238            .field("priv_", &self.priv_)
8239            .finish()
8240    }
8241}
8242
8243#[repr(C)]
8244#[allow(dead_code)]
8245pub struct GtkMultiFilter {
8246    _data: [u8; 0],
8247    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8248}
8249
8250impl ::std::fmt::Debug for GtkMultiFilter {
8251    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8252        f.debug_struct(&format!("GtkMultiFilter @ {self:p}"))
8253            .finish()
8254    }
8255}
8256
8257#[repr(C)]
8258#[allow(dead_code)]
8259pub struct GtkMultiSelection {
8260    _data: [u8; 0],
8261    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8262}
8263
8264impl ::std::fmt::Debug for GtkMultiSelection {
8265    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8266        f.debug_struct(&format!("GtkMultiSelection @ {self:p}"))
8267            .finish()
8268    }
8269}
8270
8271#[repr(C)]
8272#[allow(dead_code)]
8273pub struct GtkMultiSorter {
8274    _data: [u8; 0],
8275    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8276}
8277
8278impl ::std::fmt::Debug for GtkMultiSorter {
8279    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8280        f.debug_struct(&format!("GtkMultiSorter @ {self:p}"))
8281            .finish()
8282    }
8283}
8284
8285#[repr(C)]
8286#[allow(dead_code)]
8287pub struct GtkNamedAction {
8288    _data: [u8; 0],
8289    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8290}
8291
8292impl ::std::fmt::Debug for GtkNamedAction {
8293    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8294        f.debug_struct(&format!("GtkNamedAction @ {self:p}"))
8295            .finish()
8296    }
8297}
8298
8299#[derive(Copy, Clone)]
8300#[repr(C)]
8301pub struct GtkNativeDialog {
8302    pub parent_instance: gobject::GObject,
8303}
8304
8305impl ::std::fmt::Debug for GtkNativeDialog {
8306    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8307        f.debug_struct(&format!("GtkNativeDialog @ {self:p}"))
8308            .field("parent_instance", &self.parent_instance)
8309            .finish()
8310    }
8311}
8312
8313#[repr(C)]
8314#[allow(dead_code)]
8315pub struct GtkNeverTrigger {
8316    _data: [u8; 0],
8317    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8318}
8319
8320impl ::std::fmt::Debug for GtkNeverTrigger {
8321    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8322        f.debug_struct(&format!("GtkNeverTrigger @ {self:p}"))
8323            .finish()
8324    }
8325}
8326
8327#[repr(C)]
8328#[allow(dead_code)]
8329pub struct GtkNoSelection {
8330    _data: [u8; 0],
8331    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8332}
8333
8334impl ::std::fmt::Debug for GtkNoSelection {
8335    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8336        f.debug_struct(&format!("GtkNoSelection @ {self:p}"))
8337            .finish()
8338    }
8339}
8340
8341#[repr(C)]
8342#[allow(dead_code)]
8343pub struct GtkNotebook {
8344    _data: [u8; 0],
8345    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8346}
8347
8348impl ::std::fmt::Debug for GtkNotebook {
8349    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8350        f.debug_struct(&format!("GtkNotebook @ {self:p}")).finish()
8351    }
8352}
8353
8354#[repr(C)]
8355#[allow(dead_code)]
8356pub struct GtkNotebookPage {
8357    _data: [u8; 0],
8358    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8359}
8360
8361impl ::std::fmt::Debug for GtkNotebookPage {
8362    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8363        f.debug_struct(&format!("GtkNotebookPage @ {self:p}"))
8364            .finish()
8365    }
8366}
8367
8368#[repr(C)]
8369#[allow(dead_code)]
8370pub struct GtkNothingAction {
8371    _data: [u8; 0],
8372    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8373}
8374
8375impl ::std::fmt::Debug for GtkNothingAction {
8376    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8377        f.debug_struct(&format!("GtkNothingAction @ {self:p}"))
8378            .finish()
8379    }
8380}
8381
8382#[repr(C)]
8383#[allow(dead_code)]
8384pub struct GtkNumericSorter {
8385    _data: [u8; 0],
8386    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8387}
8388
8389impl ::std::fmt::Debug for GtkNumericSorter {
8390    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8391        f.debug_struct(&format!("GtkNumericSorter @ {self:p}"))
8392            .finish()
8393    }
8394}
8395
8396#[repr(C)]
8397#[allow(dead_code)]
8398pub struct GtkObjectExpression {
8399    _data: [u8; 0],
8400    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8401}
8402
8403impl ::std::fmt::Debug for GtkObjectExpression {
8404    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8405        f.debug_struct(&format!("GtkObjectExpression @ {self:p}"))
8406            .finish()
8407    }
8408}
8409
8410#[repr(C)]
8411#[allow(dead_code)]
8412pub struct GtkOverlay {
8413    _data: [u8; 0],
8414    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8415}
8416
8417impl ::std::fmt::Debug for GtkOverlay {
8418    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8419        f.debug_struct(&format!("GtkOverlay @ {self:p}")).finish()
8420    }
8421}
8422
8423#[repr(C)]
8424#[allow(dead_code)]
8425pub struct GtkOverlayLayout {
8426    _data: [u8; 0],
8427    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8428}
8429
8430impl ::std::fmt::Debug for GtkOverlayLayout {
8431    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8432        f.debug_struct(&format!("GtkOverlayLayout @ {self:p}"))
8433            .finish()
8434    }
8435}
8436
8437#[repr(C)]
8438#[allow(dead_code)]
8439pub struct GtkOverlayLayoutChild {
8440    _data: [u8; 0],
8441    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8442}
8443
8444impl ::std::fmt::Debug for GtkOverlayLayoutChild {
8445    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8446        f.debug_struct(&format!("GtkOverlayLayoutChild @ {self:p}"))
8447            .finish()
8448    }
8449}
8450
8451#[repr(C)]
8452#[allow(dead_code)]
8453pub struct GtkPadController {
8454    _data: [u8; 0],
8455    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8456}
8457
8458impl ::std::fmt::Debug for GtkPadController {
8459    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8460        f.debug_struct(&format!("GtkPadController @ {self:p}"))
8461            .finish()
8462    }
8463}
8464
8465#[repr(C)]
8466#[allow(dead_code)]
8467pub struct GtkPageSetup {
8468    _data: [u8; 0],
8469    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8470}
8471
8472impl ::std::fmt::Debug for GtkPageSetup {
8473    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8474        f.debug_struct(&format!("GtkPageSetup @ {self:p}")).finish()
8475    }
8476}
8477
8478#[repr(C)]
8479#[allow(dead_code)]
8480pub struct GtkPageSetupUnixDialog {
8481    _data: [u8; 0],
8482    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8483}
8484
8485impl ::std::fmt::Debug for GtkPageSetupUnixDialog {
8486    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8487        f.debug_struct(&format!("GtkPageSetupUnixDialog @ {self:p}"))
8488            .finish()
8489    }
8490}
8491
8492#[repr(C)]
8493#[allow(dead_code)]
8494pub struct GtkPaned {
8495    _data: [u8; 0],
8496    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8497}
8498
8499impl ::std::fmt::Debug for GtkPaned {
8500    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8501        f.debug_struct(&format!("GtkPaned @ {self:p}")).finish()
8502    }
8503}
8504
8505#[derive(Copy, Clone)]
8506#[repr(C)]
8507pub struct GtkParamSpecExpression {
8508    pub parent_instance: gobject::GParamSpec,
8509}
8510
8511impl ::std::fmt::Debug for GtkParamSpecExpression {
8512    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8513        f.debug_struct(&format!("GtkParamSpecExpression @ {self:p}"))
8514            .finish()
8515    }
8516}
8517
8518#[repr(C)]
8519#[allow(dead_code)]
8520pub struct GtkPasswordEntry {
8521    _data: [u8; 0],
8522    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8523}
8524
8525impl ::std::fmt::Debug for GtkPasswordEntry {
8526    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8527        f.debug_struct(&format!("GtkPasswordEntry @ {self:p}"))
8528            .finish()
8529    }
8530}
8531
8532#[repr(C)]
8533#[allow(dead_code)]
8534pub struct GtkPasswordEntryBuffer {
8535    _data: [u8; 0],
8536    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8537}
8538
8539impl ::std::fmt::Debug for GtkPasswordEntryBuffer {
8540    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8541        f.debug_struct(&format!("GtkPasswordEntryBuffer @ {self:p}"))
8542            .finish()
8543    }
8544}
8545
8546#[repr(C)]
8547#[allow(dead_code)]
8548pub struct GtkPicture {
8549    _data: [u8; 0],
8550    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8551}
8552
8553impl ::std::fmt::Debug for GtkPicture {
8554    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8555        f.debug_struct(&format!("GtkPicture @ {self:p}")).finish()
8556    }
8557}
8558
8559#[derive(Copy, Clone)]
8560#[repr(C)]
8561pub struct GtkPopover {
8562    pub parent: GtkWidget,
8563}
8564
8565impl ::std::fmt::Debug for GtkPopover {
8566    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8567        f.debug_struct(&format!("GtkPopover @ {self:p}"))
8568            .field("parent", &self.parent)
8569            .finish()
8570    }
8571}
8572
8573#[repr(C)]
8574#[allow(dead_code)]
8575pub struct GtkPopoverMenu {
8576    _data: [u8; 0],
8577    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8578}
8579
8580impl ::std::fmt::Debug for GtkPopoverMenu {
8581    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8582        f.debug_struct(&format!("GtkPopoverMenu @ {self:p}"))
8583            .finish()
8584    }
8585}
8586
8587#[repr(C)]
8588#[allow(dead_code)]
8589pub struct GtkPopoverMenuBar {
8590    _data: [u8; 0],
8591    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8592}
8593
8594impl ::std::fmt::Debug for GtkPopoverMenuBar {
8595    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8596        f.debug_struct(&format!("GtkPopoverMenuBar @ {self:p}"))
8597            .finish()
8598    }
8599}
8600
8601#[repr(C)]
8602#[allow(dead_code)]
8603pub struct GtkPrintContext {
8604    _data: [u8; 0],
8605    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8606}
8607
8608impl ::std::fmt::Debug for GtkPrintContext {
8609    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8610        f.debug_struct(&format!("GtkPrintContext @ {self:p}"))
8611            .finish()
8612    }
8613}
8614
8615#[repr(C)]
8616#[allow(dead_code)]
8617pub struct GtkPrintDialog {
8618    _data: [u8; 0],
8619    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8620}
8621
8622impl ::std::fmt::Debug for GtkPrintDialog {
8623    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8624        f.debug_struct(&format!("GtkPrintDialog @ {self:p}"))
8625            .finish()
8626    }
8627}
8628
8629#[repr(C)]
8630#[allow(dead_code)]
8631pub struct GtkPrintJob {
8632    _data: [u8; 0],
8633    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8634}
8635
8636impl ::std::fmt::Debug for GtkPrintJob {
8637    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8638        f.debug_struct(&format!("GtkPrintJob @ {self:p}")).finish()
8639    }
8640}
8641
8642#[derive(Copy, Clone)]
8643#[repr(C)]
8644pub struct GtkPrintOperation {
8645    pub parent_instance: gobject::GObject,
8646    pub priv_: *mut GtkPrintOperationPrivate,
8647}
8648
8649impl ::std::fmt::Debug for GtkPrintOperation {
8650    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8651        f.debug_struct(&format!("GtkPrintOperation @ {self:p}"))
8652            .field("parent_instance", &self.parent_instance)
8653            .finish()
8654    }
8655}
8656
8657#[repr(C)]
8658#[allow(dead_code)]
8659pub struct GtkPrintSettings {
8660    _data: [u8; 0],
8661    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8662}
8663
8664impl ::std::fmt::Debug for GtkPrintSettings {
8665    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8666        f.debug_struct(&format!("GtkPrintSettings @ {self:p}"))
8667            .finish()
8668    }
8669}
8670
8671#[repr(C)]
8672#[allow(dead_code)]
8673pub struct GtkPrintUnixDialog {
8674    _data: [u8; 0],
8675    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8676}
8677
8678impl ::std::fmt::Debug for GtkPrintUnixDialog {
8679    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8680        f.debug_struct(&format!("GtkPrintUnixDialog @ {self:p}"))
8681            .finish()
8682    }
8683}
8684
8685#[repr(C)]
8686#[allow(dead_code)]
8687pub struct GtkPrinter {
8688    _data: [u8; 0],
8689    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8690}
8691
8692impl ::std::fmt::Debug for GtkPrinter {
8693    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8694        f.debug_struct(&format!("GtkPrinter @ {self:p}")).finish()
8695    }
8696}
8697
8698#[repr(C)]
8699#[allow(dead_code)]
8700pub struct GtkProgressBar {
8701    _data: [u8; 0],
8702    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8703}
8704
8705impl ::std::fmt::Debug for GtkProgressBar {
8706    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8707        f.debug_struct(&format!("GtkProgressBar @ {self:p}"))
8708            .finish()
8709    }
8710}
8711
8712#[repr(C)]
8713#[allow(dead_code)]
8714pub struct GtkPropertyExpression {
8715    _data: [u8; 0],
8716    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8717}
8718
8719impl ::std::fmt::Debug for GtkPropertyExpression {
8720    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8721        f.debug_struct(&format!("GtkPropertyExpression @ {self:p}"))
8722            .finish()
8723    }
8724}
8725
8726#[derive(Copy, Clone)]
8727#[repr(C)]
8728pub struct GtkRange {
8729    pub parent_instance: GtkWidget,
8730}
8731
8732impl ::std::fmt::Debug for GtkRange {
8733    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8734        f.debug_struct(&format!("GtkRange @ {self:p}"))
8735            .field("parent_instance", &self.parent_instance)
8736            .finish()
8737    }
8738}
8739
8740#[derive(Copy, Clone)]
8741#[repr(C)]
8742pub struct GtkRecentManager {
8743    pub parent_instance: gobject::GObject,
8744    pub priv_: *mut GtkRecentManagerPrivate,
8745}
8746
8747impl ::std::fmt::Debug for GtkRecentManager {
8748    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8749        f.debug_struct(&format!("GtkRecentManager @ {self:p}"))
8750            .finish()
8751    }
8752}
8753
8754#[repr(C)]
8755#[allow(dead_code)]
8756pub struct GtkRevealer {
8757    _data: [u8; 0],
8758    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8759}
8760
8761impl ::std::fmt::Debug for GtkRevealer {
8762    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8763        f.debug_struct(&format!("GtkRevealer @ {self:p}")).finish()
8764    }
8765}
8766
8767#[derive(Copy, Clone)]
8768#[repr(C)]
8769pub struct GtkScale {
8770    pub parent_instance: GtkRange,
8771}
8772
8773impl ::std::fmt::Debug for GtkScale {
8774    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8775        f.debug_struct(&format!("GtkScale @ {self:p}"))
8776            .field("parent_instance", &self.parent_instance)
8777            .finish()
8778    }
8779}
8780
8781#[derive(Copy, Clone)]
8782#[repr(C)]
8783pub struct GtkScaleButton {
8784    pub parent_instance: GtkWidget,
8785}
8786
8787impl ::std::fmt::Debug for GtkScaleButton {
8788    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8789        f.debug_struct(&format!("GtkScaleButton @ {self:p}"))
8790            .field("parent_instance", &self.parent_instance)
8791            .finish()
8792    }
8793}
8794
8795#[repr(C)]
8796#[allow(dead_code)]
8797pub struct GtkScrollbar {
8798    _data: [u8; 0],
8799    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8800}
8801
8802impl ::std::fmt::Debug for GtkScrollbar {
8803    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8804        f.debug_struct(&format!("GtkScrollbar @ {self:p}")).finish()
8805    }
8806}
8807
8808#[repr(C)]
8809#[allow(dead_code)]
8810pub struct GtkScrolledWindow {
8811    _data: [u8; 0],
8812    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8813}
8814
8815impl ::std::fmt::Debug for GtkScrolledWindow {
8816    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8817        f.debug_struct(&format!("GtkScrolledWindow @ {self:p}"))
8818            .finish()
8819    }
8820}
8821
8822#[repr(C)]
8823#[allow(dead_code)]
8824pub struct GtkSearchBar {
8825    _data: [u8; 0],
8826    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8827}
8828
8829impl ::std::fmt::Debug for GtkSearchBar {
8830    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8831        f.debug_struct(&format!("GtkSearchBar @ {self:p}")).finish()
8832    }
8833}
8834
8835#[repr(C)]
8836#[allow(dead_code)]
8837pub struct GtkSearchEntry {
8838    _data: [u8; 0],
8839    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8840}
8841
8842impl ::std::fmt::Debug for GtkSearchEntry {
8843    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8844        f.debug_struct(&format!("GtkSearchEntry @ {self:p}"))
8845            .finish()
8846    }
8847}
8848
8849#[repr(C)]
8850#[allow(dead_code)]
8851pub struct GtkSelectionFilterModel {
8852    _data: [u8; 0],
8853    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8854}
8855
8856impl ::std::fmt::Debug for GtkSelectionFilterModel {
8857    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8858        f.debug_struct(&format!("GtkSelectionFilterModel @ {self:p}"))
8859            .finish()
8860    }
8861}
8862
8863#[repr(C)]
8864#[allow(dead_code)]
8865pub struct GtkSeparator {
8866    _data: [u8; 0],
8867    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8868}
8869
8870impl ::std::fmt::Debug for GtkSeparator {
8871    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8872        f.debug_struct(&format!("GtkSeparator @ {self:p}")).finish()
8873    }
8874}
8875
8876#[repr(C)]
8877#[allow(dead_code)]
8878pub struct GtkSettings {
8879    _data: [u8; 0],
8880    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8881}
8882
8883impl ::std::fmt::Debug for GtkSettings {
8884    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8885        f.debug_struct(&format!("GtkSettings @ {self:p}")).finish()
8886    }
8887}
8888
8889#[repr(C)]
8890#[allow(dead_code)]
8891pub struct GtkShortcut {
8892    _data: [u8; 0],
8893    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8894}
8895
8896impl ::std::fmt::Debug for GtkShortcut {
8897    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8898        f.debug_struct(&format!("GtkShortcut @ {self:p}")).finish()
8899    }
8900}
8901
8902#[repr(C)]
8903#[allow(dead_code)]
8904pub struct GtkShortcutAction {
8905    _data: [u8; 0],
8906    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8907}
8908
8909impl ::std::fmt::Debug for GtkShortcutAction {
8910    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8911        f.debug_struct(&format!("GtkShortcutAction @ {self:p}"))
8912            .finish()
8913    }
8914}
8915
8916#[repr(C)]
8917#[allow(dead_code)]
8918pub struct GtkShortcutController {
8919    _data: [u8; 0],
8920    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8921}
8922
8923impl ::std::fmt::Debug for GtkShortcutController {
8924    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8925        f.debug_struct(&format!("GtkShortcutController @ {self:p}"))
8926            .finish()
8927    }
8928}
8929
8930#[repr(C)]
8931#[allow(dead_code)]
8932pub struct GtkShortcutLabel {
8933    _data: [u8; 0],
8934    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8935}
8936
8937impl ::std::fmt::Debug for GtkShortcutLabel {
8938    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8939        f.debug_struct(&format!("GtkShortcutLabel @ {self:p}"))
8940            .finish()
8941    }
8942}
8943
8944#[repr(C)]
8945#[allow(dead_code)]
8946pub struct GtkShortcutTrigger {
8947    _data: [u8; 0],
8948    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8949}
8950
8951impl ::std::fmt::Debug for GtkShortcutTrigger {
8952    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8953        f.debug_struct(&format!("GtkShortcutTrigger @ {self:p}"))
8954            .finish()
8955    }
8956}
8957
8958#[repr(C)]
8959#[allow(dead_code)]
8960pub struct GtkShortcutsGroup {
8961    _data: [u8; 0],
8962    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8963}
8964
8965impl ::std::fmt::Debug for GtkShortcutsGroup {
8966    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8967        f.debug_struct(&format!("GtkShortcutsGroup @ {self:p}"))
8968            .finish()
8969    }
8970}
8971
8972#[repr(C)]
8973#[allow(dead_code)]
8974pub struct GtkShortcutsSection {
8975    _data: [u8; 0],
8976    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8977}
8978
8979impl ::std::fmt::Debug for GtkShortcutsSection {
8980    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8981        f.debug_struct(&format!("GtkShortcutsSection @ {self:p}"))
8982            .finish()
8983    }
8984}
8985
8986#[repr(C)]
8987#[allow(dead_code)]
8988pub struct GtkShortcutsShortcut {
8989    _data: [u8; 0],
8990    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8991}
8992
8993impl ::std::fmt::Debug for GtkShortcutsShortcut {
8994    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8995        f.debug_struct(&format!("GtkShortcutsShortcut @ {self:p}"))
8996            .finish()
8997    }
8998}
8999
9000#[repr(C)]
9001#[allow(dead_code)]
9002pub struct GtkShortcutsWindow {
9003    _data: [u8; 0],
9004    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9005}
9006
9007impl ::std::fmt::Debug for GtkShortcutsWindow {
9008    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9009        f.debug_struct(&format!("GtkShortcutsWindow @ {self:p}"))
9010            .finish()
9011    }
9012}
9013
9014#[repr(C)]
9015#[allow(dead_code)]
9016pub struct GtkSignalAction {
9017    _data: [u8; 0],
9018    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9019}
9020
9021impl ::std::fmt::Debug for GtkSignalAction {
9022    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9023        f.debug_struct(&format!("GtkSignalAction @ {self:p}"))
9024            .finish()
9025    }
9026}
9027
9028#[repr(C)]
9029#[allow(dead_code)]
9030pub struct GtkSignalListItemFactory {
9031    _data: [u8; 0],
9032    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9033}
9034
9035impl ::std::fmt::Debug for GtkSignalListItemFactory {
9036    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9037        f.debug_struct(&format!("GtkSignalListItemFactory @ {self:p}"))
9038            .finish()
9039    }
9040}
9041
9042#[repr(C)]
9043#[allow(dead_code)]
9044pub struct GtkSingleSelection {
9045    _data: [u8; 0],
9046    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9047}
9048
9049impl ::std::fmt::Debug for GtkSingleSelection {
9050    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9051        f.debug_struct(&format!("GtkSingleSelection @ {self:p}"))
9052            .finish()
9053    }
9054}
9055
9056#[derive(Copy, Clone)]
9057#[repr(C)]
9058pub struct GtkSizeGroup {
9059    pub parent_instance: gobject::GObject,
9060}
9061
9062impl ::std::fmt::Debug for GtkSizeGroup {
9063    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9064        f.debug_struct(&format!("GtkSizeGroup @ {self:p}"))
9065            .field("parent_instance", &self.parent_instance)
9066            .finish()
9067    }
9068}
9069
9070#[repr(C)]
9071#[allow(dead_code)]
9072pub struct GtkSliceListModel {
9073    _data: [u8; 0],
9074    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9075}
9076
9077impl ::std::fmt::Debug for GtkSliceListModel {
9078    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9079        f.debug_struct(&format!("GtkSliceListModel @ {self:p}"))
9080            .finish()
9081    }
9082}
9083
9084#[repr(C)]
9085#[allow(dead_code)]
9086pub struct GtkSnapshot {
9087    _data: [u8; 0],
9088    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9089}
9090
9091impl ::std::fmt::Debug for GtkSnapshot {
9092    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9093        f.debug_struct(&format!("GtkSnapshot @ {self:p}")).finish()
9094    }
9095}
9096
9097#[repr(C)]
9098#[allow(dead_code)]
9099pub struct GtkSortListModel {
9100    _data: [u8; 0],
9101    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9102}
9103
9104impl ::std::fmt::Debug for GtkSortListModel {
9105    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9106        f.debug_struct(&format!("GtkSortListModel @ {self:p}"))
9107            .finish()
9108    }
9109}
9110
9111#[derive(Copy, Clone)]
9112#[repr(C)]
9113pub struct GtkSorter {
9114    pub parent_instance: gobject::GObject,
9115}
9116
9117impl ::std::fmt::Debug for GtkSorter {
9118    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9119        f.debug_struct(&format!("GtkSorter @ {self:p}"))
9120            .field("parent_instance", &self.parent_instance)
9121            .finish()
9122    }
9123}
9124
9125#[repr(C)]
9126#[allow(dead_code)]
9127pub struct GtkSpinButton {
9128    _data: [u8; 0],
9129    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9130}
9131
9132impl ::std::fmt::Debug for GtkSpinButton {
9133    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9134        f.debug_struct(&format!("GtkSpinButton @ {self:p}"))
9135            .finish()
9136    }
9137}
9138
9139#[repr(C)]
9140#[allow(dead_code)]
9141pub struct GtkSpinner {
9142    _data: [u8; 0],
9143    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9144}
9145
9146impl ::std::fmt::Debug for GtkSpinner {
9147    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9148        f.debug_struct(&format!("GtkSpinner @ {self:p}")).finish()
9149    }
9150}
9151
9152#[repr(C)]
9153#[allow(dead_code)]
9154pub struct GtkStack {
9155    _data: [u8; 0],
9156    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9157}
9158
9159impl ::std::fmt::Debug for GtkStack {
9160    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9161        f.debug_struct(&format!("GtkStack @ {self:p}")).finish()
9162    }
9163}
9164
9165#[repr(C)]
9166#[allow(dead_code)]
9167pub struct GtkStackPage {
9168    _data: [u8; 0],
9169    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9170}
9171
9172impl ::std::fmt::Debug for GtkStackPage {
9173    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9174        f.debug_struct(&format!("GtkStackPage @ {self:p}")).finish()
9175    }
9176}
9177
9178#[repr(C)]
9179#[allow(dead_code)]
9180pub struct GtkStackSidebar {
9181    _data: [u8; 0],
9182    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9183}
9184
9185impl ::std::fmt::Debug for GtkStackSidebar {
9186    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9187        f.debug_struct(&format!("GtkStackSidebar @ {self:p}"))
9188            .finish()
9189    }
9190}
9191
9192#[repr(C)]
9193#[allow(dead_code)]
9194pub struct GtkStackSwitcher {
9195    _data: [u8; 0],
9196    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9197}
9198
9199impl ::std::fmt::Debug for GtkStackSwitcher {
9200    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9201        f.debug_struct(&format!("GtkStackSwitcher @ {self:p}"))
9202            .finish()
9203    }
9204}
9205
9206#[repr(C)]
9207#[allow(dead_code)]
9208pub struct GtkStatusbar {
9209    _data: [u8; 0],
9210    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9211}
9212
9213impl ::std::fmt::Debug for GtkStatusbar {
9214    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9215        f.debug_struct(&format!("GtkStatusbar @ {self:p}")).finish()
9216    }
9217}
9218
9219#[repr(C)]
9220#[allow(dead_code)]
9221pub struct GtkStringFilter {
9222    _data: [u8; 0],
9223    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9224}
9225
9226impl ::std::fmt::Debug for GtkStringFilter {
9227    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9228        f.debug_struct(&format!("GtkStringFilter @ {self:p}"))
9229            .finish()
9230    }
9231}
9232
9233#[repr(C)]
9234#[allow(dead_code)]
9235pub struct GtkStringList {
9236    _data: [u8; 0],
9237    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9238}
9239
9240impl ::std::fmt::Debug for GtkStringList {
9241    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9242        f.debug_struct(&format!("GtkStringList @ {self:p}"))
9243            .finish()
9244    }
9245}
9246
9247#[repr(C)]
9248#[allow(dead_code)]
9249pub struct GtkStringObject {
9250    _data: [u8; 0],
9251    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9252}
9253
9254impl ::std::fmt::Debug for GtkStringObject {
9255    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9256        f.debug_struct(&format!("GtkStringObject @ {self:p}"))
9257            .finish()
9258    }
9259}
9260
9261#[repr(C)]
9262#[allow(dead_code)]
9263pub struct GtkStringSorter {
9264    _data: [u8; 0],
9265    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9266}
9267
9268impl ::std::fmt::Debug for GtkStringSorter {
9269    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9270        f.debug_struct(&format!("GtkStringSorter @ {self:p}"))
9271            .finish()
9272    }
9273}
9274
9275#[derive(Copy, Clone)]
9276#[repr(C)]
9277pub struct GtkStyleContext {
9278    pub parent_object: gobject::GObject,
9279}
9280
9281impl ::std::fmt::Debug for GtkStyleContext {
9282    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9283        f.debug_struct(&format!("GtkStyleContext @ {self:p}"))
9284            .field("parent_object", &self.parent_object)
9285            .finish()
9286    }
9287}
9288
9289#[repr(C)]
9290#[allow(dead_code)]
9291pub struct GtkSvg {
9292    _data: [u8; 0],
9293    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9294}
9295
9296impl ::std::fmt::Debug for GtkSvg {
9297    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9298        f.debug_struct(&format!("GtkSvg @ {self:p}")).finish()
9299    }
9300}
9301
9302#[repr(C)]
9303#[allow(dead_code)]
9304pub struct GtkSwitch {
9305    _data: [u8; 0],
9306    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9307}
9308
9309impl ::std::fmt::Debug for GtkSwitch {
9310    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9311        f.debug_struct(&format!("GtkSwitch @ {self:p}")).finish()
9312    }
9313}
9314
9315#[derive(Copy, Clone)]
9316#[repr(C)]
9317pub struct GtkText {
9318    pub parent_instance: GtkWidget,
9319}
9320
9321impl ::std::fmt::Debug for GtkText {
9322    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9323        f.debug_struct(&format!("GtkText @ {self:p}")).finish()
9324    }
9325}
9326
9327#[derive(Copy, Clone)]
9328#[repr(C)]
9329pub struct GtkTextBuffer {
9330    pub parent_instance: gobject::GObject,
9331    pub priv_: *mut GtkTextBufferPrivate,
9332}
9333
9334impl ::std::fmt::Debug for GtkTextBuffer {
9335    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9336        f.debug_struct(&format!("GtkTextBuffer @ {self:p}"))
9337            .field("parent_instance", &self.parent_instance)
9338            .field("priv_", &self.priv_)
9339            .finish()
9340    }
9341}
9342
9343#[derive(Copy, Clone)]
9344#[repr(C)]
9345pub struct GtkTextChildAnchor {
9346    pub parent_instance: gobject::GObject,
9347    pub segment: gpointer,
9348}
9349
9350impl ::std::fmt::Debug for GtkTextChildAnchor {
9351    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9352        f.debug_struct(&format!("GtkTextChildAnchor @ {self:p}"))
9353            .field("parent_instance", &self.parent_instance)
9354            .finish()
9355    }
9356}
9357
9358#[derive(Copy, Clone)]
9359#[repr(C)]
9360pub struct GtkTextMark {
9361    pub parent_instance: gobject::GObject,
9362    pub segment: gpointer,
9363}
9364
9365impl ::std::fmt::Debug for GtkTextMark {
9366    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9367        f.debug_struct(&format!("GtkTextMark @ {self:p}"))
9368            .field("parent_instance", &self.parent_instance)
9369            .finish()
9370    }
9371}
9372
9373#[derive(Copy, Clone)]
9374#[repr(C)]
9375pub struct GtkTextTag {
9376    pub parent_instance: gobject::GObject,
9377    pub priv_: *mut GtkTextTagPrivate,
9378}
9379
9380impl ::std::fmt::Debug for GtkTextTag {
9381    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9382        f.debug_struct(&format!("GtkTextTag @ {self:p}"))
9383            .field("parent_instance", &self.parent_instance)
9384            .field("priv_", &self.priv_)
9385            .finish()
9386    }
9387}
9388
9389#[repr(C)]
9390#[allow(dead_code)]
9391pub struct GtkTextTagTable {
9392    _data: [u8; 0],
9393    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9394}
9395
9396impl ::std::fmt::Debug for GtkTextTagTable {
9397    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9398        f.debug_struct(&format!("GtkTextTagTable @ {self:p}"))
9399            .finish()
9400    }
9401}
9402
9403#[derive(Copy, Clone)]
9404#[repr(C)]
9405pub struct GtkTextView {
9406    pub parent_instance: GtkWidget,
9407    pub priv_: *mut GtkTextViewPrivate,
9408}
9409
9410impl ::std::fmt::Debug for GtkTextView {
9411    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9412        f.debug_struct(&format!("GtkTextView @ {self:p}"))
9413            .field("parent_instance", &self.parent_instance)
9414            .finish()
9415    }
9416}
9417
9418#[derive(Copy, Clone)]
9419#[repr(C)]
9420pub struct GtkToggleButton {
9421    pub button: GtkButton,
9422}
9423
9424impl ::std::fmt::Debug for GtkToggleButton {
9425    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9426        f.debug_struct(&format!("GtkToggleButton @ {self:p}"))
9427            .finish()
9428    }
9429}
9430
9431#[repr(C)]
9432#[allow(dead_code)]
9433pub struct GtkTooltip {
9434    _data: [u8; 0],
9435    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9436}
9437
9438impl ::std::fmt::Debug for GtkTooltip {
9439    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9440        f.debug_struct(&format!("GtkTooltip @ {self:p}")).finish()
9441    }
9442}
9443
9444#[repr(C)]
9445#[allow(dead_code)]
9446pub struct GtkTreeExpander {
9447    _data: [u8; 0],
9448    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9449}
9450
9451impl ::std::fmt::Debug for GtkTreeExpander {
9452    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9453        f.debug_struct(&format!("GtkTreeExpander @ {self:p}"))
9454            .finish()
9455    }
9456}
9457
9458#[repr(C)]
9459#[allow(dead_code)]
9460pub struct GtkTreeListModel {
9461    _data: [u8; 0],
9462    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9463}
9464
9465impl ::std::fmt::Debug for GtkTreeListModel {
9466    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9467        f.debug_struct(&format!("GtkTreeListModel @ {self:p}"))
9468            .finish()
9469    }
9470}
9471
9472#[repr(C)]
9473#[allow(dead_code)]
9474pub struct GtkTreeListRow {
9475    _data: [u8; 0],
9476    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9477}
9478
9479impl ::std::fmt::Debug for GtkTreeListRow {
9480    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9481        f.debug_struct(&format!("GtkTreeListRow @ {self:p}"))
9482            .finish()
9483    }
9484}
9485
9486#[repr(C)]
9487#[allow(dead_code)]
9488pub struct GtkTreeListRowSorter {
9489    _data: [u8; 0],
9490    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9491}
9492
9493impl ::std::fmt::Debug for GtkTreeListRowSorter {
9494    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9495        f.debug_struct(&format!("GtkTreeListRowSorter @ {self:p}"))
9496            .finish()
9497    }
9498}
9499
9500#[derive(Copy, Clone)]
9501#[repr(C)]
9502pub struct GtkTreeModelFilter {
9503    pub parent: gobject::GObject,
9504    pub priv_: *mut GtkTreeModelFilterPrivate,
9505}
9506
9507impl ::std::fmt::Debug for GtkTreeModelFilter {
9508    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9509        f.debug_struct(&format!("GtkTreeModelFilter @ {self:p}"))
9510            .field("parent", &self.parent)
9511            .finish()
9512    }
9513}
9514
9515#[derive(Copy, Clone)]
9516#[repr(C)]
9517pub struct GtkTreeModelSort {
9518    pub parent: gobject::GObject,
9519    pub priv_: *mut GtkTreeModelSortPrivate,
9520}
9521
9522impl ::std::fmt::Debug for GtkTreeModelSort {
9523    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9524        f.debug_struct(&format!("GtkTreeModelSort @ {self:p}"))
9525            .field("parent", &self.parent)
9526            .finish()
9527    }
9528}
9529
9530#[repr(C)]
9531#[allow(dead_code)]
9532pub struct GtkTreeSelection {
9533    _data: [u8; 0],
9534    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9535}
9536
9537impl ::std::fmt::Debug for GtkTreeSelection {
9538    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9539        f.debug_struct(&format!("GtkTreeSelection @ {self:p}"))
9540            .finish()
9541    }
9542}
9543
9544#[derive(Copy, Clone)]
9545#[repr(C)]
9546pub struct GtkTreeStore {
9547    pub parent: gobject::GObject,
9548    pub priv_: *mut GtkTreeStorePrivate,
9549}
9550
9551impl ::std::fmt::Debug for GtkTreeStore {
9552    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9553        f.debug_struct(&format!("GtkTreeStore @ {self:p}"))
9554            .field("parent", &self.parent)
9555            .field("priv_", &self.priv_)
9556            .finish()
9557    }
9558}
9559
9560#[derive(Copy, Clone)]
9561#[repr(C)]
9562pub struct GtkTreeView {
9563    pub parent_instance: GtkWidget,
9564}
9565
9566impl ::std::fmt::Debug for GtkTreeView {
9567    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9568        f.debug_struct(&format!("GtkTreeView @ {self:p}"))
9569            .field("parent_instance", &self.parent_instance)
9570            .finish()
9571    }
9572}
9573
9574#[repr(C)]
9575#[allow(dead_code)]
9576pub struct GtkTreeViewColumn {
9577    _data: [u8; 0],
9578    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9579}
9580
9581impl ::std::fmt::Debug for GtkTreeViewColumn {
9582    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9583        f.debug_struct(&format!("GtkTreeViewColumn @ {self:p}"))
9584            .finish()
9585    }
9586}
9587
9588#[repr(C)]
9589#[allow(dead_code)]
9590pub struct GtkUriLauncher {
9591    _data: [u8; 0],
9592    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9593}
9594
9595impl ::std::fmt::Debug for GtkUriLauncher {
9596    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9597        f.debug_struct(&format!("GtkUriLauncher @ {self:p}"))
9598            .finish()
9599    }
9600}
9601
9602#[repr(C)]
9603#[allow(dead_code)]
9604pub struct GtkVideo {
9605    _data: [u8; 0],
9606    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9607}
9608
9609impl ::std::fmt::Debug for GtkVideo {
9610    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9611        f.debug_struct(&format!("GtkVideo @ {self:p}")).finish()
9612    }
9613}
9614
9615#[repr(C)]
9616#[allow(dead_code)]
9617pub struct GtkViewport {
9618    _data: [u8; 0],
9619    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9620}
9621
9622impl ::std::fmt::Debug for GtkViewport {
9623    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9624        f.debug_struct(&format!("GtkViewport @ {self:p}")).finish()
9625    }
9626}
9627
9628#[derive(Copy, Clone)]
9629#[repr(C)]
9630pub struct GtkVolumeButton {
9631    pub parent: GtkScaleButton,
9632}
9633
9634impl ::std::fmt::Debug for GtkVolumeButton {
9635    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9636        f.debug_struct(&format!("GtkVolumeButton @ {self:p}"))
9637            .field("parent", &self.parent)
9638            .finish()
9639    }
9640}
9641
9642#[derive(Copy, Clone)]
9643#[repr(C)]
9644pub struct GtkWidget {
9645    pub parent_instance: gobject::GInitiallyUnowned,
9646    pub priv_: *mut GtkWidgetPrivate,
9647}
9648
9649impl ::std::fmt::Debug for GtkWidget {
9650    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9651        f.debug_struct(&format!("GtkWidget @ {self:p}"))
9652            .field("parent_instance", &self.parent_instance)
9653            .finish()
9654    }
9655}
9656
9657#[repr(C)]
9658#[allow(dead_code)]
9659pub struct GtkWidgetPaintable {
9660    _data: [u8; 0],
9661    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9662}
9663
9664impl ::std::fmt::Debug for GtkWidgetPaintable {
9665    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9666        f.debug_struct(&format!("GtkWidgetPaintable @ {self:p}"))
9667            .finish()
9668    }
9669}
9670
9671#[derive(Copy, Clone)]
9672#[repr(C)]
9673pub struct GtkWindow {
9674    pub parent_instance: GtkWidget,
9675}
9676
9677impl ::std::fmt::Debug for GtkWindow {
9678    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9679        f.debug_struct(&format!("GtkWindow @ {self:p}"))
9680            .field("parent_instance", &self.parent_instance)
9681            .finish()
9682    }
9683}
9684
9685#[repr(C)]
9686#[allow(dead_code)]
9687pub struct GtkWindowControls {
9688    _data: [u8; 0],
9689    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9690}
9691
9692impl ::std::fmt::Debug for GtkWindowControls {
9693    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9694        f.debug_struct(&format!("GtkWindowControls @ {self:p}"))
9695            .finish()
9696    }
9697}
9698
9699#[derive(Copy, Clone)]
9700#[repr(C)]
9701pub struct GtkWindowGroup {
9702    pub parent_instance: gobject::GObject,
9703    pub priv_: *mut GtkWindowGroupPrivate,
9704}
9705
9706impl ::std::fmt::Debug for GtkWindowGroup {
9707    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9708        f.debug_struct(&format!("GtkWindowGroup @ {self:p}"))
9709            .field("parent_instance", &self.parent_instance)
9710            .field("priv_", &self.priv_)
9711            .finish()
9712    }
9713}
9714
9715#[repr(C)]
9716#[allow(dead_code)]
9717pub struct GtkWindowHandle {
9718    _data: [u8; 0],
9719    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9720}
9721
9722impl ::std::fmt::Debug for GtkWindowHandle {
9723    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9724        f.debug_struct(&format!("GtkWindowHandle @ {self:p}"))
9725            .finish()
9726    }
9727}
9728
9729// Interfaces
9730#[repr(C)]
9731#[allow(dead_code)]
9732pub struct GtkAccessible {
9733    _data: [u8; 0],
9734    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9735}
9736
9737impl ::std::fmt::Debug for GtkAccessible {
9738    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9739        write!(f, "GtkAccessible @ {self:p}")
9740    }
9741}
9742
9743#[repr(C)]
9744#[allow(dead_code)]
9745pub struct GtkAccessibleHypertext {
9746    _data: [u8; 0],
9747    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9748}
9749
9750impl ::std::fmt::Debug for GtkAccessibleHypertext {
9751    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9752        write!(f, "GtkAccessibleHypertext @ {self:p}")
9753    }
9754}
9755
9756#[repr(C)]
9757#[allow(dead_code)]
9758pub struct GtkAccessibleRange {
9759    _data: [u8; 0],
9760    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9761}
9762
9763impl ::std::fmt::Debug for GtkAccessibleRange {
9764    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9765        write!(f, "GtkAccessibleRange @ {self:p}")
9766    }
9767}
9768
9769#[repr(C)]
9770#[allow(dead_code)]
9771pub struct GtkAccessibleText {
9772    _data: [u8; 0],
9773    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9774}
9775
9776impl ::std::fmt::Debug for GtkAccessibleText {
9777    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9778        write!(f, "GtkAccessibleText @ {self:p}")
9779    }
9780}
9781
9782#[repr(C)]
9783#[allow(dead_code)]
9784pub struct GtkActionable {
9785    _data: [u8; 0],
9786    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9787}
9788
9789impl ::std::fmt::Debug for GtkActionable {
9790    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9791        write!(f, "GtkActionable @ {self:p}")
9792    }
9793}
9794
9795#[repr(C)]
9796#[allow(dead_code)]
9797pub struct GtkAppChooser {
9798    _data: [u8; 0],
9799    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9800}
9801
9802impl ::std::fmt::Debug for GtkAppChooser {
9803    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9804        write!(f, "GtkAppChooser @ {self:p}")
9805    }
9806}
9807
9808#[repr(C)]
9809#[allow(dead_code)]
9810pub struct GtkBuildable {
9811    _data: [u8; 0],
9812    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9813}
9814
9815impl ::std::fmt::Debug for GtkBuildable {
9816    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9817        write!(f, "GtkBuildable @ {self:p}")
9818    }
9819}
9820
9821#[repr(C)]
9822#[allow(dead_code)]
9823pub struct GtkBuilderScope {
9824    _data: [u8; 0],
9825    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9826}
9827
9828impl ::std::fmt::Debug for GtkBuilderScope {
9829    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9830        write!(f, "GtkBuilderScope @ {self:p}")
9831    }
9832}
9833
9834#[repr(C)]
9835#[allow(dead_code)]
9836pub struct GtkCellEditable {
9837    _data: [u8; 0],
9838    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9839}
9840
9841impl ::std::fmt::Debug for GtkCellEditable {
9842    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9843        write!(f, "GtkCellEditable @ {self:p}")
9844    }
9845}
9846
9847#[repr(C)]
9848#[allow(dead_code)]
9849pub struct GtkCellLayout {
9850    _data: [u8; 0],
9851    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9852}
9853
9854impl ::std::fmt::Debug for GtkCellLayout {
9855    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9856        write!(f, "GtkCellLayout @ {self:p}")
9857    }
9858}
9859
9860#[repr(C)]
9861#[allow(dead_code)]
9862pub struct GtkColorChooser {
9863    _data: [u8; 0],
9864    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9865}
9866
9867impl ::std::fmt::Debug for GtkColorChooser {
9868    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9869        write!(f, "GtkColorChooser @ {self:p}")
9870    }
9871}
9872
9873#[repr(C)]
9874#[allow(dead_code)]
9875pub struct GtkConstraintTarget {
9876    _data: [u8; 0],
9877    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9878}
9879
9880impl ::std::fmt::Debug for GtkConstraintTarget {
9881    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9882        write!(f, "GtkConstraintTarget @ {self:p}")
9883    }
9884}
9885
9886#[repr(C)]
9887#[allow(dead_code)]
9888pub struct GtkEditable {
9889    _data: [u8; 0],
9890    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9891}
9892
9893impl ::std::fmt::Debug for GtkEditable {
9894    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9895        write!(f, "GtkEditable @ {self:p}")
9896    }
9897}
9898
9899#[repr(C)]
9900#[allow(dead_code)]
9901pub struct GtkFileChooser {
9902    _data: [u8; 0],
9903    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9904}
9905
9906impl ::std::fmt::Debug for GtkFileChooser {
9907    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9908        write!(f, "GtkFileChooser @ {self:p}")
9909    }
9910}
9911
9912#[repr(C)]
9913#[allow(dead_code)]
9914pub struct GtkFontChooser {
9915    _data: [u8; 0],
9916    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9917}
9918
9919impl ::std::fmt::Debug for GtkFontChooser {
9920    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9921        write!(f, "GtkFontChooser @ {self:p}")
9922    }
9923}
9924
9925#[repr(C)]
9926#[allow(dead_code)]
9927pub struct GtkNative {
9928    _data: [u8; 0],
9929    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9930}
9931
9932impl ::std::fmt::Debug for GtkNative {
9933    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9934        write!(f, "GtkNative @ {self:p}")
9935    }
9936}
9937
9938#[repr(C)]
9939#[allow(dead_code)]
9940pub struct GtkOrientable {
9941    _data: [u8; 0],
9942    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9943}
9944
9945impl ::std::fmt::Debug for GtkOrientable {
9946    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9947        write!(f, "GtkOrientable @ {self:p}")
9948    }
9949}
9950
9951#[repr(C)]
9952#[allow(dead_code)]
9953pub struct GtkPrintOperationPreview {
9954    _data: [u8; 0],
9955    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9956}
9957
9958impl ::std::fmt::Debug for GtkPrintOperationPreview {
9959    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9960        write!(f, "GtkPrintOperationPreview @ {self:p}")
9961    }
9962}
9963
9964#[repr(C)]
9965#[allow(dead_code)]
9966pub struct GtkRoot {
9967    _data: [u8; 0],
9968    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9969}
9970
9971impl ::std::fmt::Debug for GtkRoot {
9972    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9973        write!(f, "GtkRoot @ {self:p}")
9974    }
9975}
9976
9977#[repr(C)]
9978#[allow(dead_code)]
9979pub struct GtkScrollable {
9980    _data: [u8; 0],
9981    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9982}
9983
9984impl ::std::fmt::Debug for GtkScrollable {
9985    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9986        write!(f, "GtkScrollable @ {self:p}")
9987    }
9988}
9989
9990#[repr(C)]
9991#[allow(dead_code)]
9992pub struct GtkSectionModel {
9993    _data: [u8; 0],
9994    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9995}
9996
9997impl ::std::fmt::Debug for GtkSectionModel {
9998    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9999        write!(f, "GtkSectionModel @ {self:p}")
10000    }
10001}
10002
10003#[repr(C)]
10004#[allow(dead_code)]
10005pub struct GtkSelectionModel {
10006    _data: [u8; 0],
10007    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10008}
10009
10010impl ::std::fmt::Debug for GtkSelectionModel {
10011    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10012        write!(f, "GtkSelectionModel @ {self:p}")
10013    }
10014}
10015
10016#[repr(C)]
10017#[allow(dead_code)]
10018pub struct GtkShortcutManager {
10019    _data: [u8; 0],
10020    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10021}
10022
10023impl ::std::fmt::Debug for GtkShortcutManager {
10024    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10025        write!(f, "GtkShortcutManager @ {self:p}")
10026    }
10027}
10028
10029#[repr(C)]
10030#[allow(dead_code)]
10031pub struct GtkStyleProvider {
10032    _data: [u8; 0],
10033    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10034}
10035
10036impl ::std::fmt::Debug for GtkStyleProvider {
10037    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10038        write!(f, "GtkStyleProvider @ {self:p}")
10039    }
10040}
10041
10042#[repr(C)]
10043#[allow(dead_code)]
10044pub struct GtkSymbolicPaintable {
10045    _data: [u8; 0],
10046    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10047}
10048
10049impl ::std::fmt::Debug for GtkSymbolicPaintable {
10050    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10051        write!(f, "GtkSymbolicPaintable @ {self:p}")
10052    }
10053}
10054
10055#[repr(C)]
10056#[allow(dead_code)]
10057pub struct GtkTreeDragDest {
10058    _data: [u8; 0],
10059    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10060}
10061
10062impl ::std::fmt::Debug for GtkTreeDragDest {
10063    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10064        write!(f, "GtkTreeDragDest @ {self:p}")
10065    }
10066}
10067
10068#[repr(C)]
10069#[allow(dead_code)]
10070pub struct GtkTreeDragSource {
10071    _data: [u8; 0],
10072    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10073}
10074
10075impl ::std::fmt::Debug for GtkTreeDragSource {
10076    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10077        write!(f, "GtkTreeDragSource @ {self:p}")
10078    }
10079}
10080
10081#[repr(C)]
10082#[allow(dead_code)]
10083pub struct GtkTreeModel {
10084    _data: [u8; 0],
10085    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10086}
10087
10088impl ::std::fmt::Debug for GtkTreeModel {
10089    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10090        write!(f, "GtkTreeModel @ {self:p}")
10091    }
10092}
10093
10094#[repr(C)]
10095#[allow(dead_code)]
10096pub struct GtkTreeSortable {
10097    _data: [u8; 0],
10098    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10099}
10100
10101impl ::std::fmt::Debug for GtkTreeSortable {
10102    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10103        write!(f, "GtkTreeSortable @ {self:p}")
10104    }
10105}
10106
10107extern "C" {
10108
10109    //=========================================================================
10110    // GtkAccessibleAnnouncementPriority
10111    //=========================================================================
10112    #[cfg(feature = "v4_14")]
10113    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10114    pub fn gtk_accessible_announcement_priority_get_type() -> GType;
10115
10116    //=========================================================================
10117    // GtkAccessibleAutocomplete
10118    //=========================================================================
10119    pub fn gtk_accessible_autocomplete_get_type() -> GType;
10120
10121    //=========================================================================
10122    // GtkAccessibleInvalidState
10123    //=========================================================================
10124    pub fn gtk_accessible_invalid_state_get_type() -> GType;
10125
10126    //=========================================================================
10127    // GtkAccessiblePlatformState
10128    //=========================================================================
10129    #[cfg(feature = "v4_10")]
10130    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10131    pub fn gtk_accessible_platform_state_get_type() -> GType;
10132
10133    //=========================================================================
10134    // GtkAccessibleProperty
10135    //=========================================================================
10136    pub fn gtk_accessible_property_get_type() -> GType;
10137    pub fn gtk_accessible_property_init_value(
10138        property: GtkAccessibleProperty,
10139        value: *mut gobject::GValue,
10140    );
10141
10142    //=========================================================================
10143    // GtkAccessibleRelation
10144    //=========================================================================
10145    pub fn gtk_accessible_relation_get_type() -> GType;
10146    pub fn gtk_accessible_relation_init_value(
10147        relation: GtkAccessibleRelation,
10148        value: *mut gobject::GValue,
10149    );
10150
10151    //=========================================================================
10152    // GtkAccessibleRole
10153    //=========================================================================
10154    pub fn gtk_accessible_role_get_type() -> GType;
10155
10156    //=========================================================================
10157    // GtkAccessibleSort
10158    //=========================================================================
10159    pub fn gtk_accessible_sort_get_type() -> GType;
10160
10161    //=========================================================================
10162    // GtkAccessibleState
10163    //=========================================================================
10164    pub fn gtk_accessible_state_get_type() -> GType;
10165    pub fn gtk_accessible_state_init_value(state: GtkAccessibleState, value: *mut gobject::GValue);
10166
10167    //=========================================================================
10168    // GtkAccessibleTextContentChange
10169    //=========================================================================
10170    #[cfg(feature = "v4_14")]
10171    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10172    pub fn gtk_accessible_text_content_change_get_type() -> GType;
10173
10174    //=========================================================================
10175    // GtkAccessibleTextGranularity
10176    //=========================================================================
10177    #[cfg(feature = "v4_14")]
10178    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10179    pub fn gtk_accessible_text_granularity_get_type() -> GType;
10180
10181    //=========================================================================
10182    // GtkAccessibleTristate
10183    //=========================================================================
10184    pub fn gtk_accessible_tristate_get_type() -> GType;
10185
10186    //=========================================================================
10187    // GtkAlign
10188    //=========================================================================
10189    pub fn gtk_align_get_type() -> GType;
10190
10191    //=========================================================================
10192    // GtkArrowType
10193    //=========================================================================
10194    pub fn gtk_arrow_type_get_type() -> GType;
10195
10196    //=========================================================================
10197    // GtkAssistantPageType
10198    //=========================================================================
10199    pub fn gtk_assistant_page_type_get_type() -> GType;
10200
10201    //=========================================================================
10202    // GtkBaselinePosition
10203    //=========================================================================
10204    pub fn gtk_baseline_position_get_type() -> GType;
10205
10206    //=========================================================================
10207    // GtkBorderStyle
10208    //=========================================================================
10209    pub fn gtk_border_style_get_type() -> GType;
10210
10211    //=========================================================================
10212    // GtkBuilderError
10213    //=========================================================================
10214    pub fn gtk_builder_error_get_type() -> GType;
10215    pub fn gtk_builder_error_quark() -> glib::GQuark;
10216
10217    //=========================================================================
10218    // GtkButtonsType
10219    //=========================================================================
10220    pub fn gtk_buttons_type_get_type() -> GType;
10221
10222    //=========================================================================
10223    // GtkCellRendererAccelMode
10224    //=========================================================================
10225    pub fn gtk_cell_renderer_accel_mode_get_type() -> GType;
10226
10227    //=========================================================================
10228    // GtkCellRendererMode
10229    //=========================================================================
10230    pub fn gtk_cell_renderer_mode_get_type() -> GType;
10231
10232    //=========================================================================
10233    // GtkCollation
10234    //=========================================================================
10235    #[cfg(feature = "v4_10")]
10236    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10237    pub fn gtk_collation_get_type() -> GType;
10238
10239    //=========================================================================
10240    // GtkConstraintAttribute
10241    //=========================================================================
10242    pub fn gtk_constraint_attribute_get_type() -> GType;
10243
10244    //=========================================================================
10245    // GtkConstraintRelation
10246    //=========================================================================
10247    pub fn gtk_constraint_relation_get_type() -> GType;
10248
10249    //=========================================================================
10250    // GtkConstraintStrength
10251    //=========================================================================
10252    pub fn gtk_constraint_strength_get_type() -> GType;
10253
10254    //=========================================================================
10255    // GtkConstraintVflParserError
10256    //=========================================================================
10257    pub fn gtk_constraint_vfl_parser_error_get_type() -> GType;
10258    pub fn gtk_constraint_vfl_parser_error_quark() -> glib::GQuark;
10259
10260    //=========================================================================
10261    // GtkContentFit
10262    //=========================================================================
10263    #[cfg(feature = "v4_8")]
10264    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
10265    pub fn gtk_content_fit_get_type() -> GType;
10266
10267    //=========================================================================
10268    // GtkCornerType
10269    //=========================================================================
10270    pub fn gtk_corner_type_get_type() -> GType;
10271
10272    //=========================================================================
10273    // GtkDeleteType
10274    //=========================================================================
10275    pub fn gtk_delete_type_get_type() -> GType;
10276
10277    //=========================================================================
10278    // GtkDialogError
10279    //=========================================================================
10280    #[cfg(feature = "v4_10")]
10281    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10282    pub fn gtk_dialog_error_get_type() -> GType;
10283    #[cfg(feature = "v4_10")]
10284    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10285    pub fn gtk_dialog_error_quark() -> glib::GQuark;
10286
10287    //=========================================================================
10288    // GtkDirectionType
10289    //=========================================================================
10290    pub fn gtk_direction_type_get_type() -> GType;
10291
10292    //=========================================================================
10293    // GtkEditableProperties
10294    //=========================================================================
10295    pub fn gtk_editable_properties_get_type() -> GType;
10296
10297    //=========================================================================
10298    // GtkEntryIconPosition
10299    //=========================================================================
10300    pub fn gtk_entry_icon_position_get_type() -> GType;
10301
10302    //=========================================================================
10303    // GtkEventSequenceState
10304    //=========================================================================
10305    pub fn gtk_event_sequence_state_get_type() -> GType;
10306
10307    //=========================================================================
10308    // GtkFileChooserAction
10309    //=========================================================================
10310    pub fn gtk_file_chooser_action_get_type() -> GType;
10311
10312    //=========================================================================
10313    // GtkFileChooserError
10314    //=========================================================================
10315    pub fn gtk_file_chooser_error_get_type() -> GType;
10316    pub fn gtk_file_chooser_error_quark() -> glib::GQuark;
10317
10318    //=========================================================================
10319    // GtkFilterChange
10320    //=========================================================================
10321    pub fn gtk_filter_change_get_type() -> GType;
10322
10323    //=========================================================================
10324    // GtkFilterMatch
10325    //=========================================================================
10326    pub fn gtk_filter_match_get_type() -> GType;
10327
10328    //=========================================================================
10329    // GtkFontLevel
10330    //=========================================================================
10331    #[cfg(feature = "v4_10")]
10332    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10333    pub fn gtk_font_level_get_type() -> GType;
10334
10335    //=========================================================================
10336    // GtkFontRendering
10337    //=========================================================================
10338    #[cfg(feature = "v4_16")]
10339    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10340    pub fn gtk_font_rendering_get_type() -> GType;
10341
10342    //=========================================================================
10343    // GtkGraphicsOffloadEnabled
10344    //=========================================================================
10345    #[cfg(feature = "v4_14")]
10346    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10347    pub fn gtk_graphics_offload_enabled_get_type() -> GType;
10348
10349    //=========================================================================
10350    // GtkIconSize
10351    //=========================================================================
10352    pub fn gtk_icon_size_get_type() -> GType;
10353
10354    //=========================================================================
10355    // GtkIconThemeError
10356    //=========================================================================
10357    pub fn gtk_icon_theme_error_get_type() -> GType;
10358    pub fn gtk_icon_theme_error_quark() -> glib::GQuark;
10359
10360    //=========================================================================
10361    // GtkIconViewDropPosition
10362    //=========================================================================
10363    pub fn gtk_icon_view_drop_position_get_type() -> GType;
10364
10365    //=========================================================================
10366    // GtkImageType
10367    //=========================================================================
10368    pub fn gtk_image_type_get_type() -> GType;
10369
10370    //=========================================================================
10371    // GtkInputPurpose
10372    //=========================================================================
10373    pub fn gtk_input_purpose_get_type() -> GType;
10374
10375    //=========================================================================
10376    // GtkInscriptionOverflow
10377    //=========================================================================
10378    #[cfg(feature = "v4_8")]
10379    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
10380    pub fn gtk_inscription_overflow_get_type() -> GType;
10381
10382    //=========================================================================
10383    // GtkInterfaceColorScheme
10384    //=========================================================================
10385    #[cfg(feature = "v4_20")]
10386    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10387    pub fn gtk_interface_color_scheme_get_type() -> GType;
10388
10389    //=========================================================================
10390    // GtkInterfaceContrast
10391    //=========================================================================
10392    #[cfg(feature = "v4_20")]
10393    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10394    pub fn gtk_interface_contrast_get_type() -> GType;
10395
10396    //=========================================================================
10397    // GtkJustification
10398    //=========================================================================
10399    pub fn gtk_justification_get_type() -> GType;
10400
10401    //=========================================================================
10402    // GtkLevelBarMode
10403    //=========================================================================
10404    pub fn gtk_level_bar_mode_get_type() -> GType;
10405
10406    //=========================================================================
10407    // GtkLicense
10408    //=========================================================================
10409    pub fn gtk_license_get_type() -> GType;
10410
10411    //=========================================================================
10412    // GtkListTabBehavior
10413    //=========================================================================
10414    #[cfg(feature = "v4_12")]
10415    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10416    pub fn gtk_list_tab_behavior_get_type() -> GType;
10417
10418    //=========================================================================
10419    // GtkMessageType
10420    //=========================================================================
10421    pub fn gtk_message_type_get_type() -> GType;
10422
10423    //=========================================================================
10424    // GtkMovementStep
10425    //=========================================================================
10426    pub fn gtk_movement_step_get_type() -> GType;
10427
10428    //=========================================================================
10429    // GtkNaturalWrapMode
10430    //=========================================================================
10431    #[cfg(feature = "v4_6")]
10432    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
10433    pub fn gtk_natural_wrap_mode_get_type() -> GType;
10434
10435    //=========================================================================
10436    // GtkNotebookTab
10437    //=========================================================================
10438    pub fn gtk_notebook_tab_get_type() -> GType;
10439
10440    //=========================================================================
10441    // GtkNumberUpLayout
10442    //=========================================================================
10443    pub fn gtk_number_up_layout_get_type() -> GType;
10444
10445    //=========================================================================
10446    // GtkOrdering
10447    //=========================================================================
10448    pub fn gtk_ordering_get_type() -> GType;
10449    #[cfg(feature = "v4_2")]
10450    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
10451    pub fn gtk_ordering_from_cmpfunc(cmpfunc_result: c_int) -> GtkOrdering;
10452
10453    //=========================================================================
10454    // GtkOrientation
10455    //=========================================================================
10456    pub fn gtk_orientation_get_type() -> GType;
10457
10458    //=========================================================================
10459    // GtkOverflow
10460    //=========================================================================
10461    pub fn gtk_overflow_get_type() -> GType;
10462
10463    //=========================================================================
10464    // GtkPackType
10465    //=========================================================================
10466    pub fn gtk_pack_type_get_type() -> GType;
10467
10468    //=========================================================================
10469    // GtkPadActionType
10470    //=========================================================================
10471    pub fn gtk_pad_action_type_get_type() -> GType;
10472
10473    //=========================================================================
10474    // GtkPageOrientation
10475    //=========================================================================
10476    pub fn gtk_page_orientation_get_type() -> GType;
10477
10478    //=========================================================================
10479    // GtkPageSet
10480    //=========================================================================
10481    pub fn gtk_page_set_get_type() -> GType;
10482
10483    //=========================================================================
10484    // GtkPanDirection
10485    //=========================================================================
10486    pub fn gtk_pan_direction_get_type() -> GType;
10487
10488    //=========================================================================
10489    // GtkPolicyType
10490    //=========================================================================
10491    pub fn gtk_policy_type_get_type() -> GType;
10492
10493    //=========================================================================
10494    // GtkPositionType
10495    //=========================================================================
10496    pub fn gtk_position_type_get_type() -> GType;
10497
10498    //=========================================================================
10499    // GtkPrintDuplex
10500    //=========================================================================
10501    pub fn gtk_print_duplex_get_type() -> GType;
10502
10503    //=========================================================================
10504    // GtkPrintError
10505    //=========================================================================
10506    pub fn gtk_print_error_get_type() -> GType;
10507    pub fn gtk_print_error_quark() -> glib::GQuark;
10508
10509    //=========================================================================
10510    // GtkPrintOperationAction
10511    //=========================================================================
10512    pub fn gtk_print_operation_action_get_type() -> GType;
10513
10514    //=========================================================================
10515    // GtkPrintOperationResult
10516    //=========================================================================
10517    pub fn gtk_print_operation_result_get_type() -> GType;
10518
10519    //=========================================================================
10520    // GtkPrintPages
10521    //=========================================================================
10522    pub fn gtk_print_pages_get_type() -> GType;
10523
10524    //=========================================================================
10525    // GtkPrintQuality
10526    //=========================================================================
10527    pub fn gtk_print_quality_get_type() -> GType;
10528
10529    //=========================================================================
10530    // GtkPrintStatus
10531    //=========================================================================
10532    pub fn gtk_print_status_get_type() -> GType;
10533
10534    //=========================================================================
10535    // GtkPropagationLimit
10536    //=========================================================================
10537    pub fn gtk_propagation_limit_get_type() -> GType;
10538
10539    //=========================================================================
10540    // GtkPropagationPhase
10541    //=========================================================================
10542    pub fn gtk_propagation_phase_get_type() -> GType;
10543
10544    //=========================================================================
10545    // GtkRecentManagerError
10546    //=========================================================================
10547    pub fn gtk_recent_manager_error_get_type() -> GType;
10548    pub fn gtk_recent_manager_error_quark() -> glib::GQuark;
10549
10550    //=========================================================================
10551    // GtkReducedMotion
10552    //=========================================================================
10553    #[cfg(feature = "v4_22")]
10554    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10555    pub fn gtk_reduced_motion_get_type() -> GType;
10556
10557    //=========================================================================
10558    // GtkResponseType
10559    //=========================================================================
10560    pub fn gtk_response_type_get_type() -> GType;
10561
10562    //=========================================================================
10563    // GtkRestoreReason
10564    //=========================================================================
10565    #[cfg(feature = "v4_22")]
10566    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10567    pub fn gtk_restore_reason_get_type() -> GType;
10568
10569    //=========================================================================
10570    // GtkRevealerTransitionType
10571    //=========================================================================
10572    pub fn gtk_revealer_transition_type_get_type() -> GType;
10573
10574    //=========================================================================
10575    // GtkScrollStep
10576    //=========================================================================
10577    pub fn gtk_scroll_step_get_type() -> GType;
10578
10579    //=========================================================================
10580    // GtkScrollType
10581    //=========================================================================
10582    pub fn gtk_scroll_type_get_type() -> GType;
10583
10584    //=========================================================================
10585    // GtkScrollablePolicy
10586    //=========================================================================
10587    pub fn gtk_scrollable_policy_get_type() -> GType;
10588
10589    //=========================================================================
10590    // GtkSelectionMode
10591    //=========================================================================
10592    pub fn gtk_selection_mode_get_type() -> GType;
10593
10594    //=========================================================================
10595    // GtkSensitivityType
10596    //=========================================================================
10597    pub fn gtk_sensitivity_type_get_type() -> GType;
10598
10599    //=========================================================================
10600    // GtkShortcutScope
10601    //=========================================================================
10602    pub fn gtk_shortcut_scope_get_type() -> GType;
10603
10604    //=========================================================================
10605    // GtkShortcutType
10606    //=========================================================================
10607    pub fn gtk_shortcut_type_get_type() -> GType;
10608
10609    //=========================================================================
10610    // GtkSizeGroupMode
10611    //=========================================================================
10612    pub fn gtk_size_group_mode_get_type() -> GType;
10613
10614    //=========================================================================
10615    // GtkSizeRequestMode
10616    //=========================================================================
10617    pub fn gtk_size_request_mode_get_type() -> GType;
10618
10619    //=========================================================================
10620    // GtkSortType
10621    //=========================================================================
10622    pub fn gtk_sort_type_get_type() -> GType;
10623
10624    //=========================================================================
10625    // GtkSorterChange
10626    //=========================================================================
10627    pub fn gtk_sorter_change_get_type() -> GType;
10628
10629    //=========================================================================
10630    // GtkSorterOrder
10631    //=========================================================================
10632    pub fn gtk_sorter_order_get_type() -> GType;
10633
10634    //=========================================================================
10635    // GtkSpinButtonUpdatePolicy
10636    //=========================================================================
10637    pub fn gtk_spin_button_update_policy_get_type() -> GType;
10638
10639    //=========================================================================
10640    // GtkSpinType
10641    //=========================================================================
10642    pub fn gtk_spin_type_get_type() -> GType;
10643
10644    //=========================================================================
10645    // GtkStackTransitionType
10646    //=========================================================================
10647    pub fn gtk_stack_transition_type_get_type() -> GType;
10648
10649    //=========================================================================
10650    // GtkStringFilterMatchMode
10651    //=========================================================================
10652    pub fn gtk_string_filter_match_mode_get_type() -> GType;
10653
10654    //=========================================================================
10655    // GtkSvgError
10656    //=========================================================================
10657    #[cfg(feature = "v4_22")]
10658    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10659    pub fn gtk_svg_error_get_type() -> GType;
10660    #[cfg(feature = "v4_22")]
10661    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10662    pub fn gtk_svg_error_get_attribute(error: *const glib::GError) -> *const c_char;
10663    #[cfg(feature = "v4_22")]
10664    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10665    pub fn gtk_svg_error_get_element(error: *const glib::GError) -> *const c_char;
10666    #[cfg(feature = "v4_22")]
10667    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10668    pub fn gtk_svg_error_get_end(error: *const glib::GError) -> *const GtkSvgLocation;
10669    #[cfg(feature = "v4_22")]
10670    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10671    pub fn gtk_svg_error_get_start(error: *const glib::GError) -> *const GtkSvgLocation;
10672    #[cfg(feature = "v4_22")]
10673    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10674    pub fn gtk_svg_error_quark() -> glib::GQuark;
10675
10676    //=========================================================================
10677    // GtkSymbolicColor
10678    //=========================================================================
10679    #[cfg(feature = "v4_6")]
10680    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
10681    pub fn gtk_symbolic_color_get_type() -> GType;
10682
10683    //=========================================================================
10684    // GtkSystemSetting
10685    //=========================================================================
10686    pub fn gtk_system_setting_get_type() -> GType;
10687
10688    //=========================================================================
10689    // GtkTextDirection
10690    //=========================================================================
10691    pub fn gtk_text_direction_get_type() -> GType;
10692
10693    //=========================================================================
10694    // GtkTextExtendSelection
10695    //=========================================================================
10696    pub fn gtk_text_extend_selection_get_type() -> GType;
10697
10698    //=========================================================================
10699    // GtkTextViewLayer
10700    //=========================================================================
10701    pub fn gtk_text_view_layer_get_type() -> GType;
10702
10703    //=========================================================================
10704    // GtkTextWindowType
10705    //=========================================================================
10706    pub fn gtk_text_window_type_get_type() -> GType;
10707
10708    //=========================================================================
10709    // GtkTreeViewColumnSizing
10710    //=========================================================================
10711    pub fn gtk_tree_view_column_sizing_get_type() -> GType;
10712
10713    //=========================================================================
10714    // GtkTreeViewDropPosition
10715    //=========================================================================
10716    pub fn gtk_tree_view_drop_position_get_type() -> GType;
10717
10718    //=========================================================================
10719    // GtkTreeViewGridLines
10720    //=========================================================================
10721    pub fn gtk_tree_view_grid_lines_get_type() -> GType;
10722
10723    //=========================================================================
10724    // GtkUnit
10725    //=========================================================================
10726    pub fn gtk_unit_get_type() -> GType;
10727
10728    //=========================================================================
10729    // GtkWindowGravity
10730    //=========================================================================
10731    #[cfg(feature = "v4_20")]
10732    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10733    pub fn gtk_window_gravity_get_type() -> GType;
10734
10735    //=========================================================================
10736    // GtkWrapMode
10737    //=========================================================================
10738    pub fn gtk_wrap_mode_get_type() -> GType;
10739
10740    //=========================================================================
10741    // GtkApplicationInhibitFlags
10742    //=========================================================================
10743    pub fn gtk_application_inhibit_flags_get_type() -> GType;
10744
10745    //=========================================================================
10746    // GtkBuilderClosureFlags
10747    //=========================================================================
10748    pub fn gtk_builder_closure_flags_get_type() -> GType;
10749
10750    //=========================================================================
10751    // GtkCellRendererState
10752    //=========================================================================
10753    pub fn gtk_cell_renderer_state_get_type() -> GType;
10754
10755    //=========================================================================
10756    // GtkDebugFlags
10757    //=========================================================================
10758    pub fn gtk_debug_flags_get_type() -> GType;
10759
10760    //=========================================================================
10761    // GtkDialogFlags
10762    //=========================================================================
10763    pub fn gtk_dialog_flags_get_type() -> GType;
10764
10765    //=========================================================================
10766    // GtkEventControllerScrollFlags
10767    //=========================================================================
10768    pub fn gtk_event_controller_scroll_flags_get_type() -> GType;
10769
10770    //=========================================================================
10771    // GtkFontChooserLevel
10772    //=========================================================================
10773    pub fn gtk_font_chooser_level_get_type() -> GType;
10774
10775    //=========================================================================
10776    // GtkIconLookupFlags
10777    //=========================================================================
10778    pub fn gtk_icon_lookup_flags_get_type() -> GType;
10779
10780    //=========================================================================
10781    // GtkInputHints
10782    //=========================================================================
10783    pub fn gtk_input_hints_get_type() -> GType;
10784
10785    //=========================================================================
10786    // GtkListScrollFlags
10787    //=========================================================================
10788    #[cfg(feature = "v4_12")]
10789    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10790    pub fn gtk_list_scroll_flags_get_type() -> GType;
10791
10792    //=========================================================================
10793    // GtkPickFlags
10794    //=========================================================================
10795    pub fn gtk_pick_flags_get_type() -> GType;
10796
10797    //=========================================================================
10798    // GtkPopoverMenuFlags
10799    //=========================================================================
10800    pub fn gtk_popover_menu_flags_get_type() -> GType;
10801
10802    //=========================================================================
10803    // GtkPrintCapabilities
10804    //=========================================================================
10805    pub fn gtk_print_capabilities_get_type() -> GType;
10806
10807    //=========================================================================
10808    // GtkShortcutActionFlags
10809    //=========================================================================
10810    pub fn gtk_shortcut_action_flags_get_type() -> GType;
10811
10812    //=========================================================================
10813    // GtkStateFlags
10814    //=========================================================================
10815    pub fn gtk_state_flags_get_type() -> GType;
10816
10817    //=========================================================================
10818    // GtkStyleContextPrintFlags
10819    //=========================================================================
10820    pub fn gtk_style_context_print_flags_get_type() -> GType;
10821
10822    //=========================================================================
10823    // GtkSvgFeatures
10824    //=========================================================================
10825    #[cfg(feature = "v4_22")]
10826    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10827    pub fn gtk_svg_features_get_type() -> GType;
10828
10829    //=========================================================================
10830    // GtkTextBufferNotifyFlags
10831    //=========================================================================
10832    #[cfg(feature = "v4_16")]
10833    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10834    pub fn gtk_text_buffer_notify_flags_get_type() -> GType;
10835
10836    //=========================================================================
10837    // GtkTextSearchFlags
10838    //=========================================================================
10839    pub fn gtk_text_search_flags_get_type() -> GType;
10840
10841    //=========================================================================
10842    // GtkTreeModelFlags
10843    //=========================================================================
10844    pub fn gtk_tree_model_flags_get_type() -> GType;
10845
10846    //=========================================================================
10847    // GtkAccessibleList
10848    //=========================================================================
10849    #[cfg(feature = "v4_14")]
10850    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10851    pub fn gtk_accessible_list_get_type() -> GType;
10852    #[cfg(feature = "v4_14")]
10853    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10854    pub fn gtk_accessible_list_new_from_array(
10855        accessibles: *mut *mut GtkAccessible,
10856        n_accessibles: size_t,
10857    ) -> *mut GtkAccessibleList;
10858    #[cfg(feature = "v4_14")]
10859    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10860    pub fn gtk_accessible_list_new_from_list(list: *mut glib::GList) -> *mut GtkAccessibleList;
10861    #[cfg(feature = "v4_14")]
10862    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10863    pub fn gtk_accessible_list_get_objects(
10864        accessible_list: *mut GtkAccessibleList,
10865    ) -> *mut glib::GList;
10866
10867    //=========================================================================
10868    // GtkBitset
10869    //=========================================================================
10870    pub fn gtk_bitset_get_type() -> GType;
10871    pub fn gtk_bitset_new_empty() -> *mut GtkBitset;
10872    pub fn gtk_bitset_new_range(start: c_uint, n_items: c_uint) -> *mut GtkBitset;
10873    pub fn gtk_bitset_add(self_: *mut GtkBitset, value: c_uint) -> gboolean;
10874    pub fn gtk_bitset_add_range(self_: *mut GtkBitset, start: c_uint, n_items: c_uint);
10875    pub fn gtk_bitset_add_range_closed(self_: *mut GtkBitset, first: c_uint, last: c_uint);
10876    pub fn gtk_bitset_add_rectangle(
10877        self_: *mut GtkBitset,
10878        start: c_uint,
10879        width: c_uint,
10880        height: c_uint,
10881        stride: c_uint,
10882    );
10883    pub fn gtk_bitset_contains(self_: *const GtkBitset, value: c_uint) -> gboolean;
10884    pub fn gtk_bitset_copy(self_: *const GtkBitset) -> *mut GtkBitset;
10885    pub fn gtk_bitset_difference(self_: *mut GtkBitset, other: *const GtkBitset);
10886    pub fn gtk_bitset_equals(self_: *const GtkBitset, other: *const GtkBitset) -> gboolean;
10887    pub fn gtk_bitset_get_maximum(self_: *const GtkBitset) -> c_uint;
10888    pub fn gtk_bitset_get_minimum(self_: *const GtkBitset) -> c_uint;
10889    pub fn gtk_bitset_get_nth(self_: *const GtkBitset, nth: c_uint) -> c_uint;
10890    pub fn gtk_bitset_get_size(self_: *const GtkBitset) -> u64;
10891    pub fn gtk_bitset_get_size_in_range(
10892        self_: *const GtkBitset,
10893        first: c_uint,
10894        last: c_uint,
10895    ) -> u64;
10896    pub fn gtk_bitset_intersect(self_: *mut GtkBitset, other: *const GtkBitset);
10897    pub fn gtk_bitset_is_empty(self_: *const GtkBitset) -> gboolean;
10898    pub fn gtk_bitset_ref(self_: *mut GtkBitset) -> *mut GtkBitset;
10899    pub fn gtk_bitset_remove(self_: *mut GtkBitset, value: c_uint) -> gboolean;
10900    pub fn gtk_bitset_remove_all(self_: *mut GtkBitset);
10901    pub fn gtk_bitset_remove_range(self_: *mut GtkBitset, start: c_uint, n_items: c_uint);
10902    pub fn gtk_bitset_remove_range_closed(self_: *mut GtkBitset, first: c_uint, last: c_uint);
10903    pub fn gtk_bitset_remove_rectangle(
10904        self_: *mut GtkBitset,
10905        start: c_uint,
10906        width: c_uint,
10907        height: c_uint,
10908        stride: c_uint,
10909    );
10910    pub fn gtk_bitset_shift_left(self_: *mut GtkBitset, amount: c_uint);
10911    pub fn gtk_bitset_shift_right(self_: *mut GtkBitset, amount: c_uint);
10912    pub fn gtk_bitset_splice(
10913        self_: *mut GtkBitset,
10914        position: c_uint,
10915        removed: c_uint,
10916        added: c_uint,
10917    );
10918    pub fn gtk_bitset_subtract(self_: *mut GtkBitset, other: *const GtkBitset);
10919    pub fn gtk_bitset_union(self_: *mut GtkBitset, other: *const GtkBitset);
10920    pub fn gtk_bitset_unref(self_: *mut GtkBitset);
10921
10922    //=========================================================================
10923    // GtkBitsetIter
10924    //=========================================================================
10925    pub fn gtk_bitset_iter_get_type() -> GType;
10926    pub fn gtk_bitset_iter_get_value(iter: *const GtkBitsetIter) -> c_uint;
10927    pub fn gtk_bitset_iter_is_valid(iter: *const GtkBitsetIter) -> gboolean;
10928    pub fn gtk_bitset_iter_next(iter: *mut GtkBitsetIter, value: *mut c_uint) -> gboolean;
10929    pub fn gtk_bitset_iter_previous(iter: *mut GtkBitsetIter, value: *mut c_uint) -> gboolean;
10930    pub fn gtk_bitset_iter_init_at(
10931        iter: *mut GtkBitsetIter,
10932        set: *const GtkBitset,
10933        target: c_uint,
10934        value: *mut c_uint,
10935    ) -> gboolean;
10936    pub fn gtk_bitset_iter_init_first(
10937        iter: *mut GtkBitsetIter,
10938        set: *const GtkBitset,
10939        value: *mut c_uint,
10940    ) -> gboolean;
10941    pub fn gtk_bitset_iter_init_last(
10942        iter: *mut GtkBitsetIter,
10943        set: *const GtkBitset,
10944        value: *mut c_uint,
10945    ) -> gboolean;
10946
10947    //=========================================================================
10948    // GtkBorder
10949    //=========================================================================
10950    pub fn gtk_border_get_type() -> GType;
10951    pub fn gtk_border_new() -> *mut GtkBorder;
10952    pub fn gtk_border_copy(border_: *const GtkBorder) -> *mut GtkBorder;
10953    pub fn gtk_border_free(border_: *mut GtkBorder);
10954
10955    //=========================================================================
10956    // GtkBuildableParseContext
10957    //=========================================================================
10958    pub fn gtk_buildable_parse_context_get_element(
10959        context: *mut GtkBuildableParseContext,
10960    ) -> *const c_char;
10961    pub fn gtk_buildable_parse_context_get_element_stack(
10962        context: *mut GtkBuildableParseContext,
10963    ) -> *mut glib::GPtrArray;
10964    pub fn gtk_buildable_parse_context_get_position(
10965        context: *mut GtkBuildableParseContext,
10966        line_number: *mut c_int,
10967        char_number: *mut c_int,
10968    );
10969    pub fn gtk_buildable_parse_context_pop(context: *mut GtkBuildableParseContext) -> gpointer;
10970    pub fn gtk_buildable_parse_context_push(
10971        context: *mut GtkBuildableParseContext,
10972        parser: *const GtkBuildableParser,
10973        user_data: gpointer,
10974    );
10975
10976    //=========================================================================
10977    // GtkCellAreaClass
10978    //=========================================================================
10979    pub fn gtk_cell_area_class_find_cell_property(
10980        aclass: *mut GtkCellAreaClass,
10981        property_name: *const c_char,
10982    ) -> *mut gobject::GParamSpec;
10983    pub fn gtk_cell_area_class_install_cell_property(
10984        aclass: *mut GtkCellAreaClass,
10985        property_id: c_uint,
10986        pspec: *mut gobject::GParamSpec,
10987    );
10988    pub fn gtk_cell_area_class_list_cell_properties(
10989        aclass: *mut GtkCellAreaClass,
10990        n_properties: *mut c_uint,
10991    ) -> *mut *mut gobject::GParamSpec;
10992
10993    //=========================================================================
10994    // GtkCssSection
10995    //=========================================================================
10996    pub fn gtk_css_section_get_type() -> GType;
10997    pub fn gtk_css_section_new(
10998        file: *mut gio::GFile,
10999        start: *const GtkCssLocation,
11000        end: *const GtkCssLocation,
11001    ) -> *mut GtkCssSection;
11002    #[cfg(feature = "v4_16")]
11003    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
11004    pub fn gtk_css_section_new_with_bytes(
11005        file: *mut gio::GFile,
11006        bytes: *mut glib::GBytes,
11007        start: *const GtkCssLocation,
11008        end: *const GtkCssLocation,
11009    ) -> *mut GtkCssSection;
11010    #[cfg(feature = "v4_16")]
11011    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
11012    pub fn gtk_css_section_get_bytes(section: *const GtkCssSection) -> *mut glib::GBytes;
11013    pub fn gtk_css_section_get_end_location(section: *const GtkCssSection)
11014        -> *const GtkCssLocation;
11015    pub fn gtk_css_section_get_file(section: *const GtkCssSection) -> *mut gio::GFile;
11016    pub fn gtk_css_section_get_parent(section: *const GtkCssSection) -> *mut GtkCssSection;
11017    pub fn gtk_css_section_get_start_location(
11018        section: *const GtkCssSection,
11019    ) -> *const GtkCssLocation;
11020    pub fn gtk_css_section_print(section: *const GtkCssSection, string: *mut glib::GString);
11021    pub fn gtk_css_section_ref(section: *mut GtkCssSection) -> *mut GtkCssSection;
11022    pub fn gtk_css_section_to_string(section: *const GtkCssSection) -> *mut c_char;
11023    pub fn gtk_css_section_unref(section: *mut GtkCssSection);
11024
11025    //=========================================================================
11026    // GtkExpressionWatch
11027    //=========================================================================
11028    #[cfg(feature = "v4_2")]
11029    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
11030    pub fn gtk_expression_watch_get_type() -> GType;
11031    pub fn gtk_expression_watch_evaluate(
11032        watch: *mut GtkExpressionWatch,
11033        value: *mut gobject::GValue,
11034    ) -> gboolean;
11035    pub fn gtk_expression_watch_ref(watch: *mut GtkExpressionWatch) -> *mut GtkExpressionWatch;
11036    pub fn gtk_expression_watch_unref(watch: *mut GtkExpressionWatch);
11037    pub fn gtk_expression_watch_unwatch(watch: *mut GtkExpressionWatch);
11038
11039    //=========================================================================
11040    // GtkPaperSize
11041    //=========================================================================
11042    pub fn gtk_paper_size_get_type() -> GType;
11043    pub fn gtk_paper_size_new(name: *const c_char) -> *mut GtkPaperSize;
11044    pub fn gtk_paper_size_new_custom(
11045        name: *const c_char,
11046        display_name: *const c_char,
11047        width: c_double,
11048        height: c_double,
11049        unit: GtkUnit,
11050    ) -> *mut GtkPaperSize;
11051    pub fn gtk_paper_size_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPaperSize;
11052    pub fn gtk_paper_size_new_from_ipp(
11053        ipp_name: *const c_char,
11054        width: c_double,
11055        height: c_double,
11056    ) -> *mut GtkPaperSize;
11057    pub fn gtk_paper_size_new_from_key_file(
11058        key_file: *mut glib::GKeyFile,
11059        group_name: *const c_char,
11060        error: *mut *mut glib::GError,
11061    ) -> *mut GtkPaperSize;
11062    pub fn gtk_paper_size_new_from_ppd(
11063        ppd_name: *const c_char,
11064        ppd_display_name: *const c_char,
11065        width: c_double,
11066        height: c_double,
11067    ) -> *mut GtkPaperSize;
11068    pub fn gtk_paper_size_copy(other: *mut GtkPaperSize) -> *mut GtkPaperSize;
11069    pub fn gtk_paper_size_free(size: *mut GtkPaperSize);
11070    pub fn gtk_paper_size_get_default_bottom_margin(
11071        size: *mut GtkPaperSize,
11072        unit: GtkUnit,
11073    ) -> c_double;
11074    pub fn gtk_paper_size_get_default_left_margin(
11075        size: *mut GtkPaperSize,
11076        unit: GtkUnit,
11077    ) -> c_double;
11078    pub fn gtk_paper_size_get_default_right_margin(
11079        size: *mut GtkPaperSize,
11080        unit: GtkUnit,
11081    ) -> c_double;
11082    pub fn gtk_paper_size_get_default_top_margin(
11083        size: *mut GtkPaperSize,
11084        unit: GtkUnit,
11085    ) -> c_double;
11086    pub fn gtk_paper_size_get_display_name(size: *mut GtkPaperSize) -> *const c_char;
11087    pub fn gtk_paper_size_get_height(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
11088    pub fn gtk_paper_size_get_name(size: *mut GtkPaperSize) -> *const c_char;
11089    pub fn gtk_paper_size_get_ppd_name(size: *mut GtkPaperSize) -> *const c_char;
11090    pub fn gtk_paper_size_get_width(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
11091    pub fn gtk_paper_size_is_custom(size: *mut GtkPaperSize) -> gboolean;
11092    pub fn gtk_paper_size_is_equal(size1: *mut GtkPaperSize, size2: *mut GtkPaperSize) -> gboolean;
11093    pub fn gtk_paper_size_is_ipp(size: *mut GtkPaperSize) -> gboolean;
11094    pub fn gtk_paper_size_set_size(
11095        size: *mut GtkPaperSize,
11096        width: c_double,
11097        height: c_double,
11098        unit: GtkUnit,
11099    );
11100    pub fn gtk_paper_size_to_gvariant(paper_size: *mut GtkPaperSize) -> *mut glib::GVariant;
11101    pub fn gtk_paper_size_to_key_file(
11102        size: *mut GtkPaperSize,
11103        key_file: *mut glib::GKeyFile,
11104        group_name: *const c_char,
11105    );
11106    pub fn gtk_paper_size_get_default() -> *const c_char;
11107    pub fn gtk_paper_size_get_paper_sizes(include_custom: gboolean) -> *mut glib::GList;
11108
11109    //=========================================================================
11110    // GtkPrintSetup
11111    //=========================================================================
11112    #[cfg(feature = "v4_14")]
11113    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11114    pub fn gtk_print_setup_get_type() -> GType;
11115    #[cfg(feature = "v4_14")]
11116    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11117    pub fn gtk_print_setup_get_page_setup(setup: *mut GtkPrintSetup) -> *mut GtkPageSetup;
11118    #[cfg(feature = "v4_14")]
11119    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11120    pub fn gtk_print_setup_get_print_settings(setup: *mut GtkPrintSetup) -> *mut GtkPrintSettings;
11121    #[cfg(feature = "v4_14")]
11122    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11123    pub fn gtk_print_setup_ref(setup: *mut GtkPrintSetup) -> *mut GtkPrintSetup;
11124    #[cfg(feature = "v4_14")]
11125    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11126    pub fn gtk_print_setup_unref(setup: *mut GtkPrintSetup);
11127
11128    //=========================================================================
11129    // GtkRecentInfo
11130    //=========================================================================
11131    pub fn gtk_recent_info_get_type() -> GType;
11132    pub fn gtk_recent_info_create_app_info(
11133        info: *mut GtkRecentInfo,
11134        app_name: *const c_char,
11135        error: *mut *mut glib::GError,
11136    ) -> *mut gio::GAppInfo;
11137    pub fn gtk_recent_info_exists(info: *mut GtkRecentInfo) -> gboolean;
11138    pub fn gtk_recent_info_get_added(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
11139    pub fn gtk_recent_info_get_age(info: *mut GtkRecentInfo) -> c_int;
11140    pub fn gtk_recent_info_get_application_info(
11141        info: *mut GtkRecentInfo,
11142        app_name: *const c_char,
11143        app_exec: *mut *const c_char,
11144        count: *mut c_uint,
11145        stamp: *mut *mut glib::GDateTime,
11146    ) -> gboolean;
11147    pub fn gtk_recent_info_get_applications(
11148        info: *mut GtkRecentInfo,
11149        length: *mut size_t,
11150    ) -> *mut *mut c_char;
11151    pub fn gtk_recent_info_get_description(info: *mut GtkRecentInfo) -> *const c_char;
11152    pub fn gtk_recent_info_get_display_name(info: *mut GtkRecentInfo) -> *const c_char;
11153    pub fn gtk_recent_info_get_gicon(info: *mut GtkRecentInfo) -> *mut gio::GIcon;
11154    pub fn gtk_recent_info_get_groups(
11155        info: *mut GtkRecentInfo,
11156        length: *mut size_t,
11157    ) -> *mut *mut c_char;
11158    pub fn gtk_recent_info_get_mime_type(info: *mut GtkRecentInfo) -> *const c_char;
11159    pub fn gtk_recent_info_get_modified(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
11160    pub fn gtk_recent_info_get_private_hint(info: *mut GtkRecentInfo) -> gboolean;
11161    pub fn gtk_recent_info_get_short_name(info: *mut GtkRecentInfo) -> *mut c_char;
11162    pub fn gtk_recent_info_get_uri(info: *mut GtkRecentInfo) -> *const c_char;
11163    pub fn gtk_recent_info_get_uri_display(info: *mut GtkRecentInfo) -> *mut c_char;
11164    pub fn gtk_recent_info_get_visited(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
11165    pub fn gtk_recent_info_has_application(
11166        info: *mut GtkRecentInfo,
11167        app_name: *const c_char,
11168    ) -> gboolean;
11169    pub fn gtk_recent_info_has_group(
11170        info: *mut GtkRecentInfo,
11171        group_name: *const c_char,
11172    ) -> gboolean;
11173    pub fn gtk_recent_info_is_local(info: *mut GtkRecentInfo) -> gboolean;
11174    pub fn gtk_recent_info_last_application(info: *mut GtkRecentInfo) -> *mut c_char;
11175    pub fn gtk_recent_info_match(
11176        info_a: *mut GtkRecentInfo,
11177        info_b: *mut GtkRecentInfo,
11178    ) -> gboolean;
11179    pub fn gtk_recent_info_ref(info: *mut GtkRecentInfo) -> *mut GtkRecentInfo;
11180    pub fn gtk_recent_info_unref(info: *mut GtkRecentInfo);
11181
11182    //=========================================================================
11183    // GtkRequisition
11184    //=========================================================================
11185    pub fn gtk_requisition_get_type() -> GType;
11186    pub fn gtk_requisition_new() -> *mut GtkRequisition;
11187    pub fn gtk_requisition_copy(requisition: *const GtkRequisition) -> *mut GtkRequisition;
11188    pub fn gtk_requisition_free(requisition: *mut GtkRequisition);
11189
11190    //=========================================================================
11191    // GtkScrollInfo
11192    //=========================================================================
11193    #[cfg(feature = "v4_12")]
11194    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11195    pub fn gtk_scroll_info_get_type() -> GType;
11196    #[cfg(feature = "v4_12")]
11197    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11198    pub fn gtk_scroll_info_new() -> *mut GtkScrollInfo;
11199    #[cfg(feature = "v4_12")]
11200    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11201    pub fn gtk_scroll_info_get_enable_horizontal(self_: *mut GtkScrollInfo) -> gboolean;
11202    #[cfg(feature = "v4_12")]
11203    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11204    pub fn gtk_scroll_info_get_enable_vertical(self_: *mut GtkScrollInfo) -> gboolean;
11205    #[cfg(feature = "v4_12")]
11206    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11207    pub fn gtk_scroll_info_ref(self_: *mut GtkScrollInfo) -> *mut GtkScrollInfo;
11208    #[cfg(feature = "v4_12")]
11209    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11210    pub fn gtk_scroll_info_set_enable_horizontal(self_: *mut GtkScrollInfo, horizontal: gboolean);
11211    #[cfg(feature = "v4_12")]
11212    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11213    pub fn gtk_scroll_info_set_enable_vertical(self_: *mut GtkScrollInfo, vertical: gboolean);
11214    #[cfg(feature = "v4_12")]
11215    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11216    pub fn gtk_scroll_info_unref(self_: *mut GtkScrollInfo);
11217
11218    //=========================================================================
11219    // GtkTextIter
11220    //=========================================================================
11221    pub fn gtk_text_iter_get_type() -> GType;
11222    pub fn gtk_text_iter_assign(iter: *mut GtkTextIter, other: *const GtkTextIter);
11223    pub fn gtk_text_iter_backward_char(iter: *mut GtkTextIter) -> gboolean;
11224    pub fn gtk_text_iter_backward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11225    pub fn gtk_text_iter_backward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11226    pub fn gtk_text_iter_backward_cursor_positions(
11227        iter: *mut GtkTextIter,
11228        count: c_int,
11229    ) -> gboolean;
11230    pub fn gtk_text_iter_backward_find_char(
11231        iter: *mut GtkTextIter,
11232        pred: GtkTextCharPredicate,
11233        user_data: gpointer,
11234        limit: *const GtkTextIter,
11235    ) -> gboolean;
11236    pub fn gtk_text_iter_backward_line(iter: *mut GtkTextIter) -> gboolean;
11237    pub fn gtk_text_iter_backward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11238    pub fn gtk_text_iter_backward_search(
11239        iter: *const GtkTextIter,
11240        str: *const c_char,
11241        flags: GtkTextSearchFlags,
11242        match_start: *mut GtkTextIter,
11243        match_end: *mut GtkTextIter,
11244        limit: *const GtkTextIter,
11245    ) -> gboolean;
11246    pub fn gtk_text_iter_backward_sentence_start(iter: *mut GtkTextIter) -> gboolean;
11247    pub fn gtk_text_iter_backward_sentence_starts(iter: *mut GtkTextIter, count: c_int)
11248        -> gboolean;
11249    pub fn gtk_text_iter_backward_to_tag_toggle(
11250        iter: *mut GtkTextIter,
11251        tag: *mut GtkTextTag,
11252    ) -> gboolean;
11253    pub fn gtk_text_iter_backward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11254    pub fn gtk_text_iter_backward_visible_cursor_positions(
11255        iter: *mut GtkTextIter,
11256        count: c_int,
11257    ) -> gboolean;
11258    pub fn gtk_text_iter_backward_visible_line(iter: *mut GtkTextIter) -> gboolean;
11259    pub fn gtk_text_iter_backward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11260    pub fn gtk_text_iter_backward_visible_word_start(iter: *mut GtkTextIter) -> gboolean;
11261    pub fn gtk_text_iter_backward_visible_word_starts(
11262        iter: *mut GtkTextIter,
11263        count: c_int,
11264    ) -> gboolean;
11265    pub fn gtk_text_iter_backward_word_start(iter: *mut GtkTextIter) -> gboolean;
11266    pub fn gtk_text_iter_backward_word_starts(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11267    pub fn gtk_text_iter_can_insert(
11268        iter: *const GtkTextIter,
11269        default_editability: gboolean,
11270    ) -> gboolean;
11271    pub fn gtk_text_iter_compare(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> c_int;
11272    pub fn gtk_text_iter_copy(iter: *const GtkTextIter) -> *mut GtkTextIter;
11273    pub fn gtk_text_iter_editable(iter: *const GtkTextIter, default_setting: gboolean) -> gboolean;
11274    pub fn gtk_text_iter_ends_line(iter: *const GtkTextIter) -> gboolean;
11275    pub fn gtk_text_iter_ends_sentence(iter: *const GtkTextIter) -> gboolean;
11276    pub fn gtk_text_iter_ends_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11277    pub fn gtk_text_iter_ends_word(iter: *const GtkTextIter) -> gboolean;
11278    pub fn gtk_text_iter_equal(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> gboolean;
11279    pub fn gtk_text_iter_forward_char(iter: *mut GtkTextIter) -> gboolean;
11280    pub fn gtk_text_iter_forward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11281    pub fn gtk_text_iter_forward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11282    pub fn gtk_text_iter_forward_cursor_positions(iter: *mut GtkTextIter, count: c_int)
11283        -> gboolean;
11284    pub fn gtk_text_iter_forward_find_char(
11285        iter: *mut GtkTextIter,
11286        pred: GtkTextCharPredicate,
11287        user_data: gpointer,
11288        limit: *const GtkTextIter,
11289    ) -> gboolean;
11290    pub fn gtk_text_iter_forward_line(iter: *mut GtkTextIter) -> gboolean;
11291    pub fn gtk_text_iter_forward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11292    pub fn gtk_text_iter_forward_search(
11293        iter: *const GtkTextIter,
11294        str: *const c_char,
11295        flags: GtkTextSearchFlags,
11296        match_start: *mut GtkTextIter,
11297        match_end: *mut GtkTextIter,
11298        limit: *const GtkTextIter,
11299    ) -> gboolean;
11300    pub fn gtk_text_iter_forward_sentence_end(iter: *mut GtkTextIter) -> gboolean;
11301    pub fn gtk_text_iter_forward_sentence_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11302    pub fn gtk_text_iter_forward_to_end(iter: *mut GtkTextIter);
11303    pub fn gtk_text_iter_forward_to_line_end(iter: *mut GtkTextIter) -> gboolean;
11304    pub fn gtk_text_iter_forward_to_tag_toggle(
11305        iter: *mut GtkTextIter,
11306        tag: *mut GtkTextTag,
11307    ) -> gboolean;
11308    pub fn gtk_text_iter_forward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11309    pub fn gtk_text_iter_forward_visible_cursor_positions(
11310        iter: *mut GtkTextIter,
11311        count: c_int,
11312    ) -> gboolean;
11313    pub fn gtk_text_iter_forward_visible_line(iter: *mut GtkTextIter) -> gboolean;
11314    pub fn gtk_text_iter_forward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11315    pub fn gtk_text_iter_forward_visible_word_end(iter: *mut GtkTextIter) -> gboolean;
11316    pub fn gtk_text_iter_forward_visible_word_ends(
11317        iter: *mut GtkTextIter,
11318        count: c_int,
11319    ) -> gboolean;
11320    pub fn gtk_text_iter_forward_word_end(iter: *mut GtkTextIter) -> gboolean;
11321    pub fn gtk_text_iter_forward_word_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11322    pub fn gtk_text_iter_free(iter: *mut GtkTextIter);
11323    pub fn gtk_text_iter_get_buffer(iter: *const GtkTextIter) -> *mut GtkTextBuffer;
11324    pub fn gtk_text_iter_get_bytes_in_line(iter: *const GtkTextIter) -> c_int;
11325    pub fn gtk_text_iter_get_char(iter: *const GtkTextIter) -> u32;
11326    pub fn gtk_text_iter_get_chars_in_line(iter: *const GtkTextIter) -> c_int;
11327    pub fn gtk_text_iter_get_child_anchor(iter: *const GtkTextIter) -> *mut GtkTextChildAnchor;
11328    pub fn gtk_text_iter_get_language(iter: *const GtkTextIter) -> *mut pango::PangoLanguage;
11329    pub fn gtk_text_iter_get_line(iter: *const GtkTextIter) -> c_int;
11330    pub fn gtk_text_iter_get_line_index(iter: *const GtkTextIter) -> c_int;
11331    pub fn gtk_text_iter_get_line_offset(iter: *const GtkTextIter) -> c_int;
11332    pub fn gtk_text_iter_get_marks(iter: *const GtkTextIter) -> *mut glib::GSList;
11333    pub fn gtk_text_iter_get_offset(iter: *const GtkTextIter) -> c_int;
11334    pub fn gtk_text_iter_get_paintable(iter: *const GtkTextIter) -> *mut gdk::GdkPaintable;
11335    pub fn gtk_text_iter_get_slice(
11336        start: *const GtkTextIter,
11337        end: *const GtkTextIter,
11338    ) -> *mut c_char;
11339    pub fn gtk_text_iter_get_tags(iter: *const GtkTextIter) -> *mut glib::GSList;
11340    pub fn gtk_text_iter_get_text(
11341        start: *const GtkTextIter,
11342        end: *const GtkTextIter,
11343    ) -> *mut c_char;
11344    pub fn gtk_text_iter_get_toggled_tags(
11345        iter: *const GtkTextIter,
11346        toggled_on: gboolean,
11347    ) -> *mut glib::GSList;
11348    pub fn gtk_text_iter_get_visible_line_index(iter: *const GtkTextIter) -> c_int;
11349    pub fn gtk_text_iter_get_visible_line_offset(iter: *const GtkTextIter) -> c_int;
11350    pub fn gtk_text_iter_get_visible_slice(
11351        start: *const GtkTextIter,
11352        end: *const GtkTextIter,
11353    ) -> *mut c_char;
11354    pub fn gtk_text_iter_get_visible_text(
11355        start: *const GtkTextIter,
11356        end: *const GtkTextIter,
11357    ) -> *mut c_char;
11358    pub fn gtk_text_iter_has_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11359    pub fn gtk_text_iter_in_range(
11360        iter: *const GtkTextIter,
11361        start: *const GtkTextIter,
11362        end: *const GtkTextIter,
11363    ) -> gboolean;
11364    pub fn gtk_text_iter_inside_sentence(iter: *const GtkTextIter) -> gboolean;
11365    pub fn gtk_text_iter_inside_word(iter: *const GtkTextIter) -> gboolean;
11366    pub fn gtk_text_iter_is_cursor_position(iter: *const GtkTextIter) -> gboolean;
11367    pub fn gtk_text_iter_is_end(iter: *const GtkTextIter) -> gboolean;
11368    pub fn gtk_text_iter_is_start(iter: *const GtkTextIter) -> gboolean;
11369    pub fn gtk_text_iter_order(first: *mut GtkTextIter, second: *mut GtkTextIter);
11370    pub fn gtk_text_iter_set_line(iter: *mut GtkTextIter, line_number: c_int);
11371    pub fn gtk_text_iter_set_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
11372    pub fn gtk_text_iter_set_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
11373    pub fn gtk_text_iter_set_offset(iter: *mut GtkTextIter, char_offset: c_int);
11374    pub fn gtk_text_iter_set_visible_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
11375    pub fn gtk_text_iter_set_visible_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
11376    pub fn gtk_text_iter_starts_line(iter: *const GtkTextIter) -> gboolean;
11377    pub fn gtk_text_iter_starts_sentence(iter: *const GtkTextIter) -> gboolean;
11378    pub fn gtk_text_iter_starts_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11379    pub fn gtk_text_iter_starts_word(iter: *const GtkTextIter) -> gboolean;
11380    pub fn gtk_text_iter_toggles_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11381
11382    //=========================================================================
11383    // GtkTreeIter
11384    //=========================================================================
11385    pub fn gtk_tree_iter_get_type() -> GType;
11386    pub fn gtk_tree_iter_copy(iter: *mut GtkTreeIter) -> *mut GtkTreeIter;
11387    pub fn gtk_tree_iter_free(iter: *mut GtkTreeIter);
11388
11389    //=========================================================================
11390    // GtkTreePath
11391    //=========================================================================
11392    pub fn gtk_tree_path_get_type() -> GType;
11393    pub fn gtk_tree_path_new() -> *mut GtkTreePath;
11394    pub fn gtk_tree_path_new_first() -> *mut GtkTreePath;
11395    pub fn gtk_tree_path_new_from_indices(first_index: c_int, ...) -> *mut GtkTreePath;
11396    pub fn gtk_tree_path_new_from_indicesv(indices: *mut c_int, length: size_t)
11397        -> *mut GtkTreePath;
11398    pub fn gtk_tree_path_new_from_string(path: *const c_char) -> *mut GtkTreePath;
11399    pub fn gtk_tree_path_append_index(path: *mut GtkTreePath, index_: c_int);
11400    pub fn gtk_tree_path_compare(a: *const GtkTreePath, b: *const GtkTreePath) -> c_int;
11401    pub fn gtk_tree_path_copy(path: *const GtkTreePath) -> *mut GtkTreePath;
11402    pub fn gtk_tree_path_down(path: *mut GtkTreePath);
11403    pub fn gtk_tree_path_free(path: *mut GtkTreePath);
11404    pub fn gtk_tree_path_get_depth(path: *mut GtkTreePath) -> c_int;
11405    pub fn gtk_tree_path_get_indices(path: *mut GtkTreePath) -> *mut c_int;
11406    pub fn gtk_tree_path_get_indices_with_depth(
11407        path: *mut GtkTreePath,
11408        depth: *mut c_int,
11409    ) -> *mut c_int;
11410    pub fn gtk_tree_path_is_ancestor(
11411        path: *mut GtkTreePath,
11412        descendant: *mut GtkTreePath,
11413    ) -> gboolean;
11414    pub fn gtk_tree_path_is_descendant(
11415        path: *mut GtkTreePath,
11416        ancestor: *mut GtkTreePath,
11417    ) -> gboolean;
11418    pub fn gtk_tree_path_next(path: *mut GtkTreePath);
11419    pub fn gtk_tree_path_prepend_index(path: *mut GtkTreePath, index_: c_int);
11420    pub fn gtk_tree_path_prev(path: *mut GtkTreePath) -> gboolean;
11421    pub fn gtk_tree_path_to_string(path: *mut GtkTreePath) -> *mut c_char;
11422    pub fn gtk_tree_path_up(path: *mut GtkTreePath) -> gboolean;
11423
11424    //=========================================================================
11425    // GtkTreeRowReference
11426    //=========================================================================
11427    pub fn gtk_tree_row_reference_get_type() -> GType;
11428    pub fn gtk_tree_row_reference_new(
11429        model: *mut GtkTreeModel,
11430        path: *mut GtkTreePath,
11431    ) -> *mut GtkTreeRowReference;
11432    pub fn gtk_tree_row_reference_new_proxy(
11433        proxy: *mut gobject::GObject,
11434        model: *mut GtkTreeModel,
11435        path: *mut GtkTreePath,
11436    ) -> *mut GtkTreeRowReference;
11437    pub fn gtk_tree_row_reference_copy(
11438        reference: *mut GtkTreeRowReference,
11439    ) -> *mut GtkTreeRowReference;
11440    pub fn gtk_tree_row_reference_free(reference: *mut GtkTreeRowReference);
11441    pub fn gtk_tree_row_reference_get_model(
11442        reference: *mut GtkTreeRowReference,
11443    ) -> *mut GtkTreeModel;
11444    pub fn gtk_tree_row_reference_get_path(reference: *mut GtkTreeRowReference)
11445        -> *mut GtkTreePath;
11446    pub fn gtk_tree_row_reference_valid(reference: *mut GtkTreeRowReference) -> gboolean;
11447    pub fn gtk_tree_row_reference_deleted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
11448    pub fn gtk_tree_row_reference_inserted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
11449    pub fn gtk_tree_row_reference_reordered(
11450        proxy: *mut gobject::GObject,
11451        path: *mut GtkTreePath,
11452        iter: *mut GtkTreeIter,
11453        new_order: *mut c_int,
11454    );
11455
11456    //=========================================================================
11457    // GtkWidgetClass
11458    //=========================================================================
11459    pub fn gtk_widget_class_add_binding(
11460        widget_class: *mut GtkWidgetClass,
11461        keyval: c_uint,
11462        mods: gdk::GdkModifierType,
11463        callback: GtkShortcutFunc,
11464        format_string: *const c_char,
11465        ...
11466    );
11467    pub fn gtk_widget_class_add_binding_action(
11468        widget_class: *mut GtkWidgetClass,
11469        keyval: c_uint,
11470        mods: gdk::GdkModifierType,
11471        action_name: *const c_char,
11472        format_string: *const c_char,
11473        ...
11474    );
11475    pub fn gtk_widget_class_add_binding_signal(
11476        widget_class: *mut GtkWidgetClass,
11477        keyval: c_uint,
11478        mods: gdk::GdkModifierType,
11479        signal: *const c_char,
11480        format_string: *const c_char,
11481        ...
11482    );
11483    pub fn gtk_widget_class_add_shortcut(
11484        widget_class: *mut GtkWidgetClass,
11485        shortcut: *mut GtkShortcut,
11486    );
11487    pub fn gtk_widget_class_bind_template_callback_full(
11488        widget_class: *mut GtkWidgetClass,
11489        callback_name: *const c_char,
11490        callback_symbol: gobject::GCallback,
11491    );
11492    pub fn gtk_widget_class_bind_template_child_full(
11493        widget_class: *mut GtkWidgetClass,
11494        name: *const c_char,
11495        internal_child: gboolean,
11496        struct_offset: ssize_t,
11497    );
11498    pub fn gtk_widget_class_get_accessible_role(
11499        widget_class: *mut GtkWidgetClass,
11500    ) -> GtkAccessibleRole;
11501    pub fn gtk_widget_class_get_activate_signal(widget_class: *mut GtkWidgetClass) -> c_uint;
11502    pub fn gtk_widget_class_get_css_name(widget_class: *mut GtkWidgetClass) -> *const c_char;
11503    pub fn gtk_widget_class_get_layout_manager_type(widget_class: *mut GtkWidgetClass) -> GType;
11504    pub fn gtk_widget_class_install_action(
11505        widget_class: *mut GtkWidgetClass,
11506        action_name: *const c_char,
11507        parameter_type: *const c_char,
11508        activate: GtkWidgetActionActivateFunc,
11509    );
11510    pub fn gtk_widget_class_install_property_action(
11511        widget_class: *mut GtkWidgetClass,
11512        action_name: *const c_char,
11513        property_name: *const c_char,
11514    );
11515    pub fn gtk_widget_class_query_action(
11516        widget_class: *mut GtkWidgetClass,
11517        index_: c_uint,
11518        owner: *mut GType,
11519        action_name: *mut *const c_char,
11520        parameter_type: *mut *const glib::GVariantType,
11521        property_name: *mut *const c_char,
11522    ) -> gboolean;
11523    pub fn gtk_widget_class_set_accessible_role(
11524        widget_class: *mut GtkWidgetClass,
11525        accessible_role: GtkAccessibleRole,
11526    );
11527    pub fn gtk_widget_class_set_activate_signal(
11528        widget_class: *mut GtkWidgetClass,
11529        signal_id: c_uint,
11530    );
11531    pub fn gtk_widget_class_set_activate_signal_from_name(
11532        widget_class: *mut GtkWidgetClass,
11533        signal_name: *const c_char,
11534    );
11535    pub fn gtk_widget_class_set_css_name(widget_class: *mut GtkWidgetClass, name: *const c_char);
11536    pub fn gtk_widget_class_set_layout_manager_type(
11537        widget_class: *mut GtkWidgetClass,
11538        type_: GType,
11539    );
11540    pub fn gtk_widget_class_set_template(
11541        widget_class: *mut GtkWidgetClass,
11542        template_bytes: *mut glib::GBytes,
11543    );
11544    pub fn gtk_widget_class_set_template_from_resource(
11545        widget_class: *mut GtkWidgetClass,
11546        resource_name: *const c_char,
11547    );
11548    pub fn gtk_widget_class_set_template_scope(
11549        widget_class: *mut GtkWidgetClass,
11550        scope: *mut GtkBuilderScope,
11551    );
11552
11553    //=========================================================================
11554    // GtkATContext
11555    //=========================================================================
11556    pub fn gtk_at_context_get_type() -> GType;
11557    pub fn gtk_at_context_create(
11558        accessible_role: GtkAccessibleRole,
11559        accessible: *mut GtkAccessible,
11560        display: *mut gdk::GdkDisplay,
11561    ) -> *mut GtkATContext;
11562    pub fn gtk_at_context_get_accessible(self_: *mut GtkATContext) -> *mut GtkAccessible;
11563    pub fn gtk_at_context_get_accessible_role(self_: *mut GtkATContext) -> GtkAccessibleRole;
11564
11565    //=========================================================================
11566    // GtkAboutDialog
11567    //=========================================================================
11568    pub fn gtk_about_dialog_get_type() -> GType;
11569    pub fn gtk_about_dialog_new() -> *mut GtkWidget;
11570    pub fn gtk_about_dialog_add_credit_section(
11571        about: *mut GtkAboutDialog,
11572        section_name: *const c_char,
11573        people: *mut *const c_char,
11574    );
11575    pub fn gtk_about_dialog_get_artists(about: *mut GtkAboutDialog) -> *const *const c_char;
11576    pub fn gtk_about_dialog_get_authors(about: *mut GtkAboutDialog) -> *const *const c_char;
11577    pub fn gtk_about_dialog_get_comments(about: *mut GtkAboutDialog) -> *const c_char;
11578    pub fn gtk_about_dialog_get_copyright(about: *mut GtkAboutDialog) -> *const c_char;
11579    pub fn gtk_about_dialog_get_documenters(about: *mut GtkAboutDialog) -> *const *const c_char;
11580    pub fn gtk_about_dialog_get_license(about: *mut GtkAboutDialog) -> *const c_char;
11581    pub fn gtk_about_dialog_get_license_type(about: *mut GtkAboutDialog) -> GtkLicense;
11582    pub fn gtk_about_dialog_get_logo(about: *mut GtkAboutDialog) -> *mut gdk::GdkPaintable;
11583    pub fn gtk_about_dialog_get_logo_icon_name(about: *mut GtkAboutDialog) -> *const c_char;
11584    pub fn gtk_about_dialog_get_program_name(about: *mut GtkAboutDialog) -> *const c_char;
11585    pub fn gtk_about_dialog_get_system_information(about: *mut GtkAboutDialog) -> *const c_char;
11586    pub fn gtk_about_dialog_get_translator_credits(about: *mut GtkAboutDialog) -> *const c_char;
11587    pub fn gtk_about_dialog_get_version(about: *mut GtkAboutDialog) -> *const c_char;
11588    pub fn gtk_about_dialog_get_website(about: *mut GtkAboutDialog) -> *const c_char;
11589    pub fn gtk_about_dialog_get_website_label(about: *mut GtkAboutDialog) -> *const c_char;
11590    pub fn gtk_about_dialog_get_wrap_license(about: *mut GtkAboutDialog) -> gboolean;
11591    pub fn gtk_about_dialog_set_artists(about: *mut GtkAboutDialog, artists: *mut *const c_char);
11592    pub fn gtk_about_dialog_set_authors(about: *mut GtkAboutDialog, authors: *mut *const c_char);
11593    pub fn gtk_about_dialog_set_comments(about: *mut GtkAboutDialog, comments: *const c_char);
11594    pub fn gtk_about_dialog_set_copyright(about: *mut GtkAboutDialog, copyright: *const c_char);
11595    pub fn gtk_about_dialog_set_documenters(
11596        about: *mut GtkAboutDialog,
11597        documenters: *mut *const c_char,
11598    );
11599    pub fn gtk_about_dialog_set_license(about: *mut GtkAboutDialog, license: *const c_char);
11600    pub fn gtk_about_dialog_set_license_type(about: *mut GtkAboutDialog, license_type: GtkLicense);
11601    pub fn gtk_about_dialog_set_logo(about: *mut GtkAboutDialog, logo: *mut gdk::GdkPaintable);
11602    pub fn gtk_about_dialog_set_logo_icon_name(
11603        about: *mut GtkAboutDialog,
11604        icon_name: *const c_char,
11605    );
11606    pub fn gtk_about_dialog_set_program_name(about: *mut GtkAboutDialog, name: *const c_char);
11607    pub fn gtk_about_dialog_set_system_information(
11608        about: *mut GtkAboutDialog,
11609        system_information: *const c_char,
11610    );
11611    pub fn gtk_about_dialog_set_translator_credits(
11612        about: *mut GtkAboutDialog,
11613        translator_credits: *const c_char,
11614    );
11615    pub fn gtk_about_dialog_set_version(about: *mut GtkAboutDialog, version: *const c_char);
11616    pub fn gtk_about_dialog_set_website(about: *mut GtkAboutDialog, website: *const c_char);
11617    pub fn gtk_about_dialog_set_website_label(
11618        about: *mut GtkAboutDialog,
11619        website_label: *const c_char,
11620    );
11621    pub fn gtk_about_dialog_set_wrap_license(about: *mut GtkAboutDialog, wrap_license: gboolean);
11622
11623    //=========================================================================
11624    // GtkAccessibleHyperlink
11625    //=========================================================================
11626    #[cfg(feature = "v4_22")]
11627    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11628    pub fn gtk_accessible_hyperlink_get_type() -> GType;
11629    #[cfg(feature = "v4_22")]
11630    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11631    pub fn gtk_accessible_hyperlink_new(
11632        parent: *mut GtkAccessibleHypertext,
11633        index: c_uint,
11634        uri: *const c_char,
11635        bounds: *mut GtkAccessibleTextRange,
11636    ) -> *mut GtkAccessibleHyperlink;
11637    #[cfg(feature = "v4_22")]
11638    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11639    pub fn gtk_accessible_hyperlink_set_platform_state(
11640        self_: *mut GtkAccessibleHyperlink,
11641        state: GtkAccessiblePlatformState,
11642        enabled: gboolean,
11643    );
11644
11645    //=========================================================================
11646    // GtkActionBar
11647    //=========================================================================
11648    pub fn gtk_action_bar_get_type() -> GType;
11649    pub fn gtk_action_bar_new() -> *mut GtkWidget;
11650    pub fn gtk_action_bar_get_center_widget(action_bar: *mut GtkActionBar) -> *mut GtkWidget;
11651    pub fn gtk_action_bar_get_revealed(action_bar: *mut GtkActionBar) -> gboolean;
11652    pub fn gtk_action_bar_pack_end(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11653    pub fn gtk_action_bar_pack_start(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11654    pub fn gtk_action_bar_remove(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11655    pub fn gtk_action_bar_set_center_widget(
11656        action_bar: *mut GtkActionBar,
11657        center_widget: *mut GtkWidget,
11658    );
11659    pub fn gtk_action_bar_set_revealed(action_bar: *mut GtkActionBar, revealed: gboolean);
11660
11661    //=========================================================================
11662    // GtkActivateAction
11663    //=========================================================================
11664    pub fn gtk_activate_action_get_type() -> GType;
11665    pub fn gtk_activate_action_get() -> *mut GtkActivateAction;
11666
11667    //=========================================================================
11668    // GtkAdjustment
11669    //=========================================================================
11670    pub fn gtk_adjustment_get_type() -> GType;
11671    pub fn gtk_adjustment_new(
11672        value: c_double,
11673        lower: c_double,
11674        upper: c_double,
11675        step_increment: c_double,
11676        page_increment: c_double,
11677        page_size: c_double,
11678    ) -> *mut GtkAdjustment;
11679    pub fn gtk_adjustment_clamp_page(
11680        adjustment: *mut GtkAdjustment,
11681        lower: c_double,
11682        upper: c_double,
11683    );
11684    pub fn gtk_adjustment_configure(
11685        adjustment: *mut GtkAdjustment,
11686        value: c_double,
11687        lower: c_double,
11688        upper: c_double,
11689        step_increment: c_double,
11690        page_increment: c_double,
11691        page_size: c_double,
11692    );
11693    pub fn gtk_adjustment_get_lower(adjustment: *mut GtkAdjustment) -> c_double;
11694    pub fn gtk_adjustment_get_minimum_increment(adjustment: *mut GtkAdjustment) -> c_double;
11695    pub fn gtk_adjustment_get_page_increment(adjustment: *mut GtkAdjustment) -> c_double;
11696    pub fn gtk_adjustment_get_page_size(adjustment: *mut GtkAdjustment) -> c_double;
11697    pub fn gtk_adjustment_get_step_increment(adjustment: *mut GtkAdjustment) -> c_double;
11698    pub fn gtk_adjustment_get_upper(adjustment: *mut GtkAdjustment) -> c_double;
11699    pub fn gtk_adjustment_get_value(adjustment: *mut GtkAdjustment) -> c_double;
11700    pub fn gtk_adjustment_set_lower(adjustment: *mut GtkAdjustment, lower: c_double);
11701    pub fn gtk_adjustment_set_page_increment(
11702        adjustment: *mut GtkAdjustment,
11703        page_increment: c_double,
11704    );
11705    pub fn gtk_adjustment_set_page_size(adjustment: *mut GtkAdjustment, page_size: c_double);
11706    pub fn gtk_adjustment_set_step_increment(
11707        adjustment: *mut GtkAdjustment,
11708        step_increment: c_double,
11709    );
11710    pub fn gtk_adjustment_set_upper(adjustment: *mut GtkAdjustment, upper: c_double);
11711    pub fn gtk_adjustment_set_value(adjustment: *mut GtkAdjustment, value: c_double);
11712
11713    //=========================================================================
11714    // GtkAlertDialog
11715    //=========================================================================
11716    #[cfg(feature = "v4_10")]
11717    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11718    pub fn gtk_alert_dialog_get_type() -> GType;
11719    #[cfg(feature = "v4_10")]
11720    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11721    pub fn gtk_alert_dialog_new(format: *const c_char, ...) -> *mut GtkAlertDialog;
11722    #[cfg(feature = "v4_10")]
11723    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11724    pub fn gtk_alert_dialog_choose(
11725        self_: *mut GtkAlertDialog,
11726        parent: *mut GtkWindow,
11727        cancellable: *mut gio::GCancellable,
11728        callback: gio::GAsyncReadyCallback,
11729        user_data: gpointer,
11730    );
11731    #[cfg(feature = "v4_10")]
11732    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11733    pub fn gtk_alert_dialog_choose_finish(
11734        self_: *mut GtkAlertDialog,
11735        result: *mut gio::GAsyncResult,
11736        error: *mut *mut glib::GError,
11737    ) -> c_int;
11738    #[cfg(feature = "v4_10")]
11739    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11740    pub fn gtk_alert_dialog_get_buttons(self_: *mut GtkAlertDialog) -> *const *const c_char;
11741    #[cfg(feature = "v4_10")]
11742    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11743    pub fn gtk_alert_dialog_get_cancel_button(self_: *mut GtkAlertDialog) -> c_int;
11744    #[cfg(feature = "v4_10")]
11745    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11746    pub fn gtk_alert_dialog_get_default_button(self_: *mut GtkAlertDialog) -> c_int;
11747    #[cfg(feature = "v4_10")]
11748    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11749    pub fn gtk_alert_dialog_get_detail(self_: *mut GtkAlertDialog) -> *const c_char;
11750    #[cfg(feature = "v4_10")]
11751    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11752    pub fn gtk_alert_dialog_get_message(self_: *mut GtkAlertDialog) -> *const c_char;
11753    #[cfg(feature = "v4_10")]
11754    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11755    pub fn gtk_alert_dialog_get_modal(self_: *mut GtkAlertDialog) -> gboolean;
11756    #[cfg(feature = "v4_10")]
11757    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11758    pub fn gtk_alert_dialog_set_buttons(self_: *mut GtkAlertDialog, labels: *const *const c_char);
11759    #[cfg(feature = "v4_10")]
11760    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11761    pub fn gtk_alert_dialog_set_cancel_button(self_: *mut GtkAlertDialog, button: c_int);
11762    #[cfg(feature = "v4_10")]
11763    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11764    pub fn gtk_alert_dialog_set_default_button(self_: *mut GtkAlertDialog, button: c_int);
11765    #[cfg(feature = "v4_10")]
11766    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11767    pub fn gtk_alert_dialog_set_detail(self_: *mut GtkAlertDialog, detail: *const c_char);
11768    #[cfg(feature = "v4_10")]
11769    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11770    pub fn gtk_alert_dialog_set_message(self_: *mut GtkAlertDialog, message: *const c_char);
11771    #[cfg(feature = "v4_10")]
11772    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11773    pub fn gtk_alert_dialog_set_modal(self_: *mut GtkAlertDialog, modal: gboolean);
11774    #[cfg(feature = "v4_10")]
11775    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11776    pub fn gtk_alert_dialog_show(self_: *mut GtkAlertDialog, parent: *mut GtkWindow);
11777
11778    //=========================================================================
11779    // GtkAlternativeTrigger
11780    //=========================================================================
11781    pub fn gtk_alternative_trigger_get_type() -> GType;
11782    pub fn gtk_alternative_trigger_new(
11783        first: *mut GtkShortcutTrigger,
11784        second: *mut GtkShortcutTrigger,
11785    ) -> *mut GtkShortcutTrigger;
11786    pub fn gtk_alternative_trigger_get_first(
11787        self_: *mut GtkAlternativeTrigger,
11788    ) -> *mut GtkShortcutTrigger;
11789    pub fn gtk_alternative_trigger_get_second(
11790        self_: *mut GtkAlternativeTrigger,
11791    ) -> *mut GtkShortcutTrigger;
11792
11793    //=========================================================================
11794    // GtkAnyFilter
11795    //=========================================================================
11796    pub fn gtk_any_filter_get_type() -> GType;
11797    pub fn gtk_any_filter_new() -> *mut GtkAnyFilter;
11798
11799    //=========================================================================
11800    // GtkAppChooserButton
11801    //=========================================================================
11802    pub fn gtk_app_chooser_button_get_type() -> GType;
11803    pub fn gtk_app_chooser_button_new(content_type: *const c_char) -> *mut GtkWidget;
11804    pub fn gtk_app_chooser_button_append_custom_item(
11805        self_: *mut GtkAppChooserButton,
11806        name: *const c_char,
11807        label: *const c_char,
11808        icon: *mut gio::GIcon,
11809    );
11810    pub fn gtk_app_chooser_button_append_separator(self_: *mut GtkAppChooserButton);
11811    pub fn gtk_app_chooser_button_get_heading(self_: *mut GtkAppChooserButton) -> *const c_char;
11812    pub fn gtk_app_chooser_button_get_modal(self_: *mut GtkAppChooserButton) -> gboolean;
11813    pub fn gtk_app_chooser_button_get_show_default_item(
11814        self_: *mut GtkAppChooserButton,
11815    ) -> gboolean;
11816    pub fn gtk_app_chooser_button_get_show_dialog_item(self_: *mut GtkAppChooserButton)
11817        -> gboolean;
11818    pub fn gtk_app_chooser_button_set_active_custom_item(
11819        self_: *mut GtkAppChooserButton,
11820        name: *const c_char,
11821    );
11822    pub fn gtk_app_chooser_button_set_heading(
11823        self_: *mut GtkAppChooserButton,
11824        heading: *const c_char,
11825    );
11826    pub fn gtk_app_chooser_button_set_modal(self_: *mut GtkAppChooserButton, modal: gboolean);
11827    pub fn gtk_app_chooser_button_set_show_default_item(
11828        self_: *mut GtkAppChooserButton,
11829        setting: gboolean,
11830    );
11831    pub fn gtk_app_chooser_button_set_show_dialog_item(
11832        self_: *mut GtkAppChooserButton,
11833        setting: gboolean,
11834    );
11835
11836    //=========================================================================
11837    // GtkAppChooserDialog
11838    //=========================================================================
11839    pub fn gtk_app_chooser_dialog_get_type() -> GType;
11840    pub fn gtk_app_chooser_dialog_new(
11841        parent: *mut GtkWindow,
11842        flags: GtkDialogFlags,
11843        file: *mut gio::GFile,
11844    ) -> *mut GtkWidget;
11845    pub fn gtk_app_chooser_dialog_new_for_content_type(
11846        parent: *mut GtkWindow,
11847        flags: GtkDialogFlags,
11848        content_type: *const c_char,
11849    ) -> *mut GtkWidget;
11850    pub fn gtk_app_chooser_dialog_get_heading(self_: *mut GtkAppChooserDialog) -> *const c_char;
11851    pub fn gtk_app_chooser_dialog_get_widget(self_: *mut GtkAppChooserDialog) -> *mut GtkWidget;
11852    pub fn gtk_app_chooser_dialog_set_heading(
11853        self_: *mut GtkAppChooserDialog,
11854        heading: *const c_char,
11855    );
11856
11857    //=========================================================================
11858    // GtkAppChooserWidget
11859    //=========================================================================
11860    pub fn gtk_app_chooser_widget_get_type() -> GType;
11861    pub fn gtk_app_chooser_widget_new(content_type: *const c_char) -> *mut GtkWidget;
11862    pub fn gtk_app_chooser_widget_get_default_text(
11863        self_: *mut GtkAppChooserWidget,
11864    ) -> *const c_char;
11865    pub fn gtk_app_chooser_widget_get_show_all(self_: *mut GtkAppChooserWidget) -> gboolean;
11866    pub fn gtk_app_chooser_widget_get_show_default(self_: *mut GtkAppChooserWidget) -> gboolean;
11867    pub fn gtk_app_chooser_widget_get_show_fallback(self_: *mut GtkAppChooserWidget) -> gboolean;
11868    pub fn gtk_app_chooser_widget_get_show_other(self_: *mut GtkAppChooserWidget) -> gboolean;
11869    pub fn gtk_app_chooser_widget_get_show_recommended(self_: *mut GtkAppChooserWidget)
11870        -> gboolean;
11871    pub fn gtk_app_chooser_widget_set_default_text(
11872        self_: *mut GtkAppChooserWidget,
11873        text: *const c_char,
11874    );
11875    pub fn gtk_app_chooser_widget_set_show_all(self_: *mut GtkAppChooserWidget, setting: gboolean);
11876    pub fn gtk_app_chooser_widget_set_show_default(
11877        self_: *mut GtkAppChooserWidget,
11878        setting: gboolean,
11879    );
11880    pub fn gtk_app_chooser_widget_set_show_fallback(
11881        self_: *mut GtkAppChooserWidget,
11882        setting: gboolean,
11883    );
11884    pub fn gtk_app_chooser_widget_set_show_other(
11885        self_: *mut GtkAppChooserWidget,
11886        setting: gboolean,
11887    );
11888    pub fn gtk_app_chooser_widget_set_show_recommended(
11889        self_: *mut GtkAppChooserWidget,
11890        setting: gboolean,
11891    );
11892
11893    //=========================================================================
11894    // GtkApplication
11895    //=========================================================================
11896    pub fn gtk_application_get_type() -> GType;
11897    pub fn gtk_application_new(
11898        application_id: *const c_char,
11899        flags: gio::GApplicationFlags,
11900    ) -> *mut GtkApplication;
11901    pub fn gtk_application_add_window(application: *mut GtkApplication, window: *mut GtkWindow);
11902    #[cfg(feature = "v4_22")]
11903    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11904    pub fn gtk_application_forget(application: *mut GtkApplication);
11905    pub fn gtk_application_get_accels_for_action(
11906        application: *mut GtkApplication,
11907        detailed_action_name: *const c_char,
11908    ) -> *mut *mut c_char;
11909    pub fn gtk_application_get_actions_for_accel(
11910        application: *mut GtkApplication,
11911        accel: *const c_char,
11912    ) -> *mut *mut c_char;
11913    pub fn gtk_application_get_active_window(application: *mut GtkApplication) -> *mut GtkWindow;
11914    pub fn gtk_application_get_menu_by_id(
11915        application: *mut GtkApplication,
11916        id: *const c_char,
11917    ) -> *mut gio::GMenu;
11918    pub fn gtk_application_get_menubar(application: *mut GtkApplication) -> *mut gio::GMenuModel;
11919    pub fn gtk_application_get_window_by_id(
11920        application: *mut GtkApplication,
11921        id: c_uint,
11922    ) -> *mut GtkWindow;
11923    pub fn gtk_application_get_windows(application: *mut GtkApplication) -> *mut glib::GList;
11924    pub fn gtk_application_inhibit(
11925        application: *mut GtkApplication,
11926        window: *mut GtkWindow,
11927        flags: GtkApplicationInhibitFlags,
11928        reason: *const c_char,
11929    ) -> c_uint;
11930    pub fn gtk_application_list_action_descriptions(
11931        application: *mut GtkApplication,
11932    ) -> *mut *mut c_char;
11933    pub fn gtk_application_remove_window(application: *mut GtkApplication, window: *mut GtkWindow);
11934    #[cfg(feature = "v4_22")]
11935    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11936    pub fn gtk_application_save(application: *mut GtkApplication);
11937    pub fn gtk_application_set_accels_for_action(
11938        application: *mut GtkApplication,
11939        detailed_action_name: *const c_char,
11940        accels: *const *const c_char,
11941    );
11942    pub fn gtk_application_set_menubar(
11943        application: *mut GtkApplication,
11944        menubar: *mut gio::GMenuModel,
11945    );
11946    pub fn gtk_application_uninhibit(application: *mut GtkApplication, cookie: c_uint);
11947
11948    //=========================================================================
11949    // GtkApplicationWindow
11950    //=========================================================================
11951    pub fn gtk_application_window_get_type() -> GType;
11952    pub fn gtk_application_window_new(application: *mut GtkApplication) -> *mut GtkWidget;
11953    pub fn gtk_application_window_get_help_overlay(
11954        window: *mut GtkApplicationWindow,
11955    ) -> *mut GtkShortcutsWindow;
11956    pub fn gtk_application_window_get_id(window: *mut GtkApplicationWindow) -> c_uint;
11957    pub fn gtk_application_window_get_show_menubar(window: *mut GtkApplicationWindow) -> gboolean;
11958    pub fn gtk_application_window_set_help_overlay(
11959        window: *mut GtkApplicationWindow,
11960        help_overlay: *mut GtkShortcutsWindow,
11961    );
11962    pub fn gtk_application_window_set_show_menubar(
11963        window: *mut GtkApplicationWindow,
11964        show_menubar: gboolean,
11965    );
11966
11967    //=========================================================================
11968    // GtkAspectFrame
11969    //=========================================================================
11970    pub fn gtk_aspect_frame_get_type() -> GType;
11971    pub fn gtk_aspect_frame_new(
11972        xalign: c_float,
11973        yalign: c_float,
11974        ratio: c_float,
11975        obey_child: gboolean,
11976    ) -> *mut GtkWidget;
11977    pub fn gtk_aspect_frame_get_child(self_: *mut GtkAspectFrame) -> *mut GtkWidget;
11978    pub fn gtk_aspect_frame_get_obey_child(self_: *mut GtkAspectFrame) -> gboolean;
11979    pub fn gtk_aspect_frame_get_ratio(self_: *mut GtkAspectFrame) -> c_float;
11980    pub fn gtk_aspect_frame_get_xalign(self_: *mut GtkAspectFrame) -> c_float;
11981    pub fn gtk_aspect_frame_get_yalign(self_: *mut GtkAspectFrame) -> c_float;
11982    pub fn gtk_aspect_frame_set_child(self_: *mut GtkAspectFrame, child: *mut GtkWidget);
11983    pub fn gtk_aspect_frame_set_obey_child(self_: *mut GtkAspectFrame, obey_child: gboolean);
11984    pub fn gtk_aspect_frame_set_ratio(self_: *mut GtkAspectFrame, ratio: c_float);
11985    pub fn gtk_aspect_frame_set_xalign(self_: *mut GtkAspectFrame, xalign: c_float);
11986    pub fn gtk_aspect_frame_set_yalign(self_: *mut GtkAspectFrame, yalign: c_float);
11987
11988    //=========================================================================
11989    // GtkAssistant
11990    //=========================================================================
11991    pub fn gtk_assistant_get_type() -> GType;
11992    pub fn gtk_assistant_new() -> *mut GtkWidget;
11993    pub fn gtk_assistant_add_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
11994    pub fn gtk_assistant_append_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
11995    pub fn gtk_assistant_commit(assistant: *mut GtkAssistant);
11996    pub fn gtk_assistant_get_current_page(assistant: *mut GtkAssistant) -> c_int;
11997    pub fn gtk_assistant_get_n_pages(assistant: *mut GtkAssistant) -> c_int;
11998    pub fn gtk_assistant_get_nth_page(
11999        assistant: *mut GtkAssistant,
12000        page_num: c_int,
12001    ) -> *mut GtkWidget;
12002    pub fn gtk_assistant_get_page(
12003        assistant: *mut GtkAssistant,
12004        child: *mut GtkWidget,
12005    ) -> *mut GtkAssistantPage;
12006    pub fn gtk_assistant_get_page_complete(
12007        assistant: *mut GtkAssistant,
12008        page: *mut GtkWidget,
12009    ) -> gboolean;
12010    pub fn gtk_assistant_get_page_title(
12011        assistant: *mut GtkAssistant,
12012        page: *mut GtkWidget,
12013    ) -> *const c_char;
12014    pub fn gtk_assistant_get_page_type(
12015        assistant: *mut GtkAssistant,
12016        page: *mut GtkWidget,
12017    ) -> GtkAssistantPageType;
12018    pub fn gtk_assistant_get_pages(assistant: *mut GtkAssistant) -> *mut gio::GListModel;
12019    pub fn gtk_assistant_insert_page(
12020        assistant: *mut GtkAssistant,
12021        page: *mut GtkWidget,
12022        position: c_int,
12023    ) -> c_int;
12024    pub fn gtk_assistant_next_page(assistant: *mut GtkAssistant);
12025    pub fn gtk_assistant_prepend_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
12026    pub fn gtk_assistant_previous_page(assistant: *mut GtkAssistant);
12027    pub fn gtk_assistant_remove_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
12028    pub fn gtk_assistant_remove_page(assistant: *mut GtkAssistant, page_num: c_int);
12029    pub fn gtk_assistant_set_current_page(assistant: *mut GtkAssistant, page_num: c_int);
12030    pub fn gtk_assistant_set_forward_page_func(
12031        assistant: *mut GtkAssistant,
12032        page_func: GtkAssistantPageFunc,
12033        data: gpointer,
12034        destroy: glib::GDestroyNotify,
12035    );
12036    pub fn gtk_assistant_set_page_complete(
12037        assistant: *mut GtkAssistant,
12038        page: *mut GtkWidget,
12039        complete: gboolean,
12040    );
12041    pub fn gtk_assistant_set_page_title(
12042        assistant: *mut GtkAssistant,
12043        page: *mut GtkWidget,
12044        title: *const c_char,
12045    );
12046    pub fn gtk_assistant_set_page_type(
12047        assistant: *mut GtkAssistant,
12048        page: *mut GtkWidget,
12049        type_: GtkAssistantPageType,
12050    );
12051    pub fn gtk_assistant_update_buttons_state(assistant: *mut GtkAssistant);
12052
12053    //=========================================================================
12054    // GtkAssistantPage
12055    //=========================================================================
12056    pub fn gtk_assistant_page_get_type() -> GType;
12057    pub fn gtk_assistant_page_get_child(page: *mut GtkAssistantPage) -> *mut GtkWidget;
12058
12059    //=========================================================================
12060    // GtkBinLayout
12061    //=========================================================================
12062    pub fn gtk_bin_layout_get_type() -> GType;
12063    pub fn gtk_bin_layout_new() -> *mut GtkLayoutManager;
12064
12065    //=========================================================================
12066    // GtkBookmarkList
12067    //=========================================================================
12068    pub fn gtk_bookmark_list_get_type() -> GType;
12069    pub fn gtk_bookmark_list_new(
12070        filename: *const c_char,
12071        attributes: *const c_char,
12072    ) -> *mut GtkBookmarkList;
12073    pub fn gtk_bookmark_list_get_attributes(self_: *mut GtkBookmarkList) -> *const c_char;
12074    pub fn gtk_bookmark_list_get_filename(self_: *mut GtkBookmarkList) -> *const c_char;
12075    pub fn gtk_bookmark_list_get_io_priority(self_: *mut GtkBookmarkList) -> c_int;
12076    pub fn gtk_bookmark_list_is_loading(self_: *mut GtkBookmarkList) -> gboolean;
12077    pub fn gtk_bookmark_list_set_attributes(self_: *mut GtkBookmarkList, attributes: *const c_char);
12078    pub fn gtk_bookmark_list_set_io_priority(self_: *mut GtkBookmarkList, io_priority: c_int);
12079
12080    //=========================================================================
12081    // GtkBoolFilter
12082    //=========================================================================
12083    pub fn gtk_bool_filter_get_type() -> GType;
12084    pub fn gtk_bool_filter_new(expression: *mut GtkExpression) -> *mut GtkBoolFilter;
12085    pub fn gtk_bool_filter_get_expression(self_: *mut GtkBoolFilter) -> *mut GtkExpression;
12086    pub fn gtk_bool_filter_get_invert(self_: *mut GtkBoolFilter) -> gboolean;
12087    pub fn gtk_bool_filter_set_expression(
12088        self_: *mut GtkBoolFilter,
12089        expression: *mut GtkExpression,
12090    );
12091    pub fn gtk_bool_filter_set_invert(self_: *mut GtkBoolFilter, invert: gboolean);
12092
12093    //=========================================================================
12094    // GtkBox
12095    //=========================================================================
12096    pub fn gtk_box_get_type() -> GType;
12097    pub fn gtk_box_new(orientation: GtkOrientation, spacing: c_int) -> *mut GtkWidget;
12098    pub fn gtk_box_append(box_: *mut GtkBox, child: *mut GtkWidget);
12099    #[cfg(feature = "v4_12")]
12100    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12101    pub fn gtk_box_get_baseline_child(box_: *mut GtkBox) -> c_int;
12102    pub fn gtk_box_get_baseline_position(box_: *mut GtkBox) -> GtkBaselinePosition;
12103    pub fn gtk_box_get_homogeneous(box_: *mut GtkBox) -> gboolean;
12104    pub fn gtk_box_get_spacing(box_: *mut GtkBox) -> c_int;
12105    pub fn gtk_box_insert_child_after(
12106        box_: *mut GtkBox,
12107        child: *mut GtkWidget,
12108        sibling: *mut GtkWidget,
12109    );
12110    pub fn gtk_box_prepend(box_: *mut GtkBox, child: *mut GtkWidget);
12111    pub fn gtk_box_remove(box_: *mut GtkBox, child: *mut GtkWidget);
12112    pub fn gtk_box_reorder_child_after(
12113        box_: *mut GtkBox,
12114        child: *mut GtkWidget,
12115        sibling: *mut GtkWidget,
12116    );
12117    #[cfg(feature = "v4_12")]
12118    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12119    pub fn gtk_box_set_baseline_child(box_: *mut GtkBox, child: c_int);
12120    pub fn gtk_box_set_baseline_position(box_: *mut GtkBox, position: GtkBaselinePosition);
12121    pub fn gtk_box_set_homogeneous(box_: *mut GtkBox, homogeneous: gboolean);
12122    pub fn gtk_box_set_spacing(box_: *mut GtkBox, spacing: c_int);
12123
12124    //=========================================================================
12125    // GtkBoxLayout
12126    //=========================================================================
12127    pub fn gtk_box_layout_get_type() -> GType;
12128    pub fn gtk_box_layout_new(orientation: GtkOrientation) -> *mut GtkLayoutManager;
12129    #[cfg(feature = "v4_12")]
12130    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12131    pub fn gtk_box_layout_get_baseline_child(box_layout: *mut GtkBoxLayout) -> c_int;
12132    pub fn gtk_box_layout_get_baseline_position(
12133        box_layout: *mut GtkBoxLayout,
12134    ) -> GtkBaselinePosition;
12135    pub fn gtk_box_layout_get_homogeneous(box_layout: *mut GtkBoxLayout) -> gboolean;
12136    pub fn gtk_box_layout_get_spacing(box_layout: *mut GtkBoxLayout) -> c_uint;
12137    #[cfg(feature = "v4_12")]
12138    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12139    pub fn gtk_box_layout_set_baseline_child(box_layout: *mut GtkBoxLayout, child: c_int);
12140    pub fn gtk_box_layout_set_baseline_position(
12141        box_layout: *mut GtkBoxLayout,
12142        position: GtkBaselinePosition,
12143    );
12144    pub fn gtk_box_layout_set_homogeneous(box_layout: *mut GtkBoxLayout, homogeneous: gboolean);
12145    pub fn gtk_box_layout_set_spacing(box_layout: *mut GtkBoxLayout, spacing: c_uint);
12146
12147    //=========================================================================
12148    // GtkBuilder
12149    //=========================================================================
12150    pub fn gtk_builder_get_type() -> GType;
12151    pub fn gtk_builder_new() -> *mut GtkBuilder;
12152    pub fn gtk_builder_new_from_file(filename: *const c_char) -> *mut GtkBuilder;
12153    pub fn gtk_builder_new_from_resource(resource_path: *const c_char) -> *mut GtkBuilder;
12154    pub fn gtk_builder_new_from_string(string: *const c_char, length: ssize_t) -> *mut GtkBuilder;
12155    pub fn gtk_builder_add_from_file(
12156        builder: *mut GtkBuilder,
12157        filename: *const c_char,
12158        error: *mut *mut glib::GError,
12159    ) -> gboolean;
12160    pub fn gtk_builder_add_from_resource(
12161        builder: *mut GtkBuilder,
12162        resource_path: *const c_char,
12163        error: *mut *mut glib::GError,
12164    ) -> gboolean;
12165    pub fn gtk_builder_add_from_string(
12166        builder: *mut GtkBuilder,
12167        buffer: *const c_char,
12168        length: ssize_t,
12169        error: *mut *mut glib::GError,
12170    ) -> gboolean;
12171    pub fn gtk_builder_add_objects_from_file(
12172        builder: *mut GtkBuilder,
12173        filename: *const c_char,
12174        object_ids: *mut *const c_char,
12175        error: *mut *mut glib::GError,
12176    ) -> gboolean;
12177    pub fn gtk_builder_add_objects_from_resource(
12178        builder: *mut GtkBuilder,
12179        resource_path: *const c_char,
12180        object_ids: *mut *const c_char,
12181        error: *mut *mut glib::GError,
12182    ) -> gboolean;
12183    pub fn gtk_builder_add_objects_from_string(
12184        builder: *mut GtkBuilder,
12185        buffer: *const c_char,
12186        length: ssize_t,
12187        object_ids: *mut *const c_char,
12188        error: *mut *mut glib::GError,
12189    ) -> gboolean;
12190    pub fn gtk_builder_create_closure(
12191        builder: *mut GtkBuilder,
12192        function_name: *const c_char,
12193        flags: GtkBuilderClosureFlags,
12194        object: *mut gobject::GObject,
12195        error: *mut *mut glib::GError,
12196    ) -> *mut gobject::GClosure;
12197    pub fn gtk_builder_expose_object(
12198        builder: *mut GtkBuilder,
12199        name: *const c_char,
12200        object: *mut gobject::GObject,
12201    );
12202    pub fn gtk_builder_extend_with_template(
12203        builder: *mut GtkBuilder,
12204        object: *mut gobject::GObject,
12205        template_type: GType,
12206        buffer: *const c_char,
12207        length: ssize_t,
12208        error: *mut *mut glib::GError,
12209    ) -> gboolean;
12210    pub fn gtk_builder_get_current_object(builder: *mut GtkBuilder) -> *mut gobject::GObject;
12211    pub fn gtk_builder_get_object(
12212        builder: *mut GtkBuilder,
12213        name: *const c_char,
12214    ) -> *mut gobject::GObject;
12215    pub fn gtk_builder_get_objects(builder: *mut GtkBuilder) -> *mut glib::GSList;
12216    pub fn gtk_builder_get_scope(builder: *mut GtkBuilder) -> *mut GtkBuilderScope;
12217    pub fn gtk_builder_get_translation_domain(builder: *mut GtkBuilder) -> *const c_char;
12218    pub fn gtk_builder_get_type_from_name(
12219        builder: *mut GtkBuilder,
12220        type_name: *const c_char,
12221    ) -> GType;
12222    pub fn gtk_builder_set_current_object(
12223        builder: *mut GtkBuilder,
12224        current_object: *mut gobject::GObject,
12225    );
12226    pub fn gtk_builder_set_scope(builder: *mut GtkBuilder, scope: *mut GtkBuilderScope);
12227    pub fn gtk_builder_set_translation_domain(builder: *mut GtkBuilder, domain: *const c_char);
12228    pub fn gtk_builder_value_from_string(
12229        builder: *mut GtkBuilder,
12230        pspec: *mut gobject::GParamSpec,
12231        string: *const c_char,
12232        value: *mut gobject::GValue,
12233        error: *mut *mut glib::GError,
12234    ) -> gboolean;
12235    pub fn gtk_builder_value_from_string_type(
12236        builder: *mut GtkBuilder,
12237        type_: GType,
12238        string: *const c_char,
12239        value: *mut gobject::GValue,
12240        error: *mut *mut glib::GError,
12241    ) -> gboolean;
12242
12243    //=========================================================================
12244    // GtkBuilderCScope
12245    //=========================================================================
12246    pub fn gtk_builder_cscope_get_type() -> GType;
12247    pub fn gtk_builder_cscope_new() -> *mut GtkBuilderCScope;
12248    pub fn gtk_builder_cscope_add_callback_symbol(
12249        self_: *mut GtkBuilderCScope,
12250        callback_name: *const c_char,
12251        callback_symbol: gobject::GCallback,
12252    );
12253    pub fn gtk_builder_cscope_add_callback_symbols(
12254        self_: *mut GtkBuilderCScope,
12255        first_callback_name: *const c_char,
12256        first_callback_symbol: gobject::GCallback,
12257        ...
12258    );
12259    pub fn gtk_builder_cscope_lookup_callback_symbol(
12260        self_: *mut GtkBuilderCScope,
12261        callback_name: *const c_char,
12262    ) -> gobject::GCallback;
12263
12264    //=========================================================================
12265    // GtkBuilderListItemFactory
12266    //=========================================================================
12267    pub fn gtk_builder_list_item_factory_get_type() -> GType;
12268    pub fn gtk_builder_list_item_factory_new_from_bytes(
12269        scope: *mut GtkBuilderScope,
12270        bytes: *mut glib::GBytes,
12271    ) -> *mut GtkListItemFactory;
12272    pub fn gtk_builder_list_item_factory_new_from_resource(
12273        scope: *mut GtkBuilderScope,
12274        resource_path: *const c_char,
12275    ) -> *mut GtkListItemFactory;
12276    pub fn gtk_builder_list_item_factory_get_bytes(
12277        self_: *mut GtkBuilderListItemFactory,
12278    ) -> *mut glib::GBytes;
12279    pub fn gtk_builder_list_item_factory_get_resource(
12280        self_: *mut GtkBuilderListItemFactory,
12281    ) -> *const c_char;
12282    pub fn gtk_builder_list_item_factory_get_scope(
12283        self_: *mut GtkBuilderListItemFactory,
12284    ) -> *mut GtkBuilderScope;
12285
12286    //=========================================================================
12287    // GtkButton
12288    //=========================================================================
12289    pub fn gtk_button_get_type() -> GType;
12290    pub fn gtk_button_new() -> *mut GtkWidget;
12291    pub fn gtk_button_new_from_icon_name(icon_name: *const c_char) -> *mut GtkWidget;
12292    pub fn gtk_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
12293    pub fn gtk_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
12294    #[cfg(feature = "v4_12")]
12295    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12296    pub fn gtk_button_get_can_shrink(button: *mut GtkButton) -> gboolean;
12297    pub fn gtk_button_get_child(button: *mut GtkButton) -> *mut GtkWidget;
12298    pub fn gtk_button_get_has_frame(button: *mut GtkButton) -> gboolean;
12299    pub fn gtk_button_get_icon_name(button: *mut GtkButton) -> *const c_char;
12300    pub fn gtk_button_get_label(button: *mut GtkButton) -> *const c_char;
12301    pub fn gtk_button_get_use_underline(button: *mut GtkButton) -> gboolean;
12302    #[cfg(feature = "v4_12")]
12303    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12304    pub fn gtk_button_set_can_shrink(button: *mut GtkButton, can_shrink: gboolean);
12305    pub fn gtk_button_set_child(button: *mut GtkButton, child: *mut GtkWidget);
12306    pub fn gtk_button_set_has_frame(button: *mut GtkButton, has_frame: gboolean);
12307    pub fn gtk_button_set_icon_name(button: *mut GtkButton, icon_name: *const c_char);
12308    pub fn gtk_button_set_label(button: *mut GtkButton, label: *const c_char);
12309    pub fn gtk_button_set_use_underline(button: *mut GtkButton, use_underline: gboolean);
12310
12311    //=========================================================================
12312    // GtkCClosureExpression
12313    //=========================================================================
12314    pub fn gtk_cclosure_expression_get_type() -> GType;
12315    pub fn gtk_cclosure_expression_new(
12316        value_type: GType,
12317        marshal: gobject::GClosureMarshal,
12318        n_params: c_uint,
12319        params: *mut *mut GtkExpression,
12320        callback_func: gobject::GCallback,
12321        user_data: gpointer,
12322        user_destroy: gobject::GClosureNotify,
12323    ) -> *mut GtkCClosureExpression;
12324
12325    //=========================================================================
12326    // GtkCalendar
12327    //=========================================================================
12328    pub fn gtk_calendar_get_type() -> GType;
12329    pub fn gtk_calendar_new() -> *mut GtkWidget;
12330    pub fn gtk_calendar_clear_marks(calendar: *mut GtkCalendar);
12331    pub fn gtk_calendar_get_date(self_: *mut GtkCalendar) -> *mut glib::GDateTime;
12332    #[cfg(feature = "v4_14")]
12333    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12334    pub fn gtk_calendar_get_day(self_: *mut GtkCalendar) -> c_int;
12335    pub fn gtk_calendar_get_day_is_marked(calendar: *mut GtkCalendar, day: c_uint) -> gboolean;
12336    #[cfg(feature = "v4_14")]
12337    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12338    pub fn gtk_calendar_get_month(self_: *mut GtkCalendar) -> c_int;
12339    pub fn gtk_calendar_get_show_day_names(self_: *mut GtkCalendar) -> gboolean;
12340    pub fn gtk_calendar_get_show_heading(self_: *mut GtkCalendar) -> gboolean;
12341    pub fn gtk_calendar_get_show_week_numbers(self_: *mut GtkCalendar) -> gboolean;
12342    #[cfg(feature = "v4_14")]
12343    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12344    pub fn gtk_calendar_get_year(self_: *mut GtkCalendar) -> c_int;
12345    pub fn gtk_calendar_mark_day(calendar: *mut GtkCalendar, day: c_uint);
12346    pub fn gtk_calendar_select_day(self_: *mut GtkCalendar, date: *mut glib::GDateTime);
12347    #[cfg(feature = "v4_20")]
12348    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
12349    pub fn gtk_calendar_set_date(self_: *mut GtkCalendar, date: *mut glib::GDateTime);
12350    #[cfg(feature = "v4_14")]
12351    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12352    pub fn gtk_calendar_set_day(self_: *mut GtkCalendar, day: c_int);
12353    #[cfg(feature = "v4_14")]
12354    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12355    pub fn gtk_calendar_set_month(self_: *mut GtkCalendar, month: c_int);
12356    pub fn gtk_calendar_set_show_day_names(self_: *mut GtkCalendar, value: gboolean);
12357    pub fn gtk_calendar_set_show_heading(self_: *mut GtkCalendar, value: gboolean);
12358    pub fn gtk_calendar_set_show_week_numbers(self_: *mut GtkCalendar, value: gboolean);
12359    #[cfg(feature = "v4_14")]
12360    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12361    pub fn gtk_calendar_set_year(self_: *mut GtkCalendar, year: c_int);
12362    pub fn gtk_calendar_unmark_day(calendar: *mut GtkCalendar, day: c_uint);
12363
12364    //=========================================================================
12365    // GtkCallbackAction
12366    //=========================================================================
12367    pub fn gtk_callback_action_get_type() -> GType;
12368    pub fn gtk_callback_action_new(
12369        callback: GtkShortcutFunc,
12370        data: gpointer,
12371        destroy: glib::GDestroyNotify,
12372    ) -> *mut GtkCallbackAction;
12373
12374    //=========================================================================
12375    // GtkCellArea
12376    //=========================================================================
12377    pub fn gtk_cell_area_get_type() -> GType;
12378    pub fn gtk_cell_area_activate(
12379        area: *mut GtkCellArea,
12380        context: *mut GtkCellAreaContext,
12381        widget: *mut GtkWidget,
12382        cell_area: *const gdk::GdkRectangle,
12383        flags: GtkCellRendererState,
12384        edit_only: gboolean,
12385    ) -> gboolean;
12386    pub fn gtk_cell_area_activate_cell(
12387        area: *mut GtkCellArea,
12388        widget: *mut GtkWidget,
12389        renderer: *mut GtkCellRenderer,
12390        event: *mut gdk::GdkEvent,
12391        cell_area: *const gdk::GdkRectangle,
12392        flags: GtkCellRendererState,
12393    ) -> gboolean;
12394    pub fn gtk_cell_area_add(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12395    pub fn gtk_cell_area_add_focus_sibling(
12396        area: *mut GtkCellArea,
12397        renderer: *mut GtkCellRenderer,
12398        sibling: *mut GtkCellRenderer,
12399    );
12400    pub fn gtk_cell_area_add_with_properties(
12401        area: *mut GtkCellArea,
12402        renderer: *mut GtkCellRenderer,
12403        first_prop_name: *const c_char,
12404        ...
12405    );
12406    pub fn gtk_cell_area_apply_attributes(
12407        area: *mut GtkCellArea,
12408        tree_model: *mut GtkTreeModel,
12409        iter: *mut GtkTreeIter,
12410        is_expander: gboolean,
12411        is_expanded: gboolean,
12412    );
12413    pub fn gtk_cell_area_attribute_connect(
12414        area: *mut GtkCellArea,
12415        renderer: *mut GtkCellRenderer,
12416        attribute: *const c_char,
12417        column: c_int,
12418    );
12419    pub fn gtk_cell_area_attribute_disconnect(
12420        area: *mut GtkCellArea,
12421        renderer: *mut GtkCellRenderer,
12422        attribute: *const c_char,
12423    );
12424    pub fn gtk_cell_area_attribute_get_column(
12425        area: *mut GtkCellArea,
12426        renderer: *mut GtkCellRenderer,
12427        attribute: *const c_char,
12428    ) -> c_int;
12429    pub fn gtk_cell_area_cell_get(
12430        area: *mut GtkCellArea,
12431        renderer: *mut GtkCellRenderer,
12432        first_prop_name: *const c_char,
12433        ...
12434    );
12435    pub fn gtk_cell_area_cell_get_property(
12436        area: *mut GtkCellArea,
12437        renderer: *mut GtkCellRenderer,
12438        property_name: *const c_char,
12439        value: *mut gobject::GValue,
12440    );
12441    //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);
12442    pub fn gtk_cell_area_cell_set(
12443        area: *mut GtkCellArea,
12444        renderer: *mut GtkCellRenderer,
12445        first_prop_name: *const c_char,
12446        ...
12447    );
12448    pub fn gtk_cell_area_cell_set_property(
12449        area: *mut GtkCellArea,
12450        renderer: *mut GtkCellRenderer,
12451        property_name: *const c_char,
12452        value: *const gobject::GValue,
12453    );
12454    //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);
12455    pub fn gtk_cell_area_copy_context(
12456        area: *mut GtkCellArea,
12457        context: *mut GtkCellAreaContext,
12458    ) -> *mut GtkCellAreaContext;
12459    pub fn gtk_cell_area_create_context(area: *mut GtkCellArea) -> *mut GtkCellAreaContext;
12460    pub fn gtk_cell_area_event(
12461        area: *mut GtkCellArea,
12462        context: *mut GtkCellAreaContext,
12463        widget: *mut GtkWidget,
12464        event: *mut gdk::GdkEvent,
12465        cell_area: *const gdk::GdkRectangle,
12466        flags: GtkCellRendererState,
12467    ) -> c_int;
12468    pub fn gtk_cell_area_focus(area: *mut GtkCellArea, direction: GtkDirectionType) -> gboolean;
12469    pub fn gtk_cell_area_foreach(
12470        area: *mut GtkCellArea,
12471        callback: GtkCellCallback,
12472        callback_data: gpointer,
12473    );
12474    pub fn gtk_cell_area_foreach_alloc(
12475        area: *mut GtkCellArea,
12476        context: *mut GtkCellAreaContext,
12477        widget: *mut GtkWidget,
12478        cell_area: *const gdk::GdkRectangle,
12479        background_area: *const gdk::GdkRectangle,
12480        callback: GtkCellAllocCallback,
12481        callback_data: gpointer,
12482    );
12483    pub fn gtk_cell_area_get_cell_allocation(
12484        area: *mut GtkCellArea,
12485        context: *mut GtkCellAreaContext,
12486        widget: *mut GtkWidget,
12487        renderer: *mut GtkCellRenderer,
12488        cell_area: *const gdk::GdkRectangle,
12489        allocation: *mut gdk::GdkRectangle,
12490    );
12491    pub fn gtk_cell_area_get_cell_at_position(
12492        area: *mut GtkCellArea,
12493        context: *mut GtkCellAreaContext,
12494        widget: *mut GtkWidget,
12495        cell_area: *const gdk::GdkRectangle,
12496        x: c_int,
12497        y: c_int,
12498        alloc_area: *mut gdk::GdkRectangle,
12499    ) -> *mut GtkCellRenderer;
12500    pub fn gtk_cell_area_get_current_path_string(area: *mut GtkCellArea) -> *const c_char;
12501    pub fn gtk_cell_area_get_edit_widget(area: *mut GtkCellArea) -> *mut GtkCellEditable;
12502    pub fn gtk_cell_area_get_edited_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
12503    pub fn gtk_cell_area_get_focus_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
12504    pub fn gtk_cell_area_get_focus_from_sibling(
12505        area: *mut GtkCellArea,
12506        renderer: *mut GtkCellRenderer,
12507    ) -> *mut GtkCellRenderer;
12508    pub fn gtk_cell_area_get_focus_siblings(
12509        area: *mut GtkCellArea,
12510        renderer: *mut GtkCellRenderer,
12511    ) -> *const glib::GList;
12512    pub fn gtk_cell_area_get_preferred_height(
12513        area: *mut GtkCellArea,
12514        context: *mut GtkCellAreaContext,
12515        widget: *mut GtkWidget,
12516        minimum_height: *mut c_int,
12517        natural_height: *mut c_int,
12518    );
12519    pub fn gtk_cell_area_get_preferred_height_for_width(
12520        area: *mut GtkCellArea,
12521        context: *mut GtkCellAreaContext,
12522        widget: *mut GtkWidget,
12523        width: c_int,
12524        minimum_height: *mut c_int,
12525        natural_height: *mut c_int,
12526    );
12527    pub fn gtk_cell_area_get_preferred_width(
12528        area: *mut GtkCellArea,
12529        context: *mut GtkCellAreaContext,
12530        widget: *mut GtkWidget,
12531        minimum_width: *mut c_int,
12532        natural_width: *mut c_int,
12533    );
12534    pub fn gtk_cell_area_get_preferred_width_for_height(
12535        area: *mut GtkCellArea,
12536        context: *mut GtkCellAreaContext,
12537        widget: *mut GtkWidget,
12538        height: c_int,
12539        minimum_width: *mut c_int,
12540        natural_width: *mut c_int,
12541    );
12542    pub fn gtk_cell_area_get_request_mode(area: *mut GtkCellArea) -> GtkSizeRequestMode;
12543    pub fn gtk_cell_area_has_renderer(
12544        area: *mut GtkCellArea,
12545        renderer: *mut GtkCellRenderer,
12546    ) -> gboolean;
12547    pub fn gtk_cell_area_inner_cell_area(
12548        area: *mut GtkCellArea,
12549        widget: *mut GtkWidget,
12550        cell_area: *const gdk::GdkRectangle,
12551        inner_area: *mut gdk::GdkRectangle,
12552    );
12553    pub fn gtk_cell_area_is_activatable(area: *mut GtkCellArea) -> gboolean;
12554    pub fn gtk_cell_area_is_focus_sibling(
12555        area: *mut GtkCellArea,
12556        renderer: *mut GtkCellRenderer,
12557        sibling: *mut GtkCellRenderer,
12558    ) -> gboolean;
12559    pub fn gtk_cell_area_remove(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12560    pub fn gtk_cell_area_remove_focus_sibling(
12561        area: *mut GtkCellArea,
12562        renderer: *mut GtkCellRenderer,
12563        sibling: *mut GtkCellRenderer,
12564    );
12565    pub fn gtk_cell_area_request_renderer(
12566        area: *mut GtkCellArea,
12567        renderer: *mut GtkCellRenderer,
12568        orientation: GtkOrientation,
12569        widget: *mut GtkWidget,
12570        for_size: c_int,
12571        minimum_size: *mut c_int,
12572        natural_size: *mut c_int,
12573    );
12574    pub fn gtk_cell_area_set_focus_cell(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12575    pub fn gtk_cell_area_snapshot(
12576        area: *mut GtkCellArea,
12577        context: *mut GtkCellAreaContext,
12578        widget: *mut GtkWidget,
12579        snapshot: *mut GtkSnapshot,
12580        background_area: *const gdk::GdkRectangle,
12581        cell_area: *const gdk::GdkRectangle,
12582        flags: GtkCellRendererState,
12583        paint_focus: gboolean,
12584    );
12585    pub fn gtk_cell_area_stop_editing(area: *mut GtkCellArea, canceled: gboolean);
12586
12587    //=========================================================================
12588    // GtkCellAreaBox
12589    //=========================================================================
12590    pub fn gtk_cell_area_box_get_type() -> GType;
12591    pub fn gtk_cell_area_box_new() -> *mut GtkCellArea;
12592    pub fn gtk_cell_area_box_get_spacing(box_: *mut GtkCellAreaBox) -> c_int;
12593    pub fn gtk_cell_area_box_pack_end(
12594        box_: *mut GtkCellAreaBox,
12595        renderer: *mut GtkCellRenderer,
12596        expand: gboolean,
12597        align: gboolean,
12598        fixed: gboolean,
12599    );
12600    pub fn gtk_cell_area_box_pack_start(
12601        box_: *mut GtkCellAreaBox,
12602        renderer: *mut GtkCellRenderer,
12603        expand: gboolean,
12604        align: gboolean,
12605        fixed: gboolean,
12606    );
12607    pub fn gtk_cell_area_box_set_spacing(box_: *mut GtkCellAreaBox, spacing: c_int);
12608
12609    //=========================================================================
12610    // GtkCellAreaContext
12611    //=========================================================================
12612    pub fn gtk_cell_area_context_get_type() -> GType;
12613    pub fn gtk_cell_area_context_allocate(
12614        context: *mut GtkCellAreaContext,
12615        width: c_int,
12616        height: c_int,
12617    );
12618    pub fn gtk_cell_area_context_get_allocation(
12619        context: *mut GtkCellAreaContext,
12620        width: *mut c_int,
12621        height: *mut c_int,
12622    );
12623    pub fn gtk_cell_area_context_get_area(context: *mut GtkCellAreaContext) -> *mut GtkCellArea;
12624    pub fn gtk_cell_area_context_get_preferred_height(
12625        context: *mut GtkCellAreaContext,
12626        minimum_height: *mut c_int,
12627        natural_height: *mut c_int,
12628    );
12629    pub fn gtk_cell_area_context_get_preferred_height_for_width(
12630        context: *mut GtkCellAreaContext,
12631        width: c_int,
12632        minimum_height: *mut c_int,
12633        natural_height: *mut c_int,
12634    );
12635    pub fn gtk_cell_area_context_get_preferred_width(
12636        context: *mut GtkCellAreaContext,
12637        minimum_width: *mut c_int,
12638        natural_width: *mut c_int,
12639    );
12640    pub fn gtk_cell_area_context_get_preferred_width_for_height(
12641        context: *mut GtkCellAreaContext,
12642        height: c_int,
12643        minimum_width: *mut c_int,
12644        natural_width: *mut c_int,
12645    );
12646    pub fn gtk_cell_area_context_push_preferred_height(
12647        context: *mut GtkCellAreaContext,
12648        minimum_height: c_int,
12649        natural_height: c_int,
12650    );
12651    pub fn gtk_cell_area_context_push_preferred_width(
12652        context: *mut GtkCellAreaContext,
12653        minimum_width: c_int,
12654        natural_width: c_int,
12655    );
12656    pub fn gtk_cell_area_context_reset(context: *mut GtkCellAreaContext);
12657
12658    //=========================================================================
12659    // GtkCellRenderer
12660    //=========================================================================
12661    pub fn gtk_cell_renderer_get_type() -> GType;
12662    pub fn gtk_cell_renderer_activate(
12663        cell: *mut GtkCellRenderer,
12664        event: *mut gdk::GdkEvent,
12665        widget: *mut GtkWidget,
12666        path: *const c_char,
12667        background_area: *const gdk::GdkRectangle,
12668        cell_area: *const gdk::GdkRectangle,
12669        flags: GtkCellRendererState,
12670    ) -> gboolean;
12671    pub fn gtk_cell_renderer_get_aligned_area(
12672        cell: *mut GtkCellRenderer,
12673        widget: *mut GtkWidget,
12674        flags: GtkCellRendererState,
12675        cell_area: *const gdk::GdkRectangle,
12676        aligned_area: *mut gdk::GdkRectangle,
12677    );
12678    pub fn gtk_cell_renderer_get_alignment(
12679        cell: *mut GtkCellRenderer,
12680        xalign: *mut c_float,
12681        yalign: *mut c_float,
12682    );
12683    pub fn gtk_cell_renderer_get_fixed_size(
12684        cell: *mut GtkCellRenderer,
12685        width: *mut c_int,
12686        height: *mut c_int,
12687    );
12688    pub fn gtk_cell_renderer_get_is_expanded(cell: *mut GtkCellRenderer) -> gboolean;
12689    pub fn gtk_cell_renderer_get_is_expander(cell: *mut GtkCellRenderer) -> gboolean;
12690    pub fn gtk_cell_renderer_get_padding(
12691        cell: *mut GtkCellRenderer,
12692        xpad: *mut c_int,
12693        ypad: *mut c_int,
12694    );
12695    pub fn gtk_cell_renderer_get_preferred_height(
12696        cell: *mut GtkCellRenderer,
12697        widget: *mut GtkWidget,
12698        minimum_size: *mut c_int,
12699        natural_size: *mut c_int,
12700    );
12701    pub fn gtk_cell_renderer_get_preferred_height_for_width(
12702        cell: *mut GtkCellRenderer,
12703        widget: *mut GtkWidget,
12704        width: c_int,
12705        minimum_height: *mut c_int,
12706        natural_height: *mut c_int,
12707    );
12708    pub fn gtk_cell_renderer_get_preferred_size(
12709        cell: *mut GtkCellRenderer,
12710        widget: *mut GtkWidget,
12711        minimum_size: *mut GtkRequisition,
12712        natural_size: *mut GtkRequisition,
12713    );
12714    pub fn gtk_cell_renderer_get_preferred_width(
12715        cell: *mut GtkCellRenderer,
12716        widget: *mut GtkWidget,
12717        minimum_size: *mut c_int,
12718        natural_size: *mut c_int,
12719    );
12720    pub fn gtk_cell_renderer_get_preferred_width_for_height(
12721        cell: *mut GtkCellRenderer,
12722        widget: *mut GtkWidget,
12723        height: c_int,
12724        minimum_width: *mut c_int,
12725        natural_width: *mut c_int,
12726    );
12727    pub fn gtk_cell_renderer_get_request_mode(cell: *mut GtkCellRenderer) -> GtkSizeRequestMode;
12728    pub fn gtk_cell_renderer_get_sensitive(cell: *mut GtkCellRenderer) -> gboolean;
12729    pub fn gtk_cell_renderer_get_state(
12730        cell: *mut GtkCellRenderer,
12731        widget: *mut GtkWidget,
12732        cell_state: GtkCellRendererState,
12733    ) -> GtkStateFlags;
12734    pub fn gtk_cell_renderer_get_visible(cell: *mut GtkCellRenderer) -> gboolean;
12735    pub fn gtk_cell_renderer_is_activatable(cell: *mut GtkCellRenderer) -> gboolean;
12736    pub fn gtk_cell_renderer_set_alignment(
12737        cell: *mut GtkCellRenderer,
12738        xalign: c_float,
12739        yalign: c_float,
12740    );
12741    pub fn gtk_cell_renderer_set_fixed_size(
12742        cell: *mut GtkCellRenderer,
12743        width: c_int,
12744        height: c_int,
12745    );
12746    pub fn gtk_cell_renderer_set_is_expanded(cell: *mut GtkCellRenderer, is_expanded: gboolean);
12747    pub fn gtk_cell_renderer_set_is_expander(cell: *mut GtkCellRenderer, is_expander: gboolean);
12748    pub fn gtk_cell_renderer_set_padding(cell: *mut GtkCellRenderer, xpad: c_int, ypad: c_int);
12749    pub fn gtk_cell_renderer_set_sensitive(cell: *mut GtkCellRenderer, sensitive: gboolean);
12750    pub fn gtk_cell_renderer_set_visible(cell: *mut GtkCellRenderer, visible: gboolean);
12751    pub fn gtk_cell_renderer_snapshot(
12752        cell: *mut GtkCellRenderer,
12753        snapshot: *mut GtkSnapshot,
12754        widget: *mut GtkWidget,
12755        background_area: *const gdk::GdkRectangle,
12756        cell_area: *const gdk::GdkRectangle,
12757        flags: GtkCellRendererState,
12758    );
12759    pub fn gtk_cell_renderer_start_editing(
12760        cell: *mut GtkCellRenderer,
12761        event: *mut gdk::GdkEvent,
12762        widget: *mut GtkWidget,
12763        path: *const c_char,
12764        background_area: *const gdk::GdkRectangle,
12765        cell_area: *const gdk::GdkRectangle,
12766        flags: GtkCellRendererState,
12767    ) -> *mut GtkCellEditable;
12768    pub fn gtk_cell_renderer_stop_editing(cell: *mut GtkCellRenderer, canceled: gboolean);
12769
12770    //=========================================================================
12771    // GtkCellRendererAccel
12772    //=========================================================================
12773    pub fn gtk_cell_renderer_accel_get_type() -> GType;
12774    pub fn gtk_cell_renderer_accel_new() -> *mut GtkCellRenderer;
12775
12776    //=========================================================================
12777    // GtkCellRendererCombo
12778    //=========================================================================
12779    pub fn gtk_cell_renderer_combo_get_type() -> GType;
12780    pub fn gtk_cell_renderer_combo_new() -> *mut GtkCellRenderer;
12781
12782    //=========================================================================
12783    // GtkCellRendererPixbuf
12784    //=========================================================================
12785    pub fn gtk_cell_renderer_pixbuf_get_type() -> GType;
12786    pub fn gtk_cell_renderer_pixbuf_new() -> *mut GtkCellRenderer;
12787
12788    //=========================================================================
12789    // GtkCellRendererProgress
12790    //=========================================================================
12791    pub fn gtk_cell_renderer_progress_get_type() -> GType;
12792    pub fn gtk_cell_renderer_progress_new() -> *mut GtkCellRenderer;
12793
12794    //=========================================================================
12795    // GtkCellRendererSpin
12796    //=========================================================================
12797    pub fn gtk_cell_renderer_spin_get_type() -> GType;
12798    pub fn gtk_cell_renderer_spin_new() -> *mut GtkCellRenderer;
12799
12800    //=========================================================================
12801    // GtkCellRendererSpinner
12802    //=========================================================================
12803    pub fn gtk_cell_renderer_spinner_get_type() -> GType;
12804    pub fn gtk_cell_renderer_spinner_new() -> *mut GtkCellRenderer;
12805
12806    //=========================================================================
12807    // GtkCellRendererText
12808    //=========================================================================
12809    pub fn gtk_cell_renderer_text_get_type() -> GType;
12810    pub fn gtk_cell_renderer_text_new() -> *mut GtkCellRenderer;
12811    pub fn gtk_cell_renderer_text_set_fixed_height_from_font(
12812        renderer: *mut GtkCellRendererText,
12813        number_of_rows: c_int,
12814    );
12815
12816    //=========================================================================
12817    // GtkCellRendererToggle
12818    //=========================================================================
12819    pub fn gtk_cell_renderer_toggle_get_type() -> GType;
12820    pub fn gtk_cell_renderer_toggle_new() -> *mut GtkCellRenderer;
12821    pub fn gtk_cell_renderer_toggle_get_activatable(toggle: *mut GtkCellRendererToggle)
12822        -> gboolean;
12823    pub fn gtk_cell_renderer_toggle_get_active(toggle: *mut GtkCellRendererToggle) -> gboolean;
12824    pub fn gtk_cell_renderer_toggle_get_radio(toggle: *mut GtkCellRendererToggle) -> gboolean;
12825    pub fn gtk_cell_renderer_toggle_set_activatable(
12826        toggle: *mut GtkCellRendererToggle,
12827        setting: gboolean,
12828    );
12829    pub fn gtk_cell_renderer_toggle_set_active(
12830        toggle: *mut GtkCellRendererToggle,
12831        setting: gboolean,
12832    );
12833    pub fn gtk_cell_renderer_toggle_set_radio(toggle: *mut GtkCellRendererToggle, radio: gboolean);
12834
12835    //=========================================================================
12836    // GtkCellView
12837    //=========================================================================
12838    pub fn gtk_cell_view_get_type() -> GType;
12839    pub fn gtk_cell_view_new() -> *mut GtkWidget;
12840    pub fn gtk_cell_view_new_with_context(
12841        area: *mut GtkCellArea,
12842        context: *mut GtkCellAreaContext,
12843    ) -> *mut GtkWidget;
12844    pub fn gtk_cell_view_new_with_markup(markup: *const c_char) -> *mut GtkWidget;
12845    pub fn gtk_cell_view_new_with_text(text: *const c_char) -> *mut GtkWidget;
12846    pub fn gtk_cell_view_new_with_texture(texture: *mut gdk::GdkTexture) -> *mut GtkWidget;
12847    pub fn gtk_cell_view_get_displayed_row(cell_view: *mut GtkCellView) -> *mut GtkTreePath;
12848    pub fn gtk_cell_view_get_draw_sensitive(cell_view: *mut GtkCellView) -> gboolean;
12849    pub fn gtk_cell_view_get_fit_model(cell_view: *mut GtkCellView) -> gboolean;
12850    pub fn gtk_cell_view_get_model(cell_view: *mut GtkCellView) -> *mut GtkTreeModel;
12851    pub fn gtk_cell_view_set_displayed_row(cell_view: *mut GtkCellView, path: *mut GtkTreePath);
12852    pub fn gtk_cell_view_set_draw_sensitive(cell_view: *mut GtkCellView, draw_sensitive: gboolean);
12853    pub fn gtk_cell_view_set_fit_model(cell_view: *mut GtkCellView, fit_model: gboolean);
12854    pub fn gtk_cell_view_set_model(cell_view: *mut GtkCellView, model: *mut GtkTreeModel);
12855
12856    //=========================================================================
12857    // GtkCenterBox
12858    //=========================================================================
12859    pub fn gtk_center_box_get_type() -> GType;
12860    pub fn gtk_center_box_new() -> *mut GtkWidget;
12861    pub fn gtk_center_box_get_baseline_position(self_: *mut GtkCenterBox) -> GtkBaselinePosition;
12862    pub fn gtk_center_box_get_center_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12863    pub fn gtk_center_box_get_end_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12864    #[cfg(feature = "v4_12")]
12865    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12866    pub fn gtk_center_box_get_shrink_center_last(self_: *mut GtkCenterBox) -> gboolean;
12867    pub fn gtk_center_box_get_start_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12868    pub fn gtk_center_box_set_baseline_position(
12869        self_: *mut GtkCenterBox,
12870        position: GtkBaselinePosition,
12871    );
12872    pub fn gtk_center_box_set_center_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12873    pub fn gtk_center_box_set_end_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12874    #[cfg(feature = "v4_12")]
12875    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12876    pub fn gtk_center_box_set_shrink_center_last(
12877        self_: *mut GtkCenterBox,
12878        shrink_center_last: gboolean,
12879    );
12880    pub fn gtk_center_box_set_start_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12881
12882    //=========================================================================
12883    // GtkCenterLayout
12884    //=========================================================================
12885    pub fn gtk_center_layout_get_type() -> GType;
12886    pub fn gtk_center_layout_new() -> *mut GtkLayoutManager;
12887    pub fn gtk_center_layout_get_baseline_position(
12888        self_: *mut GtkCenterLayout,
12889    ) -> GtkBaselinePosition;
12890    pub fn gtk_center_layout_get_center_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12891    pub fn gtk_center_layout_get_end_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12892    pub fn gtk_center_layout_get_orientation(self_: *mut GtkCenterLayout) -> GtkOrientation;
12893    #[cfg(feature = "v4_12")]
12894    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12895    pub fn gtk_center_layout_get_shrink_center_last(self_: *mut GtkCenterLayout) -> gboolean;
12896    pub fn gtk_center_layout_get_start_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12897    pub fn gtk_center_layout_set_baseline_position(
12898        self_: *mut GtkCenterLayout,
12899        baseline_position: GtkBaselinePosition,
12900    );
12901    pub fn gtk_center_layout_set_center_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12902    pub fn gtk_center_layout_set_end_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12903    pub fn gtk_center_layout_set_orientation(
12904        self_: *mut GtkCenterLayout,
12905        orientation: GtkOrientation,
12906    );
12907    #[cfg(feature = "v4_12")]
12908    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12909    pub fn gtk_center_layout_set_shrink_center_last(
12910        self_: *mut GtkCenterLayout,
12911        shrink_center_last: gboolean,
12912    );
12913    pub fn gtk_center_layout_set_start_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12914
12915    //=========================================================================
12916    // GtkCheckButton
12917    //=========================================================================
12918    pub fn gtk_check_button_get_type() -> GType;
12919    pub fn gtk_check_button_new() -> *mut GtkWidget;
12920    pub fn gtk_check_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
12921    pub fn gtk_check_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
12922    pub fn gtk_check_button_get_active(self_: *mut GtkCheckButton) -> gboolean;
12923    #[cfg(feature = "v4_8")]
12924    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
12925    pub fn gtk_check_button_get_child(button: *mut GtkCheckButton) -> *mut GtkWidget;
12926    pub fn gtk_check_button_get_inconsistent(check_button: *mut GtkCheckButton) -> gboolean;
12927    pub fn gtk_check_button_get_label(self_: *mut GtkCheckButton) -> *const c_char;
12928    pub fn gtk_check_button_get_use_underline(self_: *mut GtkCheckButton) -> gboolean;
12929    pub fn gtk_check_button_set_active(self_: *mut GtkCheckButton, setting: gboolean);
12930    #[cfg(feature = "v4_8")]
12931    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
12932    pub fn gtk_check_button_set_child(button: *mut GtkCheckButton, child: *mut GtkWidget);
12933    pub fn gtk_check_button_set_group(self_: *mut GtkCheckButton, group: *mut GtkCheckButton);
12934    pub fn gtk_check_button_set_inconsistent(
12935        check_button: *mut GtkCheckButton,
12936        inconsistent: gboolean,
12937    );
12938    pub fn gtk_check_button_set_label(self_: *mut GtkCheckButton, label: *const c_char);
12939    pub fn gtk_check_button_set_use_underline(self_: *mut GtkCheckButton, setting: gboolean);
12940
12941    //=========================================================================
12942    // GtkClosureExpression
12943    //=========================================================================
12944    pub fn gtk_closure_expression_get_type() -> GType;
12945    pub fn gtk_closure_expression_new(
12946        value_type: GType,
12947        closure: *mut gobject::GClosure,
12948        n_params: c_uint,
12949        params: *mut *mut GtkExpression,
12950    ) -> *mut GtkClosureExpression;
12951
12952    //=========================================================================
12953    // GtkColorButton
12954    //=========================================================================
12955    pub fn gtk_color_button_get_type() -> GType;
12956    pub fn gtk_color_button_new() -> *mut GtkWidget;
12957    pub fn gtk_color_button_new_with_rgba(rgba: *const gdk::GdkRGBA) -> *mut GtkWidget;
12958    pub fn gtk_color_button_get_modal(button: *mut GtkColorButton) -> gboolean;
12959    pub fn gtk_color_button_get_title(button: *mut GtkColorButton) -> *const c_char;
12960    pub fn gtk_color_button_set_modal(button: *mut GtkColorButton, modal: gboolean);
12961    pub fn gtk_color_button_set_title(button: *mut GtkColorButton, title: *const c_char);
12962
12963    //=========================================================================
12964    // GtkColorChooserDialog
12965    //=========================================================================
12966    pub fn gtk_color_chooser_dialog_get_type() -> GType;
12967    pub fn gtk_color_chooser_dialog_new(
12968        title: *const c_char,
12969        parent: *mut GtkWindow,
12970    ) -> *mut GtkWidget;
12971
12972    //=========================================================================
12973    // GtkColorChooserWidget
12974    //=========================================================================
12975    pub fn gtk_color_chooser_widget_get_type() -> GType;
12976    pub fn gtk_color_chooser_widget_new() -> *mut GtkWidget;
12977
12978    //=========================================================================
12979    // GtkColorDialog
12980    //=========================================================================
12981    #[cfg(feature = "v4_10")]
12982    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12983    pub fn gtk_color_dialog_get_type() -> GType;
12984    #[cfg(feature = "v4_10")]
12985    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12986    pub fn gtk_color_dialog_new() -> *mut GtkColorDialog;
12987    #[cfg(feature = "v4_10")]
12988    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12989    pub fn gtk_color_dialog_choose_rgba(
12990        self_: *mut GtkColorDialog,
12991        parent: *mut GtkWindow,
12992        initial_color: *const gdk::GdkRGBA,
12993        cancellable: *mut gio::GCancellable,
12994        callback: gio::GAsyncReadyCallback,
12995        user_data: gpointer,
12996    );
12997    #[cfg(feature = "v4_10")]
12998    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12999    pub fn gtk_color_dialog_choose_rgba_finish(
13000        self_: *mut GtkColorDialog,
13001        result: *mut gio::GAsyncResult,
13002        error: *mut *mut glib::GError,
13003    ) -> *mut gdk::GdkRGBA;
13004    #[cfg(feature = "v4_10")]
13005    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13006    pub fn gtk_color_dialog_get_modal(self_: *mut GtkColorDialog) -> gboolean;
13007    #[cfg(feature = "v4_10")]
13008    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13009    pub fn gtk_color_dialog_get_title(self_: *mut GtkColorDialog) -> *const c_char;
13010    #[cfg(feature = "v4_10")]
13011    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13012    pub fn gtk_color_dialog_get_with_alpha(self_: *mut GtkColorDialog) -> gboolean;
13013    #[cfg(feature = "v4_10")]
13014    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13015    pub fn gtk_color_dialog_set_modal(self_: *mut GtkColorDialog, modal: gboolean);
13016    #[cfg(feature = "v4_10")]
13017    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13018    pub fn gtk_color_dialog_set_title(self_: *mut GtkColorDialog, title: *const c_char);
13019    #[cfg(feature = "v4_10")]
13020    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13021    pub fn gtk_color_dialog_set_with_alpha(self_: *mut GtkColorDialog, with_alpha: gboolean);
13022
13023    //=========================================================================
13024    // GtkColorDialogButton
13025    //=========================================================================
13026    #[cfg(feature = "v4_10")]
13027    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13028    pub fn gtk_color_dialog_button_get_type() -> GType;
13029    #[cfg(feature = "v4_10")]
13030    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13031    pub fn gtk_color_dialog_button_new(dialog: *mut GtkColorDialog) -> *mut GtkWidget;
13032    #[cfg(feature = "v4_10")]
13033    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13034    pub fn gtk_color_dialog_button_get_dialog(
13035        self_: *mut GtkColorDialogButton,
13036    ) -> *mut GtkColorDialog;
13037    #[cfg(feature = "v4_10")]
13038    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13039    pub fn gtk_color_dialog_button_get_rgba(
13040        self_: *mut GtkColorDialogButton,
13041    ) -> *const gdk::GdkRGBA;
13042    #[cfg(feature = "v4_10")]
13043    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13044    pub fn gtk_color_dialog_button_set_dialog(
13045        self_: *mut GtkColorDialogButton,
13046        dialog: *mut GtkColorDialog,
13047    );
13048    #[cfg(feature = "v4_10")]
13049    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13050    pub fn gtk_color_dialog_button_set_rgba(
13051        self_: *mut GtkColorDialogButton,
13052        color: *const gdk::GdkRGBA,
13053    );
13054
13055    //=========================================================================
13056    // GtkColumnView
13057    //=========================================================================
13058    pub fn gtk_column_view_get_type() -> GType;
13059    pub fn gtk_column_view_new(model: *mut GtkSelectionModel) -> *mut GtkWidget;
13060    pub fn gtk_column_view_append_column(
13061        self_: *mut GtkColumnView,
13062        column: *mut GtkColumnViewColumn,
13063    );
13064    pub fn gtk_column_view_get_columns(self_: *mut GtkColumnView) -> *mut gio::GListModel;
13065    pub fn gtk_column_view_get_enable_rubberband(self_: *mut GtkColumnView) -> gboolean;
13066    #[cfg(feature = "v4_12")]
13067    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13068    pub fn gtk_column_view_get_header_factory(self_: *mut GtkColumnView)
13069        -> *mut GtkListItemFactory;
13070    pub fn gtk_column_view_get_model(self_: *mut GtkColumnView) -> *mut GtkSelectionModel;
13071    pub fn gtk_column_view_get_reorderable(self_: *mut GtkColumnView) -> gboolean;
13072    #[cfg(feature = "v4_12")]
13073    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13074    pub fn gtk_column_view_get_row_factory(self_: *mut GtkColumnView) -> *mut GtkListItemFactory;
13075    pub fn gtk_column_view_get_show_column_separators(self_: *mut GtkColumnView) -> gboolean;
13076    pub fn gtk_column_view_get_show_row_separators(self_: *mut GtkColumnView) -> gboolean;
13077    pub fn gtk_column_view_get_single_click_activate(self_: *mut GtkColumnView) -> gboolean;
13078    pub fn gtk_column_view_get_sorter(self_: *mut GtkColumnView) -> *mut GtkSorter;
13079    #[cfg(feature = "v4_12")]
13080    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13081    pub fn gtk_column_view_get_tab_behavior(self_: *mut GtkColumnView) -> GtkListTabBehavior;
13082    pub fn gtk_column_view_insert_column(
13083        self_: *mut GtkColumnView,
13084        position: c_uint,
13085        column: *mut GtkColumnViewColumn,
13086    );
13087    pub fn gtk_column_view_remove_column(
13088        self_: *mut GtkColumnView,
13089        column: *mut GtkColumnViewColumn,
13090    );
13091    #[cfg(feature = "v4_12")]
13092    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13093    pub fn gtk_column_view_scroll_to(
13094        self_: *mut GtkColumnView,
13095        pos: c_uint,
13096        column: *mut GtkColumnViewColumn,
13097        flags: GtkListScrollFlags,
13098        scroll: *mut GtkScrollInfo,
13099    );
13100    pub fn gtk_column_view_set_enable_rubberband(
13101        self_: *mut GtkColumnView,
13102        enable_rubberband: gboolean,
13103    );
13104    #[cfg(feature = "v4_12")]
13105    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13106    pub fn gtk_column_view_set_header_factory(
13107        self_: *mut GtkColumnView,
13108        factory: *mut GtkListItemFactory,
13109    );
13110    pub fn gtk_column_view_set_model(self_: *mut GtkColumnView, model: *mut GtkSelectionModel);
13111    pub fn gtk_column_view_set_reorderable(self_: *mut GtkColumnView, reorderable: gboolean);
13112    #[cfg(feature = "v4_12")]
13113    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13114    pub fn gtk_column_view_set_row_factory(
13115        self_: *mut GtkColumnView,
13116        factory: *mut GtkListItemFactory,
13117    );
13118    pub fn gtk_column_view_set_show_column_separators(
13119        self_: *mut GtkColumnView,
13120        show_column_separators: gboolean,
13121    );
13122    pub fn gtk_column_view_set_show_row_separators(
13123        self_: *mut GtkColumnView,
13124        show_row_separators: gboolean,
13125    );
13126    pub fn gtk_column_view_set_single_click_activate(
13127        self_: *mut GtkColumnView,
13128        single_click_activate: gboolean,
13129    );
13130    #[cfg(feature = "v4_12")]
13131    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13132    pub fn gtk_column_view_set_tab_behavior(
13133        self_: *mut GtkColumnView,
13134        tab_behavior: GtkListTabBehavior,
13135    );
13136    pub fn gtk_column_view_sort_by_column(
13137        self_: *mut GtkColumnView,
13138        column: *mut GtkColumnViewColumn,
13139        direction: GtkSortType,
13140    );
13141
13142    //=========================================================================
13143    // GtkColumnViewCell
13144    //=========================================================================
13145    #[cfg(feature = "v4_12")]
13146    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13147    pub fn gtk_column_view_cell_get_type() -> GType;
13148    #[cfg(feature = "v4_12")]
13149    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13150    pub fn gtk_column_view_cell_get_child(self_: *mut GtkColumnViewCell) -> *mut GtkWidget;
13151    #[cfg(feature = "v4_12")]
13152    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13153    pub fn gtk_column_view_cell_get_focusable(self_: *mut GtkColumnViewCell) -> gboolean;
13154    #[cfg(feature = "v4_12")]
13155    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13156    pub fn gtk_column_view_cell_get_item(self_: *mut GtkColumnViewCell) -> *mut gobject::GObject;
13157    #[cfg(feature = "v4_12")]
13158    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13159    pub fn gtk_column_view_cell_get_position(self_: *mut GtkColumnViewCell) -> c_uint;
13160    #[cfg(feature = "v4_12")]
13161    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13162    pub fn gtk_column_view_cell_get_selected(self_: *mut GtkColumnViewCell) -> gboolean;
13163    #[cfg(feature = "v4_12")]
13164    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13165    pub fn gtk_column_view_cell_set_child(self_: *mut GtkColumnViewCell, child: *mut GtkWidget);
13166    #[cfg(feature = "v4_12")]
13167    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13168    pub fn gtk_column_view_cell_set_focusable(self_: *mut GtkColumnViewCell, focusable: gboolean);
13169
13170    //=========================================================================
13171    // GtkColumnViewColumn
13172    //=========================================================================
13173    pub fn gtk_column_view_column_get_type() -> GType;
13174    pub fn gtk_column_view_column_new(
13175        title: *const c_char,
13176        factory: *mut GtkListItemFactory,
13177    ) -> *mut GtkColumnViewColumn;
13178    pub fn gtk_column_view_column_get_column_view(
13179        self_: *mut GtkColumnViewColumn,
13180    ) -> *mut GtkColumnView;
13181    pub fn gtk_column_view_column_get_expand(self_: *mut GtkColumnViewColumn) -> gboolean;
13182    pub fn gtk_column_view_column_get_factory(
13183        self_: *mut GtkColumnViewColumn,
13184    ) -> *mut GtkListItemFactory;
13185    pub fn gtk_column_view_column_get_fixed_width(self_: *mut GtkColumnViewColumn) -> c_int;
13186    pub fn gtk_column_view_column_get_header_menu(
13187        self_: *mut GtkColumnViewColumn,
13188    ) -> *mut gio::GMenuModel;
13189    #[cfg(feature = "v4_10")]
13190    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13191    pub fn gtk_column_view_column_get_id(self_: *mut GtkColumnViewColumn) -> *const c_char;
13192    pub fn gtk_column_view_column_get_resizable(self_: *mut GtkColumnViewColumn) -> gboolean;
13193    pub fn gtk_column_view_column_get_sorter(self_: *mut GtkColumnViewColumn) -> *mut GtkSorter;
13194    pub fn gtk_column_view_column_get_title(self_: *mut GtkColumnViewColumn) -> *const c_char;
13195    pub fn gtk_column_view_column_get_visible(self_: *mut GtkColumnViewColumn) -> gboolean;
13196    pub fn gtk_column_view_column_set_expand(self_: *mut GtkColumnViewColumn, expand: gboolean);
13197    pub fn gtk_column_view_column_set_factory(
13198        self_: *mut GtkColumnViewColumn,
13199        factory: *mut GtkListItemFactory,
13200    );
13201    pub fn gtk_column_view_column_set_fixed_width(
13202        self_: *mut GtkColumnViewColumn,
13203        fixed_width: c_int,
13204    );
13205    pub fn gtk_column_view_column_set_header_menu(
13206        self_: *mut GtkColumnViewColumn,
13207        menu: *mut gio::GMenuModel,
13208    );
13209    #[cfg(feature = "v4_10")]
13210    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13211    pub fn gtk_column_view_column_set_id(self_: *mut GtkColumnViewColumn, id: *const c_char);
13212    pub fn gtk_column_view_column_set_resizable(
13213        self_: *mut GtkColumnViewColumn,
13214        resizable: gboolean,
13215    );
13216    pub fn gtk_column_view_column_set_sorter(
13217        self_: *mut GtkColumnViewColumn,
13218        sorter: *mut GtkSorter,
13219    );
13220    pub fn gtk_column_view_column_set_title(self_: *mut GtkColumnViewColumn, title: *const c_char);
13221    pub fn gtk_column_view_column_set_visible(self_: *mut GtkColumnViewColumn, visible: gboolean);
13222
13223    //=========================================================================
13224    // GtkColumnViewRow
13225    //=========================================================================
13226    #[cfg(feature = "v4_12")]
13227    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13228    pub fn gtk_column_view_row_get_type() -> GType;
13229    #[cfg(feature = "v4_12")]
13230    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13231    pub fn gtk_column_view_row_get_accessible_description(
13232        self_: *mut GtkColumnViewRow,
13233    ) -> *const c_char;
13234    #[cfg(feature = "v4_12")]
13235    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13236    pub fn gtk_column_view_row_get_accessible_label(self_: *mut GtkColumnViewRow) -> *const c_char;
13237    #[cfg(feature = "v4_12")]
13238    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13239    pub fn gtk_column_view_row_get_activatable(self_: *mut GtkColumnViewRow) -> gboolean;
13240    #[cfg(feature = "v4_12")]
13241    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13242    pub fn gtk_column_view_row_get_focusable(self_: *mut GtkColumnViewRow) -> gboolean;
13243    #[cfg(feature = "v4_12")]
13244    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13245    pub fn gtk_column_view_row_get_item(self_: *mut GtkColumnViewRow) -> *mut gobject::GObject;
13246    #[cfg(feature = "v4_12")]
13247    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13248    pub fn gtk_column_view_row_get_position(self_: *mut GtkColumnViewRow) -> c_uint;
13249    #[cfg(feature = "v4_12")]
13250    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13251    pub fn gtk_column_view_row_get_selectable(self_: *mut GtkColumnViewRow) -> gboolean;
13252    #[cfg(feature = "v4_12")]
13253    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13254    pub fn gtk_column_view_row_get_selected(self_: *mut GtkColumnViewRow) -> gboolean;
13255    #[cfg(feature = "v4_12")]
13256    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13257    pub fn gtk_column_view_row_set_accessible_description(
13258        self_: *mut GtkColumnViewRow,
13259        description: *const c_char,
13260    );
13261    #[cfg(feature = "v4_12")]
13262    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13263    pub fn gtk_column_view_row_set_accessible_label(
13264        self_: *mut GtkColumnViewRow,
13265        label: *const c_char,
13266    );
13267    #[cfg(feature = "v4_12")]
13268    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13269    pub fn gtk_column_view_row_set_activatable(self_: *mut GtkColumnViewRow, activatable: gboolean);
13270    #[cfg(feature = "v4_12")]
13271    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13272    pub fn gtk_column_view_row_set_focusable(self_: *mut GtkColumnViewRow, focusable: gboolean);
13273    #[cfg(feature = "v4_12")]
13274    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13275    pub fn gtk_column_view_row_set_selectable(self_: *mut GtkColumnViewRow, selectable: gboolean);
13276
13277    //=========================================================================
13278    // GtkColumnViewSorter
13279    //=========================================================================
13280    #[cfg(feature = "v4_10")]
13281    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13282    pub fn gtk_column_view_sorter_get_type() -> GType;
13283    #[cfg(feature = "v4_10")]
13284    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13285    pub fn gtk_column_view_sorter_get_n_sort_columns(self_: *mut GtkColumnViewSorter) -> c_uint;
13286    #[cfg(feature = "v4_10")]
13287    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13288    pub fn gtk_column_view_sorter_get_nth_sort_column(
13289        self_: *mut GtkColumnViewSorter,
13290        position: c_uint,
13291        sort_order: *mut GtkSortType,
13292    ) -> *mut GtkColumnViewColumn;
13293    #[cfg(feature = "v4_10")]
13294    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13295    pub fn gtk_column_view_sorter_get_primary_sort_column(
13296        self_: *mut GtkColumnViewSorter,
13297    ) -> *mut GtkColumnViewColumn;
13298    #[cfg(feature = "v4_10")]
13299    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13300    pub fn gtk_column_view_sorter_get_primary_sort_order(
13301        self_: *mut GtkColumnViewSorter,
13302    ) -> GtkSortType;
13303
13304    //=========================================================================
13305    // GtkComboBox
13306    //=========================================================================
13307    pub fn gtk_combo_box_get_type() -> GType;
13308    pub fn gtk_combo_box_new() -> *mut GtkWidget;
13309    pub fn gtk_combo_box_new_with_entry() -> *mut GtkWidget;
13310    pub fn gtk_combo_box_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
13311    pub fn gtk_combo_box_new_with_model_and_entry(model: *mut GtkTreeModel) -> *mut GtkWidget;
13312    pub fn gtk_combo_box_get_active(combo_box: *mut GtkComboBox) -> c_int;
13313    pub fn gtk_combo_box_get_active_id(combo_box: *mut GtkComboBox) -> *const c_char;
13314    pub fn gtk_combo_box_get_active_iter(
13315        combo_box: *mut GtkComboBox,
13316        iter: *mut GtkTreeIter,
13317    ) -> gboolean;
13318    pub fn gtk_combo_box_get_button_sensitivity(combo_box: *mut GtkComboBox) -> GtkSensitivityType;
13319    pub fn gtk_combo_box_get_child(combo_box: *mut GtkComboBox) -> *mut GtkWidget;
13320    pub fn gtk_combo_box_get_entry_text_column(combo_box: *mut GtkComboBox) -> c_int;
13321    pub fn gtk_combo_box_get_has_entry(combo_box: *mut GtkComboBox) -> gboolean;
13322    pub fn gtk_combo_box_get_id_column(combo_box: *mut GtkComboBox) -> c_int;
13323    pub fn gtk_combo_box_get_model(combo_box: *mut GtkComboBox) -> *mut GtkTreeModel;
13324    pub fn gtk_combo_box_get_popup_fixed_width(combo_box: *mut GtkComboBox) -> gboolean;
13325    pub fn gtk_combo_box_get_row_separator_func(
13326        combo_box: *mut GtkComboBox,
13327    ) -> GtkTreeViewRowSeparatorFunc;
13328    pub fn gtk_combo_box_popdown(combo_box: *mut GtkComboBox);
13329    pub fn gtk_combo_box_popup(combo_box: *mut GtkComboBox);
13330    pub fn gtk_combo_box_popup_for_device(combo_box: *mut GtkComboBox, device: *mut gdk::GdkDevice);
13331    pub fn gtk_combo_box_set_active(combo_box: *mut GtkComboBox, index_: c_int);
13332    pub fn gtk_combo_box_set_active_id(
13333        combo_box: *mut GtkComboBox,
13334        active_id: *const c_char,
13335    ) -> gboolean;
13336    pub fn gtk_combo_box_set_active_iter(combo_box: *mut GtkComboBox, iter: *mut GtkTreeIter);
13337    pub fn gtk_combo_box_set_button_sensitivity(
13338        combo_box: *mut GtkComboBox,
13339        sensitivity: GtkSensitivityType,
13340    );
13341    pub fn gtk_combo_box_set_child(combo_box: *mut GtkComboBox, child: *mut GtkWidget);
13342    pub fn gtk_combo_box_set_entry_text_column(combo_box: *mut GtkComboBox, text_column: c_int);
13343    pub fn gtk_combo_box_set_id_column(combo_box: *mut GtkComboBox, id_column: c_int);
13344    pub fn gtk_combo_box_set_model(combo_box: *mut GtkComboBox, model: *mut GtkTreeModel);
13345    pub fn gtk_combo_box_set_popup_fixed_width(combo_box: *mut GtkComboBox, fixed: gboolean);
13346    pub fn gtk_combo_box_set_row_separator_func(
13347        combo_box: *mut GtkComboBox,
13348        func: GtkTreeViewRowSeparatorFunc,
13349        data: gpointer,
13350        destroy: glib::GDestroyNotify,
13351    );
13352
13353    //=========================================================================
13354    // GtkComboBoxText
13355    //=========================================================================
13356    pub fn gtk_combo_box_text_get_type() -> GType;
13357    pub fn gtk_combo_box_text_new() -> *mut GtkWidget;
13358    pub fn gtk_combo_box_text_new_with_entry() -> *mut GtkWidget;
13359    pub fn gtk_combo_box_text_append(
13360        combo_box: *mut GtkComboBoxText,
13361        id: *const c_char,
13362        text: *const c_char,
13363    );
13364    pub fn gtk_combo_box_text_append_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
13365    pub fn gtk_combo_box_text_get_active_text(combo_box: *mut GtkComboBoxText) -> *mut c_char;
13366    pub fn gtk_combo_box_text_insert(
13367        combo_box: *mut GtkComboBoxText,
13368        position: c_int,
13369        id: *const c_char,
13370        text: *const c_char,
13371    );
13372    pub fn gtk_combo_box_text_insert_text(
13373        combo_box: *mut GtkComboBoxText,
13374        position: c_int,
13375        text: *const c_char,
13376    );
13377    pub fn gtk_combo_box_text_prepend(
13378        combo_box: *mut GtkComboBoxText,
13379        id: *const c_char,
13380        text: *const c_char,
13381    );
13382    pub fn gtk_combo_box_text_prepend_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
13383    pub fn gtk_combo_box_text_remove(combo_box: *mut GtkComboBoxText, position: c_int);
13384    pub fn gtk_combo_box_text_remove_all(combo_box: *mut GtkComboBoxText);
13385
13386    //=========================================================================
13387    // GtkConstantExpression
13388    //=========================================================================
13389    pub fn gtk_constant_expression_get_type() -> GType;
13390    pub fn gtk_constant_expression_new(value_type: GType, ...) -> *mut GtkConstantExpression;
13391    pub fn gtk_constant_expression_new_for_value(
13392        value: *const gobject::GValue,
13393    ) -> *mut GtkConstantExpression;
13394    pub fn gtk_constant_expression_get_value(
13395        expression: *mut GtkConstantExpression,
13396    ) -> *const gobject::GValue;
13397
13398    //=========================================================================
13399    // GtkConstraint
13400    //=========================================================================
13401    pub fn gtk_constraint_get_type() -> GType;
13402    pub fn gtk_constraint_new(
13403        target: *mut GtkConstraintTarget,
13404        target_attribute: GtkConstraintAttribute,
13405        relation: GtkConstraintRelation,
13406        source: *mut GtkConstraintTarget,
13407        source_attribute: GtkConstraintAttribute,
13408        multiplier: c_double,
13409        constant: c_double,
13410        strength: c_int,
13411    ) -> *mut GtkConstraint;
13412    pub fn gtk_constraint_new_constant(
13413        target: *mut GtkConstraintTarget,
13414        target_attribute: GtkConstraintAttribute,
13415        relation: GtkConstraintRelation,
13416        constant: c_double,
13417        strength: c_int,
13418    ) -> *mut GtkConstraint;
13419    pub fn gtk_constraint_get_constant(constraint: *mut GtkConstraint) -> c_double;
13420    pub fn gtk_constraint_get_multiplier(constraint: *mut GtkConstraint) -> c_double;
13421    pub fn gtk_constraint_get_relation(constraint: *mut GtkConstraint) -> GtkConstraintRelation;
13422    pub fn gtk_constraint_get_source(constraint: *mut GtkConstraint) -> *mut GtkConstraintTarget;
13423    pub fn gtk_constraint_get_source_attribute(
13424        constraint: *mut GtkConstraint,
13425    ) -> GtkConstraintAttribute;
13426    pub fn gtk_constraint_get_strength(constraint: *mut GtkConstraint) -> c_int;
13427    pub fn gtk_constraint_get_target(constraint: *mut GtkConstraint) -> *mut GtkConstraintTarget;
13428    pub fn gtk_constraint_get_target_attribute(
13429        constraint: *mut GtkConstraint,
13430    ) -> GtkConstraintAttribute;
13431    pub fn gtk_constraint_is_attached(constraint: *mut GtkConstraint) -> gboolean;
13432    pub fn gtk_constraint_is_constant(constraint: *mut GtkConstraint) -> gboolean;
13433    pub fn gtk_constraint_is_required(constraint: *mut GtkConstraint) -> gboolean;
13434
13435    //=========================================================================
13436    // GtkConstraintGuide
13437    //=========================================================================
13438    pub fn gtk_constraint_guide_get_type() -> GType;
13439    pub fn gtk_constraint_guide_new() -> *mut GtkConstraintGuide;
13440    pub fn gtk_constraint_guide_get_max_size(
13441        guide: *mut GtkConstraintGuide,
13442        width: *mut c_int,
13443        height: *mut c_int,
13444    );
13445    pub fn gtk_constraint_guide_get_min_size(
13446        guide: *mut GtkConstraintGuide,
13447        width: *mut c_int,
13448        height: *mut c_int,
13449    );
13450    pub fn gtk_constraint_guide_get_name(guide: *mut GtkConstraintGuide) -> *const c_char;
13451    pub fn gtk_constraint_guide_get_nat_size(
13452        guide: *mut GtkConstraintGuide,
13453        width: *mut c_int,
13454        height: *mut c_int,
13455    );
13456    pub fn gtk_constraint_guide_get_strength(
13457        guide: *mut GtkConstraintGuide,
13458    ) -> GtkConstraintStrength;
13459    pub fn gtk_constraint_guide_set_max_size(
13460        guide: *mut GtkConstraintGuide,
13461        width: c_int,
13462        height: c_int,
13463    );
13464    pub fn gtk_constraint_guide_set_min_size(
13465        guide: *mut GtkConstraintGuide,
13466        width: c_int,
13467        height: c_int,
13468    );
13469    pub fn gtk_constraint_guide_set_name(guide: *mut GtkConstraintGuide, name: *const c_char);
13470    pub fn gtk_constraint_guide_set_nat_size(
13471        guide: *mut GtkConstraintGuide,
13472        width: c_int,
13473        height: c_int,
13474    );
13475    pub fn gtk_constraint_guide_set_strength(
13476        guide: *mut GtkConstraintGuide,
13477        strength: GtkConstraintStrength,
13478    );
13479
13480    //=========================================================================
13481    // GtkConstraintLayout
13482    //=========================================================================
13483    pub fn gtk_constraint_layout_get_type() -> GType;
13484    pub fn gtk_constraint_layout_new() -> *mut GtkLayoutManager;
13485    pub fn gtk_constraint_layout_add_constraint(
13486        layout: *mut GtkConstraintLayout,
13487        constraint: *mut GtkConstraint,
13488    );
13489    pub fn gtk_constraint_layout_add_constraints_from_description(
13490        layout: *mut GtkConstraintLayout,
13491        lines: *const *const c_char,
13492        n_lines: size_t,
13493        hspacing: c_int,
13494        vspacing: c_int,
13495        error: *mut *mut glib::GError,
13496        first_view: *const c_char,
13497        ...
13498    ) -> *mut glib::GList;
13499    pub fn gtk_constraint_layout_add_constraints_from_descriptionv(
13500        layout: *mut GtkConstraintLayout,
13501        lines: *const *const c_char,
13502        n_lines: size_t,
13503        hspacing: c_int,
13504        vspacing: c_int,
13505        views: *mut glib::GHashTable,
13506        error: *mut *mut glib::GError,
13507    ) -> *mut glib::GList;
13508    pub fn gtk_constraint_layout_add_guide(
13509        layout: *mut GtkConstraintLayout,
13510        guide: *mut GtkConstraintGuide,
13511    );
13512    pub fn gtk_constraint_layout_observe_constraints(
13513        layout: *mut GtkConstraintLayout,
13514    ) -> *mut gio::GListModel;
13515    pub fn gtk_constraint_layout_observe_guides(
13516        layout: *mut GtkConstraintLayout,
13517    ) -> *mut gio::GListModel;
13518    pub fn gtk_constraint_layout_remove_all_constraints(layout: *mut GtkConstraintLayout);
13519    pub fn gtk_constraint_layout_remove_constraint(
13520        layout: *mut GtkConstraintLayout,
13521        constraint: *mut GtkConstraint,
13522    );
13523    pub fn gtk_constraint_layout_remove_guide(
13524        layout: *mut GtkConstraintLayout,
13525        guide: *mut GtkConstraintGuide,
13526    );
13527
13528    //=========================================================================
13529    // GtkConstraintLayoutChild
13530    //=========================================================================
13531    pub fn gtk_constraint_layout_child_get_type() -> GType;
13532
13533    //=========================================================================
13534    // GtkCssProvider
13535    //=========================================================================
13536    pub fn gtk_css_provider_get_type() -> GType;
13537    pub fn gtk_css_provider_new() -> *mut GtkCssProvider;
13538    #[cfg(feature = "v4_12")]
13539    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13540    pub fn gtk_css_provider_load_from_bytes(
13541        css_provider: *mut GtkCssProvider,
13542        data: *mut glib::GBytes,
13543    );
13544    pub fn gtk_css_provider_load_from_data(
13545        css_provider: *mut GtkCssProvider,
13546        data: *const c_char,
13547        length: ssize_t,
13548    );
13549    pub fn gtk_css_provider_load_from_file(
13550        css_provider: *mut GtkCssProvider,
13551        file: *mut gio::GFile,
13552    );
13553    pub fn gtk_css_provider_load_from_path(css_provider: *mut GtkCssProvider, path: *const c_char);
13554    pub fn gtk_css_provider_load_from_resource(
13555        css_provider: *mut GtkCssProvider,
13556        resource_path: *const c_char,
13557    );
13558    #[cfg(feature = "v4_12")]
13559    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13560    pub fn gtk_css_provider_load_from_string(
13561        css_provider: *mut GtkCssProvider,
13562        string: *const c_char,
13563    );
13564    pub fn gtk_css_provider_load_named(
13565        provider: *mut GtkCssProvider,
13566        name: *const c_char,
13567        variant: *const c_char,
13568    );
13569    pub fn gtk_css_provider_to_string(provider: *mut GtkCssProvider) -> *mut c_char;
13570
13571    //=========================================================================
13572    // GtkCustomFilter
13573    //=========================================================================
13574    pub fn gtk_custom_filter_get_type() -> GType;
13575    pub fn gtk_custom_filter_new(
13576        match_func: GtkCustomFilterFunc,
13577        user_data: gpointer,
13578        user_destroy: glib::GDestroyNotify,
13579    ) -> *mut GtkCustomFilter;
13580    pub fn gtk_custom_filter_set_filter_func(
13581        self_: *mut GtkCustomFilter,
13582        match_func: GtkCustomFilterFunc,
13583        user_data: gpointer,
13584        user_destroy: glib::GDestroyNotify,
13585    );
13586
13587    //=========================================================================
13588    // GtkCustomLayout
13589    //=========================================================================
13590    pub fn gtk_custom_layout_get_type() -> GType;
13591    pub fn gtk_custom_layout_new(
13592        request_mode: GtkCustomRequestModeFunc,
13593        measure: GtkCustomMeasureFunc,
13594        allocate: GtkCustomAllocateFunc,
13595    ) -> *mut GtkLayoutManager;
13596
13597    //=========================================================================
13598    // GtkCustomSorter
13599    //=========================================================================
13600    pub fn gtk_custom_sorter_get_type() -> GType;
13601    pub fn gtk_custom_sorter_new(
13602        sort_func: glib::GCompareDataFunc,
13603        user_data: gpointer,
13604        user_destroy: glib::GDestroyNotify,
13605    ) -> *mut GtkCustomSorter;
13606    pub fn gtk_custom_sorter_set_sort_func(
13607        self_: *mut GtkCustomSorter,
13608        sort_func: glib::GCompareDataFunc,
13609        user_data: gpointer,
13610        user_destroy: glib::GDestroyNotify,
13611    );
13612
13613    //=========================================================================
13614    // GtkDialog
13615    //=========================================================================
13616    pub fn gtk_dialog_get_type() -> GType;
13617    pub fn gtk_dialog_new() -> *mut GtkWidget;
13618    pub fn gtk_dialog_new_with_buttons(
13619        title: *const c_char,
13620        parent: *mut GtkWindow,
13621        flags: GtkDialogFlags,
13622        first_button_text: *const c_char,
13623        ...
13624    ) -> *mut GtkWidget;
13625    pub fn gtk_dialog_add_action_widget(
13626        dialog: *mut GtkDialog,
13627        child: *mut GtkWidget,
13628        response_id: GtkResponseType,
13629    );
13630    pub fn gtk_dialog_add_button(
13631        dialog: *mut GtkDialog,
13632        button_text: *const c_char,
13633        response_id: GtkResponseType,
13634    ) -> *mut GtkWidget;
13635    pub fn gtk_dialog_add_buttons(dialog: *mut GtkDialog, first_button_text: *const c_char, ...);
13636    pub fn gtk_dialog_get_content_area(dialog: *mut GtkDialog) -> *mut GtkBox;
13637    pub fn gtk_dialog_get_header_bar(dialog: *mut GtkDialog) -> *mut GtkHeaderBar;
13638    pub fn gtk_dialog_get_response_for_widget(
13639        dialog: *mut GtkDialog,
13640        widget: *mut GtkWidget,
13641    ) -> c_int;
13642    pub fn gtk_dialog_get_widget_for_response(
13643        dialog: *mut GtkDialog,
13644        response_id: GtkResponseType,
13645    ) -> *mut GtkWidget;
13646    pub fn gtk_dialog_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
13647    pub fn gtk_dialog_set_default_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
13648    pub fn gtk_dialog_set_response_sensitive(
13649        dialog: *mut GtkDialog,
13650        response_id: GtkResponseType,
13651        setting: gboolean,
13652    );
13653
13654    //=========================================================================
13655    // GtkDirectoryList
13656    //=========================================================================
13657    pub fn gtk_directory_list_get_type() -> GType;
13658    pub fn gtk_directory_list_new(
13659        attributes: *const c_char,
13660        file: *mut gio::GFile,
13661    ) -> *mut GtkDirectoryList;
13662    pub fn gtk_directory_list_get_attributes(self_: *mut GtkDirectoryList) -> *const c_char;
13663    pub fn gtk_directory_list_get_error(self_: *mut GtkDirectoryList) -> *const glib::GError;
13664    pub fn gtk_directory_list_get_file(self_: *mut GtkDirectoryList) -> *mut gio::GFile;
13665    pub fn gtk_directory_list_get_io_priority(self_: *mut GtkDirectoryList) -> c_int;
13666    pub fn gtk_directory_list_get_monitored(self_: *mut GtkDirectoryList) -> gboolean;
13667    pub fn gtk_directory_list_is_loading(self_: *mut GtkDirectoryList) -> gboolean;
13668    pub fn gtk_directory_list_set_attributes(
13669        self_: *mut GtkDirectoryList,
13670        attributes: *const c_char,
13671    );
13672    pub fn gtk_directory_list_set_file(self_: *mut GtkDirectoryList, file: *mut gio::GFile);
13673    pub fn gtk_directory_list_set_io_priority(self_: *mut GtkDirectoryList, io_priority: c_int);
13674    pub fn gtk_directory_list_set_monitored(self_: *mut GtkDirectoryList, monitored: gboolean);
13675
13676    //=========================================================================
13677    // GtkDragIcon
13678    //=========================================================================
13679    pub fn gtk_drag_icon_get_type() -> GType;
13680    pub fn gtk_drag_icon_get_for_drag(drag: *mut gdk::GdkDrag) -> *mut GtkWidget;
13681    pub fn gtk_drag_icon_create_widget_for_value(value: *const gobject::GValue) -> *mut GtkWidget;
13682    pub fn gtk_drag_icon_set_from_paintable(
13683        drag: *mut gdk::GdkDrag,
13684        paintable: *mut gdk::GdkPaintable,
13685        hot_x: c_int,
13686        hot_y: c_int,
13687    );
13688    pub fn gtk_drag_icon_get_child(self_: *mut GtkDragIcon) -> *mut GtkWidget;
13689    pub fn gtk_drag_icon_set_child(self_: *mut GtkDragIcon, child: *mut GtkWidget);
13690
13691    //=========================================================================
13692    // GtkDragSource
13693    //=========================================================================
13694    pub fn gtk_drag_source_get_type() -> GType;
13695    pub fn gtk_drag_source_new() -> *mut GtkDragSource;
13696    pub fn gtk_drag_source_drag_cancel(source: *mut GtkDragSource);
13697    pub fn gtk_drag_source_get_actions(source: *mut GtkDragSource) -> gdk::GdkDragAction;
13698    pub fn gtk_drag_source_get_content(source: *mut GtkDragSource) -> *mut gdk::GdkContentProvider;
13699    pub fn gtk_drag_source_get_drag(source: *mut GtkDragSource) -> *mut gdk::GdkDrag;
13700    pub fn gtk_drag_source_set_actions(source: *mut GtkDragSource, actions: gdk::GdkDragAction);
13701    pub fn gtk_drag_source_set_content(
13702        source: *mut GtkDragSource,
13703        content: *mut gdk::GdkContentProvider,
13704    );
13705    pub fn gtk_drag_source_set_icon(
13706        source: *mut GtkDragSource,
13707        paintable: *mut gdk::GdkPaintable,
13708        hot_x: c_int,
13709        hot_y: c_int,
13710    );
13711
13712    //=========================================================================
13713    // GtkDrawingArea
13714    //=========================================================================
13715    pub fn gtk_drawing_area_get_type() -> GType;
13716    pub fn gtk_drawing_area_new() -> *mut GtkWidget;
13717    pub fn gtk_drawing_area_get_content_height(self_: *mut GtkDrawingArea) -> c_int;
13718    pub fn gtk_drawing_area_get_content_width(self_: *mut GtkDrawingArea) -> c_int;
13719    pub fn gtk_drawing_area_set_content_height(self_: *mut GtkDrawingArea, height: c_int);
13720    pub fn gtk_drawing_area_set_content_width(self_: *mut GtkDrawingArea, width: c_int);
13721    pub fn gtk_drawing_area_set_draw_func(
13722        self_: *mut GtkDrawingArea,
13723        draw_func: GtkDrawingAreaDrawFunc,
13724        user_data: gpointer,
13725        destroy: glib::GDestroyNotify,
13726    );
13727
13728    //=========================================================================
13729    // GtkDropControllerMotion
13730    //=========================================================================
13731    pub fn gtk_drop_controller_motion_get_type() -> GType;
13732    pub fn gtk_drop_controller_motion_new() -> *mut GtkEventController;
13733    pub fn gtk_drop_controller_motion_contains_pointer(
13734        self_: *mut GtkDropControllerMotion,
13735    ) -> gboolean;
13736    pub fn gtk_drop_controller_motion_get_drop(
13737        self_: *mut GtkDropControllerMotion,
13738    ) -> *mut gdk::GdkDrop;
13739    pub fn gtk_drop_controller_motion_is_pointer(self_: *mut GtkDropControllerMotion) -> gboolean;
13740
13741    //=========================================================================
13742    // GtkDropDown
13743    //=========================================================================
13744    pub fn gtk_drop_down_get_type() -> GType;
13745    pub fn gtk_drop_down_new(
13746        model: *mut gio::GListModel,
13747        expression: *mut GtkExpression,
13748    ) -> *mut GtkWidget;
13749    pub fn gtk_drop_down_new_from_strings(strings: *const *const c_char) -> *mut GtkWidget;
13750    pub fn gtk_drop_down_get_enable_search(self_: *mut GtkDropDown) -> gboolean;
13751    pub fn gtk_drop_down_get_expression(self_: *mut GtkDropDown) -> *mut GtkExpression;
13752    pub fn gtk_drop_down_get_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13753    #[cfg(feature = "v4_12")]
13754    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13755    pub fn gtk_drop_down_get_header_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13756    pub fn gtk_drop_down_get_list_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13757    pub fn gtk_drop_down_get_model(self_: *mut GtkDropDown) -> *mut gio::GListModel;
13758    #[cfg(feature = "v4_12")]
13759    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13760    pub fn gtk_drop_down_get_search_match_mode(self_: *mut GtkDropDown)
13761        -> GtkStringFilterMatchMode;
13762    pub fn gtk_drop_down_get_selected(self_: *mut GtkDropDown) -> c_uint;
13763    pub fn gtk_drop_down_get_selected_item(self_: *mut GtkDropDown) -> *mut gobject::GObject;
13764    #[cfg(feature = "v4_6")]
13765    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13766    pub fn gtk_drop_down_get_show_arrow(self_: *mut GtkDropDown) -> gboolean;
13767    pub fn gtk_drop_down_set_enable_search(self_: *mut GtkDropDown, enable_search: gboolean);
13768    pub fn gtk_drop_down_set_expression(self_: *mut GtkDropDown, expression: *mut GtkExpression);
13769    pub fn gtk_drop_down_set_factory(self_: *mut GtkDropDown, factory: *mut GtkListItemFactory);
13770    #[cfg(feature = "v4_12")]
13771    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13772    pub fn gtk_drop_down_set_header_factory(
13773        self_: *mut GtkDropDown,
13774        factory: *mut GtkListItemFactory,
13775    );
13776    pub fn gtk_drop_down_set_list_factory(
13777        self_: *mut GtkDropDown,
13778        factory: *mut GtkListItemFactory,
13779    );
13780    pub fn gtk_drop_down_set_model(self_: *mut GtkDropDown, model: *mut gio::GListModel);
13781    #[cfg(feature = "v4_12")]
13782    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13783    pub fn gtk_drop_down_set_search_match_mode(
13784        self_: *mut GtkDropDown,
13785        search_match_mode: GtkStringFilterMatchMode,
13786    );
13787    pub fn gtk_drop_down_set_selected(self_: *mut GtkDropDown, position: c_uint);
13788    #[cfg(feature = "v4_6")]
13789    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13790    pub fn gtk_drop_down_set_show_arrow(self_: *mut GtkDropDown, show_arrow: gboolean);
13791
13792    //=========================================================================
13793    // GtkDropTarget
13794    //=========================================================================
13795    pub fn gtk_drop_target_get_type() -> GType;
13796    pub fn gtk_drop_target_new(type_: GType, actions: gdk::GdkDragAction) -> *mut GtkDropTarget;
13797    pub fn gtk_drop_target_get_actions(self_: *mut GtkDropTarget) -> gdk::GdkDragAction;
13798    #[cfg(feature = "v4_4")]
13799    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
13800    pub fn gtk_drop_target_get_current_drop(self_: *mut GtkDropTarget) -> *mut gdk::GdkDrop;
13801    pub fn gtk_drop_target_get_drop(self_: *mut GtkDropTarget) -> *mut gdk::GdkDrop;
13802    pub fn gtk_drop_target_get_formats(self_: *mut GtkDropTarget) -> *mut gdk::GdkContentFormats;
13803    pub fn gtk_drop_target_get_gtypes(
13804        self_: *mut GtkDropTarget,
13805        n_types: *mut size_t,
13806    ) -> *const GType;
13807    pub fn gtk_drop_target_get_preload(self_: *mut GtkDropTarget) -> gboolean;
13808    pub fn gtk_drop_target_get_value(self_: *mut GtkDropTarget) -> *const gobject::GValue;
13809    pub fn gtk_drop_target_reject(self_: *mut GtkDropTarget);
13810    pub fn gtk_drop_target_set_actions(self_: *mut GtkDropTarget, actions: gdk::GdkDragAction);
13811    pub fn gtk_drop_target_set_gtypes(
13812        self_: *mut GtkDropTarget,
13813        types: *mut GType,
13814        n_types: size_t,
13815    );
13816    pub fn gtk_drop_target_set_preload(self_: *mut GtkDropTarget, preload: gboolean);
13817
13818    //=========================================================================
13819    // GtkDropTargetAsync
13820    //=========================================================================
13821    pub fn gtk_drop_target_async_get_type() -> GType;
13822    pub fn gtk_drop_target_async_new(
13823        formats: *mut gdk::GdkContentFormats,
13824        actions: gdk::GdkDragAction,
13825    ) -> *mut GtkDropTargetAsync;
13826    pub fn gtk_drop_target_async_get_actions(self_: *mut GtkDropTargetAsync) -> gdk::GdkDragAction;
13827    pub fn gtk_drop_target_async_get_formats(
13828        self_: *mut GtkDropTargetAsync,
13829    ) -> *mut gdk::GdkContentFormats;
13830    pub fn gtk_drop_target_async_reject_drop(
13831        self_: *mut GtkDropTargetAsync,
13832        drop: *mut gdk::GdkDrop,
13833    );
13834    pub fn gtk_drop_target_async_set_actions(
13835        self_: *mut GtkDropTargetAsync,
13836        actions: gdk::GdkDragAction,
13837    );
13838    pub fn gtk_drop_target_async_set_formats(
13839        self_: *mut GtkDropTargetAsync,
13840        formats: *mut gdk::GdkContentFormats,
13841    );
13842
13843    //=========================================================================
13844    // GtkEditableLabel
13845    //=========================================================================
13846    pub fn gtk_editable_label_get_type() -> GType;
13847    pub fn gtk_editable_label_new(str: *const c_char) -> *mut GtkWidget;
13848    pub fn gtk_editable_label_get_editing(self_: *mut GtkEditableLabel) -> gboolean;
13849    pub fn gtk_editable_label_start_editing(self_: *mut GtkEditableLabel);
13850    pub fn gtk_editable_label_stop_editing(self_: *mut GtkEditableLabel, commit: gboolean);
13851
13852    //=========================================================================
13853    // GtkEmojiChooser
13854    //=========================================================================
13855    pub fn gtk_emoji_chooser_get_type() -> GType;
13856    pub fn gtk_emoji_chooser_new() -> *mut GtkWidget;
13857
13858    //=========================================================================
13859    // GtkEntry
13860    //=========================================================================
13861    pub fn gtk_entry_get_type() -> GType;
13862    pub fn gtk_entry_new() -> *mut GtkWidget;
13863    pub fn gtk_entry_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
13864    pub fn gtk_entry_get_activates_default(entry: *mut GtkEntry) -> gboolean;
13865    pub fn gtk_entry_get_alignment(entry: *mut GtkEntry) -> c_float;
13866    pub fn gtk_entry_get_attributes(entry: *mut GtkEntry) -> *mut pango::PangoAttrList;
13867    pub fn gtk_entry_get_buffer(entry: *mut GtkEntry) -> *mut GtkEntryBuffer;
13868    pub fn gtk_entry_get_completion(entry: *mut GtkEntry) -> *mut GtkEntryCompletion;
13869    pub fn gtk_entry_get_current_icon_drag_source(entry: *mut GtkEntry) -> c_int;
13870    pub fn gtk_entry_get_extra_menu(entry: *mut GtkEntry) -> *mut gio::GMenuModel;
13871    pub fn gtk_entry_get_has_frame(entry: *mut GtkEntry) -> gboolean;
13872    pub fn gtk_entry_get_icon_activatable(
13873        entry: *mut GtkEntry,
13874        icon_pos: GtkEntryIconPosition,
13875    ) -> gboolean;
13876    pub fn gtk_entry_get_icon_area(
13877        entry: *mut GtkEntry,
13878        icon_pos: GtkEntryIconPosition,
13879        icon_area: *mut gdk::GdkRectangle,
13880    );
13881    pub fn gtk_entry_get_icon_at_pos(entry: *mut GtkEntry, x: c_int, y: c_int) -> c_int;
13882    pub fn gtk_entry_get_icon_gicon(
13883        entry: *mut GtkEntry,
13884        icon_pos: GtkEntryIconPosition,
13885    ) -> *mut gio::GIcon;
13886    pub fn gtk_entry_get_icon_name(
13887        entry: *mut GtkEntry,
13888        icon_pos: GtkEntryIconPosition,
13889    ) -> *const c_char;
13890    pub fn gtk_entry_get_icon_paintable(
13891        entry: *mut GtkEntry,
13892        icon_pos: GtkEntryIconPosition,
13893    ) -> *mut gdk::GdkPaintable;
13894    pub fn gtk_entry_get_icon_sensitive(
13895        entry: *mut GtkEntry,
13896        icon_pos: GtkEntryIconPosition,
13897    ) -> gboolean;
13898    pub fn gtk_entry_get_icon_storage_type(
13899        entry: *mut GtkEntry,
13900        icon_pos: GtkEntryIconPosition,
13901    ) -> GtkImageType;
13902    pub fn gtk_entry_get_icon_tooltip_markup(
13903        entry: *mut GtkEntry,
13904        icon_pos: GtkEntryIconPosition,
13905    ) -> *mut c_char;
13906    pub fn gtk_entry_get_icon_tooltip_text(
13907        entry: *mut GtkEntry,
13908        icon_pos: GtkEntryIconPosition,
13909    ) -> *mut c_char;
13910    pub fn gtk_entry_get_input_hints(entry: *mut GtkEntry) -> GtkInputHints;
13911    pub fn gtk_entry_get_input_purpose(entry: *mut GtkEntry) -> GtkInputPurpose;
13912    pub fn gtk_entry_get_invisible_char(entry: *mut GtkEntry) -> u32;
13913    pub fn gtk_entry_get_max_length(entry: *mut GtkEntry) -> c_int;
13914    #[cfg(feature = "v4_20")]
13915    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
13916    pub fn gtk_entry_get_menu_entry_icon_text(
13917        entry: *mut GtkEntry,
13918        icon_pos: GtkEntryIconPosition,
13919    ) -> *const c_char;
13920    pub fn gtk_entry_get_overwrite_mode(entry: *mut GtkEntry) -> gboolean;
13921    pub fn gtk_entry_get_placeholder_text(entry: *mut GtkEntry) -> *const c_char;
13922    pub fn gtk_entry_get_progress_fraction(entry: *mut GtkEntry) -> c_double;
13923    pub fn gtk_entry_get_progress_pulse_step(entry: *mut GtkEntry) -> c_double;
13924    pub fn gtk_entry_get_tabs(entry: *mut GtkEntry) -> *mut pango::PangoTabArray;
13925    pub fn gtk_entry_get_text_length(entry: *mut GtkEntry) -> u16;
13926    pub fn gtk_entry_get_visibility(entry: *mut GtkEntry) -> gboolean;
13927    pub fn gtk_entry_grab_focus_without_selecting(entry: *mut GtkEntry) -> gboolean;
13928    pub fn gtk_entry_progress_pulse(entry: *mut GtkEntry);
13929    pub fn gtk_entry_reset_im_context(entry: *mut GtkEntry);
13930    pub fn gtk_entry_set_activates_default(entry: *mut GtkEntry, setting: gboolean);
13931    pub fn gtk_entry_set_alignment(entry: *mut GtkEntry, xalign: c_float);
13932    pub fn gtk_entry_set_attributes(entry: *mut GtkEntry, attrs: *mut pango::PangoAttrList);
13933    pub fn gtk_entry_set_buffer(entry: *mut GtkEntry, buffer: *mut GtkEntryBuffer);
13934    pub fn gtk_entry_set_completion(entry: *mut GtkEntry, completion: *mut GtkEntryCompletion);
13935    pub fn gtk_entry_set_extra_menu(entry: *mut GtkEntry, model: *mut gio::GMenuModel);
13936    pub fn gtk_entry_set_has_frame(entry: *mut GtkEntry, setting: gboolean);
13937    pub fn gtk_entry_set_icon_activatable(
13938        entry: *mut GtkEntry,
13939        icon_pos: GtkEntryIconPosition,
13940        activatable: gboolean,
13941    );
13942    pub fn gtk_entry_set_icon_drag_source(
13943        entry: *mut GtkEntry,
13944        icon_pos: GtkEntryIconPosition,
13945        provider: *mut gdk::GdkContentProvider,
13946        actions: gdk::GdkDragAction,
13947    );
13948    pub fn gtk_entry_set_icon_from_gicon(
13949        entry: *mut GtkEntry,
13950        icon_pos: GtkEntryIconPosition,
13951        icon: *mut gio::GIcon,
13952    );
13953    pub fn gtk_entry_set_icon_from_icon_name(
13954        entry: *mut GtkEntry,
13955        icon_pos: GtkEntryIconPosition,
13956        icon_name: *const c_char,
13957    );
13958    pub fn gtk_entry_set_icon_from_paintable(
13959        entry: *mut GtkEntry,
13960        icon_pos: GtkEntryIconPosition,
13961        paintable: *mut gdk::GdkPaintable,
13962    );
13963    pub fn gtk_entry_set_icon_sensitive(
13964        entry: *mut GtkEntry,
13965        icon_pos: GtkEntryIconPosition,
13966        sensitive: gboolean,
13967    );
13968    pub fn gtk_entry_set_icon_tooltip_markup(
13969        entry: *mut GtkEntry,
13970        icon_pos: GtkEntryIconPosition,
13971        tooltip: *const c_char,
13972    );
13973    pub fn gtk_entry_set_icon_tooltip_text(
13974        entry: *mut GtkEntry,
13975        icon_pos: GtkEntryIconPosition,
13976        tooltip: *const c_char,
13977    );
13978    pub fn gtk_entry_set_input_hints(entry: *mut GtkEntry, hints: GtkInputHints);
13979    pub fn gtk_entry_set_input_purpose(entry: *mut GtkEntry, purpose: GtkInputPurpose);
13980    pub fn gtk_entry_set_invisible_char(entry: *mut GtkEntry, ch: u32);
13981    pub fn gtk_entry_set_max_length(entry: *mut GtkEntry, max: c_int);
13982    #[cfg(feature = "v4_20")]
13983    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
13984    pub fn gtk_entry_set_menu_entry_icon_text(
13985        entry: *mut GtkEntry,
13986        icon_pos: GtkEntryIconPosition,
13987        text: *const c_char,
13988    );
13989    pub fn gtk_entry_set_overwrite_mode(entry: *mut GtkEntry, overwrite: gboolean);
13990    pub fn gtk_entry_set_placeholder_text(entry: *mut GtkEntry, text: *const c_char);
13991    pub fn gtk_entry_set_progress_fraction(entry: *mut GtkEntry, fraction: c_double);
13992    pub fn gtk_entry_set_progress_pulse_step(entry: *mut GtkEntry, fraction: c_double);
13993    pub fn gtk_entry_set_tabs(entry: *mut GtkEntry, tabs: *mut pango::PangoTabArray);
13994    pub fn gtk_entry_set_visibility(entry: *mut GtkEntry, visible: gboolean);
13995    pub fn gtk_entry_unset_invisible_char(entry: *mut GtkEntry);
13996
13997    //=========================================================================
13998    // GtkEntryBuffer
13999    //=========================================================================
14000    pub fn gtk_entry_buffer_get_type() -> GType;
14001    pub fn gtk_entry_buffer_new(
14002        initial_chars: *const c_char,
14003        n_initial_chars: c_int,
14004    ) -> *mut GtkEntryBuffer;
14005    pub fn gtk_entry_buffer_delete_text(
14006        buffer: *mut GtkEntryBuffer,
14007        position: c_uint,
14008        n_chars: c_int,
14009    ) -> c_uint;
14010    pub fn gtk_entry_buffer_emit_deleted_text(
14011        buffer: *mut GtkEntryBuffer,
14012        position: c_uint,
14013        n_chars: c_uint,
14014    );
14015    pub fn gtk_entry_buffer_emit_inserted_text(
14016        buffer: *mut GtkEntryBuffer,
14017        position: c_uint,
14018        chars: *const c_char,
14019        n_chars: c_uint,
14020    );
14021    pub fn gtk_entry_buffer_get_bytes(buffer: *mut GtkEntryBuffer) -> size_t;
14022    pub fn gtk_entry_buffer_get_length(buffer: *mut GtkEntryBuffer) -> c_uint;
14023    pub fn gtk_entry_buffer_get_max_length(buffer: *mut GtkEntryBuffer) -> c_int;
14024    pub fn gtk_entry_buffer_get_text(buffer: *mut GtkEntryBuffer) -> *const c_char;
14025    pub fn gtk_entry_buffer_insert_text(
14026        buffer: *mut GtkEntryBuffer,
14027        position: c_uint,
14028        chars: *const c_char,
14029        n_chars: c_int,
14030    ) -> c_uint;
14031    pub fn gtk_entry_buffer_set_max_length(buffer: *mut GtkEntryBuffer, max_length: c_int);
14032    pub fn gtk_entry_buffer_set_text(
14033        buffer: *mut GtkEntryBuffer,
14034        chars: *const c_char,
14035        n_chars: c_int,
14036    );
14037
14038    //=========================================================================
14039    // GtkEntryCompletion
14040    //=========================================================================
14041    pub fn gtk_entry_completion_get_type() -> GType;
14042    pub fn gtk_entry_completion_new() -> *mut GtkEntryCompletion;
14043    pub fn gtk_entry_completion_new_with_area(area: *mut GtkCellArea) -> *mut GtkEntryCompletion;
14044    pub fn gtk_entry_completion_complete(completion: *mut GtkEntryCompletion);
14045    pub fn gtk_entry_completion_compute_prefix(
14046        completion: *mut GtkEntryCompletion,
14047        key: *const c_char,
14048    ) -> *mut c_char;
14049    pub fn gtk_entry_completion_get_completion_prefix(
14050        completion: *mut GtkEntryCompletion,
14051    ) -> *const c_char;
14052    pub fn gtk_entry_completion_get_entry(completion: *mut GtkEntryCompletion) -> *mut GtkWidget;
14053    pub fn gtk_entry_completion_get_inline_completion(
14054        completion: *mut GtkEntryCompletion,
14055    ) -> gboolean;
14056    pub fn gtk_entry_completion_get_inline_selection(
14057        completion: *mut GtkEntryCompletion,
14058    ) -> gboolean;
14059    pub fn gtk_entry_completion_get_minimum_key_length(
14060        completion: *mut GtkEntryCompletion,
14061    ) -> c_int;
14062    pub fn gtk_entry_completion_get_model(completion: *mut GtkEntryCompletion)
14063        -> *mut GtkTreeModel;
14064    pub fn gtk_entry_completion_get_popup_completion(
14065        completion: *mut GtkEntryCompletion,
14066    ) -> gboolean;
14067    pub fn gtk_entry_completion_get_popup_set_width(
14068        completion: *mut GtkEntryCompletion,
14069    ) -> gboolean;
14070    pub fn gtk_entry_completion_get_popup_single_match(
14071        completion: *mut GtkEntryCompletion,
14072    ) -> gboolean;
14073    pub fn gtk_entry_completion_get_text_column(completion: *mut GtkEntryCompletion) -> c_int;
14074    pub fn gtk_entry_completion_insert_prefix(completion: *mut GtkEntryCompletion);
14075    pub fn gtk_entry_completion_set_inline_completion(
14076        completion: *mut GtkEntryCompletion,
14077        inline_completion: gboolean,
14078    );
14079    pub fn gtk_entry_completion_set_inline_selection(
14080        completion: *mut GtkEntryCompletion,
14081        inline_selection: gboolean,
14082    );
14083    pub fn gtk_entry_completion_set_match_func(
14084        completion: *mut GtkEntryCompletion,
14085        func: GtkEntryCompletionMatchFunc,
14086        func_data: gpointer,
14087        func_notify: glib::GDestroyNotify,
14088    );
14089    pub fn gtk_entry_completion_set_minimum_key_length(
14090        completion: *mut GtkEntryCompletion,
14091        length: c_int,
14092    );
14093    pub fn gtk_entry_completion_set_model(
14094        completion: *mut GtkEntryCompletion,
14095        model: *mut GtkTreeModel,
14096    );
14097    pub fn gtk_entry_completion_set_popup_completion(
14098        completion: *mut GtkEntryCompletion,
14099        popup_completion: gboolean,
14100    );
14101    pub fn gtk_entry_completion_set_popup_set_width(
14102        completion: *mut GtkEntryCompletion,
14103        popup_set_width: gboolean,
14104    );
14105    pub fn gtk_entry_completion_set_popup_single_match(
14106        completion: *mut GtkEntryCompletion,
14107        popup_single_match: gboolean,
14108    );
14109    pub fn gtk_entry_completion_set_text_column(completion: *mut GtkEntryCompletion, column: c_int);
14110
14111    //=========================================================================
14112    // GtkEventController
14113    //=========================================================================
14114    pub fn gtk_event_controller_get_type() -> GType;
14115    pub fn gtk_event_controller_get_current_event(
14116        controller: *mut GtkEventController,
14117    ) -> *mut gdk::GdkEvent;
14118    pub fn gtk_event_controller_get_current_event_device(
14119        controller: *mut GtkEventController,
14120    ) -> *mut gdk::GdkDevice;
14121    pub fn gtk_event_controller_get_current_event_state(
14122        controller: *mut GtkEventController,
14123    ) -> gdk::GdkModifierType;
14124    pub fn gtk_event_controller_get_current_event_time(controller: *mut GtkEventController) -> u32;
14125    pub fn gtk_event_controller_get_name(controller: *mut GtkEventController) -> *const c_char;
14126    pub fn gtk_event_controller_get_propagation_limit(
14127        controller: *mut GtkEventController,
14128    ) -> GtkPropagationLimit;
14129    pub fn gtk_event_controller_get_propagation_phase(
14130        controller: *mut GtkEventController,
14131    ) -> GtkPropagationPhase;
14132    pub fn gtk_event_controller_get_widget(controller: *mut GtkEventController) -> *mut GtkWidget;
14133    pub fn gtk_event_controller_reset(controller: *mut GtkEventController);
14134    pub fn gtk_event_controller_set_name(controller: *mut GtkEventController, name: *const c_char);
14135    pub fn gtk_event_controller_set_propagation_limit(
14136        controller: *mut GtkEventController,
14137        limit: GtkPropagationLimit,
14138    );
14139    pub fn gtk_event_controller_set_propagation_phase(
14140        controller: *mut GtkEventController,
14141        phase: GtkPropagationPhase,
14142    );
14143    #[cfg(feature = "v4_8")]
14144    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
14145    pub fn gtk_event_controller_set_static_name(
14146        controller: *mut GtkEventController,
14147        name: *const c_char,
14148    );
14149
14150    //=========================================================================
14151    // GtkEventControllerFocus
14152    //=========================================================================
14153    pub fn gtk_event_controller_focus_get_type() -> GType;
14154    pub fn gtk_event_controller_focus_new() -> *mut GtkEventController;
14155    pub fn gtk_event_controller_focus_contains_focus(
14156        self_: *mut GtkEventControllerFocus,
14157    ) -> gboolean;
14158    pub fn gtk_event_controller_focus_is_focus(self_: *mut GtkEventControllerFocus) -> gboolean;
14159
14160    //=========================================================================
14161    // GtkEventControllerKey
14162    //=========================================================================
14163    pub fn gtk_event_controller_key_get_type() -> GType;
14164    pub fn gtk_event_controller_key_new() -> *mut GtkEventController;
14165    pub fn gtk_event_controller_key_forward(
14166        controller: *mut GtkEventControllerKey,
14167        widget: *mut GtkWidget,
14168    ) -> gboolean;
14169    pub fn gtk_event_controller_key_get_group(controller: *mut GtkEventControllerKey) -> c_uint;
14170    pub fn gtk_event_controller_key_get_im_context(
14171        controller: *mut GtkEventControllerKey,
14172    ) -> *mut GtkIMContext;
14173    pub fn gtk_event_controller_key_set_im_context(
14174        controller: *mut GtkEventControllerKey,
14175        im_context: *mut GtkIMContext,
14176    );
14177
14178    //=========================================================================
14179    // GtkEventControllerLegacy
14180    //=========================================================================
14181    pub fn gtk_event_controller_legacy_get_type() -> GType;
14182    pub fn gtk_event_controller_legacy_new() -> *mut GtkEventController;
14183
14184    //=========================================================================
14185    // GtkEventControllerMotion
14186    //=========================================================================
14187    pub fn gtk_event_controller_motion_get_type() -> GType;
14188    pub fn gtk_event_controller_motion_new() -> *mut GtkEventController;
14189    pub fn gtk_event_controller_motion_contains_pointer(
14190        self_: *mut GtkEventControllerMotion,
14191    ) -> gboolean;
14192    pub fn gtk_event_controller_motion_is_pointer(self_: *mut GtkEventControllerMotion)
14193        -> gboolean;
14194
14195    //=========================================================================
14196    // GtkEventControllerScroll
14197    //=========================================================================
14198    pub fn gtk_event_controller_scroll_get_type() -> GType;
14199    pub fn gtk_event_controller_scroll_new(
14200        flags: GtkEventControllerScrollFlags,
14201    ) -> *mut GtkEventController;
14202    pub fn gtk_event_controller_scroll_get_flags(
14203        scroll: *mut GtkEventControllerScroll,
14204    ) -> GtkEventControllerScrollFlags;
14205    #[cfg(feature = "v4_8")]
14206    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
14207    pub fn gtk_event_controller_scroll_get_unit(
14208        scroll: *mut GtkEventControllerScroll,
14209    ) -> gdk::GdkScrollUnit;
14210    pub fn gtk_event_controller_scroll_set_flags(
14211        scroll: *mut GtkEventControllerScroll,
14212        flags: GtkEventControllerScrollFlags,
14213    );
14214
14215    //=========================================================================
14216    // GtkEveryFilter
14217    //=========================================================================
14218    pub fn gtk_every_filter_get_type() -> GType;
14219    pub fn gtk_every_filter_new() -> *mut GtkEveryFilter;
14220
14221    //=========================================================================
14222    // GtkExpander
14223    //=========================================================================
14224    pub fn gtk_expander_get_type() -> GType;
14225    pub fn gtk_expander_new(label: *const c_char) -> *mut GtkWidget;
14226    pub fn gtk_expander_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
14227    pub fn gtk_expander_get_child(expander: *mut GtkExpander) -> *mut GtkWidget;
14228    pub fn gtk_expander_get_expanded(expander: *mut GtkExpander) -> gboolean;
14229    pub fn gtk_expander_get_label(expander: *mut GtkExpander) -> *const c_char;
14230    pub fn gtk_expander_get_label_widget(expander: *mut GtkExpander) -> *mut GtkWidget;
14231    pub fn gtk_expander_get_resize_toplevel(expander: *mut GtkExpander) -> gboolean;
14232    pub fn gtk_expander_get_use_markup(expander: *mut GtkExpander) -> gboolean;
14233    pub fn gtk_expander_get_use_underline(expander: *mut GtkExpander) -> gboolean;
14234    pub fn gtk_expander_set_child(expander: *mut GtkExpander, child: *mut GtkWidget);
14235    pub fn gtk_expander_set_expanded(expander: *mut GtkExpander, expanded: gboolean);
14236    pub fn gtk_expander_set_label(expander: *mut GtkExpander, label: *const c_char);
14237    pub fn gtk_expander_set_label_widget(expander: *mut GtkExpander, label_widget: *mut GtkWidget);
14238    pub fn gtk_expander_set_resize_toplevel(expander: *mut GtkExpander, resize_toplevel: gboolean);
14239    pub fn gtk_expander_set_use_markup(expander: *mut GtkExpander, use_markup: gboolean);
14240    pub fn gtk_expander_set_use_underline(expander: *mut GtkExpander, use_underline: gboolean);
14241
14242    //=========================================================================
14243    // GtkExpression
14244    //=========================================================================
14245    pub fn gtk_expression_get_type() -> GType;
14246    pub fn gtk_expression_bind(
14247        self_: *mut GtkExpression,
14248        target: *mut gobject::GObject,
14249        property: *const c_char,
14250        this_: *mut gobject::GObject,
14251    ) -> *mut GtkExpressionWatch;
14252    pub fn gtk_expression_evaluate(
14253        self_: *mut GtkExpression,
14254        this_: *mut gobject::GObject,
14255        value: *mut gobject::GValue,
14256    ) -> gboolean;
14257    pub fn gtk_expression_get_value_type(self_: *mut GtkExpression) -> GType;
14258    pub fn gtk_expression_is_static(self_: *mut GtkExpression) -> gboolean;
14259    pub fn gtk_expression_ref(self_: *mut GtkExpression) -> *mut GtkExpression;
14260    pub fn gtk_expression_unref(self_: *mut GtkExpression);
14261    pub fn gtk_expression_watch(
14262        self_: *mut GtkExpression,
14263        this_: *mut gobject::GObject,
14264        notify: GtkExpressionNotify,
14265        user_data: gpointer,
14266        user_destroy: glib::GDestroyNotify,
14267    ) -> *mut GtkExpressionWatch;
14268
14269    //=========================================================================
14270    // GtkFileChooserDialog
14271    //=========================================================================
14272    pub fn gtk_file_chooser_dialog_get_type() -> GType;
14273    pub fn gtk_file_chooser_dialog_new(
14274        title: *const c_char,
14275        parent: *mut GtkWindow,
14276        action: GtkFileChooserAction,
14277        first_button_text: *const c_char,
14278        ...
14279    ) -> *mut GtkWidget;
14280
14281    //=========================================================================
14282    // GtkFileChooserNative
14283    //=========================================================================
14284    pub fn gtk_file_chooser_native_get_type() -> GType;
14285    pub fn gtk_file_chooser_native_new(
14286        title: *const c_char,
14287        parent: *mut GtkWindow,
14288        action: GtkFileChooserAction,
14289        accept_label: *const c_char,
14290        cancel_label: *const c_char,
14291    ) -> *mut GtkFileChooserNative;
14292    pub fn gtk_file_chooser_native_get_accept_label(
14293        self_: *mut GtkFileChooserNative,
14294    ) -> *const c_char;
14295    pub fn gtk_file_chooser_native_get_cancel_label(
14296        self_: *mut GtkFileChooserNative,
14297    ) -> *const c_char;
14298    pub fn gtk_file_chooser_native_set_accept_label(
14299        self_: *mut GtkFileChooserNative,
14300        accept_label: *const c_char,
14301    );
14302    pub fn gtk_file_chooser_native_set_cancel_label(
14303        self_: *mut GtkFileChooserNative,
14304        cancel_label: *const c_char,
14305    );
14306
14307    //=========================================================================
14308    // GtkFileChooserWidget
14309    //=========================================================================
14310    pub fn gtk_file_chooser_widget_get_type() -> GType;
14311    pub fn gtk_file_chooser_widget_new(action: GtkFileChooserAction) -> *mut GtkWidget;
14312
14313    //=========================================================================
14314    // GtkFileDialog
14315    //=========================================================================
14316    #[cfg(feature = "v4_10")]
14317    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14318    pub fn gtk_file_dialog_get_type() -> GType;
14319    #[cfg(feature = "v4_10")]
14320    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14321    pub fn gtk_file_dialog_new() -> *mut GtkFileDialog;
14322    #[cfg(feature = "v4_10")]
14323    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14324    pub fn gtk_file_dialog_get_accept_label(self_: *mut GtkFileDialog) -> *const c_char;
14325    #[cfg(feature = "v4_10")]
14326    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14327    pub fn gtk_file_dialog_get_default_filter(self_: *mut GtkFileDialog) -> *mut GtkFileFilter;
14328    #[cfg(feature = "v4_10")]
14329    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14330    pub fn gtk_file_dialog_get_filters(self_: *mut GtkFileDialog) -> *mut gio::GListModel;
14331    #[cfg(feature = "v4_10")]
14332    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14333    pub fn gtk_file_dialog_get_initial_file(self_: *mut GtkFileDialog) -> *mut gio::GFile;
14334    #[cfg(feature = "v4_10")]
14335    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14336    pub fn gtk_file_dialog_get_initial_folder(self_: *mut GtkFileDialog) -> *mut gio::GFile;
14337    #[cfg(feature = "v4_10")]
14338    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14339    pub fn gtk_file_dialog_get_initial_name(self_: *mut GtkFileDialog) -> *const c_char;
14340    #[cfg(feature = "v4_10")]
14341    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14342    pub fn gtk_file_dialog_get_modal(self_: *mut GtkFileDialog) -> gboolean;
14343    #[cfg(feature = "v4_10")]
14344    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14345    pub fn gtk_file_dialog_get_title(self_: *mut GtkFileDialog) -> *const c_char;
14346    #[cfg(feature = "v4_10")]
14347    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14348    pub fn gtk_file_dialog_open(
14349        self_: *mut GtkFileDialog,
14350        parent: *mut GtkWindow,
14351        cancellable: *mut gio::GCancellable,
14352        callback: gio::GAsyncReadyCallback,
14353        user_data: gpointer,
14354    );
14355    #[cfg(feature = "v4_10")]
14356    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14357    pub fn gtk_file_dialog_open_finish(
14358        self_: *mut GtkFileDialog,
14359        result: *mut gio::GAsyncResult,
14360        error: *mut *mut glib::GError,
14361    ) -> *mut gio::GFile;
14362    #[cfg(feature = "v4_10")]
14363    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14364    pub fn gtk_file_dialog_open_multiple(
14365        self_: *mut GtkFileDialog,
14366        parent: *mut GtkWindow,
14367        cancellable: *mut gio::GCancellable,
14368        callback: gio::GAsyncReadyCallback,
14369        user_data: gpointer,
14370    );
14371    #[cfg(feature = "v4_10")]
14372    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14373    pub fn gtk_file_dialog_open_multiple_finish(
14374        self_: *mut GtkFileDialog,
14375        result: *mut gio::GAsyncResult,
14376        error: *mut *mut glib::GError,
14377    ) -> *mut gio::GListModel;
14378    #[cfg(feature = "v4_18")]
14379    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14380    pub fn gtk_file_dialog_open_multiple_text_files(
14381        self_: *mut GtkFileDialog,
14382        parent: *mut GtkWindow,
14383        cancellable: *mut gio::GCancellable,
14384        callback: gio::GAsyncReadyCallback,
14385        user_data: gpointer,
14386    );
14387    #[cfg(feature = "v4_18")]
14388    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14389    pub fn gtk_file_dialog_open_multiple_text_files_finish(
14390        self_: *mut GtkFileDialog,
14391        result: *mut gio::GAsyncResult,
14392        encoding: *mut *const c_char,
14393        error: *mut *mut glib::GError,
14394    ) -> *mut gio::GListModel;
14395    #[cfg(feature = "v4_18")]
14396    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14397    pub fn gtk_file_dialog_open_text_file(
14398        self_: *mut GtkFileDialog,
14399        parent: *mut GtkWindow,
14400        cancellable: *mut gio::GCancellable,
14401        callback: gio::GAsyncReadyCallback,
14402        user_data: gpointer,
14403    );
14404    #[cfg(feature = "v4_18")]
14405    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14406    pub fn gtk_file_dialog_open_text_file_finish(
14407        self_: *mut GtkFileDialog,
14408        result: *mut gio::GAsyncResult,
14409        encoding: *mut *const c_char,
14410        error: *mut *mut glib::GError,
14411    ) -> *mut gio::GFile;
14412    #[cfg(feature = "v4_10")]
14413    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14414    pub fn gtk_file_dialog_save(
14415        self_: *mut GtkFileDialog,
14416        parent: *mut GtkWindow,
14417        cancellable: *mut gio::GCancellable,
14418        callback: gio::GAsyncReadyCallback,
14419        user_data: gpointer,
14420    );
14421    #[cfg(feature = "v4_10")]
14422    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14423    pub fn gtk_file_dialog_save_finish(
14424        self_: *mut GtkFileDialog,
14425        result: *mut gio::GAsyncResult,
14426        error: *mut *mut glib::GError,
14427    ) -> *mut gio::GFile;
14428    #[cfg(feature = "v4_18")]
14429    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14430    pub fn gtk_file_dialog_save_text_file(
14431        self_: *mut GtkFileDialog,
14432        parent: *mut GtkWindow,
14433        cancellable: *mut gio::GCancellable,
14434        callback: gio::GAsyncReadyCallback,
14435        user_data: gpointer,
14436    );
14437    #[cfg(feature = "v4_18")]
14438    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14439    pub fn gtk_file_dialog_save_text_file_finish(
14440        self_: *mut GtkFileDialog,
14441        result: *mut gio::GAsyncResult,
14442        encoding: *mut *const c_char,
14443        line_ending: *mut *const c_char,
14444        error: *mut *mut glib::GError,
14445    ) -> *mut gio::GFile;
14446    #[cfg(feature = "v4_10")]
14447    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14448    pub fn gtk_file_dialog_select_folder(
14449        self_: *mut GtkFileDialog,
14450        parent: *mut GtkWindow,
14451        cancellable: *mut gio::GCancellable,
14452        callback: gio::GAsyncReadyCallback,
14453        user_data: gpointer,
14454    );
14455    #[cfg(feature = "v4_10")]
14456    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14457    pub fn gtk_file_dialog_select_folder_finish(
14458        self_: *mut GtkFileDialog,
14459        result: *mut gio::GAsyncResult,
14460        error: *mut *mut glib::GError,
14461    ) -> *mut gio::GFile;
14462    #[cfg(feature = "v4_10")]
14463    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14464    pub fn gtk_file_dialog_select_multiple_folders(
14465        self_: *mut GtkFileDialog,
14466        parent: *mut GtkWindow,
14467        cancellable: *mut gio::GCancellable,
14468        callback: gio::GAsyncReadyCallback,
14469        user_data: gpointer,
14470    );
14471    #[cfg(feature = "v4_10")]
14472    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14473    pub fn gtk_file_dialog_select_multiple_folders_finish(
14474        self_: *mut GtkFileDialog,
14475        result: *mut gio::GAsyncResult,
14476        error: *mut *mut glib::GError,
14477    ) -> *mut gio::GListModel;
14478    #[cfg(feature = "v4_10")]
14479    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14480    pub fn gtk_file_dialog_set_accept_label(self_: *mut GtkFileDialog, accept_label: *const c_char);
14481    #[cfg(feature = "v4_10")]
14482    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14483    pub fn gtk_file_dialog_set_default_filter(
14484        self_: *mut GtkFileDialog,
14485        filter: *mut GtkFileFilter,
14486    );
14487    #[cfg(feature = "v4_10")]
14488    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14489    pub fn gtk_file_dialog_set_filters(self_: *mut GtkFileDialog, filters: *mut gio::GListModel);
14490    #[cfg(feature = "v4_10")]
14491    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14492    pub fn gtk_file_dialog_set_initial_file(self_: *mut GtkFileDialog, file: *mut gio::GFile);
14493    #[cfg(feature = "v4_10")]
14494    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14495    pub fn gtk_file_dialog_set_initial_folder(self_: *mut GtkFileDialog, folder: *mut gio::GFile);
14496    #[cfg(feature = "v4_10")]
14497    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14498    pub fn gtk_file_dialog_set_initial_name(self_: *mut GtkFileDialog, name: *const c_char);
14499    #[cfg(feature = "v4_10")]
14500    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14501    pub fn gtk_file_dialog_set_modal(self_: *mut GtkFileDialog, modal: gboolean);
14502    #[cfg(feature = "v4_10")]
14503    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14504    pub fn gtk_file_dialog_set_title(self_: *mut GtkFileDialog, title: *const c_char);
14505
14506    //=========================================================================
14507    // GtkFileFilter
14508    //=========================================================================
14509    pub fn gtk_file_filter_get_type() -> GType;
14510    pub fn gtk_file_filter_new() -> *mut GtkFileFilter;
14511    pub fn gtk_file_filter_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkFileFilter;
14512    pub fn gtk_file_filter_add_mime_type(filter: *mut GtkFileFilter, mime_type: *const c_char);
14513    pub fn gtk_file_filter_add_pattern(filter: *mut GtkFileFilter, pattern: *const c_char);
14514    pub fn gtk_file_filter_add_pixbuf_formats(filter: *mut GtkFileFilter);
14515    #[cfg(feature = "v4_4")]
14516    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
14517    pub fn gtk_file_filter_add_suffix(filter: *mut GtkFileFilter, suffix: *const c_char);
14518    pub fn gtk_file_filter_get_attributes(filter: *mut GtkFileFilter) -> *mut *const c_char;
14519    pub fn gtk_file_filter_get_name(filter: *mut GtkFileFilter) -> *const c_char;
14520    pub fn gtk_file_filter_set_name(filter: *mut GtkFileFilter, name: *const c_char);
14521    pub fn gtk_file_filter_to_gvariant(filter: *mut GtkFileFilter) -> *mut glib::GVariant;
14522
14523    //=========================================================================
14524    // GtkFileLauncher
14525    //=========================================================================
14526    #[cfg(feature = "v4_10")]
14527    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14528    pub fn gtk_file_launcher_get_type() -> GType;
14529    #[cfg(feature = "v4_10")]
14530    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14531    pub fn gtk_file_launcher_new(file: *mut gio::GFile) -> *mut GtkFileLauncher;
14532    #[cfg(feature = "v4_12")]
14533    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14534    pub fn gtk_file_launcher_get_always_ask(self_: *mut GtkFileLauncher) -> gboolean;
14535    #[cfg(feature = "v4_10")]
14536    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14537    pub fn gtk_file_launcher_get_file(self_: *mut GtkFileLauncher) -> *mut gio::GFile;
14538    #[cfg(feature = "v4_14")]
14539    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14540    pub fn gtk_file_launcher_get_writable(self_: *mut GtkFileLauncher) -> gboolean;
14541    #[cfg(feature = "v4_10")]
14542    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14543    pub fn gtk_file_launcher_launch(
14544        self_: *mut GtkFileLauncher,
14545        parent: *mut GtkWindow,
14546        cancellable: *mut gio::GCancellable,
14547        callback: gio::GAsyncReadyCallback,
14548        user_data: gpointer,
14549    );
14550    #[cfg(feature = "v4_10")]
14551    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14552    pub fn gtk_file_launcher_launch_finish(
14553        self_: *mut GtkFileLauncher,
14554        result: *mut gio::GAsyncResult,
14555        error: *mut *mut glib::GError,
14556    ) -> gboolean;
14557    #[cfg(feature = "v4_10")]
14558    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14559    pub fn gtk_file_launcher_open_containing_folder(
14560        self_: *mut GtkFileLauncher,
14561        parent: *mut GtkWindow,
14562        cancellable: *mut gio::GCancellable,
14563        callback: gio::GAsyncReadyCallback,
14564        user_data: gpointer,
14565    );
14566    #[cfg(feature = "v4_10")]
14567    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14568    pub fn gtk_file_launcher_open_containing_folder_finish(
14569        self_: *mut GtkFileLauncher,
14570        result: *mut gio::GAsyncResult,
14571        error: *mut *mut glib::GError,
14572    ) -> gboolean;
14573    #[cfg(feature = "v4_12")]
14574    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14575    pub fn gtk_file_launcher_set_always_ask(self_: *mut GtkFileLauncher, always_ask: gboolean);
14576    #[cfg(feature = "v4_10")]
14577    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14578    pub fn gtk_file_launcher_set_file(self_: *mut GtkFileLauncher, file: *mut gio::GFile);
14579    #[cfg(feature = "v4_14")]
14580    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14581    pub fn gtk_file_launcher_set_writable(self_: *mut GtkFileLauncher, writable: gboolean);
14582
14583    //=========================================================================
14584    // GtkFilter
14585    //=========================================================================
14586    pub fn gtk_filter_get_type() -> GType;
14587    pub fn gtk_filter_changed(self_: *mut GtkFilter, change: GtkFilterChange);
14588    pub fn gtk_filter_get_strictness(self_: *mut GtkFilter) -> GtkFilterMatch;
14589    pub fn gtk_filter_match(self_: *mut GtkFilter, item: *mut gobject::GObject) -> gboolean;
14590
14591    //=========================================================================
14592    // GtkFilterListModel
14593    //=========================================================================
14594    pub fn gtk_filter_list_model_get_type() -> GType;
14595    pub fn gtk_filter_list_model_new(
14596        model: *mut gio::GListModel,
14597        filter: *mut GtkFilter,
14598    ) -> *mut GtkFilterListModel;
14599    pub fn gtk_filter_list_model_get_filter(self_: *mut GtkFilterListModel) -> *mut GtkFilter;
14600    pub fn gtk_filter_list_model_get_incremental(self_: *mut GtkFilterListModel) -> gboolean;
14601    pub fn gtk_filter_list_model_get_model(self_: *mut GtkFilterListModel) -> *mut gio::GListModel;
14602    pub fn gtk_filter_list_model_get_pending(self_: *mut GtkFilterListModel) -> c_uint;
14603    #[cfg(feature = "v4_20")]
14604    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14605    pub fn gtk_filter_list_model_get_watch_items(self_: *mut GtkFilterListModel) -> gboolean;
14606    pub fn gtk_filter_list_model_set_filter(self_: *mut GtkFilterListModel, filter: *mut GtkFilter);
14607    pub fn gtk_filter_list_model_set_incremental(
14608        self_: *mut GtkFilterListModel,
14609        incremental: gboolean,
14610    );
14611    pub fn gtk_filter_list_model_set_model(
14612        self_: *mut GtkFilterListModel,
14613        model: *mut gio::GListModel,
14614    );
14615    #[cfg(feature = "v4_20")]
14616    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14617    pub fn gtk_filter_list_model_set_watch_items(
14618        self_: *mut GtkFilterListModel,
14619        watch_items: gboolean,
14620    );
14621
14622    //=========================================================================
14623    // GtkFixed
14624    //=========================================================================
14625    pub fn gtk_fixed_get_type() -> GType;
14626    pub fn gtk_fixed_new() -> *mut GtkWidget;
14627    pub fn gtk_fixed_get_child_position(
14628        fixed: *mut GtkFixed,
14629        widget: *mut GtkWidget,
14630        x: *mut c_double,
14631        y: *mut c_double,
14632    );
14633    pub fn gtk_fixed_get_child_transform(
14634        fixed: *mut GtkFixed,
14635        widget: *mut GtkWidget,
14636    ) -> *mut gsk::GskTransform;
14637    pub fn gtk_fixed_move(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_double, y: c_double);
14638    pub fn gtk_fixed_put(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_double, y: c_double);
14639    pub fn gtk_fixed_remove(fixed: *mut GtkFixed, widget: *mut GtkWidget);
14640    pub fn gtk_fixed_set_child_transform(
14641        fixed: *mut GtkFixed,
14642        widget: *mut GtkWidget,
14643        transform: *mut gsk::GskTransform,
14644    );
14645
14646    //=========================================================================
14647    // GtkFixedLayout
14648    //=========================================================================
14649    pub fn gtk_fixed_layout_get_type() -> GType;
14650    pub fn gtk_fixed_layout_new() -> *mut GtkLayoutManager;
14651
14652    //=========================================================================
14653    // GtkFixedLayoutChild
14654    //=========================================================================
14655    pub fn gtk_fixed_layout_child_get_type() -> GType;
14656    pub fn gtk_fixed_layout_child_get_transform(
14657        child: *mut GtkFixedLayoutChild,
14658    ) -> *mut gsk::GskTransform;
14659    pub fn gtk_fixed_layout_child_set_transform(
14660        child: *mut GtkFixedLayoutChild,
14661        transform: *mut gsk::GskTransform,
14662    );
14663
14664    //=========================================================================
14665    // GtkFlattenListModel
14666    //=========================================================================
14667    pub fn gtk_flatten_list_model_get_type() -> GType;
14668    pub fn gtk_flatten_list_model_new(model: *mut gio::GListModel) -> *mut GtkFlattenListModel;
14669    pub fn gtk_flatten_list_model_get_model(
14670        self_: *mut GtkFlattenListModel,
14671    ) -> *mut gio::GListModel;
14672    pub fn gtk_flatten_list_model_get_model_for_item(
14673        self_: *mut GtkFlattenListModel,
14674        position: c_uint,
14675    ) -> *mut gio::GListModel;
14676    pub fn gtk_flatten_list_model_set_model(
14677        self_: *mut GtkFlattenListModel,
14678        model: *mut gio::GListModel,
14679    );
14680
14681    //=========================================================================
14682    // GtkFlowBox
14683    //=========================================================================
14684    pub fn gtk_flow_box_get_type() -> GType;
14685    pub fn gtk_flow_box_new() -> *mut GtkWidget;
14686    #[cfg(feature = "v4_6")]
14687    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
14688    pub fn gtk_flow_box_append(self_: *mut GtkFlowBox, child: *mut GtkWidget);
14689    pub fn gtk_flow_box_bind_model(
14690        box_: *mut GtkFlowBox,
14691        model: *mut gio::GListModel,
14692        create_widget_func: GtkFlowBoxCreateWidgetFunc,
14693        user_data: gpointer,
14694        user_data_free_func: glib::GDestroyNotify,
14695    );
14696    pub fn gtk_flow_box_get_activate_on_single_click(box_: *mut GtkFlowBox) -> gboolean;
14697    pub fn gtk_flow_box_get_child_at_index(
14698        box_: *mut GtkFlowBox,
14699        idx: c_int,
14700    ) -> *mut GtkFlowBoxChild;
14701    pub fn gtk_flow_box_get_child_at_pos(
14702        box_: *mut GtkFlowBox,
14703        x: c_int,
14704        y: c_int,
14705    ) -> *mut GtkFlowBoxChild;
14706    pub fn gtk_flow_box_get_column_spacing(box_: *mut GtkFlowBox) -> c_uint;
14707    pub fn gtk_flow_box_get_homogeneous(box_: *mut GtkFlowBox) -> gboolean;
14708    pub fn gtk_flow_box_get_max_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
14709    pub fn gtk_flow_box_get_min_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
14710    pub fn gtk_flow_box_get_row_spacing(box_: *mut GtkFlowBox) -> c_uint;
14711    pub fn gtk_flow_box_get_selected_children(box_: *mut GtkFlowBox) -> *mut glib::GList;
14712    pub fn gtk_flow_box_get_selection_mode(box_: *mut GtkFlowBox) -> GtkSelectionMode;
14713    pub fn gtk_flow_box_insert(box_: *mut GtkFlowBox, widget: *mut GtkWidget, position: c_int);
14714    pub fn gtk_flow_box_invalidate_filter(box_: *mut GtkFlowBox);
14715    pub fn gtk_flow_box_invalidate_sort(box_: *mut GtkFlowBox);
14716    #[cfg(feature = "v4_6")]
14717    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
14718    pub fn gtk_flow_box_prepend(self_: *mut GtkFlowBox, child: *mut GtkWidget);
14719    pub fn gtk_flow_box_remove(box_: *mut GtkFlowBox, widget: *mut GtkWidget);
14720    #[cfg(feature = "v4_12")]
14721    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14722    pub fn gtk_flow_box_remove_all(box_: *mut GtkFlowBox);
14723    pub fn gtk_flow_box_select_all(box_: *mut GtkFlowBox);
14724    pub fn gtk_flow_box_select_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
14725    pub fn gtk_flow_box_selected_foreach(
14726        box_: *mut GtkFlowBox,
14727        func: GtkFlowBoxForeachFunc,
14728        data: gpointer,
14729    );
14730    pub fn gtk_flow_box_set_activate_on_single_click(box_: *mut GtkFlowBox, single: gboolean);
14731    pub fn gtk_flow_box_set_column_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
14732    pub fn gtk_flow_box_set_filter_func(
14733        box_: *mut GtkFlowBox,
14734        filter_func: GtkFlowBoxFilterFunc,
14735        user_data: gpointer,
14736        destroy: glib::GDestroyNotify,
14737    );
14738    pub fn gtk_flow_box_set_hadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
14739    pub fn gtk_flow_box_set_homogeneous(box_: *mut GtkFlowBox, homogeneous: gboolean);
14740    pub fn gtk_flow_box_set_max_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
14741    pub fn gtk_flow_box_set_min_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
14742    pub fn gtk_flow_box_set_row_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
14743    pub fn gtk_flow_box_set_selection_mode(box_: *mut GtkFlowBox, mode: GtkSelectionMode);
14744    pub fn gtk_flow_box_set_sort_func(
14745        box_: *mut GtkFlowBox,
14746        sort_func: GtkFlowBoxSortFunc,
14747        user_data: gpointer,
14748        destroy: glib::GDestroyNotify,
14749    );
14750    pub fn gtk_flow_box_set_vadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
14751    pub fn gtk_flow_box_unselect_all(box_: *mut GtkFlowBox);
14752    pub fn gtk_flow_box_unselect_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
14753
14754    //=========================================================================
14755    // GtkFlowBoxChild
14756    //=========================================================================
14757    pub fn gtk_flow_box_child_get_type() -> GType;
14758    pub fn gtk_flow_box_child_new() -> *mut GtkWidget;
14759    pub fn gtk_flow_box_child_changed(child: *mut GtkFlowBoxChild);
14760    pub fn gtk_flow_box_child_get_child(self_: *mut GtkFlowBoxChild) -> *mut GtkWidget;
14761    pub fn gtk_flow_box_child_get_index(child: *mut GtkFlowBoxChild) -> c_int;
14762    pub fn gtk_flow_box_child_is_selected(child: *mut GtkFlowBoxChild) -> gboolean;
14763    pub fn gtk_flow_box_child_set_child(self_: *mut GtkFlowBoxChild, child: *mut GtkWidget);
14764
14765    //=========================================================================
14766    // GtkFontButton
14767    //=========================================================================
14768    pub fn gtk_font_button_get_type() -> GType;
14769    pub fn gtk_font_button_new() -> *mut GtkWidget;
14770    pub fn gtk_font_button_new_with_font(fontname: *const c_char) -> *mut GtkWidget;
14771    pub fn gtk_font_button_get_modal(font_button: *mut GtkFontButton) -> gboolean;
14772    pub fn gtk_font_button_get_title(font_button: *mut GtkFontButton) -> *const c_char;
14773    pub fn gtk_font_button_get_use_font(font_button: *mut GtkFontButton) -> gboolean;
14774    pub fn gtk_font_button_get_use_size(font_button: *mut GtkFontButton) -> gboolean;
14775    pub fn gtk_font_button_set_modal(font_button: *mut GtkFontButton, modal: gboolean);
14776    pub fn gtk_font_button_set_title(font_button: *mut GtkFontButton, title: *const c_char);
14777    pub fn gtk_font_button_set_use_font(font_button: *mut GtkFontButton, use_font: gboolean);
14778    pub fn gtk_font_button_set_use_size(font_button: *mut GtkFontButton, use_size: gboolean);
14779
14780    //=========================================================================
14781    // GtkFontChooserDialog
14782    //=========================================================================
14783    pub fn gtk_font_chooser_dialog_get_type() -> GType;
14784    pub fn gtk_font_chooser_dialog_new(
14785        title: *const c_char,
14786        parent: *mut GtkWindow,
14787    ) -> *mut GtkWidget;
14788
14789    //=========================================================================
14790    // GtkFontChooserWidget
14791    //=========================================================================
14792    pub fn gtk_font_chooser_widget_get_type() -> GType;
14793    pub fn gtk_font_chooser_widget_new() -> *mut GtkWidget;
14794
14795    //=========================================================================
14796    // GtkFontDialog
14797    //=========================================================================
14798    #[cfg(feature = "v4_10")]
14799    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14800    pub fn gtk_font_dialog_get_type() -> GType;
14801    #[cfg(feature = "v4_10")]
14802    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14803    pub fn gtk_font_dialog_new() -> *mut GtkFontDialog;
14804    #[cfg(feature = "v4_10")]
14805    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14806    pub fn gtk_font_dialog_choose_face(
14807        self_: *mut GtkFontDialog,
14808        parent: *mut GtkWindow,
14809        initial_value: *mut pango::PangoFontFace,
14810        cancellable: *mut gio::GCancellable,
14811        callback: gio::GAsyncReadyCallback,
14812        user_data: gpointer,
14813    );
14814    #[cfg(feature = "v4_10")]
14815    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14816    pub fn gtk_font_dialog_choose_face_finish(
14817        self_: *mut GtkFontDialog,
14818        result: *mut gio::GAsyncResult,
14819        error: *mut *mut glib::GError,
14820    ) -> *mut pango::PangoFontFace;
14821    #[cfg(feature = "v4_10")]
14822    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14823    pub fn gtk_font_dialog_choose_family(
14824        self_: *mut GtkFontDialog,
14825        parent: *mut GtkWindow,
14826        initial_value: *mut pango::PangoFontFamily,
14827        cancellable: *mut gio::GCancellable,
14828        callback: gio::GAsyncReadyCallback,
14829        user_data: gpointer,
14830    );
14831    #[cfg(feature = "v4_10")]
14832    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14833    pub fn gtk_font_dialog_choose_family_finish(
14834        self_: *mut GtkFontDialog,
14835        result: *mut gio::GAsyncResult,
14836        error: *mut *mut glib::GError,
14837    ) -> *mut pango::PangoFontFamily;
14838    #[cfg(feature = "v4_10")]
14839    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14840    pub fn gtk_font_dialog_choose_font(
14841        self_: *mut GtkFontDialog,
14842        parent: *mut GtkWindow,
14843        initial_value: *mut pango::PangoFontDescription,
14844        cancellable: *mut gio::GCancellable,
14845        callback: gio::GAsyncReadyCallback,
14846        user_data: gpointer,
14847    );
14848    #[cfg(feature = "v4_10")]
14849    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14850    pub fn gtk_font_dialog_choose_font_and_features(
14851        self_: *mut GtkFontDialog,
14852        parent: *mut GtkWindow,
14853        initial_value: *mut pango::PangoFontDescription,
14854        cancellable: *mut gio::GCancellable,
14855        callback: gio::GAsyncReadyCallback,
14856        user_data: gpointer,
14857    );
14858    #[cfg(feature = "v4_10")]
14859    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14860    pub fn gtk_font_dialog_choose_font_and_features_finish(
14861        self_: *mut GtkFontDialog,
14862        result: *mut gio::GAsyncResult,
14863        font_desc: *mut *mut pango::PangoFontDescription,
14864        font_features: *mut *mut c_char,
14865        language: *mut *mut pango::PangoLanguage,
14866        error: *mut *mut glib::GError,
14867    ) -> gboolean;
14868    #[cfg(feature = "v4_10")]
14869    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14870    pub fn gtk_font_dialog_choose_font_finish(
14871        self_: *mut GtkFontDialog,
14872        result: *mut gio::GAsyncResult,
14873        error: *mut *mut glib::GError,
14874    ) -> *mut pango::PangoFontDescription;
14875    #[cfg(feature = "v4_10")]
14876    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14877    pub fn gtk_font_dialog_get_filter(self_: *mut GtkFontDialog) -> *mut GtkFilter;
14878    #[cfg(feature = "v4_10")]
14879    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14880    pub fn gtk_font_dialog_get_font_map(self_: *mut GtkFontDialog) -> *mut pango::PangoFontMap;
14881    #[cfg(feature = "v4_10")]
14882    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14883    pub fn gtk_font_dialog_get_language(self_: *mut GtkFontDialog) -> *mut pango::PangoLanguage;
14884    #[cfg(feature = "v4_10")]
14885    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14886    pub fn gtk_font_dialog_get_modal(self_: *mut GtkFontDialog) -> gboolean;
14887    #[cfg(feature = "v4_10")]
14888    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14889    pub fn gtk_font_dialog_get_title(self_: *mut GtkFontDialog) -> *const c_char;
14890    #[cfg(feature = "v4_10")]
14891    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14892    pub fn gtk_font_dialog_set_filter(self_: *mut GtkFontDialog, filter: *mut GtkFilter);
14893    #[cfg(feature = "v4_10")]
14894    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14895    pub fn gtk_font_dialog_set_font_map(
14896        self_: *mut GtkFontDialog,
14897        fontmap: *mut pango::PangoFontMap,
14898    );
14899    #[cfg(feature = "v4_10")]
14900    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14901    pub fn gtk_font_dialog_set_language(
14902        self_: *mut GtkFontDialog,
14903        language: *mut pango::PangoLanguage,
14904    );
14905    #[cfg(feature = "v4_10")]
14906    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14907    pub fn gtk_font_dialog_set_modal(self_: *mut GtkFontDialog, modal: gboolean);
14908    #[cfg(feature = "v4_10")]
14909    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14910    pub fn gtk_font_dialog_set_title(self_: *mut GtkFontDialog, title: *const c_char);
14911
14912    //=========================================================================
14913    // GtkFontDialogButton
14914    //=========================================================================
14915    #[cfg(feature = "v4_10")]
14916    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14917    pub fn gtk_font_dialog_button_get_type() -> GType;
14918    #[cfg(feature = "v4_10")]
14919    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14920    pub fn gtk_font_dialog_button_new(dialog: *mut GtkFontDialog) -> *mut GtkWidget;
14921    #[cfg(feature = "v4_10")]
14922    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14923    pub fn gtk_font_dialog_button_get_dialog(self_: *mut GtkFontDialogButton)
14924        -> *mut GtkFontDialog;
14925    #[cfg(feature = "v4_10")]
14926    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14927    pub fn gtk_font_dialog_button_get_font_desc(
14928        self_: *mut GtkFontDialogButton,
14929    ) -> *mut pango::PangoFontDescription;
14930    #[cfg(feature = "v4_10")]
14931    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14932    pub fn gtk_font_dialog_button_get_font_features(
14933        self_: *mut GtkFontDialogButton,
14934    ) -> *const c_char;
14935    #[cfg(feature = "v4_10")]
14936    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14937    pub fn gtk_font_dialog_button_get_language(
14938        self_: *mut GtkFontDialogButton,
14939    ) -> *mut pango::PangoLanguage;
14940    #[cfg(feature = "v4_10")]
14941    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14942    pub fn gtk_font_dialog_button_get_level(self_: *mut GtkFontDialogButton) -> GtkFontLevel;
14943    #[cfg(feature = "v4_10")]
14944    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14945    pub fn gtk_font_dialog_button_get_use_font(self_: *mut GtkFontDialogButton) -> gboolean;
14946    #[cfg(feature = "v4_10")]
14947    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14948    pub fn gtk_font_dialog_button_get_use_size(self_: *mut GtkFontDialogButton) -> gboolean;
14949    #[cfg(feature = "v4_10")]
14950    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14951    pub fn gtk_font_dialog_button_set_dialog(
14952        self_: *mut GtkFontDialogButton,
14953        dialog: *mut GtkFontDialog,
14954    );
14955    #[cfg(feature = "v4_10")]
14956    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14957    pub fn gtk_font_dialog_button_set_font_desc(
14958        self_: *mut GtkFontDialogButton,
14959        font_desc: *const pango::PangoFontDescription,
14960    );
14961    #[cfg(feature = "v4_10")]
14962    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14963    pub fn gtk_font_dialog_button_set_font_features(
14964        self_: *mut GtkFontDialogButton,
14965        font_features: *const c_char,
14966    );
14967    #[cfg(feature = "v4_10")]
14968    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14969    pub fn gtk_font_dialog_button_set_language(
14970        self_: *mut GtkFontDialogButton,
14971        language: *mut pango::PangoLanguage,
14972    );
14973    #[cfg(feature = "v4_10")]
14974    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14975    pub fn gtk_font_dialog_button_set_level(self_: *mut GtkFontDialogButton, level: GtkFontLevel);
14976    #[cfg(feature = "v4_10")]
14977    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14978    pub fn gtk_font_dialog_button_set_use_font(self_: *mut GtkFontDialogButton, use_font: gboolean);
14979    #[cfg(feature = "v4_10")]
14980    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14981    pub fn gtk_font_dialog_button_set_use_size(self_: *mut GtkFontDialogButton, use_size: gboolean);
14982
14983    //=========================================================================
14984    // GtkFrame
14985    //=========================================================================
14986    pub fn gtk_frame_get_type() -> GType;
14987    pub fn gtk_frame_new(label: *const c_char) -> *mut GtkWidget;
14988    pub fn gtk_frame_get_child(frame: *mut GtkFrame) -> *mut GtkWidget;
14989    pub fn gtk_frame_get_label(frame: *mut GtkFrame) -> *const c_char;
14990    pub fn gtk_frame_get_label_align(frame: *mut GtkFrame) -> c_float;
14991    pub fn gtk_frame_get_label_widget(frame: *mut GtkFrame) -> *mut GtkWidget;
14992    pub fn gtk_frame_set_child(frame: *mut GtkFrame, child: *mut GtkWidget);
14993    pub fn gtk_frame_set_label(frame: *mut GtkFrame, label: *const c_char);
14994    pub fn gtk_frame_set_label_align(frame: *mut GtkFrame, xalign: c_float);
14995    pub fn gtk_frame_set_label_widget(frame: *mut GtkFrame, label_widget: *mut GtkWidget);
14996
14997    //=========================================================================
14998    // GtkGLArea
14999    //=========================================================================
15000    pub fn gtk_gl_area_get_type() -> GType;
15001    pub fn gtk_gl_area_new() -> *mut GtkWidget;
15002    pub fn gtk_gl_area_attach_buffers(area: *mut GtkGLArea);
15003    #[cfg(feature = "v4_12")]
15004    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15005    pub fn gtk_gl_area_get_allowed_apis(area: *mut GtkGLArea) -> gdk::GdkGLAPI;
15006    #[cfg(feature = "v4_12")]
15007    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15008    pub fn gtk_gl_area_get_api(area: *mut GtkGLArea) -> gdk::GdkGLAPI;
15009    pub fn gtk_gl_area_get_auto_render(area: *mut GtkGLArea) -> gboolean;
15010    pub fn gtk_gl_area_get_context(area: *mut GtkGLArea) -> *mut gdk::GdkGLContext;
15011    pub fn gtk_gl_area_get_error(area: *mut GtkGLArea) -> *mut glib::GError;
15012    pub fn gtk_gl_area_get_has_depth_buffer(area: *mut GtkGLArea) -> gboolean;
15013    pub fn gtk_gl_area_get_has_stencil_buffer(area: *mut GtkGLArea) -> gboolean;
15014    pub fn gtk_gl_area_get_required_version(
15015        area: *mut GtkGLArea,
15016        major: *mut c_int,
15017        minor: *mut c_int,
15018    );
15019    pub fn gtk_gl_area_get_use_es(area: *mut GtkGLArea) -> gboolean;
15020    pub fn gtk_gl_area_make_current(area: *mut GtkGLArea);
15021    pub fn gtk_gl_area_queue_render(area: *mut GtkGLArea);
15022    #[cfg(feature = "v4_12")]
15023    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15024    pub fn gtk_gl_area_set_allowed_apis(area: *mut GtkGLArea, apis: gdk::GdkGLAPI);
15025    pub fn gtk_gl_area_set_auto_render(area: *mut GtkGLArea, auto_render: gboolean);
15026    pub fn gtk_gl_area_set_error(area: *mut GtkGLArea, error: *const glib::GError);
15027    pub fn gtk_gl_area_set_has_depth_buffer(area: *mut GtkGLArea, has_depth_buffer: gboolean);
15028    pub fn gtk_gl_area_set_has_stencil_buffer(area: *mut GtkGLArea, has_stencil_buffer: gboolean);
15029    pub fn gtk_gl_area_set_required_version(area: *mut GtkGLArea, major: c_int, minor: c_int);
15030    pub fn gtk_gl_area_set_use_es(area: *mut GtkGLArea, use_es: gboolean);
15031
15032    //=========================================================================
15033    // GtkGesture
15034    //=========================================================================
15035    pub fn gtk_gesture_get_type() -> GType;
15036    pub fn gtk_gesture_get_bounding_box(
15037        gesture: *mut GtkGesture,
15038        rect: *mut gdk::GdkRectangle,
15039    ) -> gboolean;
15040    pub fn gtk_gesture_get_bounding_box_center(
15041        gesture: *mut GtkGesture,
15042        x: *mut c_double,
15043        y: *mut c_double,
15044    ) -> gboolean;
15045    pub fn gtk_gesture_get_device(gesture: *mut GtkGesture) -> *mut gdk::GdkDevice;
15046    pub fn gtk_gesture_get_group(gesture: *mut GtkGesture) -> *mut glib::GList;
15047    pub fn gtk_gesture_get_last_event(
15048        gesture: *mut GtkGesture,
15049        sequence: *mut gdk::GdkEventSequence,
15050    ) -> *mut gdk::GdkEvent;
15051    pub fn gtk_gesture_get_last_updated_sequence(
15052        gesture: *mut GtkGesture,
15053    ) -> *mut gdk::GdkEventSequence;
15054    pub fn gtk_gesture_get_point(
15055        gesture: *mut GtkGesture,
15056        sequence: *mut gdk::GdkEventSequence,
15057        x: *mut c_double,
15058        y: *mut c_double,
15059    ) -> gboolean;
15060    pub fn gtk_gesture_get_sequence_state(
15061        gesture: *mut GtkGesture,
15062        sequence: *mut gdk::GdkEventSequence,
15063    ) -> GtkEventSequenceState;
15064    pub fn gtk_gesture_get_sequences(gesture: *mut GtkGesture) -> *mut glib::GList;
15065    pub fn gtk_gesture_group(group_gesture: *mut GtkGesture, gesture: *mut GtkGesture);
15066    pub fn gtk_gesture_handles_sequence(
15067        gesture: *mut GtkGesture,
15068        sequence: *mut gdk::GdkEventSequence,
15069    ) -> gboolean;
15070    pub fn gtk_gesture_is_active(gesture: *mut GtkGesture) -> gboolean;
15071    pub fn gtk_gesture_is_grouped_with(
15072        gesture: *mut GtkGesture,
15073        other: *mut GtkGesture,
15074    ) -> gboolean;
15075    pub fn gtk_gesture_is_recognized(gesture: *mut GtkGesture) -> gboolean;
15076    pub fn gtk_gesture_set_sequence_state(
15077        gesture: *mut GtkGesture,
15078        sequence: *mut gdk::GdkEventSequence,
15079        state: GtkEventSequenceState,
15080    ) -> gboolean;
15081    pub fn gtk_gesture_set_state(
15082        gesture: *mut GtkGesture,
15083        state: GtkEventSequenceState,
15084    ) -> gboolean;
15085    pub fn gtk_gesture_ungroup(gesture: *mut GtkGesture);
15086
15087    //=========================================================================
15088    // GtkGestureClick
15089    //=========================================================================
15090    pub fn gtk_gesture_click_get_type() -> GType;
15091    pub fn gtk_gesture_click_new() -> *mut GtkGesture;
15092
15093    //=========================================================================
15094    // GtkGestureDrag
15095    //=========================================================================
15096    pub fn gtk_gesture_drag_get_type() -> GType;
15097    pub fn gtk_gesture_drag_new() -> *mut GtkGesture;
15098    pub fn gtk_gesture_drag_get_offset(
15099        gesture: *mut GtkGestureDrag,
15100        x: *mut c_double,
15101        y: *mut c_double,
15102    ) -> gboolean;
15103    pub fn gtk_gesture_drag_get_start_point(
15104        gesture: *mut GtkGestureDrag,
15105        x: *mut c_double,
15106        y: *mut c_double,
15107    ) -> gboolean;
15108
15109    //=========================================================================
15110    // GtkGestureLongPress
15111    //=========================================================================
15112    pub fn gtk_gesture_long_press_get_type() -> GType;
15113    pub fn gtk_gesture_long_press_new() -> *mut GtkGesture;
15114    pub fn gtk_gesture_long_press_get_delay_factor(gesture: *mut GtkGestureLongPress) -> c_double;
15115    pub fn gtk_gesture_long_press_set_delay_factor(
15116        gesture: *mut GtkGestureLongPress,
15117        delay_factor: c_double,
15118    );
15119
15120    //=========================================================================
15121    // GtkGesturePan
15122    //=========================================================================
15123    pub fn gtk_gesture_pan_get_type() -> GType;
15124    pub fn gtk_gesture_pan_new(orientation: GtkOrientation) -> *mut GtkGesture;
15125    pub fn gtk_gesture_pan_get_orientation(gesture: *mut GtkGesturePan) -> GtkOrientation;
15126    pub fn gtk_gesture_pan_set_orientation(
15127        gesture: *mut GtkGesturePan,
15128        orientation: GtkOrientation,
15129    );
15130
15131    //=========================================================================
15132    // GtkGestureRotate
15133    //=========================================================================
15134    pub fn gtk_gesture_rotate_get_type() -> GType;
15135    pub fn gtk_gesture_rotate_new() -> *mut GtkGesture;
15136    pub fn gtk_gesture_rotate_get_angle_delta(gesture: *mut GtkGestureRotate) -> c_double;
15137
15138    //=========================================================================
15139    // GtkGestureSingle
15140    //=========================================================================
15141    pub fn gtk_gesture_single_get_type() -> GType;
15142    pub fn gtk_gesture_single_get_button(gesture: *mut GtkGestureSingle) -> c_uint;
15143    pub fn gtk_gesture_single_get_current_button(gesture: *mut GtkGestureSingle) -> c_uint;
15144    pub fn gtk_gesture_single_get_current_sequence(
15145        gesture: *mut GtkGestureSingle,
15146    ) -> *mut gdk::GdkEventSequence;
15147    pub fn gtk_gesture_single_get_exclusive(gesture: *mut GtkGestureSingle) -> gboolean;
15148    pub fn gtk_gesture_single_get_touch_only(gesture: *mut GtkGestureSingle) -> gboolean;
15149    pub fn gtk_gesture_single_set_button(gesture: *mut GtkGestureSingle, button: c_uint);
15150    pub fn gtk_gesture_single_set_exclusive(gesture: *mut GtkGestureSingle, exclusive: gboolean);
15151    pub fn gtk_gesture_single_set_touch_only(gesture: *mut GtkGestureSingle, touch_only: gboolean);
15152
15153    //=========================================================================
15154    // GtkGestureStylus
15155    //=========================================================================
15156    pub fn gtk_gesture_stylus_get_type() -> GType;
15157    pub fn gtk_gesture_stylus_new() -> *mut GtkGesture;
15158    pub fn gtk_gesture_stylus_get_axes(
15159        gesture: *mut GtkGestureStylus,
15160        axes: *mut gdk::GdkAxisUse,
15161        values: *mut *mut c_double,
15162    ) -> gboolean;
15163    pub fn gtk_gesture_stylus_get_axis(
15164        gesture: *mut GtkGestureStylus,
15165        axis: gdk::GdkAxisUse,
15166        value: *mut c_double,
15167    ) -> gboolean;
15168    pub fn gtk_gesture_stylus_get_backlog(
15169        gesture: *mut GtkGestureStylus,
15170        backlog: *mut *mut gdk::GdkTimeCoord,
15171        n_elems: *mut c_uint,
15172    ) -> gboolean;
15173    pub fn gtk_gesture_stylus_get_device_tool(
15174        gesture: *mut GtkGestureStylus,
15175    ) -> *mut gdk::GdkDeviceTool;
15176    #[cfg(feature = "v4_10")]
15177    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
15178    pub fn gtk_gesture_stylus_get_stylus_only(gesture: *mut GtkGestureStylus) -> gboolean;
15179    #[cfg(feature = "v4_10")]
15180    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
15181    pub fn gtk_gesture_stylus_set_stylus_only(
15182        gesture: *mut GtkGestureStylus,
15183        stylus_only: gboolean,
15184    );
15185
15186    //=========================================================================
15187    // GtkGestureSwipe
15188    //=========================================================================
15189    pub fn gtk_gesture_swipe_get_type() -> GType;
15190    pub fn gtk_gesture_swipe_new() -> *mut GtkGesture;
15191    pub fn gtk_gesture_swipe_get_velocity(
15192        gesture: *mut GtkGestureSwipe,
15193        velocity_x: *mut c_double,
15194        velocity_y: *mut c_double,
15195    ) -> gboolean;
15196
15197    //=========================================================================
15198    // GtkGestureZoom
15199    //=========================================================================
15200    pub fn gtk_gesture_zoom_get_type() -> GType;
15201    pub fn gtk_gesture_zoom_new() -> *mut GtkGesture;
15202    pub fn gtk_gesture_zoom_get_scale_delta(gesture: *mut GtkGestureZoom) -> c_double;
15203
15204    //=========================================================================
15205    // GtkGraphicsOffload
15206    //=========================================================================
15207    #[cfg(feature = "v4_14")]
15208    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15209    pub fn gtk_graphics_offload_get_type() -> GType;
15210    #[cfg(feature = "v4_14")]
15211    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15212    pub fn gtk_graphics_offload_new(child: *mut GtkWidget) -> *mut GtkWidget;
15213    #[cfg(feature = "v4_16")]
15214    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
15215    pub fn gtk_graphics_offload_get_black_background(self_: *mut GtkGraphicsOffload) -> gboolean;
15216    #[cfg(feature = "v4_14")]
15217    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15218    pub fn gtk_graphics_offload_get_child(self_: *mut GtkGraphicsOffload) -> *mut GtkWidget;
15219    #[cfg(feature = "v4_14")]
15220    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15221    pub fn gtk_graphics_offload_get_enabled(
15222        self_: *mut GtkGraphicsOffload,
15223    ) -> GtkGraphicsOffloadEnabled;
15224    #[cfg(feature = "v4_16")]
15225    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
15226    pub fn gtk_graphics_offload_set_black_background(
15227        self_: *mut GtkGraphicsOffload,
15228        value: gboolean,
15229    );
15230    #[cfg(feature = "v4_14")]
15231    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15232    pub fn gtk_graphics_offload_set_child(self_: *mut GtkGraphicsOffload, child: *mut GtkWidget);
15233    #[cfg(feature = "v4_14")]
15234    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15235    pub fn gtk_graphics_offload_set_enabled(
15236        self_: *mut GtkGraphicsOffload,
15237        enabled: GtkGraphicsOffloadEnabled,
15238    );
15239
15240    //=========================================================================
15241    // GtkGrid
15242    //=========================================================================
15243    pub fn gtk_grid_get_type() -> GType;
15244    pub fn gtk_grid_new() -> *mut GtkWidget;
15245    pub fn gtk_grid_attach(
15246        grid: *mut GtkGrid,
15247        child: *mut GtkWidget,
15248        column: c_int,
15249        row: c_int,
15250        width: c_int,
15251        height: c_int,
15252    );
15253    pub fn gtk_grid_attach_next_to(
15254        grid: *mut GtkGrid,
15255        child: *mut GtkWidget,
15256        sibling: *mut GtkWidget,
15257        side: GtkPositionType,
15258        width: c_int,
15259        height: c_int,
15260    );
15261    pub fn gtk_grid_get_baseline_row(grid: *mut GtkGrid) -> c_int;
15262    pub fn gtk_grid_get_child_at(grid: *mut GtkGrid, column: c_int, row: c_int) -> *mut GtkWidget;
15263    pub fn gtk_grid_get_column_homogeneous(grid: *mut GtkGrid) -> gboolean;
15264    pub fn gtk_grid_get_column_spacing(grid: *mut GtkGrid) -> c_uint;
15265    pub fn gtk_grid_get_row_baseline_position(
15266        grid: *mut GtkGrid,
15267        row: c_int,
15268    ) -> GtkBaselinePosition;
15269    pub fn gtk_grid_get_row_homogeneous(grid: *mut GtkGrid) -> gboolean;
15270    pub fn gtk_grid_get_row_spacing(grid: *mut GtkGrid) -> c_uint;
15271    pub fn gtk_grid_insert_column(grid: *mut GtkGrid, position: c_int);
15272    pub fn gtk_grid_insert_next_to(
15273        grid: *mut GtkGrid,
15274        sibling: *mut GtkWidget,
15275        side: GtkPositionType,
15276    );
15277    pub fn gtk_grid_insert_row(grid: *mut GtkGrid, position: c_int);
15278    pub fn gtk_grid_query_child(
15279        grid: *mut GtkGrid,
15280        child: *mut GtkWidget,
15281        column: *mut c_int,
15282        row: *mut c_int,
15283        width: *mut c_int,
15284        height: *mut c_int,
15285    );
15286    pub fn gtk_grid_remove(grid: *mut GtkGrid, child: *mut GtkWidget);
15287    pub fn gtk_grid_remove_column(grid: *mut GtkGrid, position: c_int);
15288    pub fn gtk_grid_remove_row(grid: *mut GtkGrid, position: c_int);
15289    pub fn gtk_grid_set_baseline_row(grid: *mut GtkGrid, row: c_int);
15290    pub fn gtk_grid_set_column_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
15291    pub fn gtk_grid_set_column_spacing(grid: *mut GtkGrid, spacing: c_uint);
15292    pub fn gtk_grid_set_row_baseline_position(
15293        grid: *mut GtkGrid,
15294        row: c_int,
15295        pos: GtkBaselinePosition,
15296    );
15297    pub fn gtk_grid_set_row_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
15298    pub fn gtk_grid_set_row_spacing(grid: *mut GtkGrid, spacing: c_uint);
15299
15300    //=========================================================================
15301    // GtkGridLayout
15302    //=========================================================================
15303    pub fn gtk_grid_layout_get_type() -> GType;
15304    pub fn gtk_grid_layout_new() -> *mut GtkLayoutManager;
15305    pub fn gtk_grid_layout_get_baseline_row(grid: *mut GtkGridLayout) -> c_int;
15306    pub fn gtk_grid_layout_get_column_homogeneous(grid: *mut GtkGridLayout) -> gboolean;
15307    pub fn gtk_grid_layout_get_column_spacing(grid: *mut GtkGridLayout) -> c_uint;
15308    pub fn gtk_grid_layout_get_row_baseline_position(
15309        grid: *mut GtkGridLayout,
15310        row: c_int,
15311    ) -> GtkBaselinePosition;
15312    pub fn gtk_grid_layout_get_row_homogeneous(grid: *mut GtkGridLayout) -> gboolean;
15313    pub fn gtk_grid_layout_get_row_spacing(grid: *mut GtkGridLayout) -> c_uint;
15314    pub fn gtk_grid_layout_set_baseline_row(grid: *mut GtkGridLayout, row: c_int);
15315    pub fn gtk_grid_layout_set_column_homogeneous(grid: *mut GtkGridLayout, homogeneous: gboolean);
15316    pub fn gtk_grid_layout_set_column_spacing(grid: *mut GtkGridLayout, spacing: c_uint);
15317    pub fn gtk_grid_layout_set_row_baseline_position(
15318        grid: *mut GtkGridLayout,
15319        row: c_int,
15320        pos: GtkBaselinePosition,
15321    );
15322    pub fn gtk_grid_layout_set_row_homogeneous(grid: *mut GtkGridLayout, homogeneous: gboolean);
15323    pub fn gtk_grid_layout_set_row_spacing(grid: *mut GtkGridLayout, spacing: c_uint);
15324
15325    //=========================================================================
15326    // GtkGridLayoutChild
15327    //=========================================================================
15328    pub fn gtk_grid_layout_child_get_type() -> GType;
15329    pub fn gtk_grid_layout_child_get_column(child: *mut GtkGridLayoutChild) -> c_int;
15330    pub fn gtk_grid_layout_child_get_column_span(child: *mut GtkGridLayoutChild) -> c_int;
15331    pub fn gtk_grid_layout_child_get_row(child: *mut GtkGridLayoutChild) -> c_int;
15332    pub fn gtk_grid_layout_child_get_row_span(child: *mut GtkGridLayoutChild) -> c_int;
15333    pub fn gtk_grid_layout_child_set_column(child: *mut GtkGridLayoutChild, column: c_int);
15334    pub fn gtk_grid_layout_child_set_column_span(child: *mut GtkGridLayoutChild, span: c_int);
15335    pub fn gtk_grid_layout_child_set_row(child: *mut GtkGridLayoutChild, row: c_int);
15336    pub fn gtk_grid_layout_child_set_row_span(child: *mut GtkGridLayoutChild, span: c_int);
15337
15338    //=========================================================================
15339    // GtkGridView
15340    //=========================================================================
15341    pub fn gtk_grid_view_get_type() -> GType;
15342    pub fn gtk_grid_view_new(
15343        model: *mut GtkSelectionModel,
15344        factory: *mut GtkListItemFactory,
15345    ) -> *mut GtkWidget;
15346    pub fn gtk_grid_view_get_enable_rubberband(self_: *mut GtkGridView) -> gboolean;
15347    pub fn gtk_grid_view_get_factory(self_: *mut GtkGridView) -> *mut GtkListItemFactory;
15348    pub fn gtk_grid_view_get_max_columns(self_: *mut GtkGridView) -> c_uint;
15349    pub fn gtk_grid_view_get_min_columns(self_: *mut GtkGridView) -> c_uint;
15350    pub fn gtk_grid_view_get_model(self_: *mut GtkGridView) -> *mut GtkSelectionModel;
15351    pub fn gtk_grid_view_get_single_click_activate(self_: *mut GtkGridView) -> gboolean;
15352    #[cfg(feature = "v4_12")]
15353    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15354    pub fn gtk_grid_view_get_tab_behavior(self_: *mut GtkGridView) -> GtkListTabBehavior;
15355    #[cfg(feature = "v4_12")]
15356    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15357    pub fn gtk_grid_view_scroll_to(
15358        self_: *mut GtkGridView,
15359        pos: c_uint,
15360        flags: GtkListScrollFlags,
15361        scroll: *mut GtkScrollInfo,
15362    );
15363    pub fn gtk_grid_view_set_enable_rubberband(
15364        self_: *mut GtkGridView,
15365        enable_rubberband: gboolean,
15366    );
15367    pub fn gtk_grid_view_set_factory(self_: *mut GtkGridView, factory: *mut GtkListItemFactory);
15368    pub fn gtk_grid_view_set_max_columns(self_: *mut GtkGridView, max_columns: c_uint);
15369    pub fn gtk_grid_view_set_min_columns(self_: *mut GtkGridView, min_columns: c_uint);
15370    pub fn gtk_grid_view_set_model(self_: *mut GtkGridView, model: *mut GtkSelectionModel);
15371    pub fn gtk_grid_view_set_single_click_activate(
15372        self_: *mut GtkGridView,
15373        single_click_activate: gboolean,
15374    );
15375    #[cfg(feature = "v4_12")]
15376    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15377    pub fn gtk_grid_view_set_tab_behavior(
15378        self_: *mut GtkGridView,
15379        tab_behavior: GtkListTabBehavior,
15380    );
15381
15382    //=========================================================================
15383    // GtkHeaderBar
15384    //=========================================================================
15385    pub fn gtk_header_bar_get_type() -> GType;
15386    pub fn gtk_header_bar_new() -> *mut GtkWidget;
15387    pub fn gtk_header_bar_get_decoration_layout(bar: *mut GtkHeaderBar) -> *const c_char;
15388    pub fn gtk_header_bar_get_show_title_buttons(bar: *mut GtkHeaderBar) -> gboolean;
15389    pub fn gtk_header_bar_get_title_widget(bar: *mut GtkHeaderBar) -> *mut GtkWidget;
15390    #[cfg(feature = "v4_18")]
15391    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15392    pub fn gtk_header_bar_get_use_native_controls(bar: *mut GtkHeaderBar) -> gboolean;
15393    pub fn gtk_header_bar_pack_end(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15394    pub fn gtk_header_bar_pack_start(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15395    pub fn gtk_header_bar_remove(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15396    pub fn gtk_header_bar_set_decoration_layout(bar: *mut GtkHeaderBar, layout: *const c_char);
15397    pub fn gtk_header_bar_set_show_title_buttons(bar: *mut GtkHeaderBar, setting: gboolean);
15398    pub fn gtk_header_bar_set_title_widget(bar: *mut GtkHeaderBar, title_widget: *mut GtkWidget);
15399    #[cfg(feature = "v4_18")]
15400    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15401    pub fn gtk_header_bar_set_use_native_controls(bar: *mut GtkHeaderBar, setting: gboolean);
15402
15403    //=========================================================================
15404    // GtkIMContext
15405    //=========================================================================
15406    pub fn gtk_im_context_get_type() -> GType;
15407    #[cfg(feature = "v4_14")]
15408    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15409    pub fn gtk_im_context_activate_osk(
15410        context: *mut GtkIMContext,
15411        event: *mut gdk::GdkEvent,
15412    ) -> gboolean;
15413    pub fn gtk_im_context_delete_surrounding(
15414        context: *mut GtkIMContext,
15415        offset: c_int,
15416        n_chars: c_int,
15417    ) -> gboolean;
15418    pub fn gtk_im_context_filter_key(
15419        context: *mut GtkIMContext,
15420        press: gboolean,
15421        surface: *mut gdk::GdkSurface,
15422        device: *mut gdk::GdkDevice,
15423        time: u32,
15424        keycode: c_uint,
15425        state: gdk::GdkModifierType,
15426        group: c_int,
15427    ) -> gboolean;
15428    pub fn gtk_im_context_filter_keypress(
15429        context: *mut GtkIMContext,
15430        event: *mut gdk::GdkEvent,
15431    ) -> gboolean;
15432    pub fn gtk_im_context_focus_in(context: *mut GtkIMContext);
15433    pub fn gtk_im_context_focus_out(context: *mut GtkIMContext);
15434    pub fn gtk_im_context_get_preedit_string(
15435        context: *mut GtkIMContext,
15436        str: *mut *mut c_char,
15437        attrs: *mut *mut pango::PangoAttrList,
15438        cursor_pos: *mut c_int,
15439    );
15440    pub fn gtk_im_context_get_surrounding(
15441        context: *mut GtkIMContext,
15442        text: *mut *mut c_char,
15443        cursor_index: *mut c_int,
15444    ) -> gboolean;
15445    #[cfg(feature = "v4_2")]
15446    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15447    pub fn gtk_im_context_get_surrounding_with_selection(
15448        context: *mut GtkIMContext,
15449        text: *mut *mut c_char,
15450        cursor_index: *mut c_int,
15451        anchor_index: *mut c_int,
15452    ) -> gboolean;
15453    pub fn gtk_im_context_reset(context: *mut GtkIMContext);
15454    pub fn gtk_im_context_set_client_widget(context: *mut GtkIMContext, widget: *mut GtkWidget);
15455    pub fn gtk_im_context_set_cursor_location(
15456        context: *mut GtkIMContext,
15457        area: *const gdk::GdkRectangle,
15458    );
15459    pub fn gtk_im_context_set_surrounding(
15460        context: *mut GtkIMContext,
15461        text: *const c_char,
15462        len: c_int,
15463        cursor_index: c_int,
15464    );
15465    #[cfg(feature = "v4_2")]
15466    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15467    pub fn gtk_im_context_set_surrounding_with_selection(
15468        context: *mut GtkIMContext,
15469        text: *const c_char,
15470        len: c_int,
15471        cursor_index: c_int,
15472        anchor_index: c_int,
15473    );
15474    pub fn gtk_im_context_set_use_preedit(context: *mut GtkIMContext, use_preedit: gboolean);
15475
15476    //=========================================================================
15477    // GtkIMContextSimple
15478    //=========================================================================
15479    pub fn gtk_im_context_simple_get_type() -> GType;
15480    pub fn gtk_im_context_simple_new() -> *mut GtkIMContext;
15481    pub fn gtk_im_context_simple_add_compose_file(
15482        context_simple: *mut GtkIMContextSimple,
15483        compose_file: *const c_char,
15484    );
15485    pub fn gtk_im_context_simple_add_table(
15486        context_simple: *mut GtkIMContextSimple,
15487        data: *mut u16,
15488        max_seq_len: c_int,
15489        n_seqs: c_int,
15490    );
15491
15492    //=========================================================================
15493    // GtkIMMulticontext
15494    //=========================================================================
15495    pub fn gtk_im_multicontext_get_type() -> GType;
15496    pub fn gtk_im_multicontext_new() -> *mut GtkIMContext;
15497    pub fn gtk_im_multicontext_get_context_id(context: *mut GtkIMMulticontext) -> *const c_char;
15498    pub fn gtk_im_multicontext_set_context_id(
15499        context: *mut GtkIMMulticontext,
15500        context_id: *const c_char,
15501    );
15502
15503    //=========================================================================
15504    // GtkIconPaintable
15505    //=========================================================================
15506    pub fn gtk_icon_paintable_get_type() -> GType;
15507    pub fn gtk_icon_paintable_new_for_file(
15508        file: *mut gio::GFile,
15509        size: c_int,
15510        scale: c_int,
15511    ) -> *mut GtkIconPaintable;
15512    pub fn gtk_icon_paintable_get_file(self_: *mut GtkIconPaintable) -> *mut gio::GFile;
15513    pub fn gtk_icon_paintable_get_icon_name(self_: *mut GtkIconPaintable) -> *const c_char;
15514    pub fn gtk_icon_paintable_is_symbolic(self_: *mut GtkIconPaintable) -> gboolean;
15515
15516    //=========================================================================
15517    // GtkIconTheme
15518    //=========================================================================
15519    pub fn gtk_icon_theme_get_type() -> GType;
15520    pub fn gtk_icon_theme_new() -> *mut GtkIconTheme;
15521    pub fn gtk_icon_theme_get_for_display(display: *mut gdk::GdkDisplay) -> *mut GtkIconTheme;
15522    pub fn gtk_icon_theme_add_resource_path(self_: *mut GtkIconTheme, path: *const c_char);
15523    pub fn gtk_icon_theme_add_search_path(self_: *mut GtkIconTheme, path: *const c_char);
15524    pub fn gtk_icon_theme_get_display(self_: *mut GtkIconTheme) -> *mut gdk::GdkDisplay;
15525    pub fn gtk_icon_theme_get_icon_names(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15526    pub fn gtk_icon_theme_get_icon_sizes(
15527        self_: *mut GtkIconTheme,
15528        icon_name: *const c_char,
15529    ) -> *mut c_int;
15530    pub fn gtk_icon_theme_get_resource_path(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15531    pub fn gtk_icon_theme_get_search_path(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15532    pub fn gtk_icon_theme_get_theme_name(self_: *mut GtkIconTheme) -> *mut c_char;
15533    #[cfg(feature = "v4_2")]
15534    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15535    pub fn gtk_icon_theme_has_gicon(self_: *mut GtkIconTheme, gicon: *mut gio::GIcon) -> gboolean;
15536    pub fn gtk_icon_theme_has_icon(self_: *mut GtkIconTheme, icon_name: *const c_char) -> gboolean;
15537    pub fn gtk_icon_theme_lookup_by_gicon(
15538        self_: *mut GtkIconTheme,
15539        icon: *mut gio::GIcon,
15540        size: c_int,
15541        scale: c_int,
15542        direction: GtkTextDirection,
15543        flags: GtkIconLookupFlags,
15544    ) -> *mut GtkIconPaintable;
15545    pub fn gtk_icon_theme_lookup_icon(
15546        self_: *mut GtkIconTheme,
15547        icon_name: *const c_char,
15548        fallbacks: *mut *const c_char,
15549        size: c_int,
15550        scale: c_int,
15551        direction: GtkTextDirection,
15552        flags: GtkIconLookupFlags,
15553    ) -> *mut GtkIconPaintable;
15554    pub fn gtk_icon_theme_set_resource_path(self_: *mut GtkIconTheme, path: *const *const c_char);
15555    pub fn gtk_icon_theme_set_search_path(self_: *mut GtkIconTheme, path: *const *const c_char);
15556    pub fn gtk_icon_theme_set_theme_name(self_: *mut GtkIconTheme, theme_name: *const c_char);
15557
15558    //=========================================================================
15559    // GtkIconView
15560    //=========================================================================
15561    pub fn gtk_icon_view_get_type() -> GType;
15562    pub fn gtk_icon_view_new() -> *mut GtkWidget;
15563    pub fn gtk_icon_view_new_with_area(area: *mut GtkCellArea) -> *mut GtkWidget;
15564    pub fn gtk_icon_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
15565    pub fn gtk_icon_view_create_drag_icon(
15566        icon_view: *mut GtkIconView,
15567        path: *mut GtkTreePath,
15568    ) -> *mut gdk::GdkPaintable;
15569    pub fn gtk_icon_view_enable_model_drag_dest(
15570        icon_view: *mut GtkIconView,
15571        formats: *mut gdk::GdkContentFormats,
15572        actions: gdk::GdkDragAction,
15573    );
15574    pub fn gtk_icon_view_enable_model_drag_source(
15575        icon_view: *mut GtkIconView,
15576        start_button_mask: gdk::GdkModifierType,
15577        formats: *mut gdk::GdkContentFormats,
15578        actions: gdk::GdkDragAction,
15579    );
15580    pub fn gtk_icon_view_get_activate_on_single_click(icon_view: *mut GtkIconView) -> gboolean;
15581    pub fn gtk_icon_view_get_cell_rect(
15582        icon_view: *mut GtkIconView,
15583        path: *mut GtkTreePath,
15584        cell: *mut GtkCellRenderer,
15585        rect: *mut gdk::GdkRectangle,
15586    ) -> gboolean;
15587    pub fn gtk_icon_view_get_column_spacing(icon_view: *mut GtkIconView) -> c_int;
15588    pub fn gtk_icon_view_get_columns(icon_view: *mut GtkIconView) -> c_int;
15589    pub fn gtk_icon_view_get_cursor(
15590        icon_view: *mut GtkIconView,
15591        path: *mut *mut GtkTreePath,
15592        cell: *mut *mut GtkCellRenderer,
15593    ) -> gboolean;
15594    pub fn gtk_icon_view_get_dest_item_at_pos(
15595        icon_view: *mut GtkIconView,
15596        drag_x: c_int,
15597        drag_y: c_int,
15598        path: *mut *mut GtkTreePath,
15599        pos: *mut GtkIconViewDropPosition,
15600    ) -> gboolean;
15601    pub fn gtk_icon_view_get_drag_dest_item(
15602        icon_view: *mut GtkIconView,
15603        path: *mut *mut GtkTreePath,
15604        pos: *mut GtkIconViewDropPosition,
15605    );
15606    pub fn gtk_icon_view_get_item_at_pos(
15607        icon_view: *mut GtkIconView,
15608        x: c_int,
15609        y: c_int,
15610        path: *mut *mut GtkTreePath,
15611        cell: *mut *mut GtkCellRenderer,
15612    ) -> gboolean;
15613    pub fn gtk_icon_view_get_item_column(
15614        icon_view: *mut GtkIconView,
15615        path: *mut GtkTreePath,
15616    ) -> c_int;
15617    pub fn gtk_icon_view_get_item_orientation(icon_view: *mut GtkIconView) -> GtkOrientation;
15618    pub fn gtk_icon_view_get_item_padding(icon_view: *mut GtkIconView) -> c_int;
15619    pub fn gtk_icon_view_get_item_row(icon_view: *mut GtkIconView, path: *mut GtkTreePath)
15620        -> c_int;
15621    pub fn gtk_icon_view_get_item_width(icon_view: *mut GtkIconView) -> c_int;
15622    pub fn gtk_icon_view_get_margin(icon_view: *mut GtkIconView) -> c_int;
15623    pub fn gtk_icon_view_get_markup_column(icon_view: *mut GtkIconView) -> c_int;
15624    pub fn gtk_icon_view_get_model(icon_view: *mut GtkIconView) -> *mut GtkTreeModel;
15625    pub fn gtk_icon_view_get_path_at_pos(
15626        icon_view: *mut GtkIconView,
15627        x: c_int,
15628        y: c_int,
15629    ) -> *mut GtkTreePath;
15630    pub fn gtk_icon_view_get_pixbuf_column(icon_view: *mut GtkIconView) -> c_int;
15631    pub fn gtk_icon_view_get_reorderable(icon_view: *mut GtkIconView) -> gboolean;
15632    pub fn gtk_icon_view_get_row_spacing(icon_view: *mut GtkIconView) -> c_int;
15633    pub fn gtk_icon_view_get_selected_items(icon_view: *mut GtkIconView) -> *mut glib::GList;
15634    pub fn gtk_icon_view_get_selection_mode(icon_view: *mut GtkIconView) -> GtkSelectionMode;
15635    pub fn gtk_icon_view_get_spacing(icon_view: *mut GtkIconView) -> c_int;
15636    pub fn gtk_icon_view_get_text_column(icon_view: *mut GtkIconView) -> c_int;
15637    pub fn gtk_icon_view_get_tooltip_column(icon_view: *mut GtkIconView) -> c_int;
15638    pub fn gtk_icon_view_get_tooltip_context(
15639        icon_view: *mut GtkIconView,
15640        x: c_int,
15641        y: c_int,
15642        keyboard_tip: gboolean,
15643        model: *mut *mut GtkTreeModel,
15644        path: *mut *mut GtkTreePath,
15645        iter: *mut GtkTreeIter,
15646    ) -> gboolean;
15647    pub fn gtk_icon_view_get_visible_range(
15648        icon_view: *mut GtkIconView,
15649        start_path: *mut *mut GtkTreePath,
15650        end_path: *mut *mut GtkTreePath,
15651    ) -> gboolean;
15652    pub fn gtk_icon_view_item_activated(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15653    pub fn gtk_icon_view_path_is_selected(
15654        icon_view: *mut GtkIconView,
15655        path: *mut GtkTreePath,
15656    ) -> gboolean;
15657    pub fn gtk_icon_view_scroll_to_path(
15658        icon_view: *mut GtkIconView,
15659        path: *mut GtkTreePath,
15660        use_align: gboolean,
15661        row_align: c_float,
15662        col_align: c_float,
15663    );
15664    pub fn gtk_icon_view_select_all(icon_view: *mut GtkIconView);
15665    pub fn gtk_icon_view_select_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15666    pub fn gtk_icon_view_selected_foreach(
15667        icon_view: *mut GtkIconView,
15668        func: GtkIconViewForeachFunc,
15669        data: gpointer,
15670    );
15671    pub fn gtk_icon_view_set_activate_on_single_click(
15672        icon_view: *mut GtkIconView,
15673        single: gboolean,
15674    );
15675    pub fn gtk_icon_view_set_column_spacing(icon_view: *mut GtkIconView, column_spacing: c_int);
15676    pub fn gtk_icon_view_set_columns(icon_view: *mut GtkIconView, columns: c_int);
15677    pub fn gtk_icon_view_set_cursor(
15678        icon_view: *mut GtkIconView,
15679        path: *mut GtkTreePath,
15680        cell: *mut GtkCellRenderer,
15681        start_editing: gboolean,
15682    );
15683    pub fn gtk_icon_view_set_drag_dest_item(
15684        icon_view: *mut GtkIconView,
15685        path: *mut GtkTreePath,
15686        pos: GtkIconViewDropPosition,
15687    );
15688    pub fn gtk_icon_view_set_item_orientation(
15689        icon_view: *mut GtkIconView,
15690        orientation: GtkOrientation,
15691    );
15692    pub fn gtk_icon_view_set_item_padding(icon_view: *mut GtkIconView, item_padding: c_int);
15693    pub fn gtk_icon_view_set_item_width(icon_view: *mut GtkIconView, item_width: c_int);
15694    pub fn gtk_icon_view_set_margin(icon_view: *mut GtkIconView, margin: c_int);
15695    pub fn gtk_icon_view_set_markup_column(icon_view: *mut GtkIconView, column: c_int);
15696    pub fn gtk_icon_view_set_model(icon_view: *mut GtkIconView, model: *mut GtkTreeModel);
15697    pub fn gtk_icon_view_set_pixbuf_column(icon_view: *mut GtkIconView, column: c_int);
15698    pub fn gtk_icon_view_set_reorderable(icon_view: *mut GtkIconView, reorderable: gboolean);
15699    pub fn gtk_icon_view_set_row_spacing(icon_view: *mut GtkIconView, row_spacing: c_int);
15700    pub fn gtk_icon_view_set_selection_mode(icon_view: *mut GtkIconView, mode: GtkSelectionMode);
15701    pub fn gtk_icon_view_set_spacing(icon_view: *mut GtkIconView, spacing: c_int);
15702    pub fn gtk_icon_view_set_text_column(icon_view: *mut GtkIconView, column: c_int);
15703    pub fn gtk_icon_view_set_tooltip_cell(
15704        icon_view: *mut GtkIconView,
15705        tooltip: *mut GtkTooltip,
15706        path: *mut GtkTreePath,
15707        cell: *mut GtkCellRenderer,
15708    );
15709    pub fn gtk_icon_view_set_tooltip_column(icon_view: *mut GtkIconView, column: c_int);
15710    pub fn gtk_icon_view_set_tooltip_item(
15711        icon_view: *mut GtkIconView,
15712        tooltip: *mut GtkTooltip,
15713        path: *mut GtkTreePath,
15714    );
15715    pub fn gtk_icon_view_unselect_all(icon_view: *mut GtkIconView);
15716    pub fn gtk_icon_view_unselect_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15717    pub fn gtk_icon_view_unset_model_drag_dest(icon_view: *mut GtkIconView);
15718    pub fn gtk_icon_view_unset_model_drag_source(icon_view: *mut GtkIconView);
15719
15720    //=========================================================================
15721    // GtkImage
15722    //=========================================================================
15723    pub fn gtk_image_get_type() -> GType;
15724    pub fn gtk_image_new() -> *mut GtkWidget;
15725    pub fn gtk_image_new_from_file(filename: *const c_char) -> *mut GtkWidget;
15726    pub fn gtk_image_new_from_gicon(icon: *mut gio::GIcon) -> *mut GtkWidget;
15727    pub fn gtk_image_new_from_icon_name(icon_name: *const c_char) -> *mut GtkWidget;
15728    pub fn gtk_image_new_from_paintable(paintable: *mut gdk::GdkPaintable) -> *mut GtkWidget;
15729    pub fn gtk_image_new_from_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
15730    pub fn gtk_image_new_from_resource(resource_path: *const c_char) -> *mut GtkWidget;
15731    pub fn gtk_image_clear(image: *mut GtkImage);
15732    pub fn gtk_image_get_gicon(image: *mut GtkImage) -> *mut gio::GIcon;
15733    pub fn gtk_image_get_icon_name(image: *mut GtkImage) -> *const c_char;
15734    pub fn gtk_image_get_icon_size(image: *mut GtkImage) -> GtkIconSize;
15735    pub fn gtk_image_get_paintable(image: *mut GtkImage) -> *mut gdk::GdkPaintable;
15736    pub fn gtk_image_get_pixel_size(image: *mut GtkImage) -> c_int;
15737    pub fn gtk_image_get_storage_type(image: *mut GtkImage) -> GtkImageType;
15738    pub fn gtk_image_set_from_file(image: *mut GtkImage, filename: *const c_char);
15739    pub fn gtk_image_set_from_gicon(image: *mut GtkImage, icon: *mut gio::GIcon);
15740    pub fn gtk_image_set_from_icon_name(image: *mut GtkImage, icon_name: *const c_char);
15741    pub fn gtk_image_set_from_paintable(image: *mut GtkImage, paintable: *mut gdk::GdkPaintable);
15742    pub fn gtk_image_set_from_pixbuf(image: *mut GtkImage, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
15743    pub fn gtk_image_set_from_resource(image: *mut GtkImage, resource_path: *const c_char);
15744    pub fn gtk_image_set_icon_size(image: *mut GtkImage, icon_size: GtkIconSize);
15745    pub fn gtk_image_set_pixel_size(image: *mut GtkImage, pixel_size: c_int);
15746
15747    //=========================================================================
15748    // GtkInfoBar
15749    //=========================================================================
15750    pub fn gtk_info_bar_get_type() -> GType;
15751    pub fn gtk_info_bar_new() -> *mut GtkWidget;
15752    pub fn gtk_info_bar_new_with_buttons(first_button_text: *const c_char, ...) -> *mut GtkWidget;
15753    pub fn gtk_info_bar_add_action_widget(
15754        info_bar: *mut GtkInfoBar,
15755        child: *mut GtkWidget,
15756        response_id: GtkResponseType,
15757    );
15758    pub fn gtk_info_bar_add_button(
15759        info_bar: *mut GtkInfoBar,
15760        button_text: *const c_char,
15761        response_id: GtkResponseType,
15762    ) -> *mut GtkButton;
15763    pub fn gtk_info_bar_add_buttons(
15764        info_bar: *mut GtkInfoBar,
15765        first_button_text: *const c_char,
15766        ...
15767    );
15768    pub fn gtk_info_bar_add_child(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15769    pub fn gtk_info_bar_get_message_type(info_bar: *mut GtkInfoBar) -> GtkMessageType;
15770    pub fn gtk_info_bar_get_revealed(info_bar: *mut GtkInfoBar) -> gboolean;
15771    pub fn gtk_info_bar_get_show_close_button(info_bar: *mut GtkInfoBar) -> gboolean;
15772    pub fn gtk_info_bar_remove_action_widget(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15773    pub fn gtk_info_bar_remove_child(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15774    pub fn gtk_info_bar_response(info_bar: *mut GtkInfoBar, response_id: GtkResponseType);
15775    pub fn gtk_info_bar_set_default_response(
15776        info_bar: *mut GtkInfoBar,
15777        response_id: GtkResponseType,
15778    );
15779    pub fn gtk_info_bar_set_message_type(info_bar: *mut GtkInfoBar, message_type: GtkMessageType);
15780    pub fn gtk_info_bar_set_response_sensitive(
15781        info_bar: *mut GtkInfoBar,
15782        response_id: GtkResponseType,
15783        setting: gboolean,
15784    );
15785    pub fn gtk_info_bar_set_revealed(info_bar: *mut GtkInfoBar, revealed: gboolean);
15786    pub fn gtk_info_bar_set_show_close_button(info_bar: *mut GtkInfoBar, setting: gboolean);
15787
15788    //=========================================================================
15789    // GtkInscription
15790    //=========================================================================
15791    #[cfg(feature = "v4_8")]
15792    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15793    pub fn gtk_inscription_get_type() -> GType;
15794    #[cfg(feature = "v4_8")]
15795    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15796    pub fn gtk_inscription_new(text: *const c_char) -> *mut GtkWidget;
15797    #[cfg(feature = "v4_8")]
15798    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15799    pub fn gtk_inscription_get_attributes(self_: *mut GtkInscription) -> *mut pango::PangoAttrList;
15800    #[cfg(feature = "v4_8")]
15801    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15802    pub fn gtk_inscription_get_min_chars(self_: *mut GtkInscription) -> c_uint;
15803    #[cfg(feature = "v4_8")]
15804    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15805    pub fn gtk_inscription_get_min_lines(self_: *mut GtkInscription) -> c_uint;
15806    #[cfg(feature = "v4_8")]
15807    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15808    pub fn gtk_inscription_get_nat_chars(self_: *mut GtkInscription) -> c_uint;
15809    #[cfg(feature = "v4_8")]
15810    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15811    pub fn gtk_inscription_get_nat_lines(self_: *mut GtkInscription) -> c_uint;
15812    #[cfg(feature = "v4_8")]
15813    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15814    pub fn gtk_inscription_get_text(self_: *mut GtkInscription) -> *const c_char;
15815    #[cfg(feature = "v4_8")]
15816    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15817    pub fn gtk_inscription_get_text_overflow(self_: *mut GtkInscription) -> GtkInscriptionOverflow;
15818    #[cfg(feature = "v4_8")]
15819    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15820    pub fn gtk_inscription_get_wrap_mode(self_: *mut GtkInscription) -> pango::PangoWrapMode;
15821    #[cfg(feature = "v4_8")]
15822    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15823    pub fn gtk_inscription_get_xalign(self_: *mut GtkInscription) -> c_float;
15824    #[cfg(feature = "v4_8")]
15825    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15826    pub fn gtk_inscription_get_yalign(self_: *mut GtkInscription) -> c_float;
15827    #[cfg(feature = "v4_8")]
15828    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15829    pub fn gtk_inscription_set_attributes(
15830        self_: *mut GtkInscription,
15831        attrs: *mut pango::PangoAttrList,
15832    );
15833    #[cfg(feature = "v4_8")]
15834    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15835    pub fn gtk_inscription_set_markup(self_: *mut GtkInscription, markup: *const c_char);
15836    #[cfg(feature = "v4_8")]
15837    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15838    pub fn gtk_inscription_set_min_chars(self_: *mut GtkInscription, min_chars: c_uint);
15839    #[cfg(feature = "v4_8")]
15840    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15841    pub fn gtk_inscription_set_min_lines(self_: *mut GtkInscription, min_lines: c_uint);
15842    #[cfg(feature = "v4_8")]
15843    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15844    pub fn gtk_inscription_set_nat_chars(self_: *mut GtkInscription, nat_chars: c_uint);
15845    #[cfg(feature = "v4_8")]
15846    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15847    pub fn gtk_inscription_set_nat_lines(self_: *mut GtkInscription, nat_lines: c_uint);
15848    #[cfg(feature = "v4_8")]
15849    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15850    pub fn gtk_inscription_set_text(self_: *mut GtkInscription, text: *const c_char);
15851    #[cfg(feature = "v4_8")]
15852    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15853    pub fn gtk_inscription_set_text_overflow(
15854        self_: *mut GtkInscription,
15855        overflow: GtkInscriptionOverflow,
15856    );
15857    #[cfg(feature = "v4_8")]
15858    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15859    pub fn gtk_inscription_set_wrap_mode(
15860        self_: *mut GtkInscription,
15861        wrap_mode: pango::PangoWrapMode,
15862    );
15863    #[cfg(feature = "v4_8")]
15864    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15865    pub fn gtk_inscription_set_xalign(self_: *mut GtkInscription, xalign: c_float);
15866    #[cfg(feature = "v4_8")]
15867    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15868    pub fn gtk_inscription_set_yalign(self_: *mut GtkInscription, yalign: c_float);
15869
15870    //=========================================================================
15871    // GtkKeyvalTrigger
15872    //=========================================================================
15873    pub fn gtk_keyval_trigger_get_type() -> GType;
15874    pub fn gtk_keyval_trigger_new(
15875        keyval: c_uint,
15876        modifiers: gdk::GdkModifierType,
15877    ) -> *mut GtkShortcutTrigger;
15878    pub fn gtk_keyval_trigger_get_keyval(self_: *mut GtkKeyvalTrigger) -> c_uint;
15879    pub fn gtk_keyval_trigger_get_modifiers(self_: *mut GtkKeyvalTrigger) -> gdk::GdkModifierType;
15880
15881    //=========================================================================
15882    // GtkLabel
15883    //=========================================================================
15884    pub fn gtk_label_get_type() -> GType;
15885    pub fn gtk_label_new(str: *const c_char) -> *mut GtkWidget;
15886    pub fn gtk_label_new_with_mnemonic(str: *const c_char) -> *mut GtkWidget;
15887    pub fn gtk_label_get_attributes(self_: *mut GtkLabel) -> *mut pango::PangoAttrList;
15888    pub fn gtk_label_get_current_uri(self_: *mut GtkLabel) -> *const c_char;
15889    pub fn gtk_label_get_ellipsize(self_: *mut GtkLabel) -> pango::PangoEllipsizeMode;
15890    pub fn gtk_label_get_extra_menu(self_: *mut GtkLabel) -> *mut gio::GMenuModel;
15891    pub fn gtk_label_get_justify(self_: *mut GtkLabel) -> GtkJustification;
15892    pub fn gtk_label_get_label(self_: *mut GtkLabel) -> *const c_char;
15893    pub fn gtk_label_get_layout(self_: *mut GtkLabel) -> *mut pango::PangoLayout;
15894    pub fn gtk_label_get_layout_offsets(self_: *mut GtkLabel, x: *mut c_int, y: *mut c_int);
15895    pub fn gtk_label_get_lines(self_: *mut GtkLabel) -> c_int;
15896    pub fn gtk_label_get_max_width_chars(self_: *mut GtkLabel) -> c_int;
15897    pub fn gtk_label_get_mnemonic_keyval(self_: *mut GtkLabel) -> c_uint;
15898    pub fn gtk_label_get_mnemonic_widget(self_: *mut GtkLabel) -> *mut GtkWidget;
15899    #[cfg(feature = "v4_6")]
15900    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
15901    pub fn gtk_label_get_natural_wrap_mode(self_: *mut GtkLabel) -> GtkNaturalWrapMode;
15902    pub fn gtk_label_get_selectable(self_: *mut GtkLabel) -> gboolean;
15903    pub fn gtk_label_get_selection_bounds(
15904        self_: *mut GtkLabel,
15905        start: *mut c_int,
15906        end: *mut c_int,
15907    ) -> gboolean;
15908    pub fn gtk_label_get_single_line_mode(self_: *mut GtkLabel) -> gboolean;
15909    #[cfg(feature = "v4_8")]
15910    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15911    pub fn gtk_label_get_tabs(self_: *mut GtkLabel) -> *mut pango::PangoTabArray;
15912    pub fn gtk_label_get_text(self_: *mut GtkLabel) -> *const c_char;
15913    pub fn gtk_label_get_use_markup(self_: *mut GtkLabel) -> gboolean;
15914    pub fn gtk_label_get_use_underline(self_: *mut GtkLabel) -> gboolean;
15915    pub fn gtk_label_get_width_chars(self_: *mut GtkLabel) -> c_int;
15916    pub fn gtk_label_get_wrap(self_: *mut GtkLabel) -> gboolean;
15917    pub fn gtk_label_get_wrap_mode(self_: *mut GtkLabel) -> pango::PangoWrapMode;
15918    pub fn gtk_label_get_xalign(self_: *mut GtkLabel) -> c_float;
15919    pub fn gtk_label_get_yalign(self_: *mut GtkLabel) -> c_float;
15920    pub fn gtk_label_select_region(self_: *mut GtkLabel, start_offset: c_int, end_offset: c_int);
15921    pub fn gtk_label_set_attributes(self_: *mut GtkLabel, attrs: *mut pango::PangoAttrList);
15922    pub fn gtk_label_set_ellipsize(self_: *mut GtkLabel, mode: pango::PangoEllipsizeMode);
15923    pub fn gtk_label_set_extra_menu(self_: *mut GtkLabel, model: *mut gio::GMenuModel);
15924    pub fn gtk_label_set_justify(self_: *mut GtkLabel, jtype: GtkJustification);
15925    pub fn gtk_label_set_label(self_: *mut GtkLabel, str: *const c_char);
15926    pub fn gtk_label_set_lines(self_: *mut GtkLabel, lines: c_int);
15927    pub fn gtk_label_set_markup(self_: *mut GtkLabel, str: *const c_char);
15928    pub fn gtk_label_set_markup_with_mnemonic(self_: *mut GtkLabel, str: *const c_char);
15929    pub fn gtk_label_set_max_width_chars(self_: *mut GtkLabel, n_chars: c_int);
15930    pub fn gtk_label_set_mnemonic_widget(self_: *mut GtkLabel, widget: *mut GtkWidget);
15931    #[cfg(feature = "v4_6")]
15932    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
15933    pub fn gtk_label_set_natural_wrap_mode(self_: *mut GtkLabel, wrap_mode: GtkNaturalWrapMode);
15934    pub fn gtk_label_set_selectable(self_: *mut GtkLabel, setting: gboolean);
15935    pub fn gtk_label_set_single_line_mode(self_: *mut GtkLabel, single_line_mode: gboolean);
15936    #[cfg(feature = "v4_8")]
15937    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15938    pub fn gtk_label_set_tabs(self_: *mut GtkLabel, tabs: *mut pango::PangoTabArray);
15939    pub fn gtk_label_set_text(self_: *mut GtkLabel, str: *const c_char);
15940    pub fn gtk_label_set_text_with_mnemonic(self_: *mut GtkLabel, str: *const c_char);
15941    pub fn gtk_label_set_use_markup(self_: *mut GtkLabel, setting: gboolean);
15942    pub fn gtk_label_set_use_underline(self_: *mut GtkLabel, setting: gboolean);
15943    pub fn gtk_label_set_width_chars(self_: *mut GtkLabel, n_chars: c_int);
15944    pub fn gtk_label_set_wrap(self_: *mut GtkLabel, wrap: gboolean);
15945    pub fn gtk_label_set_wrap_mode(self_: *mut GtkLabel, wrap_mode: pango::PangoWrapMode);
15946    pub fn gtk_label_set_xalign(self_: *mut GtkLabel, xalign: c_float);
15947    pub fn gtk_label_set_yalign(self_: *mut GtkLabel, yalign: c_float);
15948
15949    //=========================================================================
15950    // GtkLayoutChild
15951    //=========================================================================
15952    pub fn gtk_layout_child_get_type() -> GType;
15953    pub fn gtk_layout_child_get_child_widget(layout_child: *mut GtkLayoutChild) -> *mut GtkWidget;
15954    pub fn gtk_layout_child_get_layout_manager(
15955        layout_child: *mut GtkLayoutChild,
15956    ) -> *mut GtkLayoutManager;
15957
15958    //=========================================================================
15959    // GtkLayoutManager
15960    //=========================================================================
15961    pub fn gtk_layout_manager_get_type() -> GType;
15962    pub fn gtk_layout_manager_allocate(
15963        manager: *mut GtkLayoutManager,
15964        widget: *mut GtkWidget,
15965        width: c_int,
15966        height: c_int,
15967        baseline: c_int,
15968    );
15969    pub fn gtk_layout_manager_get_layout_child(
15970        manager: *mut GtkLayoutManager,
15971        child: *mut GtkWidget,
15972    ) -> *mut GtkLayoutChild;
15973    pub fn gtk_layout_manager_get_request_mode(
15974        manager: *mut GtkLayoutManager,
15975    ) -> GtkSizeRequestMode;
15976    pub fn gtk_layout_manager_get_widget(manager: *mut GtkLayoutManager) -> *mut GtkWidget;
15977    pub fn gtk_layout_manager_layout_changed(manager: *mut GtkLayoutManager);
15978    pub fn gtk_layout_manager_measure(
15979        manager: *mut GtkLayoutManager,
15980        widget: *mut GtkWidget,
15981        orientation: GtkOrientation,
15982        for_size: c_int,
15983        minimum: *mut c_int,
15984        natural: *mut c_int,
15985        minimum_baseline: *mut c_int,
15986        natural_baseline: *mut c_int,
15987    );
15988
15989    //=========================================================================
15990    // GtkLevelBar
15991    //=========================================================================
15992    pub fn gtk_level_bar_get_type() -> GType;
15993    pub fn gtk_level_bar_new() -> *mut GtkWidget;
15994    pub fn gtk_level_bar_new_for_interval(
15995        min_value: c_double,
15996        max_value: c_double,
15997    ) -> *mut GtkWidget;
15998    pub fn gtk_level_bar_add_offset_value(
15999        self_: *mut GtkLevelBar,
16000        name: *const c_char,
16001        value: c_double,
16002    );
16003    pub fn gtk_level_bar_get_inverted(self_: *mut GtkLevelBar) -> gboolean;
16004    pub fn gtk_level_bar_get_max_value(self_: *mut GtkLevelBar) -> c_double;
16005    pub fn gtk_level_bar_get_min_value(self_: *mut GtkLevelBar) -> c_double;
16006    pub fn gtk_level_bar_get_mode(self_: *mut GtkLevelBar) -> GtkLevelBarMode;
16007    pub fn gtk_level_bar_get_offset_value(
16008        self_: *mut GtkLevelBar,
16009        name: *const c_char,
16010        value: *mut c_double,
16011    ) -> gboolean;
16012    pub fn gtk_level_bar_get_value(self_: *mut GtkLevelBar) -> c_double;
16013    pub fn gtk_level_bar_remove_offset_value(self_: *mut GtkLevelBar, name: *const c_char);
16014    pub fn gtk_level_bar_set_inverted(self_: *mut GtkLevelBar, inverted: gboolean);
16015    pub fn gtk_level_bar_set_max_value(self_: *mut GtkLevelBar, value: c_double);
16016    pub fn gtk_level_bar_set_min_value(self_: *mut GtkLevelBar, value: c_double);
16017    pub fn gtk_level_bar_set_mode(self_: *mut GtkLevelBar, mode: GtkLevelBarMode);
16018    pub fn gtk_level_bar_set_value(self_: *mut GtkLevelBar, value: c_double);
16019
16020    //=========================================================================
16021    // GtkLinkButton
16022    //=========================================================================
16023    pub fn gtk_link_button_get_type() -> GType;
16024    pub fn gtk_link_button_new(uri: *const c_char) -> *mut GtkWidget;
16025    pub fn gtk_link_button_new_with_label(
16026        uri: *const c_char,
16027        label: *const c_char,
16028    ) -> *mut GtkWidget;
16029    pub fn gtk_link_button_get_uri(link_button: *mut GtkLinkButton) -> *const c_char;
16030    pub fn gtk_link_button_get_visited(link_button: *mut GtkLinkButton) -> gboolean;
16031    pub fn gtk_link_button_set_uri(link_button: *mut GtkLinkButton, uri: *const c_char);
16032    pub fn gtk_link_button_set_visited(link_button: *mut GtkLinkButton, visited: gboolean);
16033
16034    //=========================================================================
16035    // GtkListBase
16036    //=========================================================================
16037    pub fn gtk_list_base_get_type() -> GType;
16038
16039    //=========================================================================
16040    // GtkListBox
16041    //=========================================================================
16042    pub fn gtk_list_box_get_type() -> GType;
16043    pub fn gtk_list_box_new() -> *mut GtkWidget;
16044    pub fn gtk_list_box_append(box_: *mut GtkListBox, child: *mut GtkWidget);
16045    pub fn gtk_list_box_bind_model(
16046        box_: *mut GtkListBox,
16047        model: *mut gio::GListModel,
16048        create_widget_func: GtkListBoxCreateWidgetFunc,
16049        user_data: gpointer,
16050        user_data_free_func: glib::GDestroyNotify,
16051    );
16052    pub fn gtk_list_box_drag_highlight_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
16053    pub fn gtk_list_box_drag_unhighlight_row(box_: *mut GtkListBox);
16054    pub fn gtk_list_box_get_activate_on_single_click(box_: *mut GtkListBox) -> gboolean;
16055    pub fn gtk_list_box_get_adjustment(box_: *mut GtkListBox) -> *mut GtkAdjustment;
16056    pub fn gtk_list_box_get_row_at_index(
16057        box_: *mut GtkListBox,
16058        index_: c_int,
16059    ) -> *mut GtkListBoxRow;
16060    pub fn gtk_list_box_get_row_at_y(box_: *mut GtkListBox, y: c_int) -> *mut GtkListBoxRow;
16061    pub fn gtk_list_box_get_selected_row(box_: *mut GtkListBox) -> *mut GtkListBoxRow;
16062    pub fn gtk_list_box_get_selected_rows(box_: *mut GtkListBox) -> *mut glib::GList;
16063    pub fn gtk_list_box_get_selection_mode(box_: *mut GtkListBox) -> GtkSelectionMode;
16064    pub fn gtk_list_box_get_show_separators(box_: *mut GtkListBox) -> gboolean;
16065    #[cfg(feature = "v4_18")]
16066    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
16067    pub fn gtk_list_box_get_tab_behavior(box_: *mut GtkListBox) -> GtkListTabBehavior;
16068    pub fn gtk_list_box_insert(box_: *mut GtkListBox, child: *mut GtkWidget, position: c_int);
16069    pub fn gtk_list_box_invalidate_filter(box_: *mut GtkListBox);
16070    pub fn gtk_list_box_invalidate_headers(box_: *mut GtkListBox);
16071    pub fn gtk_list_box_invalidate_sort(box_: *mut GtkListBox);
16072    pub fn gtk_list_box_prepend(box_: *mut GtkListBox, child: *mut GtkWidget);
16073    pub fn gtk_list_box_remove(box_: *mut GtkListBox, child: *mut GtkWidget);
16074    #[cfg(feature = "v4_12")]
16075    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16076    pub fn gtk_list_box_remove_all(box_: *mut GtkListBox);
16077    pub fn gtk_list_box_select_all(box_: *mut GtkListBox);
16078    pub fn gtk_list_box_select_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
16079    pub fn gtk_list_box_selected_foreach(
16080        box_: *mut GtkListBox,
16081        func: GtkListBoxForeachFunc,
16082        data: gpointer,
16083    );
16084    pub fn gtk_list_box_set_activate_on_single_click(box_: *mut GtkListBox, single: gboolean);
16085    pub fn gtk_list_box_set_adjustment(box_: *mut GtkListBox, adjustment: *mut GtkAdjustment);
16086    pub fn gtk_list_box_set_filter_func(
16087        box_: *mut GtkListBox,
16088        filter_func: GtkListBoxFilterFunc,
16089        user_data: gpointer,
16090        destroy: glib::GDestroyNotify,
16091    );
16092    pub fn gtk_list_box_set_header_func(
16093        box_: *mut GtkListBox,
16094        update_header: GtkListBoxUpdateHeaderFunc,
16095        user_data: gpointer,
16096        destroy: glib::GDestroyNotify,
16097    );
16098    pub fn gtk_list_box_set_placeholder(box_: *mut GtkListBox, placeholder: *mut GtkWidget);
16099    pub fn gtk_list_box_set_selection_mode(box_: *mut GtkListBox, mode: GtkSelectionMode);
16100    pub fn gtk_list_box_set_show_separators(box_: *mut GtkListBox, show_separators: gboolean);
16101    pub fn gtk_list_box_set_sort_func(
16102        box_: *mut GtkListBox,
16103        sort_func: GtkListBoxSortFunc,
16104        user_data: gpointer,
16105        destroy: glib::GDestroyNotify,
16106    );
16107    #[cfg(feature = "v4_18")]
16108    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
16109    pub fn gtk_list_box_set_tab_behavior(box_: *mut GtkListBox, behavior: GtkListTabBehavior);
16110    pub fn gtk_list_box_unselect_all(box_: *mut GtkListBox);
16111    pub fn gtk_list_box_unselect_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
16112
16113    //=========================================================================
16114    // GtkListBoxRow
16115    //=========================================================================
16116    pub fn gtk_list_box_row_get_type() -> GType;
16117    pub fn gtk_list_box_row_new() -> *mut GtkWidget;
16118    pub fn gtk_list_box_row_changed(row: *mut GtkListBoxRow);
16119    pub fn gtk_list_box_row_get_activatable(row: *mut GtkListBoxRow) -> gboolean;
16120    pub fn gtk_list_box_row_get_child(row: *mut GtkListBoxRow) -> *mut GtkWidget;
16121    pub fn gtk_list_box_row_get_header(row: *mut GtkListBoxRow) -> *mut GtkWidget;
16122    pub fn gtk_list_box_row_get_index(row: *mut GtkListBoxRow) -> c_int;
16123    pub fn gtk_list_box_row_get_selectable(row: *mut GtkListBoxRow) -> gboolean;
16124    pub fn gtk_list_box_row_is_selected(row: *mut GtkListBoxRow) -> gboolean;
16125    pub fn gtk_list_box_row_set_activatable(row: *mut GtkListBoxRow, activatable: gboolean);
16126    pub fn gtk_list_box_row_set_child(row: *mut GtkListBoxRow, child: *mut GtkWidget);
16127    pub fn gtk_list_box_row_set_header(row: *mut GtkListBoxRow, header: *mut GtkWidget);
16128    pub fn gtk_list_box_row_set_selectable(row: *mut GtkListBoxRow, selectable: gboolean);
16129
16130    //=========================================================================
16131    // GtkListHeader
16132    //=========================================================================
16133    #[cfg(feature = "v4_12")]
16134    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16135    pub fn gtk_list_header_get_type() -> GType;
16136    #[cfg(feature = "v4_12")]
16137    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16138    pub fn gtk_list_header_get_child(self_: *mut GtkListHeader) -> *mut GtkWidget;
16139    #[cfg(feature = "v4_12")]
16140    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16141    pub fn gtk_list_header_get_end(self_: *mut GtkListHeader) -> c_uint;
16142    #[cfg(feature = "v4_12")]
16143    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16144    pub fn gtk_list_header_get_item(self_: *mut GtkListHeader) -> *mut gobject::GObject;
16145    #[cfg(feature = "v4_12")]
16146    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16147    pub fn gtk_list_header_get_n_items(self_: *mut GtkListHeader) -> c_uint;
16148    #[cfg(feature = "v4_12")]
16149    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16150    pub fn gtk_list_header_get_start(self_: *mut GtkListHeader) -> c_uint;
16151    #[cfg(feature = "v4_12")]
16152    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16153    pub fn gtk_list_header_set_child(self_: *mut GtkListHeader, child: *mut GtkWidget);
16154
16155    //=========================================================================
16156    // GtkListItem
16157    //=========================================================================
16158    pub fn gtk_list_item_get_type() -> GType;
16159    #[cfg(feature = "v4_12")]
16160    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16161    pub fn gtk_list_item_get_accessible_description(self_: *mut GtkListItem) -> *const c_char;
16162    #[cfg(feature = "v4_12")]
16163    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16164    pub fn gtk_list_item_get_accessible_label(self_: *mut GtkListItem) -> *const c_char;
16165    pub fn gtk_list_item_get_activatable(self_: *mut GtkListItem) -> gboolean;
16166    pub fn gtk_list_item_get_child(self_: *mut GtkListItem) -> *mut GtkWidget;
16167    #[cfg(feature = "v4_12")]
16168    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16169    pub fn gtk_list_item_get_focusable(self_: *mut GtkListItem) -> gboolean;
16170    pub fn gtk_list_item_get_item(self_: *mut GtkListItem) -> *mut gobject::GObject;
16171    pub fn gtk_list_item_get_position(self_: *mut GtkListItem) -> c_uint;
16172    pub fn gtk_list_item_get_selectable(self_: *mut GtkListItem) -> gboolean;
16173    pub fn gtk_list_item_get_selected(self_: *mut GtkListItem) -> gboolean;
16174    #[cfg(feature = "v4_12")]
16175    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16176    pub fn gtk_list_item_set_accessible_description(
16177        self_: *mut GtkListItem,
16178        description: *const c_char,
16179    );
16180    #[cfg(feature = "v4_12")]
16181    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16182    pub fn gtk_list_item_set_accessible_label(self_: *mut GtkListItem, label: *const c_char);
16183    pub fn gtk_list_item_set_activatable(self_: *mut GtkListItem, activatable: gboolean);
16184    pub fn gtk_list_item_set_child(self_: *mut GtkListItem, child: *mut GtkWidget);
16185    #[cfg(feature = "v4_12")]
16186    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16187    pub fn gtk_list_item_set_focusable(self_: *mut GtkListItem, focusable: gboolean);
16188    pub fn gtk_list_item_set_selectable(self_: *mut GtkListItem, selectable: gboolean);
16189
16190    //=========================================================================
16191    // GtkListItemFactory
16192    //=========================================================================
16193    pub fn gtk_list_item_factory_get_type() -> GType;
16194
16195    //=========================================================================
16196    // GtkListStore
16197    //=========================================================================
16198    pub fn gtk_list_store_get_type() -> GType;
16199    pub fn gtk_list_store_new(n_columns: c_int, ...) -> *mut GtkListStore;
16200    pub fn gtk_list_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkListStore;
16201    pub fn gtk_list_store_append(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
16202    pub fn gtk_list_store_clear(list_store: *mut GtkListStore);
16203    pub fn gtk_list_store_insert(
16204        list_store: *mut GtkListStore,
16205        iter: *mut GtkTreeIter,
16206        position: c_int,
16207    );
16208    pub fn gtk_list_store_insert_after(
16209        list_store: *mut GtkListStore,
16210        iter: *mut GtkTreeIter,
16211        sibling: *mut GtkTreeIter,
16212    );
16213    pub fn gtk_list_store_insert_before(
16214        list_store: *mut GtkListStore,
16215        iter: *mut GtkTreeIter,
16216        sibling: *mut GtkTreeIter,
16217    );
16218    pub fn gtk_list_store_insert_with_values(
16219        list_store: *mut GtkListStore,
16220        iter: *mut GtkTreeIter,
16221        position: c_int,
16222        ...
16223    );
16224    pub fn gtk_list_store_insert_with_valuesv(
16225        list_store: *mut GtkListStore,
16226        iter: *mut GtkTreeIter,
16227        position: c_int,
16228        columns: *mut c_int,
16229        values: *mut gobject::GValue,
16230        n_values: c_int,
16231    );
16232    pub fn gtk_list_store_iter_is_valid(
16233        list_store: *mut GtkListStore,
16234        iter: *mut GtkTreeIter,
16235    ) -> gboolean;
16236    pub fn gtk_list_store_move_after(
16237        store: *mut GtkListStore,
16238        iter: *mut GtkTreeIter,
16239        position: *mut GtkTreeIter,
16240    );
16241    pub fn gtk_list_store_move_before(
16242        store: *mut GtkListStore,
16243        iter: *mut GtkTreeIter,
16244        position: *mut GtkTreeIter,
16245    );
16246    pub fn gtk_list_store_prepend(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
16247    pub fn gtk_list_store_remove(list_store: *mut GtkListStore, iter: *mut GtkTreeIter)
16248        -> gboolean;
16249    pub fn gtk_list_store_reorder(store: *mut GtkListStore, new_order: *mut c_int);
16250    pub fn gtk_list_store_set(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, ...);
16251    pub fn gtk_list_store_set_column_types(
16252        list_store: *mut GtkListStore,
16253        n_columns: c_int,
16254        types: *mut GType,
16255    );
16256    //pub fn gtk_list_store_set_valist(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
16257    pub fn gtk_list_store_set_value(
16258        list_store: *mut GtkListStore,
16259        iter: *mut GtkTreeIter,
16260        column: c_int,
16261        value: *mut gobject::GValue,
16262    );
16263    pub fn gtk_list_store_set_valuesv(
16264        list_store: *mut GtkListStore,
16265        iter: *mut GtkTreeIter,
16266        columns: *mut c_int,
16267        values: *mut gobject::GValue,
16268        n_values: c_int,
16269    );
16270    pub fn gtk_list_store_swap(store: *mut GtkListStore, a: *mut GtkTreeIter, b: *mut GtkTreeIter);
16271
16272    //=========================================================================
16273    // GtkListView
16274    //=========================================================================
16275    pub fn gtk_list_view_get_type() -> GType;
16276    pub fn gtk_list_view_new(
16277        model: *mut GtkSelectionModel,
16278        factory: *mut GtkListItemFactory,
16279    ) -> *mut GtkWidget;
16280    pub fn gtk_list_view_get_enable_rubberband(self_: *mut GtkListView) -> gboolean;
16281    pub fn gtk_list_view_get_factory(self_: *mut GtkListView) -> *mut GtkListItemFactory;
16282    #[cfg(feature = "v4_12")]
16283    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16284    pub fn gtk_list_view_get_header_factory(self_: *mut GtkListView) -> *mut GtkListItemFactory;
16285    pub fn gtk_list_view_get_model(self_: *mut GtkListView) -> *mut GtkSelectionModel;
16286    pub fn gtk_list_view_get_show_separators(self_: *mut GtkListView) -> gboolean;
16287    pub fn gtk_list_view_get_single_click_activate(self_: *mut GtkListView) -> gboolean;
16288    #[cfg(feature = "v4_12")]
16289    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16290    pub fn gtk_list_view_get_tab_behavior(self_: *mut GtkListView) -> GtkListTabBehavior;
16291    #[cfg(feature = "v4_12")]
16292    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16293    pub fn gtk_list_view_scroll_to(
16294        self_: *mut GtkListView,
16295        pos: c_uint,
16296        flags: GtkListScrollFlags,
16297        scroll: *mut GtkScrollInfo,
16298    );
16299    pub fn gtk_list_view_set_enable_rubberband(
16300        self_: *mut GtkListView,
16301        enable_rubberband: gboolean,
16302    );
16303    pub fn gtk_list_view_set_factory(self_: *mut GtkListView, factory: *mut GtkListItemFactory);
16304    #[cfg(feature = "v4_12")]
16305    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16306    pub fn gtk_list_view_set_header_factory(
16307        self_: *mut GtkListView,
16308        factory: *mut GtkListItemFactory,
16309    );
16310    pub fn gtk_list_view_set_model(self_: *mut GtkListView, model: *mut GtkSelectionModel);
16311    pub fn gtk_list_view_set_show_separators(self_: *mut GtkListView, show_separators: gboolean);
16312    pub fn gtk_list_view_set_single_click_activate(
16313        self_: *mut GtkListView,
16314        single_click_activate: gboolean,
16315    );
16316    #[cfg(feature = "v4_12")]
16317    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16318    pub fn gtk_list_view_set_tab_behavior(
16319        self_: *mut GtkListView,
16320        tab_behavior: GtkListTabBehavior,
16321    );
16322
16323    //=========================================================================
16324    // GtkLockButton
16325    //=========================================================================
16326    pub fn gtk_lock_button_get_type() -> GType;
16327    pub fn gtk_lock_button_new(permission: *mut gio::GPermission) -> *mut GtkWidget;
16328    pub fn gtk_lock_button_get_permission(button: *mut GtkLockButton) -> *mut gio::GPermission;
16329    pub fn gtk_lock_button_set_permission(
16330        button: *mut GtkLockButton,
16331        permission: *mut gio::GPermission,
16332    );
16333
16334    //=========================================================================
16335    // GtkMapListModel
16336    //=========================================================================
16337    pub fn gtk_map_list_model_get_type() -> GType;
16338    pub fn gtk_map_list_model_new(
16339        model: *mut gio::GListModel,
16340        map_func: GtkMapListModelMapFunc,
16341        user_data: gpointer,
16342        user_destroy: glib::GDestroyNotify,
16343    ) -> *mut GtkMapListModel;
16344    pub fn gtk_map_list_model_get_model(self_: *mut GtkMapListModel) -> *mut gio::GListModel;
16345    pub fn gtk_map_list_model_has_map(self_: *mut GtkMapListModel) -> gboolean;
16346    pub fn gtk_map_list_model_set_map_func(
16347        self_: *mut GtkMapListModel,
16348        map_func: GtkMapListModelMapFunc,
16349        user_data: gpointer,
16350        user_destroy: glib::GDestroyNotify,
16351    );
16352    pub fn gtk_map_list_model_set_model(self_: *mut GtkMapListModel, model: *mut gio::GListModel);
16353
16354    //=========================================================================
16355    // GtkMediaControls
16356    //=========================================================================
16357    pub fn gtk_media_controls_get_type() -> GType;
16358    pub fn gtk_media_controls_new(stream: *mut GtkMediaStream) -> *mut GtkWidget;
16359    pub fn gtk_media_controls_get_media_stream(
16360        controls: *mut GtkMediaControls,
16361    ) -> *mut GtkMediaStream;
16362    pub fn gtk_media_controls_set_media_stream(
16363        controls: *mut GtkMediaControls,
16364        stream: *mut GtkMediaStream,
16365    );
16366
16367    //=========================================================================
16368    // GtkMediaFile
16369    //=========================================================================
16370    pub fn gtk_media_file_get_type() -> GType;
16371    pub fn gtk_media_file_new() -> *mut GtkMediaFile;
16372    pub fn gtk_media_file_new_for_file(file: *mut gio::GFile) -> *mut GtkMediaFile;
16373    pub fn gtk_media_file_new_for_filename(filename: *const c_char) -> *mut GtkMediaFile;
16374    pub fn gtk_media_file_new_for_input_stream(stream: *mut gio::GInputStream)
16375        -> *mut GtkMediaFile;
16376    pub fn gtk_media_file_new_for_resource(resource_path: *const c_char) -> *mut GtkMediaFile;
16377    pub fn gtk_media_file_clear(self_: *mut GtkMediaFile);
16378    pub fn gtk_media_file_get_file(self_: *mut GtkMediaFile) -> *mut gio::GFile;
16379    pub fn gtk_media_file_get_input_stream(self_: *mut GtkMediaFile) -> *mut gio::GInputStream;
16380    pub fn gtk_media_file_set_file(self_: *mut GtkMediaFile, file: *mut gio::GFile);
16381    pub fn gtk_media_file_set_filename(self_: *mut GtkMediaFile, filename: *const c_char);
16382    pub fn gtk_media_file_set_input_stream(
16383        self_: *mut GtkMediaFile,
16384        stream: *mut gio::GInputStream,
16385    );
16386    pub fn gtk_media_file_set_resource(self_: *mut GtkMediaFile, resource_path: *const c_char);
16387
16388    //=========================================================================
16389    // GtkMediaStream
16390    //=========================================================================
16391    pub fn gtk_media_stream_get_type() -> GType;
16392    pub fn gtk_media_stream_ended(self_: *mut GtkMediaStream);
16393    pub fn gtk_media_stream_error(
16394        self_: *mut GtkMediaStream,
16395        domain: glib::GQuark,
16396        code: c_int,
16397        format: *const c_char,
16398        ...
16399    );
16400    //pub fn gtk_media_stream_error_valist(self_: *mut GtkMediaStream, domain: glib::GQuark, code: c_int, format: *const c_char, args: /*Unimplemented*/va_list);
16401    pub fn gtk_media_stream_gerror(self_: *mut GtkMediaStream, error: *mut glib::GError);
16402    pub fn gtk_media_stream_get_duration(self_: *mut GtkMediaStream) -> i64;
16403    pub fn gtk_media_stream_get_ended(self_: *mut GtkMediaStream) -> gboolean;
16404    pub fn gtk_media_stream_get_error(self_: *mut GtkMediaStream) -> *const glib::GError;
16405    pub fn gtk_media_stream_get_loop(self_: *mut GtkMediaStream) -> gboolean;
16406    pub fn gtk_media_stream_get_muted(self_: *mut GtkMediaStream) -> gboolean;
16407    pub fn gtk_media_stream_get_playing(self_: *mut GtkMediaStream) -> gboolean;
16408    pub fn gtk_media_stream_get_timestamp(self_: *mut GtkMediaStream) -> i64;
16409    pub fn gtk_media_stream_get_volume(self_: *mut GtkMediaStream) -> c_double;
16410    pub fn gtk_media_stream_has_audio(self_: *mut GtkMediaStream) -> gboolean;
16411    pub fn gtk_media_stream_has_video(self_: *mut GtkMediaStream) -> gboolean;
16412    pub fn gtk_media_stream_is_prepared(self_: *mut GtkMediaStream) -> gboolean;
16413    pub fn gtk_media_stream_is_seekable(self_: *mut GtkMediaStream) -> gboolean;
16414    pub fn gtk_media_stream_is_seeking(self_: *mut GtkMediaStream) -> gboolean;
16415    pub fn gtk_media_stream_pause(self_: *mut GtkMediaStream);
16416    pub fn gtk_media_stream_play(self_: *mut GtkMediaStream);
16417    pub fn gtk_media_stream_prepared(
16418        self_: *mut GtkMediaStream,
16419        has_audio: gboolean,
16420        has_video: gboolean,
16421        seekable: gboolean,
16422        duration: i64,
16423    );
16424    pub fn gtk_media_stream_realize(self_: *mut GtkMediaStream, surface: *mut gdk::GdkSurface);
16425    pub fn gtk_media_stream_seek(self_: *mut GtkMediaStream, timestamp: i64);
16426    pub fn gtk_media_stream_seek_failed(self_: *mut GtkMediaStream);
16427    pub fn gtk_media_stream_seek_success(self_: *mut GtkMediaStream);
16428    pub fn gtk_media_stream_set_loop(self_: *mut GtkMediaStream, loop_: gboolean);
16429    pub fn gtk_media_stream_set_muted(self_: *mut GtkMediaStream, muted: gboolean);
16430    pub fn gtk_media_stream_set_playing(self_: *mut GtkMediaStream, playing: gboolean);
16431    pub fn gtk_media_stream_set_volume(self_: *mut GtkMediaStream, volume: c_double);
16432    #[cfg(feature = "v4_4")]
16433    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16434    pub fn gtk_media_stream_stream_ended(self_: *mut GtkMediaStream);
16435    #[cfg(feature = "v4_4")]
16436    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16437    pub fn gtk_media_stream_stream_prepared(
16438        self_: *mut GtkMediaStream,
16439        has_audio: gboolean,
16440        has_video: gboolean,
16441        seekable: gboolean,
16442        duration: i64,
16443    );
16444    #[cfg(feature = "v4_4")]
16445    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16446    pub fn gtk_media_stream_stream_unprepared(self_: *mut GtkMediaStream);
16447    pub fn gtk_media_stream_unprepared(self_: *mut GtkMediaStream);
16448    pub fn gtk_media_stream_unrealize(self_: *mut GtkMediaStream, surface: *mut gdk::GdkSurface);
16449    pub fn gtk_media_stream_update(self_: *mut GtkMediaStream, timestamp: i64);
16450
16451    //=========================================================================
16452    // GtkMenuButton
16453    //=========================================================================
16454    pub fn gtk_menu_button_get_type() -> GType;
16455    pub fn gtk_menu_button_new() -> *mut GtkWidget;
16456    #[cfg(feature = "v4_10")]
16457    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
16458    pub fn gtk_menu_button_get_active(menu_button: *mut GtkMenuButton) -> gboolean;
16459    #[cfg(feature = "v4_4")]
16460    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16461    pub fn gtk_menu_button_get_always_show_arrow(menu_button: *mut GtkMenuButton) -> gboolean;
16462    #[cfg(feature = "v4_12")]
16463    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16464    pub fn gtk_menu_button_get_can_shrink(menu_button: *mut GtkMenuButton) -> gboolean;
16465    #[cfg(feature = "v4_6")]
16466    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
16467    pub fn gtk_menu_button_get_child(menu_button: *mut GtkMenuButton) -> *mut GtkWidget;
16468    pub fn gtk_menu_button_get_direction(menu_button: *mut GtkMenuButton) -> GtkArrowType;
16469    pub fn gtk_menu_button_get_has_frame(menu_button: *mut GtkMenuButton) -> gboolean;
16470    pub fn gtk_menu_button_get_icon_name(menu_button: *mut GtkMenuButton) -> *const c_char;
16471    pub fn gtk_menu_button_get_label(menu_button: *mut GtkMenuButton) -> *const c_char;
16472    pub fn gtk_menu_button_get_menu_model(menu_button: *mut GtkMenuButton) -> *mut gio::GMenuModel;
16473    pub fn gtk_menu_button_get_popover(menu_button: *mut GtkMenuButton) -> *mut GtkPopover;
16474    #[cfg(feature = "v4_4")]
16475    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16476    pub fn gtk_menu_button_get_primary(menu_button: *mut GtkMenuButton) -> gboolean;
16477    pub fn gtk_menu_button_get_use_underline(menu_button: *mut GtkMenuButton) -> gboolean;
16478    pub fn gtk_menu_button_popdown(menu_button: *mut GtkMenuButton);
16479    pub fn gtk_menu_button_popup(menu_button: *mut GtkMenuButton);
16480    #[cfg(feature = "v4_10")]
16481    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
16482    pub fn gtk_menu_button_set_active(menu_button: *mut GtkMenuButton, active: gboolean);
16483    #[cfg(feature = "v4_4")]
16484    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16485    pub fn gtk_menu_button_set_always_show_arrow(
16486        menu_button: *mut GtkMenuButton,
16487        always_show_arrow: gboolean,
16488    );
16489    #[cfg(feature = "v4_12")]
16490    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16491    pub fn gtk_menu_button_set_can_shrink(menu_button: *mut GtkMenuButton, can_shrink: gboolean);
16492    #[cfg(feature = "v4_6")]
16493    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
16494    pub fn gtk_menu_button_set_child(menu_button: *mut GtkMenuButton, child: *mut GtkWidget);
16495    pub fn gtk_menu_button_set_create_popup_func(
16496        menu_button: *mut GtkMenuButton,
16497        func: GtkMenuButtonCreatePopupFunc,
16498        user_data: gpointer,
16499        destroy_notify: glib::GDestroyNotify,
16500    );
16501    pub fn gtk_menu_button_set_direction(menu_button: *mut GtkMenuButton, direction: GtkArrowType);
16502    pub fn gtk_menu_button_set_has_frame(menu_button: *mut GtkMenuButton, has_frame: gboolean);
16503    pub fn gtk_menu_button_set_icon_name(menu_button: *mut GtkMenuButton, icon_name: *const c_char);
16504    pub fn gtk_menu_button_set_label(menu_button: *mut GtkMenuButton, label: *const c_char);
16505    pub fn gtk_menu_button_set_menu_model(
16506        menu_button: *mut GtkMenuButton,
16507        menu_model: *mut gio::GMenuModel,
16508    );
16509    pub fn gtk_menu_button_set_popover(menu_button: *mut GtkMenuButton, popover: *mut GtkPopover);
16510    #[cfg(feature = "v4_4")]
16511    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16512    pub fn gtk_menu_button_set_primary(menu_button: *mut GtkMenuButton, primary: gboolean);
16513    pub fn gtk_menu_button_set_use_underline(
16514        menu_button: *mut GtkMenuButton,
16515        use_underline: gboolean,
16516    );
16517
16518    //=========================================================================
16519    // GtkMessageDialog
16520    //=========================================================================
16521    pub fn gtk_message_dialog_get_type() -> GType;
16522    pub fn gtk_message_dialog_new(
16523        parent: *mut GtkWindow,
16524        flags: GtkDialogFlags,
16525        type_: GtkMessageType,
16526        buttons: GtkButtonsType,
16527        message_format: *const c_char,
16528        ...
16529    ) -> *mut GtkWidget;
16530    pub fn gtk_message_dialog_new_with_markup(
16531        parent: *mut GtkWindow,
16532        flags: GtkDialogFlags,
16533        type_: GtkMessageType,
16534        buttons: GtkButtonsType,
16535        message_format: *const c_char,
16536        ...
16537    ) -> *mut GtkWidget;
16538    pub fn gtk_message_dialog_format_secondary_markup(
16539        message_dialog: *mut GtkMessageDialog,
16540        message_format: *const c_char,
16541        ...
16542    );
16543    pub fn gtk_message_dialog_format_secondary_text(
16544        message_dialog: *mut GtkMessageDialog,
16545        message_format: *const c_char,
16546        ...
16547    );
16548    pub fn gtk_message_dialog_get_message_area(
16549        message_dialog: *mut GtkMessageDialog,
16550    ) -> *mut GtkWidget;
16551    pub fn gtk_message_dialog_set_markup(message_dialog: *mut GtkMessageDialog, str: *const c_char);
16552
16553    //=========================================================================
16554    // GtkMnemonicAction
16555    //=========================================================================
16556    pub fn gtk_mnemonic_action_get_type() -> GType;
16557    pub fn gtk_mnemonic_action_get() -> *mut GtkMnemonicAction;
16558
16559    //=========================================================================
16560    // GtkMnemonicTrigger
16561    //=========================================================================
16562    pub fn gtk_mnemonic_trigger_get_type() -> GType;
16563    pub fn gtk_mnemonic_trigger_new(keyval: c_uint) -> *mut GtkMnemonicTrigger;
16564    pub fn gtk_mnemonic_trigger_get_keyval(self_: *mut GtkMnemonicTrigger) -> c_uint;
16565
16566    //=========================================================================
16567    // GtkMountOperation
16568    //=========================================================================
16569    pub fn gtk_mount_operation_get_type() -> GType;
16570    pub fn gtk_mount_operation_new(parent: *mut GtkWindow) -> *mut gio::GMountOperation;
16571    pub fn gtk_mount_operation_get_display(op: *mut GtkMountOperation) -> *mut gdk::GdkDisplay;
16572    pub fn gtk_mount_operation_get_parent(op: *mut GtkMountOperation) -> *mut GtkWindow;
16573    pub fn gtk_mount_operation_is_showing(op: *mut GtkMountOperation) -> gboolean;
16574    pub fn gtk_mount_operation_set_display(
16575        op: *mut GtkMountOperation,
16576        display: *mut gdk::GdkDisplay,
16577    );
16578    pub fn gtk_mount_operation_set_parent(op: *mut GtkMountOperation, parent: *mut GtkWindow);
16579
16580    //=========================================================================
16581    // GtkMultiFilter
16582    //=========================================================================
16583    pub fn gtk_multi_filter_get_type() -> GType;
16584    pub fn gtk_multi_filter_append(self_: *mut GtkMultiFilter, filter: *mut GtkFilter);
16585    pub fn gtk_multi_filter_remove(self_: *mut GtkMultiFilter, position: c_uint);
16586
16587    //=========================================================================
16588    // GtkMultiSelection
16589    //=========================================================================
16590    pub fn gtk_multi_selection_get_type() -> GType;
16591    pub fn gtk_multi_selection_new(model: *mut gio::GListModel) -> *mut GtkMultiSelection;
16592    pub fn gtk_multi_selection_get_model(self_: *mut GtkMultiSelection) -> *mut gio::GListModel;
16593    pub fn gtk_multi_selection_set_model(
16594        self_: *mut GtkMultiSelection,
16595        model: *mut gio::GListModel,
16596    );
16597
16598    //=========================================================================
16599    // GtkMultiSorter
16600    //=========================================================================
16601    pub fn gtk_multi_sorter_get_type() -> GType;
16602    pub fn gtk_multi_sorter_new() -> *mut GtkMultiSorter;
16603    pub fn gtk_multi_sorter_append(self_: *mut GtkMultiSorter, sorter: *mut GtkSorter);
16604    pub fn gtk_multi_sorter_remove(self_: *mut GtkMultiSorter, position: c_uint);
16605
16606    //=========================================================================
16607    // GtkNamedAction
16608    //=========================================================================
16609    pub fn gtk_named_action_get_type() -> GType;
16610    pub fn gtk_named_action_new(name: *const c_char) -> *mut GtkNamedAction;
16611    pub fn gtk_named_action_get_action_name(self_: *mut GtkNamedAction) -> *const c_char;
16612
16613    //=========================================================================
16614    // GtkNativeDialog
16615    //=========================================================================
16616    pub fn gtk_native_dialog_get_type() -> GType;
16617    pub fn gtk_native_dialog_destroy(self_: *mut GtkNativeDialog);
16618    pub fn gtk_native_dialog_get_modal(self_: *mut GtkNativeDialog) -> gboolean;
16619    pub fn gtk_native_dialog_get_title(self_: *mut GtkNativeDialog) -> *const c_char;
16620    pub fn gtk_native_dialog_get_transient_for(self_: *mut GtkNativeDialog) -> *mut GtkWindow;
16621    pub fn gtk_native_dialog_get_visible(self_: *mut GtkNativeDialog) -> gboolean;
16622    pub fn gtk_native_dialog_hide(self_: *mut GtkNativeDialog);
16623    pub fn gtk_native_dialog_set_modal(self_: *mut GtkNativeDialog, modal: gboolean);
16624    pub fn gtk_native_dialog_set_title(self_: *mut GtkNativeDialog, title: *const c_char);
16625    pub fn gtk_native_dialog_set_transient_for(self_: *mut GtkNativeDialog, parent: *mut GtkWindow);
16626    pub fn gtk_native_dialog_show(self_: *mut GtkNativeDialog);
16627
16628    //=========================================================================
16629    // GtkNeverTrigger
16630    //=========================================================================
16631    pub fn gtk_never_trigger_get_type() -> GType;
16632    pub fn gtk_never_trigger_get() -> *mut GtkNeverTrigger;
16633
16634    //=========================================================================
16635    // GtkNoSelection
16636    //=========================================================================
16637    pub fn gtk_no_selection_get_type() -> GType;
16638    pub fn gtk_no_selection_new(model: *mut gio::GListModel) -> *mut GtkNoSelection;
16639    pub fn gtk_no_selection_get_model(self_: *mut GtkNoSelection) -> *mut gio::GListModel;
16640    pub fn gtk_no_selection_set_model(self_: *mut GtkNoSelection, model: *mut gio::GListModel);
16641
16642    //=========================================================================
16643    // GtkNotebook
16644    //=========================================================================
16645    pub fn gtk_notebook_get_type() -> GType;
16646    pub fn gtk_notebook_new() -> *mut GtkWidget;
16647    pub fn gtk_notebook_append_page(
16648        notebook: *mut GtkNotebook,
16649        child: *mut GtkWidget,
16650        tab_label: *mut GtkWidget,
16651    ) -> c_int;
16652    pub fn gtk_notebook_append_page_menu(
16653        notebook: *mut GtkNotebook,
16654        child: *mut GtkWidget,
16655        tab_label: *mut GtkWidget,
16656        menu_label: *mut GtkWidget,
16657    ) -> c_int;
16658    pub fn gtk_notebook_detach_tab(notebook: *mut GtkNotebook, child: *mut GtkWidget);
16659    pub fn gtk_notebook_get_action_widget(
16660        notebook: *mut GtkNotebook,
16661        pack_type: GtkPackType,
16662    ) -> *mut GtkWidget;
16663    pub fn gtk_notebook_get_current_page(notebook: *mut GtkNotebook) -> c_int;
16664    pub fn gtk_notebook_get_group_name(notebook: *mut GtkNotebook) -> *const c_char;
16665    pub fn gtk_notebook_get_menu_label(
16666        notebook: *mut GtkNotebook,
16667        child: *mut GtkWidget,
16668    ) -> *mut GtkWidget;
16669    pub fn gtk_notebook_get_menu_label_text(
16670        notebook: *mut GtkNotebook,
16671        child: *mut GtkWidget,
16672    ) -> *const c_char;
16673    pub fn gtk_notebook_get_n_pages(notebook: *mut GtkNotebook) -> c_int;
16674    pub fn gtk_notebook_get_nth_page(notebook: *mut GtkNotebook, page_num: c_int)
16675        -> *mut GtkWidget;
16676    pub fn gtk_notebook_get_page(
16677        notebook: *mut GtkNotebook,
16678        child: *mut GtkWidget,
16679    ) -> *mut GtkNotebookPage;
16680    pub fn gtk_notebook_get_pages(notebook: *mut GtkNotebook) -> *mut gio::GListModel;
16681    pub fn gtk_notebook_get_scrollable(notebook: *mut GtkNotebook) -> gboolean;
16682    pub fn gtk_notebook_get_show_border(notebook: *mut GtkNotebook) -> gboolean;
16683    pub fn gtk_notebook_get_show_tabs(notebook: *mut GtkNotebook) -> gboolean;
16684    pub fn gtk_notebook_get_tab_detachable(
16685        notebook: *mut GtkNotebook,
16686        child: *mut GtkWidget,
16687    ) -> gboolean;
16688    pub fn gtk_notebook_get_tab_label(
16689        notebook: *mut GtkNotebook,
16690        child: *mut GtkWidget,
16691    ) -> *mut GtkWidget;
16692    pub fn gtk_notebook_get_tab_label_text(
16693        notebook: *mut GtkNotebook,
16694        child: *mut GtkWidget,
16695    ) -> *const c_char;
16696    pub fn gtk_notebook_get_tab_pos(notebook: *mut GtkNotebook) -> GtkPositionType;
16697    pub fn gtk_notebook_get_tab_reorderable(
16698        notebook: *mut GtkNotebook,
16699        child: *mut GtkWidget,
16700    ) -> gboolean;
16701    pub fn gtk_notebook_insert_page(
16702        notebook: *mut GtkNotebook,
16703        child: *mut GtkWidget,
16704        tab_label: *mut GtkWidget,
16705        position: c_int,
16706    ) -> c_int;
16707    pub fn gtk_notebook_insert_page_menu(
16708        notebook: *mut GtkNotebook,
16709        child: *mut GtkWidget,
16710        tab_label: *mut GtkWidget,
16711        menu_label: *mut GtkWidget,
16712        position: c_int,
16713    ) -> c_int;
16714    pub fn gtk_notebook_next_page(notebook: *mut GtkNotebook);
16715    pub fn gtk_notebook_page_num(notebook: *mut GtkNotebook, child: *mut GtkWidget) -> c_int;
16716    pub fn gtk_notebook_popup_disable(notebook: *mut GtkNotebook);
16717    pub fn gtk_notebook_popup_enable(notebook: *mut GtkNotebook);
16718    pub fn gtk_notebook_prepend_page(
16719        notebook: *mut GtkNotebook,
16720        child: *mut GtkWidget,
16721        tab_label: *mut GtkWidget,
16722    ) -> c_int;
16723    pub fn gtk_notebook_prepend_page_menu(
16724        notebook: *mut GtkNotebook,
16725        child: *mut GtkWidget,
16726        tab_label: *mut GtkWidget,
16727        menu_label: *mut GtkWidget,
16728    ) -> c_int;
16729    pub fn gtk_notebook_prev_page(notebook: *mut GtkNotebook);
16730    pub fn gtk_notebook_remove_page(notebook: *mut GtkNotebook, page_num: c_int);
16731    pub fn gtk_notebook_reorder_child(
16732        notebook: *mut GtkNotebook,
16733        child: *mut GtkWidget,
16734        position: c_int,
16735    );
16736    pub fn gtk_notebook_set_action_widget(
16737        notebook: *mut GtkNotebook,
16738        widget: *mut GtkWidget,
16739        pack_type: GtkPackType,
16740    );
16741    pub fn gtk_notebook_set_current_page(notebook: *mut GtkNotebook, page_num: c_int);
16742    pub fn gtk_notebook_set_group_name(notebook: *mut GtkNotebook, group_name: *const c_char);
16743    pub fn gtk_notebook_set_menu_label(
16744        notebook: *mut GtkNotebook,
16745        child: *mut GtkWidget,
16746        menu_label: *mut GtkWidget,
16747    );
16748    pub fn gtk_notebook_set_menu_label_text(
16749        notebook: *mut GtkNotebook,
16750        child: *mut GtkWidget,
16751        menu_text: *const c_char,
16752    );
16753    pub fn gtk_notebook_set_scrollable(notebook: *mut GtkNotebook, scrollable: gboolean);
16754    pub fn gtk_notebook_set_show_border(notebook: *mut GtkNotebook, show_border: gboolean);
16755    pub fn gtk_notebook_set_show_tabs(notebook: *mut GtkNotebook, show_tabs: gboolean);
16756    pub fn gtk_notebook_set_tab_detachable(
16757        notebook: *mut GtkNotebook,
16758        child: *mut GtkWidget,
16759        detachable: gboolean,
16760    );
16761    pub fn gtk_notebook_set_tab_label(
16762        notebook: *mut GtkNotebook,
16763        child: *mut GtkWidget,
16764        tab_label: *mut GtkWidget,
16765    );
16766    pub fn gtk_notebook_set_tab_label_text(
16767        notebook: *mut GtkNotebook,
16768        child: *mut GtkWidget,
16769        tab_text: *const c_char,
16770    );
16771    pub fn gtk_notebook_set_tab_pos(notebook: *mut GtkNotebook, pos: GtkPositionType);
16772    pub fn gtk_notebook_set_tab_reorderable(
16773        notebook: *mut GtkNotebook,
16774        child: *mut GtkWidget,
16775        reorderable: gboolean,
16776    );
16777
16778    //=========================================================================
16779    // GtkNotebookPage
16780    //=========================================================================
16781    pub fn gtk_notebook_page_get_type() -> GType;
16782    pub fn gtk_notebook_page_get_child(page: *mut GtkNotebookPage) -> *mut GtkWidget;
16783
16784    //=========================================================================
16785    // GtkNothingAction
16786    //=========================================================================
16787    pub fn gtk_nothing_action_get_type() -> GType;
16788    pub fn gtk_nothing_action_get() -> *mut GtkNothingAction;
16789
16790    //=========================================================================
16791    // GtkNumericSorter
16792    //=========================================================================
16793    pub fn gtk_numeric_sorter_get_type() -> GType;
16794    pub fn gtk_numeric_sorter_new(expression: *mut GtkExpression) -> *mut GtkNumericSorter;
16795    pub fn gtk_numeric_sorter_get_expression(self_: *mut GtkNumericSorter) -> *mut GtkExpression;
16796    pub fn gtk_numeric_sorter_get_sort_order(self_: *mut GtkNumericSorter) -> GtkSortType;
16797    pub fn gtk_numeric_sorter_set_expression(
16798        self_: *mut GtkNumericSorter,
16799        expression: *mut GtkExpression,
16800    );
16801    pub fn gtk_numeric_sorter_set_sort_order(self_: *mut GtkNumericSorter, sort_order: GtkSortType);
16802
16803    //=========================================================================
16804    // GtkObjectExpression
16805    //=========================================================================
16806    pub fn gtk_object_expression_get_type() -> GType;
16807    pub fn gtk_object_expression_new(object: *mut gobject::GObject) -> *mut GtkObjectExpression;
16808    pub fn gtk_object_expression_get_object(
16809        expression: *mut GtkObjectExpression,
16810    ) -> *mut gobject::GObject;
16811
16812    //=========================================================================
16813    // GtkOverlay
16814    //=========================================================================
16815    pub fn gtk_overlay_get_type() -> GType;
16816    pub fn gtk_overlay_new() -> *mut GtkWidget;
16817    pub fn gtk_overlay_add_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
16818    pub fn gtk_overlay_get_child(overlay: *mut GtkOverlay) -> *mut GtkWidget;
16819    pub fn gtk_overlay_get_clip_overlay(
16820        overlay: *mut GtkOverlay,
16821        widget: *mut GtkWidget,
16822    ) -> gboolean;
16823    pub fn gtk_overlay_get_measure_overlay(
16824        overlay: *mut GtkOverlay,
16825        widget: *mut GtkWidget,
16826    ) -> gboolean;
16827    pub fn gtk_overlay_remove_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
16828    pub fn gtk_overlay_set_child(overlay: *mut GtkOverlay, child: *mut GtkWidget);
16829    pub fn gtk_overlay_set_clip_overlay(
16830        overlay: *mut GtkOverlay,
16831        widget: *mut GtkWidget,
16832        clip_overlay: gboolean,
16833    );
16834    pub fn gtk_overlay_set_measure_overlay(
16835        overlay: *mut GtkOverlay,
16836        widget: *mut GtkWidget,
16837        measure: gboolean,
16838    );
16839
16840    //=========================================================================
16841    // GtkOverlayLayout
16842    //=========================================================================
16843    pub fn gtk_overlay_layout_get_type() -> GType;
16844    pub fn gtk_overlay_layout_new() -> *mut GtkLayoutManager;
16845
16846    //=========================================================================
16847    // GtkOverlayLayoutChild
16848    //=========================================================================
16849    pub fn gtk_overlay_layout_child_get_type() -> GType;
16850    pub fn gtk_overlay_layout_child_get_clip_overlay(child: *mut GtkOverlayLayoutChild)
16851        -> gboolean;
16852    pub fn gtk_overlay_layout_child_get_measure(child: *mut GtkOverlayLayoutChild) -> gboolean;
16853    pub fn gtk_overlay_layout_child_set_clip_overlay(
16854        child: *mut GtkOverlayLayoutChild,
16855        clip_overlay: gboolean,
16856    );
16857    pub fn gtk_overlay_layout_child_set_measure(
16858        child: *mut GtkOverlayLayoutChild,
16859        measure: gboolean,
16860    );
16861
16862    //=========================================================================
16863    // GtkPadController
16864    //=========================================================================
16865    pub fn gtk_pad_controller_get_type() -> GType;
16866    pub fn gtk_pad_controller_new(
16867        group: *mut gio::GActionGroup,
16868        pad: *mut gdk::GdkDevice,
16869    ) -> *mut GtkPadController;
16870    pub fn gtk_pad_controller_set_action(
16871        controller: *mut GtkPadController,
16872        type_: GtkPadActionType,
16873        index: c_int,
16874        mode: c_int,
16875        label: *const c_char,
16876        action_name: *const c_char,
16877    );
16878    pub fn gtk_pad_controller_set_action_entries(
16879        controller: *mut GtkPadController,
16880        entries: *const GtkPadActionEntry,
16881        n_entries: c_int,
16882    );
16883
16884    //=========================================================================
16885    // GtkPageSetup
16886    //=========================================================================
16887    pub fn gtk_page_setup_get_type() -> GType;
16888    pub fn gtk_page_setup_new() -> *mut GtkPageSetup;
16889    pub fn gtk_page_setup_new_from_file(
16890        file_name: *const c_char,
16891        error: *mut *mut glib::GError,
16892    ) -> *mut GtkPageSetup;
16893    pub fn gtk_page_setup_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPageSetup;
16894    pub fn gtk_page_setup_new_from_key_file(
16895        key_file: *mut glib::GKeyFile,
16896        group_name: *const c_char,
16897        error: *mut *mut glib::GError,
16898    ) -> *mut GtkPageSetup;
16899    pub fn gtk_page_setup_copy(other: *mut GtkPageSetup) -> *mut GtkPageSetup;
16900    pub fn gtk_page_setup_get_bottom_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16901    pub fn gtk_page_setup_get_left_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16902    pub fn gtk_page_setup_get_orientation(setup: *mut GtkPageSetup) -> GtkPageOrientation;
16903    pub fn gtk_page_setup_get_page_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16904    pub fn gtk_page_setup_get_page_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16905    pub fn gtk_page_setup_get_paper_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16906    pub fn gtk_page_setup_get_paper_size(setup: *mut GtkPageSetup) -> *mut GtkPaperSize;
16907    pub fn gtk_page_setup_get_paper_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16908    pub fn gtk_page_setup_get_right_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16909    pub fn gtk_page_setup_get_top_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16910    pub fn gtk_page_setup_load_file(
16911        setup: *mut GtkPageSetup,
16912        file_name: *const c_char,
16913        error: *mut *mut glib::GError,
16914    ) -> gboolean;
16915    pub fn gtk_page_setup_load_key_file(
16916        setup: *mut GtkPageSetup,
16917        key_file: *mut glib::GKeyFile,
16918        group_name: *const c_char,
16919        error: *mut *mut glib::GError,
16920    ) -> gboolean;
16921    pub fn gtk_page_setup_set_bottom_margin(
16922        setup: *mut GtkPageSetup,
16923        margin: c_double,
16924        unit: GtkUnit,
16925    );
16926    pub fn gtk_page_setup_set_left_margin(
16927        setup: *mut GtkPageSetup,
16928        margin: c_double,
16929        unit: GtkUnit,
16930    );
16931    pub fn gtk_page_setup_set_orientation(
16932        setup: *mut GtkPageSetup,
16933        orientation: GtkPageOrientation,
16934    );
16935    pub fn gtk_page_setup_set_paper_size(setup: *mut GtkPageSetup, size: *mut GtkPaperSize);
16936    pub fn gtk_page_setup_set_paper_size_and_default_margins(
16937        setup: *mut GtkPageSetup,
16938        size: *mut GtkPaperSize,
16939    );
16940    pub fn gtk_page_setup_set_right_margin(
16941        setup: *mut GtkPageSetup,
16942        margin: c_double,
16943        unit: GtkUnit,
16944    );
16945    pub fn gtk_page_setup_set_top_margin(setup: *mut GtkPageSetup, margin: c_double, unit: GtkUnit);
16946    pub fn gtk_page_setup_to_file(
16947        setup: *mut GtkPageSetup,
16948        file_name: *const c_char,
16949        error: *mut *mut glib::GError,
16950    ) -> gboolean;
16951    pub fn gtk_page_setup_to_gvariant(setup: *mut GtkPageSetup) -> *mut glib::GVariant;
16952    pub fn gtk_page_setup_to_key_file(
16953        setup: *mut GtkPageSetup,
16954        key_file: *mut glib::GKeyFile,
16955        group_name: *const c_char,
16956    );
16957
16958    //=========================================================================
16959    // GtkPageSetupUnixDialog
16960    //=========================================================================
16961    pub fn gtk_page_setup_unix_dialog_get_type() -> GType;
16962    pub fn gtk_page_setup_unix_dialog_new(
16963        title: *const c_char,
16964        parent: *mut GtkWindow,
16965    ) -> *mut GtkWidget;
16966    pub fn gtk_page_setup_unix_dialog_get_page_setup(
16967        dialog: *mut GtkPageSetupUnixDialog,
16968    ) -> *mut GtkPageSetup;
16969    pub fn gtk_page_setup_unix_dialog_get_print_settings(
16970        dialog: *mut GtkPageSetupUnixDialog,
16971    ) -> *mut GtkPrintSettings;
16972    pub fn gtk_page_setup_unix_dialog_set_page_setup(
16973        dialog: *mut GtkPageSetupUnixDialog,
16974        page_setup: *mut GtkPageSetup,
16975    );
16976    pub fn gtk_page_setup_unix_dialog_set_print_settings(
16977        dialog: *mut GtkPageSetupUnixDialog,
16978        print_settings: *mut GtkPrintSettings,
16979    );
16980
16981    //=========================================================================
16982    // GtkPaned
16983    //=========================================================================
16984    pub fn gtk_paned_get_type() -> GType;
16985    pub fn gtk_paned_new(orientation: GtkOrientation) -> *mut GtkWidget;
16986    pub fn gtk_paned_get_end_child(paned: *mut GtkPaned) -> *mut GtkWidget;
16987    pub fn gtk_paned_get_position(paned: *mut GtkPaned) -> c_int;
16988    pub fn gtk_paned_get_resize_end_child(paned: *mut GtkPaned) -> gboolean;
16989    pub fn gtk_paned_get_resize_start_child(paned: *mut GtkPaned) -> gboolean;
16990    pub fn gtk_paned_get_shrink_end_child(paned: *mut GtkPaned) -> gboolean;
16991    pub fn gtk_paned_get_shrink_start_child(paned: *mut GtkPaned) -> gboolean;
16992    pub fn gtk_paned_get_start_child(paned: *mut GtkPaned) -> *mut GtkWidget;
16993    pub fn gtk_paned_get_wide_handle(paned: *mut GtkPaned) -> gboolean;
16994    pub fn gtk_paned_set_end_child(paned: *mut GtkPaned, child: *mut GtkWidget);
16995    pub fn gtk_paned_set_position(paned: *mut GtkPaned, position: c_int);
16996    pub fn gtk_paned_set_resize_end_child(paned: *mut GtkPaned, resize: gboolean);
16997    pub fn gtk_paned_set_resize_start_child(paned: *mut GtkPaned, resize: gboolean);
16998    pub fn gtk_paned_set_shrink_end_child(paned: *mut GtkPaned, resize: gboolean);
16999    pub fn gtk_paned_set_shrink_start_child(paned: *mut GtkPaned, resize: gboolean);
17000    pub fn gtk_paned_set_start_child(paned: *mut GtkPaned, child: *mut GtkWidget);
17001    pub fn gtk_paned_set_wide_handle(paned: *mut GtkPaned, wide: gboolean);
17002
17003    //=========================================================================
17004    // GtkParamSpecExpression
17005    //=========================================================================
17006    pub fn gtk_param_expression_get_type() -> GType;
17007
17008    //=========================================================================
17009    // GtkPasswordEntry
17010    //=========================================================================
17011    pub fn gtk_password_entry_get_type() -> GType;
17012    pub fn gtk_password_entry_new() -> *mut GtkWidget;
17013    pub fn gtk_password_entry_get_extra_menu(entry: *mut GtkPasswordEntry) -> *mut gio::GMenuModel;
17014    pub fn gtk_password_entry_get_show_peek_icon(entry: *mut GtkPasswordEntry) -> gboolean;
17015    pub fn gtk_password_entry_set_extra_menu(
17016        entry: *mut GtkPasswordEntry,
17017        model: *mut gio::GMenuModel,
17018    );
17019    pub fn gtk_password_entry_set_show_peek_icon(
17020        entry: *mut GtkPasswordEntry,
17021        show_peek_icon: gboolean,
17022    );
17023
17024    //=========================================================================
17025    // GtkPasswordEntryBuffer
17026    //=========================================================================
17027    #[cfg(feature = "v4_4")]
17028    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
17029    pub fn gtk_password_entry_buffer_get_type() -> GType;
17030    #[cfg(feature = "v4_4")]
17031    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
17032    pub fn gtk_password_entry_buffer_new() -> *mut GtkEntryBuffer;
17033
17034    //=========================================================================
17035    // GtkPicture
17036    //=========================================================================
17037    pub fn gtk_picture_get_type() -> GType;
17038    pub fn gtk_picture_new() -> *mut GtkWidget;
17039    pub fn gtk_picture_new_for_file(file: *mut gio::GFile) -> *mut GtkWidget;
17040    pub fn gtk_picture_new_for_filename(filename: *const c_char) -> *mut GtkWidget;
17041    pub fn gtk_picture_new_for_paintable(paintable: *mut gdk::GdkPaintable) -> *mut GtkWidget;
17042    pub fn gtk_picture_new_for_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
17043    pub fn gtk_picture_new_for_resource(resource_path: *const c_char) -> *mut GtkWidget;
17044    pub fn gtk_picture_get_alternative_text(self_: *mut GtkPicture) -> *const c_char;
17045    pub fn gtk_picture_get_can_shrink(self_: *mut GtkPicture) -> gboolean;
17046    #[cfg(feature = "v4_8")]
17047    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
17048    pub fn gtk_picture_get_content_fit(self_: *mut GtkPicture) -> GtkContentFit;
17049    pub fn gtk_picture_get_file(self_: *mut GtkPicture) -> *mut gio::GFile;
17050    #[cfg(feature = "v4_22")]
17051    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17052    pub fn gtk_picture_get_isolate_contents(self_: *mut GtkPicture) -> gboolean;
17053    pub fn gtk_picture_get_keep_aspect_ratio(self_: *mut GtkPicture) -> gboolean;
17054    pub fn gtk_picture_get_paintable(self_: *mut GtkPicture) -> *mut gdk::GdkPaintable;
17055    pub fn gtk_picture_set_alternative_text(
17056        self_: *mut GtkPicture,
17057        alternative_text: *const c_char,
17058    );
17059    pub fn gtk_picture_set_can_shrink(self_: *mut GtkPicture, can_shrink: gboolean);
17060    #[cfg(feature = "v4_8")]
17061    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
17062    pub fn gtk_picture_set_content_fit(self_: *mut GtkPicture, content_fit: GtkContentFit);
17063    pub fn gtk_picture_set_file(self_: *mut GtkPicture, file: *mut gio::GFile);
17064    pub fn gtk_picture_set_filename(self_: *mut GtkPicture, filename: *const c_char);
17065    #[cfg(feature = "v4_22")]
17066    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17067    pub fn gtk_picture_set_isolate_contents(self_: *mut GtkPicture, isolate_contents: gboolean);
17068    pub fn gtk_picture_set_keep_aspect_ratio(self_: *mut GtkPicture, keep_aspect_ratio: gboolean);
17069    pub fn gtk_picture_set_paintable(self_: *mut GtkPicture, paintable: *mut gdk::GdkPaintable);
17070    pub fn gtk_picture_set_pixbuf(self_: *mut GtkPicture, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
17071    pub fn gtk_picture_set_resource(self_: *mut GtkPicture, resource_path: *const c_char);
17072
17073    //=========================================================================
17074    // GtkPopover
17075    //=========================================================================
17076    pub fn gtk_popover_get_type() -> GType;
17077    pub fn gtk_popover_new() -> *mut GtkWidget;
17078    pub fn gtk_popover_get_autohide(popover: *mut GtkPopover) -> gboolean;
17079    pub fn gtk_popover_get_cascade_popdown(popover: *mut GtkPopover) -> gboolean;
17080    pub fn gtk_popover_get_child(popover: *mut GtkPopover) -> *mut GtkWidget;
17081    pub fn gtk_popover_get_has_arrow(popover: *mut GtkPopover) -> gboolean;
17082    pub fn gtk_popover_get_mnemonics_visible(popover: *mut GtkPopover) -> gboolean;
17083    pub fn gtk_popover_get_offset(
17084        popover: *mut GtkPopover,
17085        x_offset: *mut c_int,
17086        y_offset: *mut c_int,
17087    );
17088    pub fn gtk_popover_get_pointing_to(
17089        popover: *mut GtkPopover,
17090        rect: *mut gdk::GdkRectangle,
17091    ) -> gboolean;
17092    pub fn gtk_popover_get_position(popover: *mut GtkPopover) -> GtkPositionType;
17093    pub fn gtk_popover_popdown(popover: *mut GtkPopover);
17094    pub fn gtk_popover_popup(popover: *mut GtkPopover);
17095    pub fn gtk_popover_present(popover: *mut GtkPopover);
17096    pub fn gtk_popover_set_autohide(popover: *mut GtkPopover, autohide: gboolean);
17097    pub fn gtk_popover_set_cascade_popdown(popover: *mut GtkPopover, cascade_popdown: gboolean);
17098    pub fn gtk_popover_set_child(popover: *mut GtkPopover, child: *mut GtkWidget);
17099    pub fn gtk_popover_set_default_widget(popover: *mut GtkPopover, widget: *mut GtkWidget);
17100    pub fn gtk_popover_set_has_arrow(popover: *mut GtkPopover, has_arrow: gboolean);
17101    pub fn gtk_popover_set_mnemonics_visible(popover: *mut GtkPopover, mnemonics_visible: gboolean);
17102    pub fn gtk_popover_set_offset(popover: *mut GtkPopover, x_offset: c_int, y_offset: c_int);
17103    pub fn gtk_popover_set_pointing_to(popover: *mut GtkPopover, rect: *const gdk::GdkRectangle);
17104    pub fn gtk_popover_set_position(popover: *mut GtkPopover, position: GtkPositionType);
17105
17106    //=========================================================================
17107    // GtkPopoverMenu
17108    //=========================================================================
17109    pub fn gtk_popover_menu_get_type() -> GType;
17110    pub fn gtk_popover_menu_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
17111    pub fn gtk_popover_menu_new_from_model_full(
17112        model: *mut gio::GMenuModel,
17113        flags: GtkPopoverMenuFlags,
17114    ) -> *mut GtkWidget;
17115    pub fn gtk_popover_menu_add_child(
17116        popover: *mut GtkPopoverMenu,
17117        child: *mut GtkWidget,
17118        id: *const c_char,
17119    ) -> gboolean;
17120    #[cfg(feature = "v4_14")]
17121    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17122    pub fn gtk_popover_menu_get_flags(popover: *mut GtkPopoverMenu) -> GtkPopoverMenuFlags;
17123    pub fn gtk_popover_menu_get_menu_model(popover: *mut GtkPopoverMenu) -> *mut gio::GMenuModel;
17124    pub fn gtk_popover_menu_remove_child(
17125        popover: *mut GtkPopoverMenu,
17126        child: *mut GtkWidget,
17127    ) -> gboolean;
17128    #[cfg(feature = "v4_14")]
17129    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17130    pub fn gtk_popover_menu_set_flags(popover: *mut GtkPopoverMenu, flags: GtkPopoverMenuFlags);
17131    pub fn gtk_popover_menu_set_menu_model(
17132        popover: *mut GtkPopoverMenu,
17133        model: *mut gio::GMenuModel,
17134    );
17135
17136    //=========================================================================
17137    // GtkPopoverMenuBar
17138    //=========================================================================
17139    pub fn gtk_popover_menu_bar_get_type() -> GType;
17140    pub fn gtk_popover_menu_bar_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
17141    pub fn gtk_popover_menu_bar_add_child(
17142        bar: *mut GtkPopoverMenuBar,
17143        child: *mut GtkWidget,
17144        id: *const c_char,
17145    ) -> gboolean;
17146    pub fn gtk_popover_menu_bar_get_menu_model(bar: *mut GtkPopoverMenuBar)
17147        -> *mut gio::GMenuModel;
17148    pub fn gtk_popover_menu_bar_remove_child(
17149        bar: *mut GtkPopoverMenuBar,
17150        child: *mut GtkWidget,
17151    ) -> gboolean;
17152    pub fn gtk_popover_menu_bar_set_menu_model(
17153        bar: *mut GtkPopoverMenuBar,
17154        model: *mut gio::GMenuModel,
17155    );
17156
17157    //=========================================================================
17158    // GtkPrintContext
17159    //=========================================================================
17160    pub fn gtk_print_context_get_type() -> GType;
17161    pub fn gtk_print_context_create_pango_context(
17162        context: *mut GtkPrintContext,
17163    ) -> *mut pango::PangoContext;
17164    pub fn gtk_print_context_create_pango_layout(
17165        context: *mut GtkPrintContext,
17166    ) -> *mut pango::PangoLayout;
17167    pub fn gtk_print_context_get_cairo_context(
17168        context: *mut GtkPrintContext,
17169    ) -> *mut cairo::cairo_t;
17170    pub fn gtk_print_context_get_dpi_x(context: *mut GtkPrintContext) -> c_double;
17171    pub fn gtk_print_context_get_dpi_y(context: *mut GtkPrintContext) -> c_double;
17172    pub fn gtk_print_context_get_hard_margins(
17173        context: *mut GtkPrintContext,
17174        top: *mut c_double,
17175        bottom: *mut c_double,
17176        left: *mut c_double,
17177        right: *mut c_double,
17178    ) -> gboolean;
17179    pub fn gtk_print_context_get_height(context: *mut GtkPrintContext) -> c_double;
17180    pub fn gtk_print_context_get_page_setup(context: *mut GtkPrintContext) -> *mut GtkPageSetup;
17181    pub fn gtk_print_context_get_pango_fontmap(
17182        context: *mut GtkPrintContext,
17183    ) -> *mut pango::PangoFontMap;
17184    pub fn gtk_print_context_get_width(context: *mut GtkPrintContext) -> c_double;
17185    pub fn gtk_print_context_set_cairo_context(
17186        context: *mut GtkPrintContext,
17187        cr: *mut cairo::cairo_t,
17188        dpi_x: c_double,
17189        dpi_y: c_double,
17190    );
17191
17192    //=========================================================================
17193    // GtkPrintDialog
17194    //=========================================================================
17195    #[cfg(feature = "v4_14")]
17196    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17197    pub fn gtk_print_dialog_get_type() -> GType;
17198    #[cfg(feature = "v4_14")]
17199    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17200    pub fn gtk_print_dialog_new() -> *mut GtkPrintDialog;
17201    #[cfg(feature = "v4_14")]
17202    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17203    pub fn gtk_print_dialog_get_accept_label(self_: *mut GtkPrintDialog) -> *const c_char;
17204    #[cfg(feature = "v4_14")]
17205    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17206    pub fn gtk_print_dialog_get_modal(self_: *mut GtkPrintDialog) -> gboolean;
17207    #[cfg(feature = "v4_14")]
17208    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17209    pub fn gtk_print_dialog_get_page_setup(self_: *mut GtkPrintDialog) -> *mut GtkPageSetup;
17210    #[cfg(feature = "v4_14")]
17211    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17212    pub fn gtk_print_dialog_get_print_settings(self_: *mut GtkPrintDialog)
17213        -> *mut GtkPrintSettings;
17214    #[cfg(feature = "v4_14")]
17215    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17216    pub fn gtk_print_dialog_get_title(self_: *mut GtkPrintDialog) -> *const c_char;
17217    #[cfg(feature = "v4_14")]
17218    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17219    pub fn gtk_print_dialog_print(
17220        self_: *mut GtkPrintDialog,
17221        parent: *mut GtkWindow,
17222        setup: *mut GtkPrintSetup,
17223        cancellable: *mut gio::GCancellable,
17224        callback: gio::GAsyncReadyCallback,
17225        user_data: gpointer,
17226    );
17227    #[cfg(feature = "v4_14")]
17228    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17229    pub fn gtk_print_dialog_print_file(
17230        self_: *mut GtkPrintDialog,
17231        parent: *mut GtkWindow,
17232        setup: *mut GtkPrintSetup,
17233        file: *mut gio::GFile,
17234        cancellable: *mut gio::GCancellable,
17235        callback: gio::GAsyncReadyCallback,
17236        user_data: gpointer,
17237    );
17238    #[cfg(feature = "v4_14")]
17239    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17240    pub fn gtk_print_dialog_print_file_finish(
17241        self_: *mut GtkPrintDialog,
17242        result: *mut gio::GAsyncResult,
17243        error: *mut *mut glib::GError,
17244    ) -> gboolean;
17245    #[cfg(feature = "v4_14")]
17246    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17247    pub fn gtk_print_dialog_print_finish(
17248        self_: *mut GtkPrintDialog,
17249        result: *mut gio::GAsyncResult,
17250        error: *mut *mut glib::GError,
17251    ) -> *mut gio::GOutputStream;
17252    #[cfg(feature = "v4_14")]
17253    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17254    pub fn gtk_print_dialog_set_accept_label(
17255        self_: *mut GtkPrintDialog,
17256        accept_label: *const c_char,
17257    );
17258    #[cfg(feature = "v4_14")]
17259    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17260    pub fn gtk_print_dialog_set_modal(self_: *mut GtkPrintDialog, modal: gboolean);
17261    #[cfg(feature = "v4_14")]
17262    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17263    pub fn gtk_print_dialog_set_page_setup(
17264        self_: *mut GtkPrintDialog,
17265        page_setup: *mut GtkPageSetup,
17266    );
17267    #[cfg(feature = "v4_14")]
17268    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17269    pub fn gtk_print_dialog_set_print_settings(
17270        self_: *mut GtkPrintDialog,
17271        print_settings: *mut GtkPrintSettings,
17272    );
17273    #[cfg(feature = "v4_14")]
17274    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17275    pub fn gtk_print_dialog_set_title(self_: *mut GtkPrintDialog, title: *const c_char);
17276    #[cfg(feature = "v4_14")]
17277    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17278    pub fn gtk_print_dialog_setup(
17279        self_: *mut GtkPrintDialog,
17280        parent: *mut GtkWindow,
17281        cancellable: *mut gio::GCancellable,
17282        callback: gio::GAsyncReadyCallback,
17283        user_data: gpointer,
17284    );
17285    #[cfg(feature = "v4_14")]
17286    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17287    pub fn gtk_print_dialog_setup_finish(
17288        self_: *mut GtkPrintDialog,
17289        result: *mut gio::GAsyncResult,
17290        error: *mut *mut glib::GError,
17291    ) -> *mut GtkPrintSetup;
17292
17293    //=========================================================================
17294    // GtkPrintJob
17295    //=========================================================================
17296    pub fn gtk_print_job_get_type() -> GType;
17297    pub fn gtk_print_job_new(
17298        title: *const c_char,
17299        printer: *mut GtkPrinter,
17300        settings: *mut GtkPrintSettings,
17301        page_setup: *mut GtkPageSetup,
17302    ) -> *mut GtkPrintJob;
17303    pub fn gtk_print_job_get_collate(job: *mut GtkPrintJob) -> gboolean;
17304    pub fn gtk_print_job_get_n_up(job: *mut GtkPrintJob) -> c_uint;
17305    pub fn gtk_print_job_get_n_up_layout(job: *mut GtkPrintJob) -> GtkNumberUpLayout;
17306    pub fn gtk_print_job_get_num_copies(job: *mut GtkPrintJob) -> c_int;
17307    pub fn gtk_print_job_get_page_ranges(
17308        job: *mut GtkPrintJob,
17309        n_ranges: *mut c_int,
17310    ) -> *mut GtkPageRange;
17311    pub fn gtk_print_job_get_page_set(job: *mut GtkPrintJob) -> GtkPageSet;
17312    pub fn gtk_print_job_get_pages(job: *mut GtkPrintJob) -> GtkPrintPages;
17313    pub fn gtk_print_job_get_printer(job: *mut GtkPrintJob) -> *mut GtkPrinter;
17314    pub fn gtk_print_job_get_reverse(job: *mut GtkPrintJob) -> gboolean;
17315    pub fn gtk_print_job_get_rotate(job: *mut GtkPrintJob) -> gboolean;
17316    pub fn gtk_print_job_get_scale(job: *mut GtkPrintJob) -> c_double;
17317    pub fn gtk_print_job_get_settings(job: *mut GtkPrintJob) -> *mut GtkPrintSettings;
17318    pub fn gtk_print_job_get_status(job: *mut GtkPrintJob) -> GtkPrintStatus;
17319    pub fn gtk_print_job_get_surface(
17320        job: *mut GtkPrintJob,
17321        error: *mut *mut glib::GError,
17322    ) -> *mut cairo::cairo_surface_t;
17323    pub fn gtk_print_job_get_title(job: *mut GtkPrintJob) -> *const c_char;
17324    pub fn gtk_print_job_get_track_print_status(job: *mut GtkPrintJob) -> gboolean;
17325    pub fn gtk_print_job_send(
17326        job: *mut GtkPrintJob,
17327        callback: GtkPrintJobCompleteFunc,
17328        user_data: gpointer,
17329        dnotify: glib::GDestroyNotify,
17330    );
17331    pub fn gtk_print_job_set_collate(job: *mut GtkPrintJob, collate: gboolean);
17332    pub fn gtk_print_job_set_n_up(job: *mut GtkPrintJob, n_up: c_uint);
17333    pub fn gtk_print_job_set_n_up_layout(job: *mut GtkPrintJob, layout: GtkNumberUpLayout);
17334    pub fn gtk_print_job_set_num_copies(job: *mut GtkPrintJob, num_copies: c_int);
17335    pub fn gtk_print_job_set_page_ranges(
17336        job: *mut GtkPrintJob,
17337        ranges: *mut GtkPageRange,
17338        n_ranges: c_int,
17339    );
17340    pub fn gtk_print_job_set_page_set(job: *mut GtkPrintJob, page_set: GtkPageSet);
17341    pub fn gtk_print_job_set_pages(job: *mut GtkPrintJob, pages: GtkPrintPages);
17342    pub fn gtk_print_job_set_reverse(job: *mut GtkPrintJob, reverse: gboolean);
17343    pub fn gtk_print_job_set_rotate(job: *mut GtkPrintJob, rotate: gboolean);
17344    pub fn gtk_print_job_set_scale(job: *mut GtkPrintJob, scale: c_double);
17345    pub fn gtk_print_job_set_source_fd(
17346        job: *mut GtkPrintJob,
17347        fd: c_int,
17348        error: *mut *mut glib::GError,
17349    ) -> gboolean;
17350    pub fn gtk_print_job_set_source_file(
17351        job: *mut GtkPrintJob,
17352        filename: *const c_char,
17353        error: *mut *mut glib::GError,
17354    ) -> gboolean;
17355    pub fn gtk_print_job_set_track_print_status(job: *mut GtkPrintJob, track_status: gboolean);
17356
17357    //=========================================================================
17358    // GtkPrintOperation
17359    //=========================================================================
17360    pub fn gtk_print_operation_get_type() -> GType;
17361    pub fn gtk_print_operation_new() -> *mut GtkPrintOperation;
17362    pub fn gtk_print_operation_cancel(op: *mut GtkPrintOperation);
17363    pub fn gtk_print_operation_draw_page_finish(op: *mut GtkPrintOperation);
17364    pub fn gtk_print_operation_get_default_page_setup(
17365        op: *mut GtkPrintOperation,
17366    ) -> *mut GtkPageSetup;
17367    pub fn gtk_print_operation_get_embed_page_setup(op: *mut GtkPrintOperation) -> gboolean;
17368    pub fn gtk_print_operation_get_error(op: *mut GtkPrintOperation, error: *mut *mut glib::GError);
17369    pub fn gtk_print_operation_get_has_selection(op: *mut GtkPrintOperation) -> gboolean;
17370    pub fn gtk_print_operation_get_n_pages_to_print(op: *mut GtkPrintOperation) -> c_int;
17371    pub fn gtk_print_operation_get_print_settings(
17372        op: *mut GtkPrintOperation,
17373    ) -> *mut GtkPrintSettings;
17374    pub fn gtk_print_operation_get_status(op: *mut GtkPrintOperation) -> GtkPrintStatus;
17375    pub fn gtk_print_operation_get_status_string(op: *mut GtkPrintOperation) -> *const c_char;
17376    pub fn gtk_print_operation_get_support_selection(op: *mut GtkPrintOperation) -> gboolean;
17377    pub fn gtk_print_operation_is_finished(op: *mut GtkPrintOperation) -> gboolean;
17378    pub fn gtk_print_operation_run(
17379        op: *mut GtkPrintOperation,
17380        action: GtkPrintOperationAction,
17381        parent: *mut GtkWindow,
17382        error: *mut *mut glib::GError,
17383    ) -> GtkPrintOperationResult;
17384    pub fn gtk_print_operation_set_allow_async(op: *mut GtkPrintOperation, allow_async: gboolean);
17385    pub fn gtk_print_operation_set_current_page(op: *mut GtkPrintOperation, current_page: c_int);
17386    pub fn gtk_print_operation_set_custom_tab_label(
17387        op: *mut GtkPrintOperation,
17388        label: *const c_char,
17389    );
17390    pub fn gtk_print_operation_set_default_page_setup(
17391        op: *mut GtkPrintOperation,
17392        default_page_setup: *mut GtkPageSetup,
17393    );
17394    pub fn gtk_print_operation_set_defer_drawing(op: *mut GtkPrintOperation);
17395    pub fn gtk_print_operation_set_embed_page_setup(op: *mut GtkPrintOperation, embed: gboolean);
17396    pub fn gtk_print_operation_set_export_filename(
17397        op: *mut GtkPrintOperation,
17398        filename: *const c_char,
17399    );
17400    pub fn gtk_print_operation_set_has_selection(
17401        op: *mut GtkPrintOperation,
17402        has_selection: gboolean,
17403    );
17404    pub fn gtk_print_operation_set_job_name(op: *mut GtkPrintOperation, job_name: *const c_char);
17405    pub fn gtk_print_operation_set_n_pages(op: *mut GtkPrintOperation, n_pages: c_int);
17406    pub fn gtk_print_operation_set_print_settings(
17407        op: *mut GtkPrintOperation,
17408        print_settings: *mut GtkPrintSettings,
17409    );
17410    pub fn gtk_print_operation_set_show_progress(
17411        op: *mut GtkPrintOperation,
17412        show_progress: gboolean,
17413    );
17414    pub fn gtk_print_operation_set_support_selection(
17415        op: *mut GtkPrintOperation,
17416        support_selection: gboolean,
17417    );
17418    pub fn gtk_print_operation_set_track_print_status(
17419        op: *mut GtkPrintOperation,
17420        track_status: gboolean,
17421    );
17422    pub fn gtk_print_operation_set_unit(op: *mut GtkPrintOperation, unit: GtkUnit);
17423    pub fn gtk_print_operation_set_use_full_page(op: *mut GtkPrintOperation, full_page: gboolean);
17424
17425    //=========================================================================
17426    // GtkPrintSettings
17427    //=========================================================================
17428    pub fn gtk_print_settings_get_type() -> GType;
17429    pub fn gtk_print_settings_new() -> *mut GtkPrintSettings;
17430    pub fn gtk_print_settings_new_from_file(
17431        file_name: *const c_char,
17432        error: *mut *mut glib::GError,
17433    ) -> *mut GtkPrintSettings;
17434    pub fn gtk_print_settings_new_from_gvariant(
17435        variant: *mut glib::GVariant,
17436    ) -> *mut GtkPrintSettings;
17437    pub fn gtk_print_settings_new_from_key_file(
17438        key_file: *mut glib::GKeyFile,
17439        group_name: *const c_char,
17440        error: *mut *mut glib::GError,
17441    ) -> *mut GtkPrintSettings;
17442    pub fn gtk_print_settings_copy(other: *mut GtkPrintSettings) -> *mut GtkPrintSettings;
17443    pub fn gtk_print_settings_foreach(
17444        settings: *mut GtkPrintSettings,
17445        func: GtkPrintSettingsFunc,
17446        user_data: gpointer,
17447    );
17448    pub fn gtk_print_settings_get(
17449        settings: *mut GtkPrintSettings,
17450        key: *const c_char,
17451    ) -> *const c_char;
17452    pub fn gtk_print_settings_get_bool(
17453        settings: *mut GtkPrintSettings,
17454        key: *const c_char,
17455    ) -> gboolean;
17456    pub fn gtk_print_settings_get_collate(settings: *mut GtkPrintSettings) -> gboolean;
17457    pub fn gtk_print_settings_get_default_source(settings: *mut GtkPrintSettings) -> *const c_char;
17458    pub fn gtk_print_settings_get_dither(settings: *mut GtkPrintSettings) -> *const c_char;
17459    pub fn gtk_print_settings_get_double(
17460        settings: *mut GtkPrintSettings,
17461        key: *const c_char,
17462    ) -> c_double;
17463    pub fn gtk_print_settings_get_double_with_default(
17464        settings: *mut GtkPrintSettings,
17465        key: *const c_char,
17466        def: c_double,
17467    ) -> c_double;
17468    pub fn gtk_print_settings_get_duplex(settings: *mut GtkPrintSettings) -> GtkPrintDuplex;
17469    pub fn gtk_print_settings_get_finishings(settings: *mut GtkPrintSettings) -> *const c_char;
17470    pub fn gtk_print_settings_get_int(settings: *mut GtkPrintSettings, key: *const c_char)
17471        -> c_int;
17472    pub fn gtk_print_settings_get_int_with_default(
17473        settings: *mut GtkPrintSettings,
17474        key: *const c_char,
17475        def: c_int,
17476    ) -> c_int;
17477    pub fn gtk_print_settings_get_length(
17478        settings: *mut GtkPrintSettings,
17479        key: *const c_char,
17480        unit: GtkUnit,
17481    ) -> c_double;
17482    pub fn gtk_print_settings_get_media_type(settings: *mut GtkPrintSettings) -> *const c_char;
17483    pub fn gtk_print_settings_get_n_copies(settings: *mut GtkPrintSettings) -> c_int;
17484    pub fn gtk_print_settings_get_number_up(settings: *mut GtkPrintSettings) -> c_int;
17485    pub fn gtk_print_settings_get_number_up_layout(
17486        settings: *mut GtkPrintSettings,
17487    ) -> GtkNumberUpLayout;
17488    pub fn gtk_print_settings_get_orientation(
17489        settings: *mut GtkPrintSettings,
17490    ) -> GtkPageOrientation;
17491    pub fn gtk_print_settings_get_output_bin(settings: *mut GtkPrintSettings) -> *const c_char;
17492    pub fn gtk_print_settings_get_page_ranges(
17493        settings: *mut GtkPrintSettings,
17494        num_ranges: *mut c_int,
17495    ) -> *mut GtkPageRange;
17496    pub fn gtk_print_settings_get_page_set(settings: *mut GtkPrintSettings) -> GtkPageSet;
17497    pub fn gtk_print_settings_get_paper_height(
17498        settings: *mut GtkPrintSettings,
17499        unit: GtkUnit,
17500    ) -> c_double;
17501    pub fn gtk_print_settings_get_paper_size(settings: *mut GtkPrintSettings) -> *mut GtkPaperSize;
17502    pub fn gtk_print_settings_get_paper_width(
17503        settings: *mut GtkPrintSettings,
17504        unit: GtkUnit,
17505    ) -> c_double;
17506    pub fn gtk_print_settings_get_print_pages(settings: *mut GtkPrintSettings) -> GtkPrintPages;
17507    pub fn gtk_print_settings_get_printer(settings: *mut GtkPrintSettings) -> *const c_char;
17508    pub fn gtk_print_settings_get_printer_lpi(settings: *mut GtkPrintSettings) -> c_double;
17509    pub fn gtk_print_settings_get_quality(settings: *mut GtkPrintSettings) -> GtkPrintQuality;
17510    pub fn gtk_print_settings_get_resolution(settings: *mut GtkPrintSettings) -> c_int;
17511    pub fn gtk_print_settings_get_resolution_x(settings: *mut GtkPrintSettings) -> c_int;
17512    pub fn gtk_print_settings_get_resolution_y(settings: *mut GtkPrintSettings) -> c_int;
17513    pub fn gtk_print_settings_get_reverse(settings: *mut GtkPrintSettings) -> gboolean;
17514    pub fn gtk_print_settings_get_scale(settings: *mut GtkPrintSettings) -> c_double;
17515    pub fn gtk_print_settings_get_use_color(settings: *mut GtkPrintSettings) -> gboolean;
17516    pub fn gtk_print_settings_has_key(
17517        settings: *mut GtkPrintSettings,
17518        key: *const c_char,
17519    ) -> gboolean;
17520    pub fn gtk_print_settings_load_file(
17521        settings: *mut GtkPrintSettings,
17522        file_name: *const c_char,
17523        error: *mut *mut glib::GError,
17524    ) -> gboolean;
17525    pub fn gtk_print_settings_load_key_file(
17526        settings: *mut GtkPrintSettings,
17527        key_file: *mut glib::GKeyFile,
17528        group_name: *const c_char,
17529        error: *mut *mut glib::GError,
17530    ) -> gboolean;
17531    pub fn gtk_print_settings_set(
17532        settings: *mut GtkPrintSettings,
17533        key: *const c_char,
17534        value: *const c_char,
17535    );
17536    pub fn gtk_print_settings_set_bool(
17537        settings: *mut GtkPrintSettings,
17538        key: *const c_char,
17539        value: gboolean,
17540    );
17541    pub fn gtk_print_settings_set_collate(settings: *mut GtkPrintSettings, collate: gboolean);
17542    pub fn gtk_print_settings_set_default_source(
17543        settings: *mut GtkPrintSettings,
17544        default_source: *const c_char,
17545    );
17546    pub fn gtk_print_settings_set_dither(settings: *mut GtkPrintSettings, dither: *const c_char);
17547    pub fn gtk_print_settings_set_double(
17548        settings: *mut GtkPrintSettings,
17549        key: *const c_char,
17550        value: c_double,
17551    );
17552    pub fn gtk_print_settings_set_duplex(settings: *mut GtkPrintSettings, duplex: GtkPrintDuplex);
17553    pub fn gtk_print_settings_set_finishings(
17554        settings: *mut GtkPrintSettings,
17555        finishings: *const c_char,
17556    );
17557    pub fn gtk_print_settings_set_int(
17558        settings: *mut GtkPrintSettings,
17559        key: *const c_char,
17560        value: c_int,
17561    );
17562    pub fn gtk_print_settings_set_length(
17563        settings: *mut GtkPrintSettings,
17564        key: *const c_char,
17565        value: c_double,
17566        unit: GtkUnit,
17567    );
17568    pub fn gtk_print_settings_set_media_type(
17569        settings: *mut GtkPrintSettings,
17570        media_type: *const c_char,
17571    );
17572    pub fn gtk_print_settings_set_n_copies(settings: *mut GtkPrintSettings, num_copies: c_int);
17573    pub fn gtk_print_settings_set_number_up(settings: *mut GtkPrintSettings, number_up: c_int);
17574    pub fn gtk_print_settings_set_number_up_layout(
17575        settings: *mut GtkPrintSettings,
17576        number_up_layout: GtkNumberUpLayout,
17577    );
17578    pub fn gtk_print_settings_set_orientation(
17579        settings: *mut GtkPrintSettings,
17580        orientation: GtkPageOrientation,
17581    );
17582    pub fn gtk_print_settings_set_output_bin(
17583        settings: *mut GtkPrintSettings,
17584        output_bin: *const c_char,
17585    );
17586    pub fn gtk_print_settings_set_page_ranges(
17587        settings: *mut GtkPrintSettings,
17588        page_ranges: *mut GtkPageRange,
17589        num_ranges: c_int,
17590    );
17591    pub fn gtk_print_settings_set_page_set(settings: *mut GtkPrintSettings, page_set: GtkPageSet);
17592    pub fn gtk_print_settings_set_paper_height(
17593        settings: *mut GtkPrintSettings,
17594        height: c_double,
17595        unit: GtkUnit,
17596    );
17597    pub fn gtk_print_settings_set_paper_size(
17598        settings: *mut GtkPrintSettings,
17599        paper_size: *mut GtkPaperSize,
17600    );
17601    pub fn gtk_print_settings_set_paper_width(
17602        settings: *mut GtkPrintSettings,
17603        width: c_double,
17604        unit: GtkUnit,
17605    );
17606    pub fn gtk_print_settings_set_print_pages(
17607        settings: *mut GtkPrintSettings,
17608        pages: GtkPrintPages,
17609    );
17610    pub fn gtk_print_settings_set_printer(settings: *mut GtkPrintSettings, printer: *const c_char);
17611    pub fn gtk_print_settings_set_printer_lpi(settings: *mut GtkPrintSettings, lpi: c_double);
17612    pub fn gtk_print_settings_set_quality(
17613        settings: *mut GtkPrintSettings,
17614        quality: GtkPrintQuality,
17615    );
17616    pub fn gtk_print_settings_set_resolution(settings: *mut GtkPrintSettings, resolution: c_int);
17617    pub fn gtk_print_settings_set_resolution_xy(
17618        settings: *mut GtkPrintSettings,
17619        resolution_x: c_int,
17620        resolution_y: c_int,
17621    );
17622    pub fn gtk_print_settings_set_reverse(settings: *mut GtkPrintSettings, reverse: gboolean);
17623    pub fn gtk_print_settings_set_scale(settings: *mut GtkPrintSettings, scale: c_double);
17624    pub fn gtk_print_settings_set_use_color(settings: *mut GtkPrintSettings, use_color: gboolean);
17625    pub fn gtk_print_settings_to_file(
17626        settings: *mut GtkPrintSettings,
17627        file_name: *const c_char,
17628        error: *mut *mut glib::GError,
17629    ) -> gboolean;
17630    pub fn gtk_print_settings_to_gvariant(settings: *mut GtkPrintSettings) -> *mut glib::GVariant;
17631    pub fn gtk_print_settings_to_key_file(
17632        settings: *mut GtkPrintSettings,
17633        key_file: *mut glib::GKeyFile,
17634        group_name: *const c_char,
17635    );
17636    pub fn gtk_print_settings_unset(settings: *mut GtkPrintSettings, key: *const c_char);
17637
17638    //=========================================================================
17639    // GtkPrintUnixDialog
17640    //=========================================================================
17641    pub fn gtk_print_unix_dialog_get_type() -> GType;
17642    pub fn gtk_print_unix_dialog_new(
17643        title: *const c_char,
17644        parent: *mut GtkWindow,
17645    ) -> *mut GtkWidget;
17646    pub fn gtk_print_unix_dialog_add_custom_tab(
17647        dialog: *mut GtkPrintUnixDialog,
17648        child: *mut GtkWidget,
17649        tab_label: *mut GtkWidget,
17650    );
17651    pub fn gtk_print_unix_dialog_get_current_page(dialog: *mut GtkPrintUnixDialog) -> c_int;
17652    pub fn gtk_print_unix_dialog_get_embed_page_setup(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17653    pub fn gtk_print_unix_dialog_get_has_selection(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17654    pub fn gtk_print_unix_dialog_get_manual_capabilities(
17655        dialog: *mut GtkPrintUnixDialog,
17656    ) -> GtkPrintCapabilities;
17657    pub fn gtk_print_unix_dialog_get_page_setup(
17658        dialog: *mut GtkPrintUnixDialog,
17659    ) -> *mut GtkPageSetup;
17660    pub fn gtk_print_unix_dialog_get_page_setup_set(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17661    pub fn gtk_print_unix_dialog_get_selected_printer(
17662        dialog: *mut GtkPrintUnixDialog,
17663    ) -> *mut GtkPrinter;
17664    pub fn gtk_print_unix_dialog_get_settings(
17665        dialog: *mut GtkPrintUnixDialog,
17666    ) -> *mut GtkPrintSettings;
17667    pub fn gtk_print_unix_dialog_get_support_selection(dialog: *mut GtkPrintUnixDialog)
17668        -> gboolean;
17669    pub fn gtk_print_unix_dialog_set_current_page(
17670        dialog: *mut GtkPrintUnixDialog,
17671        current_page: c_int,
17672    );
17673    pub fn gtk_print_unix_dialog_set_embed_page_setup(
17674        dialog: *mut GtkPrintUnixDialog,
17675        embed: gboolean,
17676    );
17677    pub fn gtk_print_unix_dialog_set_has_selection(
17678        dialog: *mut GtkPrintUnixDialog,
17679        has_selection: gboolean,
17680    );
17681    pub fn gtk_print_unix_dialog_set_manual_capabilities(
17682        dialog: *mut GtkPrintUnixDialog,
17683        capabilities: GtkPrintCapabilities,
17684    );
17685    pub fn gtk_print_unix_dialog_set_page_setup(
17686        dialog: *mut GtkPrintUnixDialog,
17687        page_setup: *mut GtkPageSetup,
17688    );
17689    pub fn gtk_print_unix_dialog_set_settings(
17690        dialog: *mut GtkPrintUnixDialog,
17691        settings: *mut GtkPrintSettings,
17692    );
17693    pub fn gtk_print_unix_dialog_set_support_selection(
17694        dialog: *mut GtkPrintUnixDialog,
17695        support_selection: gboolean,
17696    );
17697
17698    //=========================================================================
17699    // GtkPrinter
17700    //=========================================================================
17701    pub fn gtk_printer_get_type() -> GType;
17702    pub fn gtk_printer_new(
17703        name: *const c_char,
17704        backend: *mut GtkPrintBackend,
17705        virtual_: gboolean,
17706    ) -> *mut GtkPrinter;
17707    pub fn gtk_printer_accepts_pdf(printer: *mut GtkPrinter) -> gboolean;
17708    pub fn gtk_printer_accepts_ps(printer: *mut GtkPrinter) -> gboolean;
17709    pub fn gtk_printer_compare(a: *mut GtkPrinter, b: *mut GtkPrinter) -> c_int;
17710    pub fn gtk_printer_get_backend(printer: *mut GtkPrinter) -> *mut GtkPrintBackend;
17711    pub fn gtk_printer_get_capabilities(printer: *mut GtkPrinter) -> GtkPrintCapabilities;
17712    pub fn gtk_printer_get_default_page_size(printer: *mut GtkPrinter) -> *mut GtkPageSetup;
17713    pub fn gtk_printer_get_description(printer: *mut GtkPrinter) -> *const c_char;
17714    pub fn gtk_printer_get_hard_margins(
17715        printer: *mut GtkPrinter,
17716        top: *mut c_double,
17717        bottom: *mut c_double,
17718        left: *mut c_double,
17719        right: *mut c_double,
17720    ) -> gboolean;
17721    pub fn gtk_printer_get_hard_margins_for_paper_size(
17722        printer: *mut GtkPrinter,
17723        paper_size: *mut GtkPaperSize,
17724        top: *mut c_double,
17725        bottom: *mut c_double,
17726        left: *mut c_double,
17727        right: *mut c_double,
17728    ) -> gboolean;
17729    pub fn gtk_printer_get_icon_name(printer: *mut GtkPrinter) -> *const c_char;
17730    pub fn gtk_printer_get_job_count(printer: *mut GtkPrinter) -> c_int;
17731    pub fn gtk_printer_get_location(printer: *mut GtkPrinter) -> *const c_char;
17732    pub fn gtk_printer_get_name(printer: *mut GtkPrinter) -> *const c_char;
17733    pub fn gtk_printer_get_state_message(printer: *mut GtkPrinter) -> *const c_char;
17734    pub fn gtk_printer_has_details(printer: *mut GtkPrinter) -> gboolean;
17735    pub fn gtk_printer_is_accepting_jobs(printer: *mut GtkPrinter) -> gboolean;
17736    pub fn gtk_printer_is_active(printer: *mut GtkPrinter) -> gboolean;
17737    pub fn gtk_printer_is_default(printer: *mut GtkPrinter) -> gboolean;
17738    pub fn gtk_printer_is_paused(printer: *mut GtkPrinter) -> gboolean;
17739    pub fn gtk_printer_is_virtual(printer: *mut GtkPrinter) -> gboolean;
17740    pub fn gtk_printer_list_papers(printer: *mut GtkPrinter) -> *mut glib::GList;
17741    pub fn gtk_printer_request_details(printer: *mut GtkPrinter);
17742
17743    //=========================================================================
17744    // GtkProgressBar
17745    //=========================================================================
17746    pub fn gtk_progress_bar_get_type() -> GType;
17747    pub fn gtk_progress_bar_new() -> *mut GtkWidget;
17748    pub fn gtk_progress_bar_get_ellipsize(pbar: *mut GtkProgressBar) -> pango::PangoEllipsizeMode;
17749    pub fn gtk_progress_bar_get_fraction(pbar: *mut GtkProgressBar) -> c_double;
17750    pub fn gtk_progress_bar_get_inverted(pbar: *mut GtkProgressBar) -> gboolean;
17751    pub fn gtk_progress_bar_get_pulse_step(pbar: *mut GtkProgressBar) -> c_double;
17752    pub fn gtk_progress_bar_get_show_text(pbar: *mut GtkProgressBar) -> gboolean;
17753    pub fn gtk_progress_bar_get_text(pbar: *mut GtkProgressBar) -> *const c_char;
17754    pub fn gtk_progress_bar_pulse(pbar: *mut GtkProgressBar);
17755    pub fn gtk_progress_bar_set_ellipsize(
17756        pbar: *mut GtkProgressBar,
17757        mode: pango::PangoEllipsizeMode,
17758    );
17759    pub fn gtk_progress_bar_set_fraction(pbar: *mut GtkProgressBar, fraction: c_double);
17760    pub fn gtk_progress_bar_set_inverted(pbar: *mut GtkProgressBar, inverted: gboolean);
17761    pub fn gtk_progress_bar_set_pulse_step(pbar: *mut GtkProgressBar, fraction: c_double);
17762    pub fn gtk_progress_bar_set_show_text(pbar: *mut GtkProgressBar, show_text: gboolean);
17763    pub fn gtk_progress_bar_set_text(pbar: *mut GtkProgressBar, text: *const c_char);
17764
17765    //=========================================================================
17766    // GtkPropertyExpression
17767    //=========================================================================
17768    pub fn gtk_property_expression_get_type() -> GType;
17769    pub fn gtk_property_expression_new(
17770        this_type: GType,
17771        expression: *mut GtkExpression,
17772        property_name: *const c_char,
17773    ) -> *mut GtkPropertyExpression;
17774    pub fn gtk_property_expression_new_for_pspec(
17775        expression: *mut GtkExpression,
17776        pspec: *mut gobject::GParamSpec,
17777    ) -> *mut GtkPropertyExpression;
17778    pub fn gtk_property_expression_get_expression(
17779        expression: *mut GtkPropertyExpression,
17780    ) -> *mut GtkExpression;
17781    pub fn gtk_property_expression_get_pspec(
17782        expression: *mut GtkPropertyExpression,
17783    ) -> *mut gobject::GParamSpec;
17784
17785    //=========================================================================
17786    // GtkRange
17787    //=========================================================================
17788    pub fn gtk_range_get_type() -> GType;
17789    pub fn gtk_range_get_adjustment(range: *mut GtkRange) -> *mut GtkAdjustment;
17790    pub fn gtk_range_get_fill_level(range: *mut GtkRange) -> c_double;
17791    pub fn gtk_range_get_flippable(range: *mut GtkRange) -> gboolean;
17792    pub fn gtk_range_get_inverted(range: *mut GtkRange) -> gboolean;
17793    pub fn gtk_range_get_range_rect(range: *mut GtkRange, range_rect: *mut gdk::GdkRectangle);
17794    pub fn gtk_range_get_restrict_to_fill_level(range: *mut GtkRange) -> gboolean;
17795    pub fn gtk_range_get_round_digits(range: *mut GtkRange) -> c_int;
17796    pub fn gtk_range_get_show_fill_level(range: *mut GtkRange) -> gboolean;
17797    pub fn gtk_range_get_slider_range(
17798        range: *mut GtkRange,
17799        slider_start: *mut c_int,
17800        slider_end: *mut c_int,
17801    );
17802    pub fn gtk_range_get_slider_size_fixed(range: *mut GtkRange) -> gboolean;
17803    pub fn gtk_range_get_value(range: *mut GtkRange) -> c_double;
17804    pub fn gtk_range_set_adjustment(range: *mut GtkRange, adjustment: *mut GtkAdjustment);
17805    pub fn gtk_range_set_fill_level(range: *mut GtkRange, fill_level: c_double);
17806    pub fn gtk_range_set_flippable(range: *mut GtkRange, flippable: gboolean);
17807    pub fn gtk_range_set_increments(range: *mut GtkRange, step: c_double, page: c_double);
17808    pub fn gtk_range_set_inverted(range: *mut GtkRange, setting: gboolean);
17809    pub fn gtk_range_set_range(range: *mut GtkRange, min: c_double, max: c_double);
17810    pub fn gtk_range_set_restrict_to_fill_level(
17811        range: *mut GtkRange,
17812        restrict_to_fill_level: gboolean,
17813    );
17814    pub fn gtk_range_set_round_digits(range: *mut GtkRange, round_digits: c_int);
17815    pub fn gtk_range_set_show_fill_level(range: *mut GtkRange, show_fill_level: gboolean);
17816    pub fn gtk_range_set_slider_size_fixed(range: *mut GtkRange, size_fixed: gboolean);
17817    pub fn gtk_range_set_value(range: *mut GtkRange, value: c_double);
17818
17819    //=========================================================================
17820    // GtkRecentManager
17821    //=========================================================================
17822    pub fn gtk_recent_manager_get_type() -> GType;
17823    pub fn gtk_recent_manager_new() -> *mut GtkRecentManager;
17824    pub fn gtk_recent_manager_get_default() -> *mut GtkRecentManager;
17825    pub fn gtk_recent_manager_add_full(
17826        manager: *mut GtkRecentManager,
17827        uri: *const c_char,
17828        recent_data: *const GtkRecentData,
17829    ) -> gboolean;
17830    pub fn gtk_recent_manager_add_item(
17831        manager: *mut GtkRecentManager,
17832        uri: *const c_char,
17833    ) -> gboolean;
17834    pub fn gtk_recent_manager_get_items(manager: *mut GtkRecentManager) -> *mut glib::GList;
17835    pub fn gtk_recent_manager_has_item(
17836        manager: *mut GtkRecentManager,
17837        uri: *const c_char,
17838    ) -> gboolean;
17839    pub fn gtk_recent_manager_lookup_item(
17840        manager: *mut GtkRecentManager,
17841        uri: *const c_char,
17842        error: *mut *mut glib::GError,
17843    ) -> *mut GtkRecentInfo;
17844    pub fn gtk_recent_manager_move_item(
17845        manager: *mut GtkRecentManager,
17846        uri: *const c_char,
17847        new_uri: *const c_char,
17848        error: *mut *mut glib::GError,
17849    ) -> gboolean;
17850    pub fn gtk_recent_manager_purge_items(
17851        manager: *mut GtkRecentManager,
17852        error: *mut *mut glib::GError,
17853    ) -> c_int;
17854    pub fn gtk_recent_manager_remove_item(
17855        manager: *mut GtkRecentManager,
17856        uri: *const c_char,
17857        error: *mut *mut glib::GError,
17858    ) -> gboolean;
17859
17860    //=========================================================================
17861    // GtkRevealer
17862    //=========================================================================
17863    pub fn gtk_revealer_get_type() -> GType;
17864    pub fn gtk_revealer_new() -> *mut GtkWidget;
17865    pub fn gtk_revealer_get_child(revealer: *mut GtkRevealer) -> *mut GtkWidget;
17866    pub fn gtk_revealer_get_child_revealed(revealer: *mut GtkRevealer) -> gboolean;
17867    pub fn gtk_revealer_get_reveal_child(revealer: *mut GtkRevealer) -> gboolean;
17868    pub fn gtk_revealer_get_transition_duration(revealer: *mut GtkRevealer) -> c_uint;
17869    pub fn gtk_revealer_get_transition_type(
17870        revealer: *mut GtkRevealer,
17871    ) -> GtkRevealerTransitionType;
17872    pub fn gtk_revealer_set_child(revealer: *mut GtkRevealer, child: *mut GtkWidget);
17873    pub fn gtk_revealer_set_reveal_child(revealer: *mut GtkRevealer, reveal_child: gboolean);
17874    pub fn gtk_revealer_set_transition_duration(revealer: *mut GtkRevealer, duration: c_uint);
17875    pub fn gtk_revealer_set_transition_type(
17876        revealer: *mut GtkRevealer,
17877        transition: GtkRevealerTransitionType,
17878    );
17879
17880    //=========================================================================
17881    // GtkScale
17882    //=========================================================================
17883    pub fn gtk_scale_get_type() -> GType;
17884    pub fn gtk_scale_new(
17885        orientation: GtkOrientation,
17886        adjustment: *mut GtkAdjustment,
17887    ) -> *mut GtkWidget;
17888    pub fn gtk_scale_new_with_range(
17889        orientation: GtkOrientation,
17890        min: c_double,
17891        max: c_double,
17892        step: c_double,
17893    ) -> *mut GtkWidget;
17894    pub fn gtk_scale_add_mark(
17895        scale: *mut GtkScale,
17896        value: c_double,
17897        position: GtkPositionType,
17898        markup: *const c_char,
17899    );
17900    pub fn gtk_scale_clear_marks(scale: *mut GtkScale);
17901    pub fn gtk_scale_get_digits(scale: *mut GtkScale) -> c_int;
17902    pub fn gtk_scale_get_draw_value(scale: *mut GtkScale) -> gboolean;
17903    pub fn gtk_scale_get_has_origin(scale: *mut GtkScale) -> gboolean;
17904    pub fn gtk_scale_get_layout(scale: *mut GtkScale) -> *mut pango::PangoLayout;
17905    pub fn gtk_scale_get_layout_offsets(scale: *mut GtkScale, x: *mut c_int, y: *mut c_int);
17906    pub fn gtk_scale_get_value_pos(scale: *mut GtkScale) -> GtkPositionType;
17907    pub fn gtk_scale_set_digits(scale: *mut GtkScale, digits: c_int);
17908    pub fn gtk_scale_set_draw_value(scale: *mut GtkScale, draw_value: gboolean);
17909    pub fn gtk_scale_set_format_value_func(
17910        scale: *mut GtkScale,
17911        func: GtkScaleFormatValueFunc,
17912        user_data: gpointer,
17913        destroy_notify: glib::GDestroyNotify,
17914    );
17915    pub fn gtk_scale_set_has_origin(scale: *mut GtkScale, has_origin: gboolean);
17916    pub fn gtk_scale_set_value_pos(scale: *mut GtkScale, pos: GtkPositionType);
17917
17918    //=========================================================================
17919    // GtkScaleButton
17920    //=========================================================================
17921    pub fn gtk_scale_button_get_type() -> GType;
17922    pub fn gtk_scale_button_new(
17923        min: c_double,
17924        max: c_double,
17925        step: c_double,
17926        icons: *mut *const c_char,
17927    ) -> *mut GtkWidget;
17928    #[cfg(feature = "v4_10")]
17929    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
17930    pub fn gtk_scale_button_get_active(button: *mut GtkScaleButton) -> gboolean;
17931    pub fn gtk_scale_button_get_adjustment(button: *mut GtkScaleButton) -> *mut GtkAdjustment;
17932    #[cfg(feature = "v4_14")]
17933    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17934    pub fn gtk_scale_button_get_has_frame(button: *mut GtkScaleButton) -> gboolean;
17935    pub fn gtk_scale_button_get_minus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
17936    pub fn gtk_scale_button_get_plus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
17937    pub fn gtk_scale_button_get_popup(button: *mut GtkScaleButton) -> *mut GtkWidget;
17938    pub fn gtk_scale_button_get_value(button: *mut GtkScaleButton) -> c_double;
17939    pub fn gtk_scale_button_set_adjustment(
17940        button: *mut GtkScaleButton,
17941        adjustment: *mut GtkAdjustment,
17942    );
17943    #[cfg(feature = "v4_14")]
17944    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17945    pub fn gtk_scale_button_set_has_frame(button: *mut GtkScaleButton, has_frame: gboolean);
17946    pub fn gtk_scale_button_set_icons(button: *mut GtkScaleButton, icons: *mut *const c_char);
17947    pub fn gtk_scale_button_set_value(button: *mut GtkScaleButton, value: c_double);
17948
17949    //=========================================================================
17950    // GtkScrollbar
17951    //=========================================================================
17952    pub fn gtk_scrollbar_get_type() -> GType;
17953    pub fn gtk_scrollbar_new(
17954        orientation: GtkOrientation,
17955        adjustment: *mut GtkAdjustment,
17956    ) -> *mut GtkWidget;
17957    pub fn gtk_scrollbar_get_adjustment(self_: *mut GtkScrollbar) -> *mut GtkAdjustment;
17958    pub fn gtk_scrollbar_set_adjustment(self_: *mut GtkScrollbar, adjustment: *mut GtkAdjustment);
17959
17960    //=========================================================================
17961    // GtkScrolledWindow
17962    //=========================================================================
17963    pub fn gtk_scrolled_window_get_type() -> GType;
17964    pub fn gtk_scrolled_window_new() -> *mut GtkWidget;
17965    pub fn gtk_scrolled_window_get_child(scrolled_window: *mut GtkScrolledWindow)
17966        -> *mut GtkWidget;
17967    pub fn gtk_scrolled_window_get_hadjustment(
17968        scrolled_window: *mut GtkScrolledWindow,
17969    ) -> *mut GtkAdjustment;
17970    pub fn gtk_scrolled_window_get_has_frame(scrolled_window: *mut GtkScrolledWindow) -> gboolean;
17971    pub fn gtk_scrolled_window_get_hscrollbar(
17972        scrolled_window: *mut GtkScrolledWindow,
17973    ) -> *mut GtkWidget;
17974    pub fn gtk_scrolled_window_get_kinetic_scrolling(
17975        scrolled_window: *mut GtkScrolledWindow,
17976    ) -> gboolean;
17977    pub fn gtk_scrolled_window_get_max_content_height(
17978        scrolled_window: *mut GtkScrolledWindow,
17979    ) -> c_int;
17980    pub fn gtk_scrolled_window_get_max_content_width(
17981        scrolled_window: *mut GtkScrolledWindow,
17982    ) -> c_int;
17983    pub fn gtk_scrolled_window_get_min_content_height(
17984        scrolled_window: *mut GtkScrolledWindow,
17985    ) -> c_int;
17986    pub fn gtk_scrolled_window_get_min_content_width(
17987        scrolled_window: *mut GtkScrolledWindow,
17988    ) -> c_int;
17989    pub fn gtk_scrolled_window_get_overlay_scrolling(
17990        scrolled_window: *mut GtkScrolledWindow,
17991    ) -> gboolean;
17992    pub fn gtk_scrolled_window_get_placement(
17993        scrolled_window: *mut GtkScrolledWindow,
17994    ) -> GtkCornerType;
17995    pub fn gtk_scrolled_window_get_policy(
17996        scrolled_window: *mut GtkScrolledWindow,
17997        hscrollbar_policy: *mut GtkPolicyType,
17998        vscrollbar_policy: *mut GtkPolicyType,
17999    );
18000    pub fn gtk_scrolled_window_get_propagate_natural_height(
18001        scrolled_window: *mut GtkScrolledWindow,
18002    ) -> gboolean;
18003    pub fn gtk_scrolled_window_get_propagate_natural_width(
18004        scrolled_window: *mut GtkScrolledWindow,
18005    ) -> gboolean;
18006    pub fn gtk_scrolled_window_get_vadjustment(
18007        scrolled_window: *mut GtkScrolledWindow,
18008    ) -> *mut GtkAdjustment;
18009    pub fn gtk_scrolled_window_get_vscrollbar(
18010        scrolled_window: *mut GtkScrolledWindow,
18011    ) -> *mut GtkWidget;
18012    pub fn gtk_scrolled_window_set_child(
18013        scrolled_window: *mut GtkScrolledWindow,
18014        child: *mut GtkWidget,
18015    );
18016    pub fn gtk_scrolled_window_set_hadjustment(
18017        scrolled_window: *mut GtkScrolledWindow,
18018        hadjustment: *mut GtkAdjustment,
18019    );
18020    pub fn gtk_scrolled_window_set_has_frame(
18021        scrolled_window: *mut GtkScrolledWindow,
18022        has_frame: gboolean,
18023    );
18024    pub fn gtk_scrolled_window_set_kinetic_scrolling(
18025        scrolled_window: *mut GtkScrolledWindow,
18026        kinetic_scrolling: gboolean,
18027    );
18028    pub fn gtk_scrolled_window_set_max_content_height(
18029        scrolled_window: *mut GtkScrolledWindow,
18030        height: c_int,
18031    );
18032    pub fn gtk_scrolled_window_set_max_content_width(
18033        scrolled_window: *mut GtkScrolledWindow,
18034        width: c_int,
18035    );
18036    pub fn gtk_scrolled_window_set_min_content_height(
18037        scrolled_window: *mut GtkScrolledWindow,
18038        height: c_int,
18039    );
18040    pub fn gtk_scrolled_window_set_min_content_width(
18041        scrolled_window: *mut GtkScrolledWindow,
18042        width: c_int,
18043    );
18044    pub fn gtk_scrolled_window_set_overlay_scrolling(
18045        scrolled_window: *mut GtkScrolledWindow,
18046        overlay_scrolling: gboolean,
18047    );
18048    pub fn gtk_scrolled_window_set_placement(
18049        scrolled_window: *mut GtkScrolledWindow,
18050        window_placement: GtkCornerType,
18051    );
18052    pub fn gtk_scrolled_window_set_policy(
18053        scrolled_window: *mut GtkScrolledWindow,
18054        hscrollbar_policy: GtkPolicyType,
18055        vscrollbar_policy: GtkPolicyType,
18056    );
18057    pub fn gtk_scrolled_window_set_propagate_natural_height(
18058        scrolled_window: *mut GtkScrolledWindow,
18059        propagate: gboolean,
18060    );
18061    pub fn gtk_scrolled_window_set_propagate_natural_width(
18062        scrolled_window: *mut GtkScrolledWindow,
18063        propagate: gboolean,
18064    );
18065    pub fn gtk_scrolled_window_set_vadjustment(
18066        scrolled_window: *mut GtkScrolledWindow,
18067        vadjustment: *mut GtkAdjustment,
18068    );
18069    pub fn gtk_scrolled_window_unset_placement(scrolled_window: *mut GtkScrolledWindow);
18070
18071    //=========================================================================
18072    // GtkSearchBar
18073    //=========================================================================
18074    pub fn gtk_search_bar_get_type() -> GType;
18075    pub fn gtk_search_bar_new() -> *mut GtkWidget;
18076    pub fn gtk_search_bar_connect_entry(bar: *mut GtkSearchBar, entry: *mut GtkEditable);
18077    pub fn gtk_search_bar_get_child(bar: *mut GtkSearchBar) -> *mut GtkWidget;
18078    pub fn gtk_search_bar_get_key_capture_widget(bar: *mut GtkSearchBar) -> *mut GtkWidget;
18079    pub fn gtk_search_bar_get_search_mode(bar: *mut GtkSearchBar) -> gboolean;
18080    pub fn gtk_search_bar_get_show_close_button(bar: *mut GtkSearchBar) -> gboolean;
18081    pub fn gtk_search_bar_set_child(bar: *mut GtkSearchBar, child: *mut GtkWidget);
18082    pub fn gtk_search_bar_set_key_capture_widget(bar: *mut GtkSearchBar, widget: *mut GtkWidget);
18083    pub fn gtk_search_bar_set_search_mode(bar: *mut GtkSearchBar, search_mode: gboolean);
18084    pub fn gtk_search_bar_set_show_close_button(bar: *mut GtkSearchBar, visible: gboolean);
18085
18086    //=========================================================================
18087    // GtkSearchEntry
18088    //=========================================================================
18089    pub fn gtk_search_entry_get_type() -> GType;
18090    pub fn gtk_search_entry_new() -> *mut GtkWidget;
18091    #[cfg(feature = "v4_14")]
18092    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18093    pub fn gtk_search_entry_get_input_hints(entry: *mut GtkSearchEntry) -> GtkInputHints;
18094    #[cfg(feature = "v4_14")]
18095    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18096    pub fn gtk_search_entry_get_input_purpose(entry: *mut GtkSearchEntry) -> GtkInputPurpose;
18097    pub fn gtk_search_entry_get_key_capture_widget(entry: *mut GtkSearchEntry) -> *mut GtkWidget;
18098    #[cfg(feature = "v4_10")]
18099    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18100    pub fn gtk_search_entry_get_placeholder_text(entry: *mut GtkSearchEntry) -> *const c_char;
18101    #[cfg(feature = "v4_8")]
18102    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
18103    pub fn gtk_search_entry_get_search_delay(entry: *mut GtkSearchEntry) -> c_uint;
18104    #[cfg(feature = "v4_14")]
18105    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18106    pub fn gtk_search_entry_set_input_hints(entry: *mut GtkSearchEntry, hints: GtkInputHints);
18107    #[cfg(feature = "v4_14")]
18108    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18109    pub fn gtk_search_entry_set_input_purpose(entry: *mut GtkSearchEntry, purpose: GtkInputPurpose);
18110    pub fn gtk_search_entry_set_key_capture_widget(
18111        entry: *mut GtkSearchEntry,
18112        widget: *mut GtkWidget,
18113    );
18114    #[cfg(feature = "v4_10")]
18115    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18116    pub fn gtk_search_entry_set_placeholder_text(entry: *mut GtkSearchEntry, text: *const c_char);
18117    #[cfg(feature = "v4_8")]
18118    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
18119    pub fn gtk_search_entry_set_search_delay(entry: *mut GtkSearchEntry, delay: c_uint);
18120
18121    //=========================================================================
18122    // GtkSelectionFilterModel
18123    //=========================================================================
18124    pub fn gtk_selection_filter_model_get_type() -> GType;
18125    pub fn gtk_selection_filter_model_new(
18126        model: *mut GtkSelectionModel,
18127    ) -> *mut GtkSelectionFilterModel;
18128    pub fn gtk_selection_filter_model_get_model(
18129        self_: *mut GtkSelectionFilterModel,
18130    ) -> *mut GtkSelectionModel;
18131    pub fn gtk_selection_filter_model_set_model(
18132        self_: *mut GtkSelectionFilterModel,
18133        model: *mut GtkSelectionModel,
18134    );
18135
18136    //=========================================================================
18137    // GtkSeparator
18138    //=========================================================================
18139    pub fn gtk_separator_get_type() -> GType;
18140    pub fn gtk_separator_new(orientation: GtkOrientation) -> *mut GtkWidget;
18141
18142    //=========================================================================
18143    // GtkSettings
18144    //=========================================================================
18145    pub fn gtk_settings_get_type() -> GType;
18146    pub fn gtk_settings_get_default() -> *mut GtkSettings;
18147    pub fn gtk_settings_get_for_display(display: *mut gdk::GdkDisplay) -> *mut GtkSettings;
18148    pub fn gtk_settings_reset_property(settings: *mut GtkSettings, name: *const c_char);
18149
18150    //=========================================================================
18151    // GtkShortcut
18152    //=========================================================================
18153    pub fn gtk_shortcut_get_type() -> GType;
18154    pub fn gtk_shortcut_new(
18155        trigger: *mut GtkShortcutTrigger,
18156        action: *mut GtkShortcutAction,
18157    ) -> *mut GtkShortcut;
18158    pub fn gtk_shortcut_new_with_arguments(
18159        trigger: *mut GtkShortcutTrigger,
18160        action: *mut GtkShortcutAction,
18161        format_string: *const c_char,
18162        ...
18163    ) -> *mut GtkShortcut;
18164    pub fn gtk_shortcut_get_action(self_: *mut GtkShortcut) -> *mut GtkShortcutAction;
18165    pub fn gtk_shortcut_get_arguments(self_: *mut GtkShortcut) -> *mut glib::GVariant;
18166    pub fn gtk_shortcut_get_trigger(self_: *mut GtkShortcut) -> *mut GtkShortcutTrigger;
18167    pub fn gtk_shortcut_set_action(self_: *mut GtkShortcut, action: *mut GtkShortcutAction);
18168    pub fn gtk_shortcut_set_arguments(self_: *mut GtkShortcut, args: *mut glib::GVariant);
18169    pub fn gtk_shortcut_set_trigger(self_: *mut GtkShortcut, trigger: *mut GtkShortcutTrigger);
18170
18171    //=========================================================================
18172    // GtkShortcutAction
18173    //=========================================================================
18174    pub fn gtk_shortcut_action_get_type() -> GType;
18175    pub fn gtk_shortcut_action_parse_string(string: *const c_char) -> *mut GtkShortcutAction;
18176    pub fn gtk_shortcut_action_activate(
18177        self_: *mut GtkShortcutAction,
18178        flags: GtkShortcutActionFlags,
18179        widget: *mut GtkWidget,
18180        args: *mut glib::GVariant,
18181    ) -> gboolean;
18182    pub fn gtk_shortcut_action_print(self_: *mut GtkShortcutAction, string: *mut glib::GString);
18183    pub fn gtk_shortcut_action_to_string(self_: *mut GtkShortcutAction) -> *mut c_char;
18184
18185    //=========================================================================
18186    // GtkShortcutController
18187    //=========================================================================
18188    pub fn gtk_shortcut_controller_get_type() -> GType;
18189    pub fn gtk_shortcut_controller_new() -> *mut GtkEventController;
18190    pub fn gtk_shortcut_controller_new_for_model(
18191        model: *mut gio::GListModel,
18192    ) -> *mut GtkEventController;
18193    pub fn gtk_shortcut_controller_add_shortcut(
18194        self_: *mut GtkShortcutController,
18195        shortcut: *mut GtkShortcut,
18196    );
18197    pub fn gtk_shortcut_controller_get_mnemonics_modifiers(
18198        self_: *mut GtkShortcutController,
18199    ) -> gdk::GdkModifierType;
18200    pub fn gtk_shortcut_controller_get_scope(self_: *mut GtkShortcutController)
18201        -> GtkShortcutScope;
18202    pub fn gtk_shortcut_controller_remove_shortcut(
18203        self_: *mut GtkShortcutController,
18204        shortcut: *mut GtkShortcut,
18205    );
18206    pub fn gtk_shortcut_controller_set_mnemonics_modifiers(
18207        self_: *mut GtkShortcutController,
18208        modifiers: gdk::GdkModifierType,
18209    );
18210    pub fn gtk_shortcut_controller_set_scope(
18211        self_: *mut GtkShortcutController,
18212        scope: GtkShortcutScope,
18213    );
18214
18215    //=========================================================================
18216    // GtkShortcutLabel
18217    //=========================================================================
18218    pub fn gtk_shortcut_label_get_type() -> GType;
18219    pub fn gtk_shortcut_label_new(accelerator: *const c_char) -> *mut GtkWidget;
18220    pub fn gtk_shortcut_label_get_accelerator(self_: *mut GtkShortcutLabel) -> *const c_char;
18221    pub fn gtk_shortcut_label_get_disabled_text(self_: *mut GtkShortcutLabel) -> *const c_char;
18222    pub fn gtk_shortcut_label_set_accelerator(
18223        self_: *mut GtkShortcutLabel,
18224        accelerator: *const c_char,
18225    );
18226    pub fn gtk_shortcut_label_set_disabled_text(
18227        self_: *mut GtkShortcutLabel,
18228        disabled_text: *const c_char,
18229    );
18230
18231    //=========================================================================
18232    // GtkShortcutTrigger
18233    //=========================================================================
18234    pub fn gtk_shortcut_trigger_get_type() -> GType;
18235    pub fn gtk_shortcut_trigger_parse_string(string: *const c_char) -> *mut GtkShortcutTrigger;
18236    pub fn gtk_shortcut_trigger_compare(trigger1: gconstpointer, trigger2: gconstpointer) -> c_int;
18237    pub fn gtk_shortcut_trigger_equal(trigger1: gconstpointer, trigger2: gconstpointer)
18238        -> gboolean;
18239    pub fn gtk_shortcut_trigger_hash(trigger: gconstpointer) -> c_uint;
18240    pub fn gtk_shortcut_trigger_print(self_: *mut GtkShortcutTrigger, string: *mut glib::GString);
18241    pub fn gtk_shortcut_trigger_print_label(
18242        self_: *mut GtkShortcutTrigger,
18243        display: *mut gdk::GdkDisplay,
18244        string: *mut glib::GString,
18245    ) -> gboolean;
18246    pub fn gtk_shortcut_trigger_to_label(
18247        self_: *mut GtkShortcutTrigger,
18248        display: *mut gdk::GdkDisplay,
18249    ) -> *mut c_char;
18250    pub fn gtk_shortcut_trigger_to_string(self_: *mut GtkShortcutTrigger) -> *mut c_char;
18251    pub fn gtk_shortcut_trigger_trigger(
18252        self_: *mut GtkShortcutTrigger,
18253        event: *mut gdk::GdkEvent,
18254        enable_mnemonics: gboolean,
18255    ) -> gdk::GdkKeyMatch;
18256
18257    //=========================================================================
18258    // GtkShortcutsGroup
18259    //=========================================================================
18260    pub fn gtk_shortcuts_group_get_type() -> GType;
18261    #[cfg(feature = "v4_14")]
18262    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18263    pub fn gtk_shortcuts_group_add_shortcut(
18264        self_: *mut GtkShortcutsGroup,
18265        shortcut: *mut GtkShortcutsShortcut,
18266    );
18267
18268    //=========================================================================
18269    // GtkShortcutsSection
18270    //=========================================================================
18271    pub fn gtk_shortcuts_section_get_type() -> GType;
18272    #[cfg(feature = "v4_14")]
18273    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18274    pub fn gtk_shortcuts_section_add_group(
18275        self_: *mut GtkShortcutsSection,
18276        group: *mut GtkShortcutsGroup,
18277    );
18278
18279    //=========================================================================
18280    // GtkShortcutsShortcut
18281    //=========================================================================
18282    pub fn gtk_shortcuts_shortcut_get_type() -> GType;
18283
18284    //=========================================================================
18285    // GtkShortcutsWindow
18286    //=========================================================================
18287    pub fn gtk_shortcuts_window_get_type() -> GType;
18288    #[cfg(feature = "v4_14")]
18289    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18290    pub fn gtk_shortcuts_window_add_section(
18291        self_: *mut GtkShortcutsWindow,
18292        section: *mut GtkShortcutsSection,
18293    );
18294
18295    //=========================================================================
18296    // GtkSignalAction
18297    //=========================================================================
18298    pub fn gtk_signal_action_get_type() -> GType;
18299    pub fn gtk_signal_action_new(signal_name: *const c_char) -> *mut GtkSignalAction;
18300    pub fn gtk_signal_action_get_signal_name(self_: *mut GtkSignalAction) -> *const c_char;
18301
18302    //=========================================================================
18303    // GtkSignalListItemFactory
18304    //=========================================================================
18305    pub fn gtk_signal_list_item_factory_get_type() -> GType;
18306    pub fn gtk_signal_list_item_factory_new() -> *mut GtkListItemFactory;
18307
18308    //=========================================================================
18309    // GtkSingleSelection
18310    //=========================================================================
18311    pub fn gtk_single_selection_get_type() -> GType;
18312    pub fn gtk_single_selection_new(model: *mut gio::GListModel) -> *mut GtkSingleSelection;
18313    pub fn gtk_single_selection_get_autoselect(self_: *mut GtkSingleSelection) -> gboolean;
18314    pub fn gtk_single_selection_get_can_unselect(self_: *mut GtkSingleSelection) -> gboolean;
18315    pub fn gtk_single_selection_get_model(self_: *mut GtkSingleSelection) -> *mut gio::GListModel;
18316    pub fn gtk_single_selection_get_selected(self_: *mut GtkSingleSelection) -> c_uint;
18317    pub fn gtk_single_selection_get_selected_item(
18318        self_: *mut GtkSingleSelection,
18319    ) -> *mut gobject::GObject;
18320    pub fn gtk_single_selection_set_autoselect(
18321        self_: *mut GtkSingleSelection,
18322        autoselect: gboolean,
18323    );
18324    pub fn gtk_single_selection_set_can_unselect(
18325        self_: *mut GtkSingleSelection,
18326        can_unselect: gboolean,
18327    );
18328    pub fn gtk_single_selection_set_model(
18329        self_: *mut GtkSingleSelection,
18330        model: *mut gio::GListModel,
18331    );
18332    pub fn gtk_single_selection_set_selected(self_: *mut GtkSingleSelection, position: c_uint);
18333
18334    //=========================================================================
18335    // GtkSizeGroup
18336    //=========================================================================
18337    pub fn gtk_size_group_get_type() -> GType;
18338    pub fn gtk_size_group_new(mode: GtkSizeGroupMode) -> *mut GtkSizeGroup;
18339    pub fn gtk_size_group_add_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
18340    pub fn gtk_size_group_get_mode(size_group: *mut GtkSizeGroup) -> GtkSizeGroupMode;
18341    pub fn gtk_size_group_get_widgets(size_group: *mut GtkSizeGroup) -> *mut glib::GSList;
18342    pub fn gtk_size_group_remove_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
18343    pub fn gtk_size_group_set_mode(size_group: *mut GtkSizeGroup, mode: GtkSizeGroupMode);
18344
18345    //=========================================================================
18346    // GtkSliceListModel
18347    //=========================================================================
18348    pub fn gtk_slice_list_model_get_type() -> GType;
18349    pub fn gtk_slice_list_model_new(
18350        model: *mut gio::GListModel,
18351        offset: c_uint,
18352        size: c_uint,
18353    ) -> *mut GtkSliceListModel;
18354    pub fn gtk_slice_list_model_get_model(self_: *mut GtkSliceListModel) -> *mut gio::GListModel;
18355    pub fn gtk_slice_list_model_get_offset(self_: *mut GtkSliceListModel) -> c_uint;
18356    pub fn gtk_slice_list_model_get_size(self_: *mut GtkSliceListModel) -> c_uint;
18357    pub fn gtk_slice_list_model_set_model(
18358        self_: *mut GtkSliceListModel,
18359        model: *mut gio::GListModel,
18360    );
18361    pub fn gtk_slice_list_model_set_offset(self_: *mut GtkSliceListModel, offset: c_uint);
18362    pub fn gtk_slice_list_model_set_size(self_: *mut GtkSliceListModel, size: c_uint);
18363
18364    //=========================================================================
18365    // GtkSnapshot
18366    //=========================================================================
18367    pub fn gtk_snapshot_get_type() -> GType;
18368    pub fn gtk_snapshot_new() -> *mut GtkSnapshot;
18369    pub fn gtk_snapshot_append_border(
18370        snapshot: *mut GtkSnapshot,
18371        outline: *const gsk::GskRoundedRect,
18372        border_width: *const [c_float; 4],
18373        border_color: *const [gdk::GdkRGBA; 4],
18374    );
18375    pub fn gtk_snapshot_append_cairo(
18376        snapshot: *mut GtkSnapshot,
18377        bounds: *const graphene::graphene_rect_t,
18378    ) -> *mut cairo::cairo_t;
18379    pub fn gtk_snapshot_append_color(
18380        snapshot: *mut GtkSnapshot,
18381        color: *const gdk::GdkRGBA,
18382        bounds: *const graphene::graphene_rect_t,
18383    );
18384    pub fn gtk_snapshot_append_conic_gradient(
18385        snapshot: *mut GtkSnapshot,
18386        bounds: *const graphene::graphene_rect_t,
18387        center: *const graphene::graphene_point_t,
18388        rotation: c_float,
18389        stops: *const gsk::GskColorStop,
18390        n_stops: size_t,
18391    );
18392    #[cfg(feature = "v4_14")]
18393    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18394    pub fn gtk_snapshot_append_fill(
18395        snapshot: *mut GtkSnapshot,
18396        path: *mut gsk::GskPath,
18397        fill_rule: gsk::GskFillRule,
18398        color: *const gdk::GdkRGBA,
18399    );
18400    pub fn gtk_snapshot_append_inset_shadow(
18401        snapshot: *mut GtkSnapshot,
18402        outline: *const gsk::GskRoundedRect,
18403        color: *const gdk::GdkRGBA,
18404        dx: c_float,
18405        dy: c_float,
18406        spread: c_float,
18407        blur_radius: c_float,
18408    );
18409    pub fn gtk_snapshot_append_layout(
18410        snapshot: *mut GtkSnapshot,
18411        layout: *mut pango::PangoLayout,
18412        color: *const gdk::GdkRGBA,
18413    );
18414    pub fn gtk_snapshot_append_linear_gradient(
18415        snapshot: *mut GtkSnapshot,
18416        bounds: *const graphene::graphene_rect_t,
18417        start_point: *const graphene::graphene_point_t,
18418        end_point: *const graphene::graphene_point_t,
18419        stops: *const gsk::GskColorStop,
18420        n_stops: size_t,
18421    );
18422    pub fn gtk_snapshot_append_node(snapshot: *mut GtkSnapshot, node: *mut gsk::GskRenderNode);
18423    pub fn gtk_snapshot_append_outset_shadow(
18424        snapshot: *mut GtkSnapshot,
18425        outline: *const gsk::GskRoundedRect,
18426        color: *const gdk::GdkRGBA,
18427        dx: c_float,
18428        dy: c_float,
18429        spread: c_float,
18430        blur_radius: c_float,
18431    );
18432    #[cfg(feature = "v4_22")]
18433    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18434    pub fn gtk_snapshot_append_paste(
18435        snapshot: *mut GtkSnapshot,
18436        bounds: *const graphene::graphene_rect_t,
18437        nth: size_t,
18438    );
18439    pub fn gtk_snapshot_append_radial_gradient(
18440        snapshot: *mut GtkSnapshot,
18441        bounds: *const graphene::graphene_rect_t,
18442        center: *const graphene::graphene_point_t,
18443        hradius: c_float,
18444        vradius: c_float,
18445        start: c_float,
18446        end: c_float,
18447        stops: *const gsk::GskColorStop,
18448        n_stops: size_t,
18449    );
18450    pub fn gtk_snapshot_append_repeating_linear_gradient(
18451        snapshot: *mut GtkSnapshot,
18452        bounds: *const graphene::graphene_rect_t,
18453        start_point: *const graphene::graphene_point_t,
18454        end_point: *const graphene::graphene_point_t,
18455        stops: *const gsk::GskColorStop,
18456        n_stops: size_t,
18457    );
18458    pub fn gtk_snapshot_append_repeating_radial_gradient(
18459        snapshot: *mut GtkSnapshot,
18460        bounds: *const graphene::graphene_rect_t,
18461        center: *const graphene::graphene_point_t,
18462        hradius: c_float,
18463        vradius: c_float,
18464        start: c_float,
18465        end: c_float,
18466        stops: *const gsk::GskColorStop,
18467        n_stops: size_t,
18468    );
18469    #[cfg(feature = "v4_10")]
18470    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18471    pub fn gtk_snapshot_append_scaled_texture(
18472        snapshot: *mut GtkSnapshot,
18473        texture: *mut gdk::GdkTexture,
18474        filter: gsk::GskScalingFilter,
18475        bounds: *const graphene::graphene_rect_t,
18476    );
18477    #[cfg(feature = "v4_14")]
18478    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18479    pub fn gtk_snapshot_append_stroke(
18480        snapshot: *mut GtkSnapshot,
18481        path: *mut gsk::GskPath,
18482        stroke: *const gsk::GskStroke,
18483        color: *const gdk::GdkRGBA,
18484    );
18485    pub fn gtk_snapshot_append_texture(
18486        snapshot: *mut GtkSnapshot,
18487        texture: *mut gdk::GdkTexture,
18488        bounds: *const graphene::graphene_rect_t,
18489    );
18490    pub fn gtk_snapshot_free_to_node(snapshot: *mut GtkSnapshot) -> *mut gsk::GskRenderNode;
18491    pub fn gtk_snapshot_free_to_paintable(
18492        snapshot: *mut GtkSnapshot,
18493        size: *const graphene::graphene_size_t,
18494    ) -> *mut gdk::GdkPaintable;
18495    pub fn gtk_snapshot_gl_shader_pop_texture(snapshot: *mut GtkSnapshot);
18496    pub fn gtk_snapshot_perspective(snapshot: *mut GtkSnapshot, depth: c_float);
18497    pub fn gtk_snapshot_pop(snapshot: *mut GtkSnapshot);
18498    pub fn gtk_snapshot_push_blend(snapshot: *mut GtkSnapshot, blend_mode: gsk::GskBlendMode);
18499    pub fn gtk_snapshot_push_blur(snapshot: *mut GtkSnapshot, radius: c_double);
18500    pub fn gtk_snapshot_push_clip(
18501        snapshot: *mut GtkSnapshot,
18502        bounds: *const graphene::graphene_rect_t,
18503    );
18504    pub fn gtk_snapshot_push_color_matrix(
18505        snapshot: *mut GtkSnapshot,
18506        color_matrix: *const graphene::graphene_matrix_t,
18507        color_offset: *const graphene::graphene_vec4_t,
18508    );
18509    #[cfg(feature = "v4_20")]
18510    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
18511    pub fn gtk_snapshot_push_component_transfer(
18512        snapshot: *mut GtkSnapshot,
18513        red: *const gsk::GskComponentTransfer,
18514        green: *const gsk::GskComponentTransfer,
18515        blue: *const gsk::GskComponentTransfer,
18516        alpha: *const gsk::GskComponentTransfer,
18517    );
18518    #[cfg(feature = "v4_22")]
18519    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18520    pub fn gtk_snapshot_push_composite(snapshot: *mut GtkSnapshot, op: gsk::GskPorterDuff);
18521    #[cfg(feature = "v4_22")]
18522    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18523    pub fn gtk_snapshot_push_copy(snapshot: *mut GtkSnapshot);
18524    pub fn gtk_snapshot_push_cross_fade(snapshot: *mut GtkSnapshot, progress: c_double);
18525    pub fn gtk_snapshot_push_debug(snapshot: *mut GtkSnapshot, message: *const c_char, ...);
18526    #[cfg(feature = "v4_14")]
18527    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18528    pub fn gtk_snapshot_push_fill(
18529        snapshot: *mut GtkSnapshot,
18530        path: *mut gsk::GskPath,
18531        fill_rule: gsk::GskFillRule,
18532    );
18533    pub fn gtk_snapshot_push_gl_shader(
18534        snapshot: *mut GtkSnapshot,
18535        shader: *mut gsk::GskGLShader,
18536        bounds: *const graphene::graphene_rect_t,
18537        take_args: *mut glib::GBytes,
18538    );
18539    #[cfg(feature = "v4_22")]
18540    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18541    pub fn gtk_snapshot_push_isolation(snapshot: *mut GtkSnapshot, features: gsk::GskIsolation);
18542    #[cfg(feature = "v4_10")]
18543    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18544    pub fn gtk_snapshot_push_mask(snapshot: *mut GtkSnapshot, mask_mode: gsk::GskMaskMode);
18545    pub fn gtk_snapshot_push_opacity(snapshot: *mut GtkSnapshot, opacity: c_double);
18546    pub fn gtk_snapshot_push_repeat(
18547        snapshot: *mut GtkSnapshot,
18548        bounds: *const graphene::graphene_rect_t,
18549        child_bounds: *const graphene::graphene_rect_t,
18550    );
18551    pub fn gtk_snapshot_push_rounded_clip(
18552        snapshot: *mut GtkSnapshot,
18553        bounds: *const gsk::GskRoundedRect,
18554    );
18555    pub fn gtk_snapshot_push_shadow(
18556        snapshot: *mut GtkSnapshot,
18557        shadow: *const gsk::GskShadow,
18558        n_shadows: size_t,
18559    );
18560    #[cfg(feature = "v4_14")]
18561    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18562    pub fn gtk_snapshot_push_stroke(
18563        snapshot: *mut GtkSnapshot,
18564        path: *mut gsk::GskPath,
18565        stroke: *const gsk::GskStroke,
18566    );
18567    pub fn gtk_snapshot_render_background(
18568        snapshot: *mut GtkSnapshot,
18569        context: *mut GtkStyleContext,
18570        x: c_double,
18571        y: c_double,
18572        width: c_double,
18573        height: c_double,
18574    );
18575    pub fn gtk_snapshot_render_focus(
18576        snapshot: *mut GtkSnapshot,
18577        context: *mut GtkStyleContext,
18578        x: c_double,
18579        y: c_double,
18580        width: c_double,
18581        height: c_double,
18582    );
18583    pub fn gtk_snapshot_render_frame(
18584        snapshot: *mut GtkSnapshot,
18585        context: *mut GtkStyleContext,
18586        x: c_double,
18587        y: c_double,
18588        width: c_double,
18589        height: c_double,
18590    );
18591    pub fn gtk_snapshot_render_insertion_cursor(
18592        snapshot: *mut GtkSnapshot,
18593        context: *mut GtkStyleContext,
18594        x: c_double,
18595        y: c_double,
18596        layout: *mut pango::PangoLayout,
18597        index: c_int,
18598        direction: pango::PangoDirection,
18599    );
18600    pub fn gtk_snapshot_render_layout(
18601        snapshot: *mut GtkSnapshot,
18602        context: *mut GtkStyleContext,
18603        x: c_double,
18604        y: c_double,
18605        layout: *mut pango::PangoLayout,
18606    );
18607    pub fn gtk_snapshot_restore(snapshot: *mut GtkSnapshot);
18608    pub fn gtk_snapshot_rotate(snapshot: *mut GtkSnapshot, angle: c_float);
18609    pub fn gtk_snapshot_rotate_3d(
18610        snapshot: *mut GtkSnapshot,
18611        angle: c_float,
18612        axis: *const graphene::graphene_vec3_t,
18613    );
18614    pub fn gtk_snapshot_save(snapshot: *mut GtkSnapshot);
18615    pub fn gtk_snapshot_scale(snapshot: *mut GtkSnapshot, factor_x: c_float, factor_y: c_float);
18616    pub fn gtk_snapshot_scale_3d(
18617        snapshot: *mut GtkSnapshot,
18618        factor_x: c_float,
18619        factor_y: c_float,
18620        factor_z: c_float,
18621    );
18622    pub fn gtk_snapshot_to_node(snapshot: *mut GtkSnapshot) -> *mut gsk::GskRenderNode;
18623    pub fn gtk_snapshot_to_paintable(
18624        snapshot: *mut GtkSnapshot,
18625        size: *const graphene::graphene_size_t,
18626    ) -> *mut gdk::GdkPaintable;
18627    pub fn gtk_snapshot_transform(snapshot: *mut GtkSnapshot, transform: *mut gsk::GskTransform);
18628    pub fn gtk_snapshot_transform_matrix(
18629        snapshot: *mut GtkSnapshot,
18630        matrix: *const graphene::graphene_matrix_t,
18631    );
18632    pub fn gtk_snapshot_translate(
18633        snapshot: *mut GtkSnapshot,
18634        point: *const graphene::graphene_point_t,
18635    );
18636    pub fn gtk_snapshot_translate_3d(
18637        snapshot: *mut GtkSnapshot,
18638        point: *const graphene::graphene_point3d_t,
18639    );
18640
18641    //=========================================================================
18642    // GtkSortListModel
18643    //=========================================================================
18644    pub fn gtk_sort_list_model_get_type() -> GType;
18645    pub fn gtk_sort_list_model_new(
18646        model: *mut gio::GListModel,
18647        sorter: *mut GtkSorter,
18648    ) -> *mut GtkSortListModel;
18649    pub fn gtk_sort_list_model_get_incremental(self_: *mut GtkSortListModel) -> gboolean;
18650    pub fn gtk_sort_list_model_get_model(self_: *mut GtkSortListModel) -> *mut gio::GListModel;
18651    pub fn gtk_sort_list_model_get_pending(self_: *mut GtkSortListModel) -> c_uint;
18652    #[cfg(feature = "v4_12")]
18653    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
18654    pub fn gtk_sort_list_model_get_section_sorter(self_: *mut GtkSortListModel) -> *mut GtkSorter;
18655    pub fn gtk_sort_list_model_get_sorter(self_: *mut GtkSortListModel) -> *mut GtkSorter;
18656    pub fn gtk_sort_list_model_set_incremental(self_: *mut GtkSortListModel, incremental: gboolean);
18657    pub fn gtk_sort_list_model_set_model(self_: *mut GtkSortListModel, model: *mut gio::GListModel);
18658    #[cfg(feature = "v4_12")]
18659    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
18660    pub fn gtk_sort_list_model_set_section_sorter(
18661        self_: *mut GtkSortListModel,
18662        sorter: *mut GtkSorter,
18663    );
18664    pub fn gtk_sort_list_model_set_sorter(self_: *mut GtkSortListModel, sorter: *mut GtkSorter);
18665
18666    //=========================================================================
18667    // GtkSorter
18668    //=========================================================================
18669    pub fn gtk_sorter_get_type() -> GType;
18670    pub fn gtk_sorter_changed(self_: *mut GtkSorter, change: GtkSorterChange);
18671    pub fn gtk_sorter_compare(
18672        self_: *mut GtkSorter,
18673        item1: *mut gobject::GObject,
18674        item2: *mut gobject::GObject,
18675    ) -> GtkOrdering;
18676    pub fn gtk_sorter_get_order(self_: *mut GtkSorter) -> GtkSorterOrder;
18677
18678    //=========================================================================
18679    // GtkSpinButton
18680    //=========================================================================
18681    pub fn gtk_spin_button_get_type() -> GType;
18682    pub fn gtk_spin_button_new(
18683        adjustment: *mut GtkAdjustment,
18684        climb_rate: c_double,
18685        digits: c_uint,
18686    ) -> *mut GtkWidget;
18687    pub fn gtk_spin_button_new_with_range(
18688        min: c_double,
18689        max: c_double,
18690        step: c_double,
18691    ) -> *mut GtkWidget;
18692    pub fn gtk_spin_button_configure(
18693        spin_button: *mut GtkSpinButton,
18694        adjustment: *mut GtkAdjustment,
18695        climb_rate: c_double,
18696        digits: c_uint,
18697    );
18698    #[cfg(feature = "v4_14")]
18699    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18700    pub fn gtk_spin_button_get_activates_default(spin_button: *mut GtkSpinButton) -> gboolean;
18701    pub fn gtk_spin_button_get_adjustment(spin_button: *mut GtkSpinButton) -> *mut GtkAdjustment;
18702    pub fn gtk_spin_button_get_climb_rate(spin_button: *mut GtkSpinButton) -> c_double;
18703    pub fn gtk_spin_button_get_digits(spin_button: *mut GtkSpinButton) -> c_uint;
18704    pub fn gtk_spin_button_get_increments(
18705        spin_button: *mut GtkSpinButton,
18706        step: *mut c_double,
18707        page: *mut c_double,
18708    );
18709    pub fn gtk_spin_button_get_numeric(spin_button: *mut GtkSpinButton) -> gboolean;
18710    pub fn gtk_spin_button_get_range(
18711        spin_button: *mut GtkSpinButton,
18712        min: *mut c_double,
18713        max: *mut c_double,
18714    );
18715    pub fn gtk_spin_button_get_snap_to_ticks(spin_button: *mut GtkSpinButton) -> gboolean;
18716    pub fn gtk_spin_button_get_update_policy(
18717        spin_button: *mut GtkSpinButton,
18718    ) -> GtkSpinButtonUpdatePolicy;
18719    pub fn gtk_spin_button_get_value(spin_button: *mut GtkSpinButton) -> c_double;
18720    pub fn gtk_spin_button_get_value_as_int(spin_button: *mut GtkSpinButton) -> c_int;
18721    pub fn gtk_spin_button_get_wrap(spin_button: *mut GtkSpinButton) -> gboolean;
18722    #[cfg(feature = "v4_14")]
18723    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18724    pub fn gtk_spin_button_set_activates_default(
18725        spin_button: *mut GtkSpinButton,
18726        activates_default: gboolean,
18727    );
18728    pub fn gtk_spin_button_set_adjustment(
18729        spin_button: *mut GtkSpinButton,
18730        adjustment: *mut GtkAdjustment,
18731    );
18732    pub fn gtk_spin_button_set_climb_rate(spin_button: *mut GtkSpinButton, climb_rate: c_double);
18733    pub fn gtk_spin_button_set_digits(spin_button: *mut GtkSpinButton, digits: c_uint);
18734    pub fn gtk_spin_button_set_increments(
18735        spin_button: *mut GtkSpinButton,
18736        step: c_double,
18737        page: c_double,
18738    );
18739    pub fn gtk_spin_button_set_numeric(spin_button: *mut GtkSpinButton, numeric: gboolean);
18740    pub fn gtk_spin_button_set_range(spin_button: *mut GtkSpinButton, min: c_double, max: c_double);
18741    pub fn gtk_spin_button_set_snap_to_ticks(
18742        spin_button: *mut GtkSpinButton,
18743        snap_to_ticks: gboolean,
18744    );
18745    pub fn gtk_spin_button_set_update_policy(
18746        spin_button: *mut GtkSpinButton,
18747        policy: GtkSpinButtonUpdatePolicy,
18748    );
18749    pub fn gtk_spin_button_set_value(spin_button: *mut GtkSpinButton, value: c_double);
18750    pub fn gtk_spin_button_set_wrap(spin_button: *mut GtkSpinButton, wrap: gboolean);
18751    pub fn gtk_spin_button_spin(
18752        spin_button: *mut GtkSpinButton,
18753        direction: GtkSpinType,
18754        increment: c_double,
18755    );
18756    pub fn gtk_spin_button_update(spin_button: *mut GtkSpinButton);
18757
18758    //=========================================================================
18759    // GtkSpinner
18760    //=========================================================================
18761    pub fn gtk_spinner_get_type() -> GType;
18762    pub fn gtk_spinner_new() -> *mut GtkWidget;
18763    pub fn gtk_spinner_get_spinning(spinner: *mut GtkSpinner) -> gboolean;
18764    pub fn gtk_spinner_set_spinning(spinner: *mut GtkSpinner, spinning: gboolean);
18765    pub fn gtk_spinner_start(spinner: *mut GtkSpinner);
18766    pub fn gtk_spinner_stop(spinner: *mut GtkSpinner);
18767
18768    //=========================================================================
18769    // GtkStack
18770    //=========================================================================
18771    pub fn gtk_stack_get_type() -> GType;
18772    pub fn gtk_stack_new() -> *mut GtkWidget;
18773    pub fn gtk_stack_add_child(stack: *mut GtkStack, child: *mut GtkWidget) -> *mut GtkStackPage;
18774    pub fn gtk_stack_add_named(
18775        stack: *mut GtkStack,
18776        child: *mut GtkWidget,
18777        name: *const c_char,
18778    ) -> *mut GtkStackPage;
18779    pub fn gtk_stack_add_titled(
18780        stack: *mut GtkStack,
18781        child: *mut GtkWidget,
18782        name: *const c_char,
18783        title: *const c_char,
18784    ) -> *mut GtkStackPage;
18785    pub fn gtk_stack_get_child_by_name(stack: *mut GtkStack, name: *const c_char)
18786        -> *mut GtkWidget;
18787    pub fn gtk_stack_get_hhomogeneous(stack: *mut GtkStack) -> gboolean;
18788    pub fn gtk_stack_get_interpolate_size(stack: *mut GtkStack) -> gboolean;
18789    pub fn gtk_stack_get_page(stack: *mut GtkStack, child: *mut GtkWidget) -> *mut GtkStackPage;
18790    pub fn gtk_stack_get_pages(stack: *mut GtkStack) -> *mut GtkSelectionModel;
18791    pub fn gtk_stack_get_transition_duration(stack: *mut GtkStack) -> c_uint;
18792    pub fn gtk_stack_get_transition_running(stack: *mut GtkStack) -> gboolean;
18793    pub fn gtk_stack_get_transition_type(stack: *mut GtkStack) -> GtkStackTransitionType;
18794    pub fn gtk_stack_get_vhomogeneous(stack: *mut GtkStack) -> gboolean;
18795    pub fn gtk_stack_get_visible_child(stack: *mut GtkStack) -> *mut GtkWidget;
18796    pub fn gtk_stack_get_visible_child_name(stack: *mut GtkStack) -> *const c_char;
18797    pub fn gtk_stack_remove(stack: *mut GtkStack, child: *mut GtkWidget);
18798    pub fn gtk_stack_set_hhomogeneous(stack: *mut GtkStack, hhomogeneous: gboolean);
18799    pub fn gtk_stack_set_interpolate_size(stack: *mut GtkStack, interpolate_size: gboolean);
18800    pub fn gtk_stack_set_transition_duration(stack: *mut GtkStack, duration: c_uint);
18801    pub fn gtk_stack_set_transition_type(stack: *mut GtkStack, transition: GtkStackTransitionType);
18802    pub fn gtk_stack_set_vhomogeneous(stack: *mut GtkStack, vhomogeneous: gboolean);
18803    pub fn gtk_stack_set_visible_child(stack: *mut GtkStack, child: *mut GtkWidget);
18804    pub fn gtk_stack_set_visible_child_full(
18805        stack: *mut GtkStack,
18806        name: *const c_char,
18807        transition: GtkStackTransitionType,
18808    );
18809    pub fn gtk_stack_set_visible_child_name(stack: *mut GtkStack, name: *const c_char);
18810
18811    //=========================================================================
18812    // GtkStackPage
18813    //=========================================================================
18814    pub fn gtk_stack_page_get_type() -> GType;
18815    pub fn gtk_stack_page_get_child(self_: *mut GtkStackPage) -> *mut GtkWidget;
18816    pub fn gtk_stack_page_get_icon_name(self_: *mut GtkStackPage) -> *const c_char;
18817    pub fn gtk_stack_page_get_name(self_: *mut GtkStackPage) -> *const c_char;
18818    pub fn gtk_stack_page_get_needs_attention(self_: *mut GtkStackPage) -> gboolean;
18819    pub fn gtk_stack_page_get_title(self_: *mut GtkStackPage) -> *const c_char;
18820    pub fn gtk_stack_page_get_use_underline(self_: *mut GtkStackPage) -> gboolean;
18821    pub fn gtk_stack_page_get_visible(self_: *mut GtkStackPage) -> gboolean;
18822    pub fn gtk_stack_page_set_icon_name(self_: *mut GtkStackPage, setting: *const c_char);
18823    pub fn gtk_stack_page_set_name(self_: *mut GtkStackPage, setting: *const c_char);
18824    pub fn gtk_stack_page_set_needs_attention(self_: *mut GtkStackPage, setting: gboolean);
18825    pub fn gtk_stack_page_set_title(self_: *mut GtkStackPage, setting: *const c_char);
18826    pub fn gtk_stack_page_set_use_underline(self_: *mut GtkStackPage, setting: gboolean);
18827    pub fn gtk_stack_page_set_visible(self_: *mut GtkStackPage, visible: gboolean);
18828
18829    //=========================================================================
18830    // GtkStackSidebar
18831    //=========================================================================
18832    pub fn gtk_stack_sidebar_get_type() -> GType;
18833    pub fn gtk_stack_sidebar_new() -> *mut GtkWidget;
18834    pub fn gtk_stack_sidebar_get_stack(self_: *mut GtkStackSidebar) -> *mut GtkStack;
18835    pub fn gtk_stack_sidebar_set_stack(self_: *mut GtkStackSidebar, stack: *mut GtkStack);
18836
18837    //=========================================================================
18838    // GtkStackSwitcher
18839    //=========================================================================
18840    pub fn gtk_stack_switcher_get_type() -> GType;
18841    pub fn gtk_stack_switcher_new() -> *mut GtkWidget;
18842    pub fn gtk_stack_switcher_get_stack(switcher: *mut GtkStackSwitcher) -> *mut GtkStack;
18843    pub fn gtk_stack_switcher_set_stack(switcher: *mut GtkStackSwitcher, stack: *mut GtkStack);
18844
18845    //=========================================================================
18846    // GtkStatusbar
18847    //=========================================================================
18848    pub fn gtk_statusbar_get_type() -> GType;
18849    pub fn gtk_statusbar_new() -> *mut GtkWidget;
18850    pub fn gtk_statusbar_get_context_id(
18851        statusbar: *mut GtkStatusbar,
18852        context_description: *const c_char,
18853    ) -> c_uint;
18854    pub fn gtk_statusbar_pop(statusbar: *mut GtkStatusbar, context_id: c_uint);
18855    pub fn gtk_statusbar_push(
18856        statusbar: *mut GtkStatusbar,
18857        context_id: c_uint,
18858        text: *const c_char,
18859    ) -> c_uint;
18860    pub fn gtk_statusbar_remove(
18861        statusbar: *mut GtkStatusbar,
18862        context_id: c_uint,
18863        message_id: c_uint,
18864    );
18865    pub fn gtk_statusbar_remove_all(statusbar: *mut GtkStatusbar, context_id: c_uint);
18866
18867    //=========================================================================
18868    // GtkStringFilter
18869    //=========================================================================
18870    pub fn gtk_string_filter_get_type() -> GType;
18871    pub fn gtk_string_filter_new(expression: *mut GtkExpression) -> *mut GtkStringFilter;
18872    pub fn gtk_string_filter_get_expression(self_: *mut GtkStringFilter) -> *mut GtkExpression;
18873    pub fn gtk_string_filter_get_ignore_case(self_: *mut GtkStringFilter) -> gboolean;
18874    pub fn gtk_string_filter_get_match_mode(
18875        self_: *mut GtkStringFilter,
18876    ) -> GtkStringFilterMatchMode;
18877    pub fn gtk_string_filter_get_search(self_: *mut GtkStringFilter) -> *const c_char;
18878    pub fn gtk_string_filter_set_expression(
18879        self_: *mut GtkStringFilter,
18880        expression: *mut GtkExpression,
18881    );
18882    pub fn gtk_string_filter_set_ignore_case(self_: *mut GtkStringFilter, ignore_case: gboolean);
18883    pub fn gtk_string_filter_set_match_mode(
18884        self_: *mut GtkStringFilter,
18885        mode: GtkStringFilterMatchMode,
18886    );
18887    pub fn gtk_string_filter_set_search(self_: *mut GtkStringFilter, search: *const c_char);
18888
18889    //=========================================================================
18890    // GtkStringList
18891    //=========================================================================
18892    pub fn gtk_string_list_get_type() -> GType;
18893    pub fn gtk_string_list_new(strings: *const *const c_char) -> *mut GtkStringList;
18894    pub fn gtk_string_list_append(self_: *mut GtkStringList, string: *const c_char);
18895    #[cfg(feature = "v4_18")]
18896    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
18897    pub fn gtk_string_list_find(self_: *mut GtkStringList, string: *const c_char) -> c_uint;
18898    pub fn gtk_string_list_get_string(self_: *mut GtkStringList, position: c_uint)
18899        -> *const c_char;
18900    pub fn gtk_string_list_remove(self_: *mut GtkStringList, position: c_uint);
18901    pub fn gtk_string_list_splice(
18902        self_: *mut GtkStringList,
18903        position: c_uint,
18904        n_removals: c_uint,
18905        additions: *const *const c_char,
18906    );
18907    pub fn gtk_string_list_take(self_: *mut GtkStringList, string: *mut c_char);
18908
18909    //=========================================================================
18910    // GtkStringObject
18911    //=========================================================================
18912    pub fn gtk_string_object_get_type() -> GType;
18913    pub fn gtk_string_object_new(string: *const c_char) -> *mut GtkStringObject;
18914    pub fn gtk_string_object_get_string(self_: *mut GtkStringObject) -> *const c_char;
18915
18916    //=========================================================================
18917    // GtkStringSorter
18918    //=========================================================================
18919    pub fn gtk_string_sorter_get_type() -> GType;
18920    pub fn gtk_string_sorter_new(expression: *mut GtkExpression) -> *mut GtkStringSorter;
18921    #[cfg(feature = "v4_10")]
18922    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18923    pub fn gtk_string_sorter_get_collation(self_: *mut GtkStringSorter) -> GtkCollation;
18924    pub fn gtk_string_sorter_get_expression(self_: *mut GtkStringSorter) -> *mut GtkExpression;
18925    pub fn gtk_string_sorter_get_ignore_case(self_: *mut GtkStringSorter) -> gboolean;
18926    #[cfg(feature = "v4_10")]
18927    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18928    pub fn gtk_string_sorter_set_collation(self_: *mut GtkStringSorter, collation: GtkCollation);
18929    pub fn gtk_string_sorter_set_expression(
18930        self_: *mut GtkStringSorter,
18931        expression: *mut GtkExpression,
18932    );
18933    pub fn gtk_string_sorter_set_ignore_case(self_: *mut GtkStringSorter, ignore_case: gboolean);
18934
18935    //=========================================================================
18936    // GtkStyleContext
18937    //=========================================================================
18938    pub fn gtk_style_context_get_type() -> GType;
18939    pub fn gtk_style_context_add_provider_for_display(
18940        display: *mut gdk::GdkDisplay,
18941        provider: *mut GtkStyleProvider,
18942        priority: c_uint,
18943    );
18944    pub fn gtk_style_context_remove_provider_for_display(
18945        display: *mut gdk::GdkDisplay,
18946        provider: *mut GtkStyleProvider,
18947    );
18948    pub fn gtk_style_context_add_class(context: *mut GtkStyleContext, class_name: *const c_char);
18949    pub fn gtk_style_context_add_provider(
18950        context: *mut GtkStyleContext,
18951        provider: *mut GtkStyleProvider,
18952        priority: c_uint,
18953    );
18954    pub fn gtk_style_context_get_border(context: *mut GtkStyleContext, border: *mut GtkBorder);
18955    pub fn gtk_style_context_get_color(context: *mut GtkStyleContext, color: *mut gdk::GdkRGBA);
18956    pub fn gtk_style_context_get_display(context: *mut GtkStyleContext) -> *mut gdk::GdkDisplay;
18957    pub fn gtk_style_context_get_margin(context: *mut GtkStyleContext, margin: *mut GtkBorder);
18958    pub fn gtk_style_context_get_padding(context: *mut GtkStyleContext, padding: *mut GtkBorder);
18959    pub fn gtk_style_context_get_scale(context: *mut GtkStyleContext) -> c_int;
18960    pub fn gtk_style_context_get_state(context: *mut GtkStyleContext) -> GtkStateFlags;
18961    pub fn gtk_style_context_has_class(
18962        context: *mut GtkStyleContext,
18963        class_name: *const c_char,
18964    ) -> gboolean;
18965    pub fn gtk_style_context_lookup_color(
18966        context: *mut GtkStyleContext,
18967        color_name: *const c_char,
18968        color: *mut gdk::GdkRGBA,
18969    ) -> gboolean;
18970    pub fn gtk_style_context_remove_class(context: *mut GtkStyleContext, class_name: *const c_char);
18971    pub fn gtk_style_context_remove_provider(
18972        context: *mut GtkStyleContext,
18973        provider: *mut GtkStyleProvider,
18974    );
18975    pub fn gtk_style_context_restore(context: *mut GtkStyleContext);
18976    pub fn gtk_style_context_save(context: *mut GtkStyleContext);
18977    pub fn gtk_style_context_set_display(
18978        context: *mut GtkStyleContext,
18979        display: *mut gdk::GdkDisplay,
18980    );
18981    pub fn gtk_style_context_set_scale(context: *mut GtkStyleContext, scale: c_int);
18982    pub fn gtk_style_context_set_state(context: *mut GtkStyleContext, flags: GtkStateFlags);
18983    pub fn gtk_style_context_to_string(
18984        context: *mut GtkStyleContext,
18985        flags: GtkStyleContextPrintFlags,
18986    ) -> *mut c_char;
18987
18988    //=========================================================================
18989    // GtkSvg
18990    //=========================================================================
18991    #[cfg(feature = "v4_22")]
18992    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18993    pub fn gtk_svg_get_type() -> GType;
18994    #[cfg(feature = "v4_22")]
18995    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18996    pub fn gtk_svg_new() -> *mut GtkSvg;
18997    #[cfg(feature = "v4_22")]
18998    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18999    pub fn gtk_svg_new_from_bytes(bytes: *mut glib::GBytes) -> *mut GtkSvg;
19000    #[cfg(feature = "v4_22")]
19001    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19002    pub fn gtk_svg_new_from_resource(path: *const c_char) -> *mut GtkSvg;
19003    #[cfg(feature = "v4_22")]
19004    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19005    pub fn gtk_svg_get_features(self_: *mut GtkSvg) -> GtkSvgFeatures;
19006    #[cfg(feature = "v4_22")]
19007    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19008    pub fn gtk_svg_get_n_states(self_: *mut GtkSvg) -> c_uint;
19009    #[cfg(feature = "v4_22")]
19010    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19011    pub fn gtk_svg_get_state(self_: *mut GtkSvg) -> c_uint;
19012    #[cfg(feature = "v4_22")]
19013    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19014    pub fn gtk_svg_get_weight(self_: *mut GtkSvg) -> c_double;
19015    #[cfg(feature = "v4_22")]
19016    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19017    pub fn gtk_svg_load_from_bytes(self_: *mut GtkSvg, bytes: *mut glib::GBytes);
19018    #[cfg(feature = "v4_22")]
19019    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19020    pub fn gtk_svg_load_from_resource(self_: *mut GtkSvg, path: *const c_char);
19021    #[cfg(feature = "v4_22")]
19022    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19023    pub fn gtk_svg_pause(self_: *mut GtkSvg);
19024    #[cfg(feature = "v4_22")]
19025    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19026    pub fn gtk_svg_play(self_: *mut GtkSvg);
19027    #[cfg(feature = "v4_22")]
19028    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19029    pub fn gtk_svg_serialize(self_: *mut GtkSvg) -> *mut glib::GBytes;
19030    #[cfg(feature = "v4_22")]
19031    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19032    pub fn gtk_svg_set_features(self_: *mut GtkSvg, features: GtkSvgFeatures);
19033    #[cfg(feature = "v4_22")]
19034    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19035    pub fn gtk_svg_set_frame_clock(self_: *mut GtkSvg, clock: *mut gdk::GdkFrameClock);
19036    #[cfg(feature = "v4_22")]
19037    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19038    pub fn gtk_svg_set_state(self_: *mut GtkSvg, state: c_uint);
19039    #[cfg(feature = "v4_22")]
19040    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19041    pub fn gtk_svg_set_weight(self_: *mut GtkSvg, weight: c_double);
19042    #[cfg(feature = "v4_22")]
19043    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19044    pub fn gtk_svg_write_to_file(
19045        self_: *mut GtkSvg,
19046        filename: *const c_char,
19047        error: *mut *mut glib::GError,
19048    ) -> gboolean;
19049
19050    //=========================================================================
19051    // GtkSwitch
19052    //=========================================================================
19053    pub fn gtk_switch_get_type() -> GType;
19054    pub fn gtk_switch_new() -> *mut GtkWidget;
19055    pub fn gtk_switch_get_active(self_: *mut GtkSwitch) -> gboolean;
19056    pub fn gtk_switch_get_state(self_: *mut GtkSwitch) -> gboolean;
19057    pub fn gtk_switch_set_active(self_: *mut GtkSwitch, is_active: gboolean);
19058    pub fn gtk_switch_set_state(self_: *mut GtkSwitch, state: gboolean);
19059
19060    //=========================================================================
19061    // GtkText
19062    //=========================================================================
19063    pub fn gtk_text_get_type() -> GType;
19064    pub fn gtk_text_new() -> *mut GtkWidget;
19065    pub fn gtk_text_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
19066    #[cfg(feature = "v4_4")]
19067    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19068    pub fn gtk_text_compute_cursor_extents(
19069        self_: *mut GtkText,
19070        position: size_t,
19071        strong: *mut graphene::graphene_rect_t,
19072        weak: *mut graphene::graphene_rect_t,
19073    );
19074    pub fn gtk_text_get_activates_default(self_: *mut GtkText) -> gboolean;
19075    pub fn gtk_text_get_attributes(self_: *mut GtkText) -> *mut pango::PangoAttrList;
19076    pub fn gtk_text_get_buffer(self_: *mut GtkText) -> *mut GtkEntryBuffer;
19077    pub fn gtk_text_get_enable_emoji_completion(self_: *mut GtkText) -> gboolean;
19078    pub fn gtk_text_get_extra_menu(self_: *mut GtkText) -> *mut gio::GMenuModel;
19079    pub fn gtk_text_get_input_hints(self_: *mut GtkText) -> GtkInputHints;
19080    pub fn gtk_text_get_input_purpose(self_: *mut GtkText) -> GtkInputPurpose;
19081    pub fn gtk_text_get_invisible_char(self_: *mut GtkText) -> u32;
19082    pub fn gtk_text_get_max_length(self_: *mut GtkText) -> c_int;
19083    pub fn gtk_text_get_overwrite_mode(self_: *mut GtkText) -> gboolean;
19084    pub fn gtk_text_get_placeholder_text(self_: *mut GtkText) -> *const c_char;
19085    pub fn gtk_text_get_propagate_text_width(self_: *mut GtkText) -> gboolean;
19086    pub fn gtk_text_get_tabs(self_: *mut GtkText) -> *mut pango::PangoTabArray;
19087    pub fn gtk_text_get_text_length(self_: *mut GtkText) -> u16;
19088    pub fn gtk_text_get_truncate_multiline(self_: *mut GtkText) -> gboolean;
19089    pub fn gtk_text_get_visibility(self_: *mut GtkText) -> gboolean;
19090    pub fn gtk_text_grab_focus_without_selecting(self_: *mut GtkText) -> gboolean;
19091    pub fn gtk_text_set_activates_default(self_: *mut GtkText, activates: gboolean);
19092    pub fn gtk_text_set_attributes(self_: *mut GtkText, attrs: *mut pango::PangoAttrList);
19093    pub fn gtk_text_set_buffer(self_: *mut GtkText, buffer: *mut GtkEntryBuffer);
19094    pub fn gtk_text_set_enable_emoji_completion(
19095        self_: *mut GtkText,
19096        enable_emoji_completion: gboolean,
19097    );
19098    pub fn gtk_text_set_extra_menu(self_: *mut GtkText, model: *mut gio::GMenuModel);
19099    pub fn gtk_text_set_input_hints(self_: *mut GtkText, hints: GtkInputHints);
19100    pub fn gtk_text_set_input_purpose(self_: *mut GtkText, purpose: GtkInputPurpose);
19101    pub fn gtk_text_set_invisible_char(self_: *mut GtkText, ch: u32);
19102    pub fn gtk_text_set_max_length(self_: *mut GtkText, length: c_int);
19103    pub fn gtk_text_set_overwrite_mode(self_: *mut GtkText, overwrite: gboolean);
19104    pub fn gtk_text_set_placeholder_text(self_: *mut GtkText, text: *const c_char);
19105    pub fn gtk_text_set_propagate_text_width(self_: *mut GtkText, propagate_text_width: gboolean);
19106    pub fn gtk_text_set_tabs(self_: *mut GtkText, tabs: *mut pango::PangoTabArray);
19107    pub fn gtk_text_set_truncate_multiline(self_: *mut GtkText, truncate_multiline: gboolean);
19108    pub fn gtk_text_set_visibility(self_: *mut GtkText, visible: gboolean);
19109    pub fn gtk_text_unset_invisible_char(self_: *mut GtkText);
19110
19111    //=========================================================================
19112    // GtkTextBuffer
19113    //=========================================================================
19114    pub fn gtk_text_buffer_get_type() -> GType;
19115    pub fn gtk_text_buffer_new(table: *mut GtkTextTagTable) -> *mut GtkTextBuffer;
19116    #[cfg(feature = "v4_16")]
19117    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
19118    pub fn gtk_text_buffer_add_commit_notify(
19119        buffer: *mut GtkTextBuffer,
19120        flags: GtkTextBufferNotifyFlags,
19121        commit_notify: GtkTextBufferCommitNotify,
19122        user_data: gpointer,
19123        destroy: glib::GDestroyNotify,
19124    ) -> c_uint;
19125    pub fn gtk_text_buffer_add_mark(
19126        buffer: *mut GtkTextBuffer,
19127        mark: *mut GtkTextMark,
19128        where_: *const GtkTextIter,
19129    );
19130    pub fn gtk_text_buffer_add_selection_clipboard(
19131        buffer: *mut GtkTextBuffer,
19132        clipboard: *mut gdk::GdkClipboard,
19133    );
19134    pub fn gtk_text_buffer_apply_tag(
19135        buffer: *mut GtkTextBuffer,
19136        tag: *mut GtkTextTag,
19137        start: *const GtkTextIter,
19138        end: *const GtkTextIter,
19139    );
19140    pub fn gtk_text_buffer_apply_tag_by_name(
19141        buffer: *mut GtkTextBuffer,
19142        name: *const c_char,
19143        start: *const GtkTextIter,
19144        end: *const GtkTextIter,
19145    );
19146    pub fn gtk_text_buffer_backspace(
19147        buffer: *mut GtkTextBuffer,
19148        iter: *mut GtkTextIter,
19149        interactive: gboolean,
19150        default_editable: gboolean,
19151    ) -> gboolean;
19152    pub fn gtk_text_buffer_begin_irreversible_action(buffer: *mut GtkTextBuffer);
19153    pub fn gtk_text_buffer_begin_user_action(buffer: *mut GtkTextBuffer);
19154    pub fn gtk_text_buffer_copy_clipboard(
19155        buffer: *mut GtkTextBuffer,
19156        clipboard: *mut gdk::GdkClipboard,
19157    );
19158    pub fn gtk_text_buffer_create_child_anchor(
19159        buffer: *mut GtkTextBuffer,
19160        iter: *mut GtkTextIter,
19161    ) -> *mut GtkTextChildAnchor;
19162    pub fn gtk_text_buffer_create_mark(
19163        buffer: *mut GtkTextBuffer,
19164        mark_name: *const c_char,
19165        where_: *const GtkTextIter,
19166        left_gravity: gboolean,
19167    ) -> *mut GtkTextMark;
19168    pub fn gtk_text_buffer_create_tag(
19169        buffer: *mut GtkTextBuffer,
19170        tag_name: *const c_char,
19171        first_property_name: *const c_char,
19172        ...
19173    ) -> *mut GtkTextTag;
19174    pub fn gtk_text_buffer_cut_clipboard(
19175        buffer: *mut GtkTextBuffer,
19176        clipboard: *mut gdk::GdkClipboard,
19177        default_editable: gboolean,
19178    );
19179    pub fn gtk_text_buffer_delete(
19180        buffer: *mut GtkTextBuffer,
19181        start: *mut GtkTextIter,
19182        end: *mut GtkTextIter,
19183    );
19184    pub fn gtk_text_buffer_delete_interactive(
19185        buffer: *mut GtkTextBuffer,
19186        start_iter: *mut GtkTextIter,
19187        end_iter: *mut GtkTextIter,
19188        default_editable: gboolean,
19189    ) -> gboolean;
19190    pub fn gtk_text_buffer_delete_mark(buffer: *mut GtkTextBuffer, mark: *mut GtkTextMark);
19191    pub fn gtk_text_buffer_delete_mark_by_name(buffer: *mut GtkTextBuffer, name: *const c_char);
19192    pub fn gtk_text_buffer_delete_selection(
19193        buffer: *mut GtkTextBuffer,
19194        interactive: gboolean,
19195        default_editable: gboolean,
19196    ) -> gboolean;
19197    pub fn gtk_text_buffer_end_irreversible_action(buffer: *mut GtkTextBuffer);
19198    pub fn gtk_text_buffer_end_user_action(buffer: *mut GtkTextBuffer);
19199    pub fn gtk_text_buffer_get_bounds(
19200        buffer: *mut GtkTextBuffer,
19201        start: *mut GtkTextIter,
19202        end: *mut GtkTextIter,
19203    );
19204    pub fn gtk_text_buffer_get_can_redo(buffer: *mut GtkTextBuffer) -> gboolean;
19205    pub fn gtk_text_buffer_get_can_undo(buffer: *mut GtkTextBuffer) -> gboolean;
19206    pub fn gtk_text_buffer_get_char_count(buffer: *mut GtkTextBuffer) -> c_int;
19207    pub fn gtk_text_buffer_get_enable_undo(buffer: *mut GtkTextBuffer) -> gboolean;
19208    pub fn gtk_text_buffer_get_end_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
19209    pub fn gtk_text_buffer_get_has_selection(buffer: *mut GtkTextBuffer) -> gboolean;
19210    pub fn gtk_text_buffer_get_insert(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
19211    pub fn gtk_text_buffer_get_iter_at_child_anchor(
19212        buffer: *mut GtkTextBuffer,
19213        iter: *mut GtkTextIter,
19214        anchor: *mut GtkTextChildAnchor,
19215    );
19216    pub fn gtk_text_buffer_get_iter_at_line(
19217        buffer: *mut GtkTextBuffer,
19218        iter: *mut GtkTextIter,
19219        line_number: c_int,
19220    ) -> gboolean;
19221    pub fn gtk_text_buffer_get_iter_at_line_index(
19222        buffer: *mut GtkTextBuffer,
19223        iter: *mut GtkTextIter,
19224        line_number: c_int,
19225        byte_index: c_int,
19226    ) -> gboolean;
19227    pub fn gtk_text_buffer_get_iter_at_line_offset(
19228        buffer: *mut GtkTextBuffer,
19229        iter: *mut GtkTextIter,
19230        line_number: c_int,
19231        char_offset: c_int,
19232    ) -> gboolean;
19233    pub fn gtk_text_buffer_get_iter_at_mark(
19234        buffer: *mut GtkTextBuffer,
19235        iter: *mut GtkTextIter,
19236        mark: *mut GtkTextMark,
19237    );
19238    pub fn gtk_text_buffer_get_iter_at_offset(
19239        buffer: *mut GtkTextBuffer,
19240        iter: *mut GtkTextIter,
19241        char_offset: c_int,
19242    );
19243    pub fn gtk_text_buffer_get_line_count(buffer: *mut GtkTextBuffer) -> c_int;
19244    pub fn gtk_text_buffer_get_mark(
19245        buffer: *mut GtkTextBuffer,
19246        name: *const c_char,
19247    ) -> *mut GtkTextMark;
19248    pub fn gtk_text_buffer_get_max_undo_levels(buffer: *mut GtkTextBuffer) -> c_uint;
19249    pub fn gtk_text_buffer_get_modified(buffer: *mut GtkTextBuffer) -> gboolean;
19250    pub fn gtk_text_buffer_get_selection_bound(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
19251    pub fn gtk_text_buffer_get_selection_bounds(
19252        buffer: *mut GtkTextBuffer,
19253        start: *mut GtkTextIter,
19254        end: *mut GtkTextIter,
19255    ) -> gboolean;
19256    pub fn gtk_text_buffer_get_selection_content(
19257        buffer: *mut GtkTextBuffer,
19258    ) -> *mut gdk::GdkContentProvider;
19259    pub fn gtk_text_buffer_get_slice(
19260        buffer: *mut GtkTextBuffer,
19261        start: *const GtkTextIter,
19262        end: *const GtkTextIter,
19263        include_hidden_chars: gboolean,
19264    ) -> *mut c_char;
19265    pub fn gtk_text_buffer_get_start_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
19266    pub fn gtk_text_buffer_get_tag_table(buffer: *mut GtkTextBuffer) -> *mut GtkTextTagTable;
19267    pub fn gtk_text_buffer_get_text(
19268        buffer: *mut GtkTextBuffer,
19269        start: *const GtkTextIter,
19270        end: *const GtkTextIter,
19271        include_hidden_chars: gboolean,
19272    ) -> *mut c_char;
19273    pub fn gtk_text_buffer_insert(
19274        buffer: *mut GtkTextBuffer,
19275        iter: *mut GtkTextIter,
19276        text: *const c_char,
19277        len: c_int,
19278    );
19279    pub fn gtk_text_buffer_insert_at_cursor(
19280        buffer: *mut GtkTextBuffer,
19281        text: *const c_char,
19282        len: c_int,
19283    );
19284    pub fn gtk_text_buffer_insert_child_anchor(
19285        buffer: *mut GtkTextBuffer,
19286        iter: *mut GtkTextIter,
19287        anchor: *mut GtkTextChildAnchor,
19288    );
19289    pub fn gtk_text_buffer_insert_interactive(
19290        buffer: *mut GtkTextBuffer,
19291        iter: *mut GtkTextIter,
19292        text: *const c_char,
19293        len: c_int,
19294        default_editable: gboolean,
19295    ) -> gboolean;
19296    pub fn gtk_text_buffer_insert_interactive_at_cursor(
19297        buffer: *mut GtkTextBuffer,
19298        text: *const c_char,
19299        len: c_int,
19300        default_editable: gboolean,
19301    ) -> gboolean;
19302    pub fn gtk_text_buffer_insert_markup(
19303        buffer: *mut GtkTextBuffer,
19304        iter: *mut GtkTextIter,
19305        markup: *const c_char,
19306        len: c_int,
19307    );
19308    pub fn gtk_text_buffer_insert_paintable(
19309        buffer: *mut GtkTextBuffer,
19310        iter: *mut GtkTextIter,
19311        paintable: *mut gdk::GdkPaintable,
19312    );
19313    pub fn gtk_text_buffer_insert_range(
19314        buffer: *mut GtkTextBuffer,
19315        iter: *mut GtkTextIter,
19316        start: *const GtkTextIter,
19317        end: *const GtkTextIter,
19318    );
19319    pub fn gtk_text_buffer_insert_range_interactive(
19320        buffer: *mut GtkTextBuffer,
19321        iter: *mut GtkTextIter,
19322        start: *const GtkTextIter,
19323        end: *const GtkTextIter,
19324        default_editable: gboolean,
19325    ) -> gboolean;
19326    pub fn gtk_text_buffer_insert_with_tags(
19327        buffer: *mut GtkTextBuffer,
19328        iter: *mut GtkTextIter,
19329        text: *const c_char,
19330        len: c_int,
19331        first_tag: *mut GtkTextTag,
19332        ...
19333    );
19334    pub fn gtk_text_buffer_insert_with_tags_by_name(
19335        buffer: *mut GtkTextBuffer,
19336        iter: *mut GtkTextIter,
19337        text: *const c_char,
19338        len: c_int,
19339        first_tag_name: *const c_char,
19340        ...
19341    );
19342    pub fn gtk_text_buffer_move_mark(
19343        buffer: *mut GtkTextBuffer,
19344        mark: *mut GtkTextMark,
19345        where_: *const GtkTextIter,
19346    );
19347    pub fn gtk_text_buffer_move_mark_by_name(
19348        buffer: *mut GtkTextBuffer,
19349        name: *const c_char,
19350        where_: *const GtkTextIter,
19351    );
19352    pub fn gtk_text_buffer_paste_clipboard(
19353        buffer: *mut GtkTextBuffer,
19354        clipboard: *mut gdk::GdkClipboard,
19355        override_location: *mut GtkTextIter,
19356        default_editable: gboolean,
19357    );
19358    pub fn gtk_text_buffer_place_cursor(buffer: *mut GtkTextBuffer, where_: *const GtkTextIter);
19359    pub fn gtk_text_buffer_redo(buffer: *mut GtkTextBuffer);
19360    pub fn gtk_text_buffer_remove_all_tags(
19361        buffer: *mut GtkTextBuffer,
19362        start: *const GtkTextIter,
19363        end: *const GtkTextIter,
19364    );
19365    #[cfg(feature = "v4_16")]
19366    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
19367    pub fn gtk_text_buffer_remove_commit_notify(
19368        buffer: *mut GtkTextBuffer,
19369        commit_notify_handler: c_uint,
19370    );
19371    pub fn gtk_text_buffer_remove_selection_clipboard(
19372        buffer: *mut GtkTextBuffer,
19373        clipboard: *mut gdk::GdkClipboard,
19374    );
19375    pub fn gtk_text_buffer_remove_tag(
19376        buffer: *mut GtkTextBuffer,
19377        tag: *mut GtkTextTag,
19378        start: *const GtkTextIter,
19379        end: *const GtkTextIter,
19380    );
19381    pub fn gtk_text_buffer_remove_tag_by_name(
19382        buffer: *mut GtkTextBuffer,
19383        name: *const c_char,
19384        start: *const GtkTextIter,
19385        end: *const GtkTextIter,
19386    );
19387    pub fn gtk_text_buffer_select_range(
19388        buffer: *mut GtkTextBuffer,
19389        ins: *const GtkTextIter,
19390        bound: *const GtkTextIter,
19391    );
19392    pub fn gtk_text_buffer_set_enable_undo(buffer: *mut GtkTextBuffer, enable_undo: gboolean);
19393    pub fn gtk_text_buffer_set_max_undo_levels(buffer: *mut GtkTextBuffer, max_undo_levels: c_uint);
19394    pub fn gtk_text_buffer_set_modified(buffer: *mut GtkTextBuffer, setting: gboolean);
19395    pub fn gtk_text_buffer_set_text(buffer: *mut GtkTextBuffer, text: *const c_char, len: c_int);
19396    pub fn gtk_text_buffer_undo(buffer: *mut GtkTextBuffer);
19397
19398    //=========================================================================
19399    // GtkTextChildAnchor
19400    //=========================================================================
19401    pub fn gtk_text_child_anchor_get_type() -> GType;
19402    pub fn gtk_text_child_anchor_new() -> *mut GtkTextChildAnchor;
19403    #[cfg(feature = "v4_6")]
19404    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19405    pub fn gtk_text_child_anchor_new_with_replacement(
19406        character: *const c_char,
19407    ) -> *mut GtkTextChildAnchor;
19408    pub fn gtk_text_child_anchor_get_deleted(anchor: *mut GtkTextChildAnchor) -> gboolean;
19409    pub fn gtk_text_child_anchor_get_widgets(
19410        anchor: *mut GtkTextChildAnchor,
19411        out_len: *mut c_uint,
19412    ) -> *mut *mut GtkWidget;
19413
19414    //=========================================================================
19415    // GtkTextMark
19416    //=========================================================================
19417    pub fn gtk_text_mark_get_type() -> GType;
19418    pub fn gtk_text_mark_new(name: *const c_char, left_gravity: gboolean) -> *mut GtkTextMark;
19419    pub fn gtk_text_mark_get_buffer(mark: *mut GtkTextMark) -> *mut GtkTextBuffer;
19420    pub fn gtk_text_mark_get_deleted(mark: *mut GtkTextMark) -> gboolean;
19421    pub fn gtk_text_mark_get_left_gravity(mark: *mut GtkTextMark) -> gboolean;
19422    pub fn gtk_text_mark_get_name(mark: *mut GtkTextMark) -> *const c_char;
19423    pub fn gtk_text_mark_get_visible(mark: *mut GtkTextMark) -> gboolean;
19424    pub fn gtk_text_mark_set_visible(mark: *mut GtkTextMark, setting: gboolean);
19425
19426    //=========================================================================
19427    // GtkTextTag
19428    //=========================================================================
19429    pub fn gtk_text_tag_get_type() -> GType;
19430    pub fn gtk_text_tag_new(name: *const c_char) -> *mut GtkTextTag;
19431    pub fn gtk_text_tag_changed(tag: *mut GtkTextTag, size_changed: gboolean);
19432    pub fn gtk_text_tag_get_priority(tag: *mut GtkTextTag) -> c_int;
19433    pub fn gtk_text_tag_set_priority(tag: *mut GtkTextTag, priority: c_int);
19434
19435    //=========================================================================
19436    // GtkTextTagTable
19437    //=========================================================================
19438    pub fn gtk_text_tag_table_get_type() -> GType;
19439    pub fn gtk_text_tag_table_new() -> *mut GtkTextTagTable;
19440    pub fn gtk_text_tag_table_add(table: *mut GtkTextTagTable, tag: *mut GtkTextTag) -> gboolean;
19441    pub fn gtk_text_tag_table_foreach(
19442        table: *mut GtkTextTagTable,
19443        func: GtkTextTagTableForeach,
19444        data: gpointer,
19445    );
19446    pub fn gtk_text_tag_table_get_size(table: *mut GtkTextTagTable) -> c_int;
19447    pub fn gtk_text_tag_table_lookup(
19448        table: *mut GtkTextTagTable,
19449        name: *const c_char,
19450    ) -> *mut GtkTextTag;
19451    pub fn gtk_text_tag_table_remove(table: *mut GtkTextTagTable, tag: *mut GtkTextTag);
19452
19453    //=========================================================================
19454    // GtkTextView
19455    //=========================================================================
19456    pub fn gtk_text_view_get_type() -> GType;
19457    pub fn gtk_text_view_new() -> *mut GtkWidget;
19458    pub fn gtk_text_view_new_with_buffer(buffer: *mut GtkTextBuffer) -> *mut GtkWidget;
19459    pub fn gtk_text_view_add_child_at_anchor(
19460        text_view: *mut GtkTextView,
19461        child: *mut GtkWidget,
19462        anchor: *mut GtkTextChildAnchor,
19463    );
19464    pub fn gtk_text_view_add_overlay(
19465        text_view: *mut GtkTextView,
19466        child: *mut GtkWidget,
19467        xpos: c_int,
19468        ypos: c_int,
19469    );
19470    pub fn gtk_text_view_backward_display_line(
19471        text_view: *mut GtkTextView,
19472        iter: *mut GtkTextIter,
19473    ) -> gboolean;
19474    pub fn gtk_text_view_backward_display_line_start(
19475        text_view: *mut GtkTextView,
19476        iter: *mut GtkTextIter,
19477    ) -> gboolean;
19478    pub fn gtk_text_view_buffer_to_window_coords(
19479        text_view: *mut GtkTextView,
19480        win: GtkTextWindowType,
19481        buffer_x: c_int,
19482        buffer_y: c_int,
19483        window_x: *mut c_int,
19484        window_y: *mut c_int,
19485    );
19486    pub fn gtk_text_view_forward_display_line(
19487        text_view: *mut GtkTextView,
19488        iter: *mut GtkTextIter,
19489    ) -> gboolean;
19490    pub fn gtk_text_view_forward_display_line_end(
19491        text_view: *mut GtkTextView,
19492        iter: *mut GtkTextIter,
19493    ) -> gboolean;
19494    pub fn gtk_text_view_get_accepts_tab(text_view: *mut GtkTextView) -> gboolean;
19495    pub fn gtk_text_view_get_bottom_margin(text_view: *mut GtkTextView) -> c_int;
19496    pub fn gtk_text_view_get_buffer(text_view: *mut GtkTextView) -> *mut GtkTextBuffer;
19497    pub fn gtk_text_view_get_cursor_locations(
19498        text_view: *mut GtkTextView,
19499        iter: *const GtkTextIter,
19500        strong: *mut gdk::GdkRectangle,
19501        weak: *mut gdk::GdkRectangle,
19502    );
19503    pub fn gtk_text_view_get_cursor_visible(text_view: *mut GtkTextView) -> gboolean;
19504    pub fn gtk_text_view_get_editable(text_view: *mut GtkTextView) -> gboolean;
19505    pub fn gtk_text_view_get_extra_menu(text_view: *mut GtkTextView) -> *mut gio::GMenuModel;
19506    pub fn gtk_text_view_get_gutter(
19507        text_view: *mut GtkTextView,
19508        win: GtkTextWindowType,
19509    ) -> *mut GtkWidget;
19510    pub fn gtk_text_view_get_indent(text_view: *mut GtkTextView) -> c_int;
19511    pub fn gtk_text_view_get_input_hints(text_view: *mut GtkTextView) -> GtkInputHints;
19512    pub fn gtk_text_view_get_input_purpose(text_view: *mut GtkTextView) -> GtkInputPurpose;
19513    pub fn gtk_text_view_get_iter_at_location(
19514        text_view: *mut GtkTextView,
19515        iter: *mut GtkTextIter,
19516        x: c_int,
19517        y: c_int,
19518    ) -> gboolean;
19519    pub fn gtk_text_view_get_iter_at_position(
19520        text_view: *mut GtkTextView,
19521        iter: *mut GtkTextIter,
19522        trailing: *mut c_int,
19523        x: c_int,
19524        y: c_int,
19525    ) -> gboolean;
19526    pub fn gtk_text_view_get_iter_location(
19527        text_view: *mut GtkTextView,
19528        iter: *const GtkTextIter,
19529        location: *mut gdk::GdkRectangle,
19530    );
19531    pub fn gtk_text_view_get_justification(text_view: *mut GtkTextView) -> GtkJustification;
19532    pub fn gtk_text_view_get_left_margin(text_view: *mut GtkTextView) -> c_int;
19533    pub fn gtk_text_view_get_line_at_y(
19534        text_view: *mut GtkTextView,
19535        target_iter: *mut GtkTextIter,
19536        y: c_int,
19537        line_top: *mut c_int,
19538    );
19539    pub fn gtk_text_view_get_line_yrange(
19540        text_view: *mut GtkTextView,
19541        iter: *const GtkTextIter,
19542        y: *mut c_int,
19543        height: *mut c_int,
19544    );
19545    #[cfg(feature = "v4_4")]
19546    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19547    pub fn gtk_text_view_get_ltr_context(text_view: *mut GtkTextView) -> *mut pango::PangoContext;
19548    pub fn gtk_text_view_get_monospace(text_view: *mut GtkTextView) -> gboolean;
19549    pub fn gtk_text_view_get_overwrite(text_view: *mut GtkTextView) -> gboolean;
19550    pub fn gtk_text_view_get_pixels_above_lines(text_view: *mut GtkTextView) -> c_int;
19551    pub fn gtk_text_view_get_pixels_below_lines(text_view: *mut GtkTextView) -> c_int;
19552    pub fn gtk_text_view_get_pixels_inside_wrap(text_view: *mut GtkTextView) -> c_int;
19553    pub fn gtk_text_view_get_right_margin(text_view: *mut GtkTextView) -> c_int;
19554    #[cfg(feature = "v4_4")]
19555    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19556    pub fn gtk_text_view_get_rtl_context(text_view: *mut GtkTextView) -> *mut pango::PangoContext;
19557    pub fn gtk_text_view_get_tabs(text_view: *mut GtkTextView) -> *mut pango::PangoTabArray;
19558    pub fn gtk_text_view_get_top_margin(text_view: *mut GtkTextView) -> c_int;
19559    #[cfg(feature = "v4_18")]
19560    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
19561    pub fn gtk_text_view_get_visible_offset(
19562        text_view: *mut GtkTextView,
19563        x_offset: *mut c_double,
19564        y_offset: *mut c_double,
19565    );
19566    pub fn gtk_text_view_get_visible_rect(
19567        text_view: *mut GtkTextView,
19568        visible_rect: *mut gdk::GdkRectangle,
19569    );
19570    pub fn gtk_text_view_get_wrap_mode(text_view: *mut GtkTextView) -> GtkWrapMode;
19571    pub fn gtk_text_view_im_context_filter_keypress(
19572        text_view: *mut GtkTextView,
19573        event: *mut gdk::GdkEvent,
19574    ) -> gboolean;
19575    pub fn gtk_text_view_move_mark_onscreen(
19576        text_view: *mut GtkTextView,
19577        mark: *mut GtkTextMark,
19578    ) -> gboolean;
19579    pub fn gtk_text_view_move_overlay(
19580        text_view: *mut GtkTextView,
19581        child: *mut GtkWidget,
19582        xpos: c_int,
19583        ypos: c_int,
19584    );
19585    pub fn gtk_text_view_move_visually(
19586        text_view: *mut GtkTextView,
19587        iter: *mut GtkTextIter,
19588        count: c_int,
19589    ) -> gboolean;
19590    pub fn gtk_text_view_place_cursor_onscreen(text_view: *mut GtkTextView) -> gboolean;
19591    pub fn gtk_text_view_remove(text_view: *mut GtkTextView, child: *mut GtkWidget);
19592    pub fn gtk_text_view_reset_cursor_blink(text_view: *mut GtkTextView);
19593    pub fn gtk_text_view_reset_im_context(text_view: *mut GtkTextView);
19594    pub fn gtk_text_view_scroll_mark_onscreen(text_view: *mut GtkTextView, mark: *mut GtkTextMark);
19595    pub fn gtk_text_view_scroll_to_iter(
19596        text_view: *mut GtkTextView,
19597        iter: *mut GtkTextIter,
19598        within_margin: c_double,
19599        use_align: gboolean,
19600        xalign: c_double,
19601        yalign: c_double,
19602    ) -> gboolean;
19603    pub fn gtk_text_view_scroll_to_mark(
19604        text_view: *mut GtkTextView,
19605        mark: *mut GtkTextMark,
19606        within_margin: c_double,
19607        use_align: gboolean,
19608        xalign: c_double,
19609        yalign: c_double,
19610    );
19611    pub fn gtk_text_view_set_accepts_tab(text_view: *mut GtkTextView, accepts_tab: gboolean);
19612    pub fn gtk_text_view_set_bottom_margin(text_view: *mut GtkTextView, bottom_margin: c_int);
19613    pub fn gtk_text_view_set_buffer(text_view: *mut GtkTextView, buffer: *mut GtkTextBuffer);
19614    pub fn gtk_text_view_set_cursor_visible(text_view: *mut GtkTextView, setting: gboolean);
19615    pub fn gtk_text_view_set_editable(text_view: *mut GtkTextView, setting: gboolean);
19616    pub fn gtk_text_view_set_extra_menu(text_view: *mut GtkTextView, model: *mut gio::GMenuModel);
19617    pub fn gtk_text_view_set_gutter(
19618        text_view: *mut GtkTextView,
19619        win: GtkTextWindowType,
19620        widget: *mut GtkWidget,
19621    );
19622    pub fn gtk_text_view_set_indent(text_view: *mut GtkTextView, indent: c_int);
19623    pub fn gtk_text_view_set_input_hints(text_view: *mut GtkTextView, hints: GtkInputHints);
19624    pub fn gtk_text_view_set_input_purpose(text_view: *mut GtkTextView, purpose: GtkInputPurpose);
19625    pub fn gtk_text_view_set_justification(
19626        text_view: *mut GtkTextView,
19627        justification: GtkJustification,
19628    );
19629    pub fn gtk_text_view_set_left_margin(text_view: *mut GtkTextView, left_margin: c_int);
19630    pub fn gtk_text_view_set_monospace(text_view: *mut GtkTextView, monospace: gboolean);
19631    pub fn gtk_text_view_set_overwrite(text_view: *mut GtkTextView, overwrite: gboolean);
19632    pub fn gtk_text_view_set_pixels_above_lines(
19633        text_view: *mut GtkTextView,
19634        pixels_above_lines: c_int,
19635    );
19636    pub fn gtk_text_view_set_pixels_below_lines(
19637        text_view: *mut GtkTextView,
19638        pixels_below_lines: c_int,
19639    );
19640    pub fn gtk_text_view_set_pixels_inside_wrap(
19641        text_view: *mut GtkTextView,
19642        pixels_inside_wrap: c_int,
19643    );
19644    pub fn gtk_text_view_set_right_margin(text_view: *mut GtkTextView, right_margin: c_int);
19645    pub fn gtk_text_view_set_tabs(text_view: *mut GtkTextView, tabs: *mut pango::PangoTabArray);
19646    pub fn gtk_text_view_set_top_margin(text_view: *mut GtkTextView, top_margin: c_int);
19647    pub fn gtk_text_view_set_wrap_mode(text_view: *mut GtkTextView, wrap_mode: GtkWrapMode);
19648    pub fn gtk_text_view_starts_display_line(
19649        text_view: *mut GtkTextView,
19650        iter: *const GtkTextIter,
19651    ) -> gboolean;
19652    pub fn gtk_text_view_window_to_buffer_coords(
19653        text_view: *mut GtkTextView,
19654        win: GtkTextWindowType,
19655        window_x: c_int,
19656        window_y: c_int,
19657        buffer_x: *mut c_int,
19658        buffer_y: *mut c_int,
19659    );
19660
19661    //=========================================================================
19662    // GtkToggleButton
19663    //=========================================================================
19664    pub fn gtk_toggle_button_get_type() -> GType;
19665    pub fn gtk_toggle_button_new() -> *mut GtkWidget;
19666    pub fn gtk_toggle_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
19667    pub fn gtk_toggle_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
19668    pub fn gtk_toggle_button_get_active(toggle_button: *mut GtkToggleButton) -> gboolean;
19669    pub fn gtk_toggle_button_set_active(toggle_button: *mut GtkToggleButton, is_active: gboolean);
19670    pub fn gtk_toggle_button_set_group(
19671        toggle_button: *mut GtkToggleButton,
19672        group: *mut GtkToggleButton,
19673    );
19674    pub fn gtk_toggle_button_toggled(toggle_button: *mut GtkToggleButton);
19675
19676    //=========================================================================
19677    // GtkTooltip
19678    //=========================================================================
19679    pub fn gtk_tooltip_get_type() -> GType;
19680    pub fn gtk_tooltip_set_custom(tooltip: *mut GtkTooltip, custom_widget: *mut GtkWidget);
19681    pub fn gtk_tooltip_set_icon(tooltip: *mut GtkTooltip, paintable: *mut gdk::GdkPaintable);
19682    pub fn gtk_tooltip_set_icon_from_gicon(tooltip: *mut GtkTooltip, gicon: *mut gio::GIcon);
19683    pub fn gtk_tooltip_set_icon_from_icon_name(tooltip: *mut GtkTooltip, icon_name: *const c_char);
19684    pub fn gtk_tooltip_set_markup(tooltip: *mut GtkTooltip, markup: *const c_char);
19685    pub fn gtk_tooltip_set_text(tooltip: *mut GtkTooltip, text: *const c_char);
19686    pub fn gtk_tooltip_set_tip_area(tooltip: *mut GtkTooltip, rect: *const gdk::GdkRectangle);
19687
19688    //=========================================================================
19689    // GtkTreeExpander
19690    //=========================================================================
19691    pub fn gtk_tree_expander_get_type() -> GType;
19692    pub fn gtk_tree_expander_new() -> *mut GtkWidget;
19693    pub fn gtk_tree_expander_get_child(self_: *mut GtkTreeExpander) -> *mut GtkWidget;
19694    #[cfg(feature = "v4_10")]
19695    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19696    pub fn gtk_tree_expander_get_hide_expander(self_: *mut GtkTreeExpander) -> gboolean;
19697    #[cfg(feature = "v4_10")]
19698    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19699    pub fn gtk_tree_expander_get_indent_for_depth(self_: *mut GtkTreeExpander) -> gboolean;
19700    #[cfg(feature = "v4_6")]
19701    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19702    pub fn gtk_tree_expander_get_indent_for_icon(self_: *mut GtkTreeExpander) -> gboolean;
19703    pub fn gtk_tree_expander_get_item(self_: *mut GtkTreeExpander) -> *mut gobject::GObject;
19704    pub fn gtk_tree_expander_get_list_row(self_: *mut GtkTreeExpander) -> *mut GtkTreeListRow;
19705    pub fn gtk_tree_expander_set_child(self_: *mut GtkTreeExpander, child: *mut GtkWidget);
19706    #[cfg(feature = "v4_10")]
19707    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19708    pub fn gtk_tree_expander_set_hide_expander(
19709        self_: *mut GtkTreeExpander,
19710        hide_expander: gboolean,
19711    );
19712    #[cfg(feature = "v4_10")]
19713    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19714    pub fn gtk_tree_expander_set_indent_for_depth(
19715        self_: *mut GtkTreeExpander,
19716        indent_for_depth: gboolean,
19717    );
19718    #[cfg(feature = "v4_6")]
19719    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19720    pub fn gtk_tree_expander_set_indent_for_icon(
19721        self_: *mut GtkTreeExpander,
19722        indent_for_icon: gboolean,
19723    );
19724    pub fn gtk_tree_expander_set_list_row(
19725        self_: *mut GtkTreeExpander,
19726        list_row: *mut GtkTreeListRow,
19727    );
19728
19729    //=========================================================================
19730    // GtkTreeListModel
19731    //=========================================================================
19732    pub fn gtk_tree_list_model_get_type() -> GType;
19733    pub fn gtk_tree_list_model_new(
19734        root: *mut gio::GListModel,
19735        passthrough: gboolean,
19736        autoexpand: gboolean,
19737        create_func: GtkTreeListModelCreateModelFunc,
19738        user_data: gpointer,
19739        user_destroy: glib::GDestroyNotify,
19740    ) -> *mut GtkTreeListModel;
19741    pub fn gtk_tree_list_model_get_autoexpand(self_: *mut GtkTreeListModel) -> gboolean;
19742    pub fn gtk_tree_list_model_get_child_row(
19743        self_: *mut GtkTreeListModel,
19744        position: c_uint,
19745    ) -> *mut GtkTreeListRow;
19746    pub fn gtk_tree_list_model_get_model(self_: *mut GtkTreeListModel) -> *mut gio::GListModel;
19747    pub fn gtk_tree_list_model_get_passthrough(self_: *mut GtkTreeListModel) -> gboolean;
19748    pub fn gtk_tree_list_model_get_row(
19749        self_: *mut GtkTreeListModel,
19750        position: c_uint,
19751    ) -> *mut GtkTreeListRow;
19752    pub fn gtk_tree_list_model_set_autoexpand(self_: *mut GtkTreeListModel, autoexpand: gboolean);
19753
19754    //=========================================================================
19755    // GtkTreeListRow
19756    //=========================================================================
19757    pub fn gtk_tree_list_row_get_type() -> GType;
19758    pub fn gtk_tree_list_row_get_child_row(
19759        self_: *mut GtkTreeListRow,
19760        position: c_uint,
19761    ) -> *mut GtkTreeListRow;
19762    pub fn gtk_tree_list_row_get_children(self_: *mut GtkTreeListRow) -> *mut gio::GListModel;
19763    pub fn gtk_tree_list_row_get_depth(self_: *mut GtkTreeListRow) -> c_uint;
19764    pub fn gtk_tree_list_row_get_expanded(self_: *mut GtkTreeListRow) -> gboolean;
19765    pub fn gtk_tree_list_row_get_item(self_: *mut GtkTreeListRow) -> *mut gobject::GObject;
19766    pub fn gtk_tree_list_row_get_parent(self_: *mut GtkTreeListRow) -> *mut GtkTreeListRow;
19767    pub fn gtk_tree_list_row_get_position(self_: *mut GtkTreeListRow) -> c_uint;
19768    pub fn gtk_tree_list_row_is_expandable(self_: *mut GtkTreeListRow) -> gboolean;
19769    pub fn gtk_tree_list_row_set_expanded(self_: *mut GtkTreeListRow, expanded: gboolean);
19770
19771    //=========================================================================
19772    // GtkTreeListRowSorter
19773    //=========================================================================
19774    pub fn gtk_tree_list_row_sorter_get_type() -> GType;
19775    pub fn gtk_tree_list_row_sorter_new(sorter: *mut GtkSorter) -> *mut GtkTreeListRowSorter;
19776    pub fn gtk_tree_list_row_sorter_get_sorter(self_: *mut GtkTreeListRowSorter) -> *mut GtkSorter;
19777    pub fn gtk_tree_list_row_sorter_set_sorter(
19778        self_: *mut GtkTreeListRowSorter,
19779        sorter: *mut GtkSorter,
19780    );
19781
19782    //=========================================================================
19783    // GtkTreeModelFilter
19784    //=========================================================================
19785    pub fn gtk_tree_model_filter_get_type() -> GType;
19786    pub fn gtk_tree_model_filter_clear_cache(filter: *mut GtkTreeModelFilter);
19787    pub fn gtk_tree_model_filter_convert_child_iter_to_iter(
19788        filter: *mut GtkTreeModelFilter,
19789        filter_iter: *mut GtkTreeIter,
19790        child_iter: *mut GtkTreeIter,
19791    ) -> gboolean;
19792    pub fn gtk_tree_model_filter_convert_child_path_to_path(
19793        filter: *mut GtkTreeModelFilter,
19794        child_path: *mut GtkTreePath,
19795    ) -> *mut GtkTreePath;
19796    pub fn gtk_tree_model_filter_convert_iter_to_child_iter(
19797        filter: *mut GtkTreeModelFilter,
19798        child_iter: *mut GtkTreeIter,
19799        filter_iter: *mut GtkTreeIter,
19800    );
19801    pub fn gtk_tree_model_filter_convert_path_to_child_path(
19802        filter: *mut GtkTreeModelFilter,
19803        filter_path: *mut GtkTreePath,
19804    ) -> *mut GtkTreePath;
19805    pub fn gtk_tree_model_filter_get_model(filter: *mut GtkTreeModelFilter) -> *mut GtkTreeModel;
19806    pub fn gtk_tree_model_filter_refilter(filter: *mut GtkTreeModelFilter);
19807    pub fn gtk_tree_model_filter_set_modify_func(
19808        filter: *mut GtkTreeModelFilter,
19809        n_columns: c_int,
19810        types: *mut GType,
19811        func: GtkTreeModelFilterModifyFunc,
19812        data: gpointer,
19813        destroy: glib::GDestroyNotify,
19814    );
19815    pub fn gtk_tree_model_filter_set_visible_column(filter: *mut GtkTreeModelFilter, column: c_int);
19816    pub fn gtk_tree_model_filter_set_visible_func(
19817        filter: *mut GtkTreeModelFilter,
19818        func: GtkTreeModelFilterVisibleFunc,
19819        data: gpointer,
19820        destroy: glib::GDestroyNotify,
19821    );
19822
19823    //=========================================================================
19824    // GtkTreeModelSort
19825    //=========================================================================
19826    pub fn gtk_tree_model_sort_get_type() -> GType;
19827    pub fn gtk_tree_model_sort_new_with_model(
19828        child_model: *mut GtkTreeModel,
19829    ) -> *mut GtkTreeModelSort;
19830    pub fn gtk_tree_model_sort_clear_cache(tree_model_sort: *mut GtkTreeModelSort);
19831    pub fn gtk_tree_model_sort_convert_child_iter_to_iter(
19832        tree_model_sort: *mut GtkTreeModelSort,
19833        sort_iter: *mut GtkTreeIter,
19834        child_iter: *mut GtkTreeIter,
19835    ) -> gboolean;
19836    pub fn gtk_tree_model_sort_convert_child_path_to_path(
19837        tree_model_sort: *mut GtkTreeModelSort,
19838        child_path: *mut GtkTreePath,
19839    ) -> *mut GtkTreePath;
19840    pub fn gtk_tree_model_sort_convert_iter_to_child_iter(
19841        tree_model_sort: *mut GtkTreeModelSort,
19842        child_iter: *mut GtkTreeIter,
19843        sorted_iter: *mut GtkTreeIter,
19844    );
19845    pub fn gtk_tree_model_sort_convert_path_to_child_path(
19846        tree_model_sort: *mut GtkTreeModelSort,
19847        sorted_path: *mut GtkTreePath,
19848    ) -> *mut GtkTreePath;
19849    pub fn gtk_tree_model_sort_get_model(tree_model: *mut GtkTreeModelSort) -> *mut GtkTreeModel;
19850    pub fn gtk_tree_model_sort_iter_is_valid(
19851        tree_model_sort: *mut GtkTreeModelSort,
19852        iter: *mut GtkTreeIter,
19853    ) -> gboolean;
19854    pub fn gtk_tree_model_sort_reset_default_sort_func(tree_model_sort: *mut GtkTreeModelSort);
19855
19856    //=========================================================================
19857    // GtkTreeSelection
19858    //=========================================================================
19859    pub fn gtk_tree_selection_get_type() -> GType;
19860    pub fn gtk_tree_selection_count_selected_rows(selection: *mut GtkTreeSelection) -> c_int;
19861    pub fn gtk_tree_selection_get_mode(selection: *mut GtkTreeSelection) -> GtkSelectionMode;
19862    pub fn gtk_tree_selection_get_select_function(
19863        selection: *mut GtkTreeSelection,
19864    ) -> GtkTreeSelectionFunc;
19865    pub fn gtk_tree_selection_get_selected(
19866        selection: *mut GtkTreeSelection,
19867        model: *mut *mut GtkTreeModel,
19868        iter: *mut GtkTreeIter,
19869    ) -> gboolean;
19870    pub fn gtk_tree_selection_get_selected_rows(
19871        selection: *mut GtkTreeSelection,
19872        model: *mut *mut GtkTreeModel,
19873    ) -> *mut glib::GList;
19874    pub fn gtk_tree_selection_get_tree_view(selection: *mut GtkTreeSelection) -> *mut GtkTreeView;
19875    pub fn gtk_tree_selection_get_user_data(selection: *mut GtkTreeSelection) -> gpointer;
19876    pub fn gtk_tree_selection_iter_is_selected(
19877        selection: *mut GtkTreeSelection,
19878        iter: *mut GtkTreeIter,
19879    ) -> gboolean;
19880    pub fn gtk_tree_selection_path_is_selected(
19881        selection: *mut GtkTreeSelection,
19882        path: *mut GtkTreePath,
19883    ) -> gboolean;
19884    pub fn gtk_tree_selection_select_all(selection: *mut GtkTreeSelection);
19885    pub fn gtk_tree_selection_select_iter(selection: *mut GtkTreeSelection, iter: *mut GtkTreeIter);
19886    pub fn gtk_tree_selection_select_path(selection: *mut GtkTreeSelection, path: *mut GtkTreePath);
19887    pub fn gtk_tree_selection_select_range(
19888        selection: *mut GtkTreeSelection,
19889        start_path: *mut GtkTreePath,
19890        end_path: *mut GtkTreePath,
19891    );
19892    pub fn gtk_tree_selection_selected_foreach(
19893        selection: *mut GtkTreeSelection,
19894        func: GtkTreeSelectionForeachFunc,
19895        data: gpointer,
19896    );
19897    pub fn gtk_tree_selection_set_mode(selection: *mut GtkTreeSelection, type_: GtkSelectionMode);
19898    pub fn gtk_tree_selection_set_select_function(
19899        selection: *mut GtkTreeSelection,
19900        func: GtkTreeSelectionFunc,
19901        data: gpointer,
19902        destroy: glib::GDestroyNotify,
19903    );
19904    pub fn gtk_tree_selection_unselect_all(selection: *mut GtkTreeSelection);
19905    pub fn gtk_tree_selection_unselect_iter(
19906        selection: *mut GtkTreeSelection,
19907        iter: *mut GtkTreeIter,
19908    );
19909    pub fn gtk_tree_selection_unselect_path(
19910        selection: *mut GtkTreeSelection,
19911        path: *mut GtkTreePath,
19912    );
19913    pub fn gtk_tree_selection_unselect_range(
19914        selection: *mut GtkTreeSelection,
19915        start_path: *mut GtkTreePath,
19916        end_path: *mut GtkTreePath,
19917    );
19918
19919    //=========================================================================
19920    // GtkTreeStore
19921    //=========================================================================
19922    pub fn gtk_tree_store_get_type() -> GType;
19923    pub fn gtk_tree_store_new(n_columns: c_int, ...) -> *mut GtkTreeStore;
19924    pub fn gtk_tree_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkTreeStore;
19925    pub fn gtk_tree_store_append(
19926        tree_store: *mut GtkTreeStore,
19927        iter: *mut GtkTreeIter,
19928        parent: *mut GtkTreeIter,
19929    );
19930    pub fn gtk_tree_store_clear(tree_store: *mut GtkTreeStore);
19931    pub fn gtk_tree_store_insert(
19932        tree_store: *mut GtkTreeStore,
19933        iter: *mut GtkTreeIter,
19934        parent: *mut GtkTreeIter,
19935        position: c_int,
19936    );
19937    pub fn gtk_tree_store_insert_after(
19938        tree_store: *mut GtkTreeStore,
19939        iter: *mut GtkTreeIter,
19940        parent: *mut GtkTreeIter,
19941        sibling: *mut GtkTreeIter,
19942    );
19943    pub fn gtk_tree_store_insert_before(
19944        tree_store: *mut GtkTreeStore,
19945        iter: *mut GtkTreeIter,
19946        parent: *mut GtkTreeIter,
19947        sibling: *mut GtkTreeIter,
19948    );
19949    pub fn gtk_tree_store_insert_with_values(
19950        tree_store: *mut GtkTreeStore,
19951        iter: *mut GtkTreeIter,
19952        parent: *mut GtkTreeIter,
19953        position: c_int,
19954        ...
19955    );
19956    pub fn gtk_tree_store_insert_with_valuesv(
19957        tree_store: *mut GtkTreeStore,
19958        iter: *mut GtkTreeIter,
19959        parent: *mut GtkTreeIter,
19960        position: c_int,
19961        columns: *mut c_int,
19962        values: *mut gobject::GValue,
19963        n_values: c_int,
19964    );
19965    pub fn gtk_tree_store_is_ancestor(
19966        tree_store: *mut GtkTreeStore,
19967        iter: *mut GtkTreeIter,
19968        descendant: *mut GtkTreeIter,
19969    ) -> gboolean;
19970    pub fn gtk_tree_store_iter_depth(
19971        tree_store: *mut GtkTreeStore,
19972        iter: *mut GtkTreeIter,
19973    ) -> c_int;
19974    pub fn gtk_tree_store_iter_is_valid(
19975        tree_store: *mut GtkTreeStore,
19976        iter: *mut GtkTreeIter,
19977    ) -> gboolean;
19978    pub fn gtk_tree_store_move_after(
19979        tree_store: *mut GtkTreeStore,
19980        iter: *mut GtkTreeIter,
19981        position: *mut GtkTreeIter,
19982    );
19983    pub fn gtk_tree_store_move_before(
19984        tree_store: *mut GtkTreeStore,
19985        iter: *mut GtkTreeIter,
19986        position: *mut GtkTreeIter,
19987    );
19988    pub fn gtk_tree_store_prepend(
19989        tree_store: *mut GtkTreeStore,
19990        iter: *mut GtkTreeIter,
19991        parent: *mut GtkTreeIter,
19992    );
19993    pub fn gtk_tree_store_remove(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter)
19994        -> gboolean;
19995    pub fn gtk_tree_store_reorder(
19996        tree_store: *mut GtkTreeStore,
19997        parent: *mut GtkTreeIter,
19998        new_order: *mut c_int,
19999    );
20000    pub fn gtk_tree_store_set(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, ...);
20001    pub fn gtk_tree_store_set_column_types(
20002        tree_store: *mut GtkTreeStore,
20003        n_columns: c_int,
20004        types: *mut GType,
20005    );
20006    //pub fn gtk_tree_store_set_valist(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
20007    pub fn gtk_tree_store_set_value(
20008        tree_store: *mut GtkTreeStore,
20009        iter: *mut GtkTreeIter,
20010        column: c_int,
20011        value: *mut gobject::GValue,
20012    );
20013    pub fn gtk_tree_store_set_valuesv(
20014        tree_store: *mut GtkTreeStore,
20015        iter: *mut GtkTreeIter,
20016        columns: *mut c_int,
20017        values: *mut gobject::GValue,
20018        n_values: c_int,
20019    );
20020    pub fn gtk_tree_store_swap(
20021        tree_store: *mut GtkTreeStore,
20022        a: *mut GtkTreeIter,
20023        b: *mut GtkTreeIter,
20024    );
20025
20026    //=========================================================================
20027    // GtkTreeView
20028    //=========================================================================
20029    pub fn gtk_tree_view_get_type() -> GType;
20030    pub fn gtk_tree_view_new() -> *mut GtkWidget;
20031    pub fn gtk_tree_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
20032    pub fn gtk_tree_view_append_column(
20033        tree_view: *mut GtkTreeView,
20034        column: *mut GtkTreeViewColumn,
20035    ) -> c_int;
20036    pub fn gtk_tree_view_collapse_all(tree_view: *mut GtkTreeView);
20037    pub fn gtk_tree_view_collapse_row(
20038        tree_view: *mut GtkTreeView,
20039        path: *mut GtkTreePath,
20040    ) -> gboolean;
20041    pub fn gtk_tree_view_columns_autosize(tree_view: *mut GtkTreeView);
20042    pub fn gtk_tree_view_convert_bin_window_to_tree_coords(
20043        tree_view: *mut GtkTreeView,
20044        bx: c_int,
20045        by: c_int,
20046        tx: *mut c_int,
20047        ty: *mut c_int,
20048    );
20049    pub fn gtk_tree_view_convert_bin_window_to_widget_coords(
20050        tree_view: *mut GtkTreeView,
20051        bx: c_int,
20052        by: c_int,
20053        wx: *mut c_int,
20054        wy: *mut c_int,
20055    );
20056    pub fn gtk_tree_view_convert_tree_to_bin_window_coords(
20057        tree_view: *mut GtkTreeView,
20058        tx: c_int,
20059        ty: c_int,
20060        bx: *mut c_int,
20061        by: *mut c_int,
20062    );
20063    pub fn gtk_tree_view_convert_tree_to_widget_coords(
20064        tree_view: *mut GtkTreeView,
20065        tx: c_int,
20066        ty: c_int,
20067        wx: *mut c_int,
20068        wy: *mut c_int,
20069    );
20070    pub fn gtk_tree_view_convert_widget_to_bin_window_coords(
20071        tree_view: *mut GtkTreeView,
20072        wx: c_int,
20073        wy: c_int,
20074        bx: *mut c_int,
20075        by: *mut c_int,
20076    );
20077    pub fn gtk_tree_view_convert_widget_to_tree_coords(
20078        tree_view: *mut GtkTreeView,
20079        wx: c_int,
20080        wy: c_int,
20081        tx: *mut c_int,
20082        ty: *mut c_int,
20083    );
20084    pub fn gtk_tree_view_create_row_drag_icon(
20085        tree_view: *mut GtkTreeView,
20086        path: *mut GtkTreePath,
20087    ) -> *mut gdk::GdkPaintable;
20088    pub fn gtk_tree_view_enable_model_drag_dest(
20089        tree_view: *mut GtkTreeView,
20090        formats: *mut gdk::GdkContentFormats,
20091        actions: gdk::GdkDragAction,
20092    );
20093    pub fn gtk_tree_view_enable_model_drag_source(
20094        tree_view: *mut GtkTreeView,
20095        start_button_mask: gdk::GdkModifierType,
20096        formats: *mut gdk::GdkContentFormats,
20097        actions: gdk::GdkDragAction,
20098    );
20099    pub fn gtk_tree_view_expand_all(tree_view: *mut GtkTreeView);
20100    pub fn gtk_tree_view_expand_row(
20101        tree_view: *mut GtkTreeView,
20102        path: *mut GtkTreePath,
20103        open_all: gboolean,
20104    ) -> gboolean;
20105    pub fn gtk_tree_view_expand_to_path(tree_view: *mut GtkTreeView, path: *mut GtkTreePath);
20106    pub fn gtk_tree_view_get_activate_on_single_click(tree_view: *mut GtkTreeView) -> gboolean;
20107    pub fn gtk_tree_view_get_background_area(
20108        tree_view: *mut GtkTreeView,
20109        path: *mut GtkTreePath,
20110        column: *mut GtkTreeViewColumn,
20111        rect: *mut gdk::GdkRectangle,
20112    );
20113    pub fn gtk_tree_view_get_cell_area(
20114        tree_view: *mut GtkTreeView,
20115        path: *mut GtkTreePath,
20116        column: *mut GtkTreeViewColumn,
20117        rect: *mut gdk::GdkRectangle,
20118    );
20119    pub fn gtk_tree_view_get_column(
20120        tree_view: *mut GtkTreeView,
20121        n: c_int,
20122    ) -> *mut GtkTreeViewColumn;
20123    pub fn gtk_tree_view_get_columns(tree_view: *mut GtkTreeView) -> *mut glib::GList;
20124    pub fn gtk_tree_view_get_cursor(
20125        tree_view: *mut GtkTreeView,
20126        path: *mut *mut GtkTreePath,
20127        focus_column: *mut *mut GtkTreeViewColumn,
20128    );
20129    pub fn gtk_tree_view_get_dest_row_at_pos(
20130        tree_view: *mut GtkTreeView,
20131        drag_x: c_int,
20132        drag_y: c_int,
20133        path: *mut *mut GtkTreePath,
20134        pos: *mut GtkTreeViewDropPosition,
20135    ) -> gboolean;
20136    pub fn gtk_tree_view_get_drag_dest_row(
20137        tree_view: *mut GtkTreeView,
20138        path: *mut *mut GtkTreePath,
20139        pos: *mut GtkTreeViewDropPosition,
20140    );
20141    pub fn gtk_tree_view_get_enable_search(tree_view: *mut GtkTreeView) -> gboolean;
20142    pub fn gtk_tree_view_get_enable_tree_lines(tree_view: *mut GtkTreeView) -> gboolean;
20143    pub fn gtk_tree_view_get_expander_column(tree_view: *mut GtkTreeView)
20144        -> *mut GtkTreeViewColumn;
20145    pub fn gtk_tree_view_get_fixed_height_mode(tree_view: *mut GtkTreeView) -> gboolean;
20146    pub fn gtk_tree_view_get_grid_lines(tree_view: *mut GtkTreeView) -> GtkTreeViewGridLines;
20147    pub fn gtk_tree_view_get_headers_clickable(tree_view: *mut GtkTreeView) -> gboolean;
20148    pub fn gtk_tree_view_get_headers_visible(tree_view: *mut GtkTreeView) -> gboolean;
20149    pub fn gtk_tree_view_get_hover_expand(tree_view: *mut GtkTreeView) -> gboolean;
20150    pub fn gtk_tree_view_get_hover_selection(tree_view: *mut GtkTreeView) -> gboolean;
20151    pub fn gtk_tree_view_get_level_indentation(tree_view: *mut GtkTreeView) -> c_int;
20152    pub fn gtk_tree_view_get_model(tree_view: *mut GtkTreeView) -> *mut GtkTreeModel;
20153    pub fn gtk_tree_view_get_n_columns(tree_view: *mut GtkTreeView) -> c_uint;
20154    pub fn gtk_tree_view_get_path_at_pos(
20155        tree_view: *mut GtkTreeView,
20156        x: c_int,
20157        y: c_int,
20158        path: *mut *mut GtkTreePath,
20159        column: *mut *mut GtkTreeViewColumn,
20160        cell_x: *mut c_int,
20161        cell_y: *mut c_int,
20162    ) -> gboolean;
20163    pub fn gtk_tree_view_get_reorderable(tree_view: *mut GtkTreeView) -> gboolean;
20164    pub fn gtk_tree_view_get_row_separator_func(
20165        tree_view: *mut GtkTreeView,
20166    ) -> GtkTreeViewRowSeparatorFunc;
20167    pub fn gtk_tree_view_get_rubber_banding(tree_view: *mut GtkTreeView) -> gboolean;
20168    pub fn gtk_tree_view_get_search_column(tree_view: *mut GtkTreeView) -> c_int;
20169    pub fn gtk_tree_view_get_search_entry(tree_view: *mut GtkTreeView) -> *mut GtkEditable;
20170    pub fn gtk_tree_view_get_search_equal_func(
20171        tree_view: *mut GtkTreeView,
20172    ) -> GtkTreeViewSearchEqualFunc;
20173    pub fn gtk_tree_view_get_selection(tree_view: *mut GtkTreeView) -> *mut GtkTreeSelection;
20174    pub fn gtk_tree_view_get_show_expanders(tree_view: *mut GtkTreeView) -> gboolean;
20175    pub fn gtk_tree_view_get_tooltip_column(tree_view: *mut GtkTreeView) -> c_int;
20176    pub fn gtk_tree_view_get_tooltip_context(
20177        tree_view: *mut GtkTreeView,
20178        x: c_int,
20179        y: c_int,
20180        keyboard_tip: gboolean,
20181        model: *mut *mut GtkTreeModel,
20182        path: *mut *mut GtkTreePath,
20183        iter: *mut GtkTreeIter,
20184    ) -> gboolean;
20185    pub fn gtk_tree_view_get_visible_range(
20186        tree_view: *mut GtkTreeView,
20187        start_path: *mut *mut GtkTreePath,
20188        end_path: *mut *mut GtkTreePath,
20189    ) -> gboolean;
20190    pub fn gtk_tree_view_get_visible_rect(
20191        tree_view: *mut GtkTreeView,
20192        visible_rect: *mut gdk::GdkRectangle,
20193    );
20194    pub fn gtk_tree_view_insert_column(
20195        tree_view: *mut GtkTreeView,
20196        column: *mut GtkTreeViewColumn,
20197        position: c_int,
20198    ) -> c_int;
20199    pub fn gtk_tree_view_insert_column_with_attributes(
20200        tree_view: *mut GtkTreeView,
20201        position: c_int,
20202        title: *const c_char,
20203        cell: *mut GtkCellRenderer,
20204        ...
20205    ) -> c_int;
20206    pub fn gtk_tree_view_insert_column_with_data_func(
20207        tree_view: *mut GtkTreeView,
20208        position: c_int,
20209        title: *const c_char,
20210        cell: *mut GtkCellRenderer,
20211        func: GtkTreeCellDataFunc,
20212        data: gpointer,
20213        dnotify: glib::GDestroyNotify,
20214    ) -> c_int;
20215    pub fn gtk_tree_view_is_blank_at_pos(
20216        tree_view: *mut GtkTreeView,
20217        x: c_int,
20218        y: c_int,
20219        path: *mut *mut GtkTreePath,
20220        column: *mut *mut GtkTreeViewColumn,
20221        cell_x: *mut c_int,
20222        cell_y: *mut c_int,
20223    ) -> gboolean;
20224    pub fn gtk_tree_view_is_rubber_banding_active(tree_view: *mut GtkTreeView) -> gboolean;
20225    pub fn gtk_tree_view_map_expanded_rows(
20226        tree_view: *mut GtkTreeView,
20227        func: GtkTreeViewMappingFunc,
20228        data: gpointer,
20229    );
20230    pub fn gtk_tree_view_move_column_after(
20231        tree_view: *mut GtkTreeView,
20232        column: *mut GtkTreeViewColumn,
20233        base_column: *mut GtkTreeViewColumn,
20234    );
20235    pub fn gtk_tree_view_remove_column(
20236        tree_view: *mut GtkTreeView,
20237        column: *mut GtkTreeViewColumn,
20238    ) -> c_int;
20239    pub fn gtk_tree_view_row_activated(
20240        tree_view: *mut GtkTreeView,
20241        path: *mut GtkTreePath,
20242        column: *mut GtkTreeViewColumn,
20243    );
20244    pub fn gtk_tree_view_row_expanded(
20245        tree_view: *mut GtkTreeView,
20246        path: *mut GtkTreePath,
20247    ) -> gboolean;
20248    pub fn gtk_tree_view_scroll_to_cell(
20249        tree_view: *mut GtkTreeView,
20250        path: *mut GtkTreePath,
20251        column: *mut GtkTreeViewColumn,
20252        use_align: gboolean,
20253        row_align: c_float,
20254        col_align: c_float,
20255    );
20256    pub fn gtk_tree_view_scroll_to_point(tree_view: *mut GtkTreeView, tree_x: c_int, tree_y: c_int);
20257    pub fn gtk_tree_view_set_activate_on_single_click(
20258        tree_view: *mut GtkTreeView,
20259        single: gboolean,
20260    );
20261    pub fn gtk_tree_view_set_column_drag_function(
20262        tree_view: *mut GtkTreeView,
20263        func: GtkTreeViewColumnDropFunc,
20264        user_data: gpointer,
20265        destroy: glib::GDestroyNotify,
20266    );
20267    pub fn gtk_tree_view_set_cursor(
20268        tree_view: *mut GtkTreeView,
20269        path: *mut GtkTreePath,
20270        focus_column: *mut GtkTreeViewColumn,
20271        start_editing: gboolean,
20272    );
20273    pub fn gtk_tree_view_set_cursor_on_cell(
20274        tree_view: *mut GtkTreeView,
20275        path: *mut GtkTreePath,
20276        focus_column: *mut GtkTreeViewColumn,
20277        focus_cell: *mut GtkCellRenderer,
20278        start_editing: gboolean,
20279    );
20280    pub fn gtk_tree_view_set_drag_dest_row(
20281        tree_view: *mut GtkTreeView,
20282        path: *mut GtkTreePath,
20283        pos: GtkTreeViewDropPosition,
20284    );
20285    pub fn gtk_tree_view_set_enable_search(tree_view: *mut GtkTreeView, enable_search: gboolean);
20286    pub fn gtk_tree_view_set_enable_tree_lines(tree_view: *mut GtkTreeView, enabled: gboolean);
20287    pub fn gtk_tree_view_set_expander_column(
20288        tree_view: *mut GtkTreeView,
20289        column: *mut GtkTreeViewColumn,
20290    );
20291    pub fn gtk_tree_view_set_fixed_height_mode(tree_view: *mut GtkTreeView, enable: gboolean);
20292    pub fn gtk_tree_view_set_grid_lines(
20293        tree_view: *mut GtkTreeView,
20294        grid_lines: GtkTreeViewGridLines,
20295    );
20296    pub fn gtk_tree_view_set_headers_clickable(tree_view: *mut GtkTreeView, setting: gboolean);
20297    pub fn gtk_tree_view_set_headers_visible(
20298        tree_view: *mut GtkTreeView,
20299        headers_visible: gboolean,
20300    );
20301    pub fn gtk_tree_view_set_hover_expand(tree_view: *mut GtkTreeView, expand: gboolean);
20302    pub fn gtk_tree_view_set_hover_selection(tree_view: *mut GtkTreeView, hover: gboolean);
20303    pub fn gtk_tree_view_set_level_indentation(tree_view: *mut GtkTreeView, indentation: c_int);
20304    pub fn gtk_tree_view_set_model(tree_view: *mut GtkTreeView, model: *mut GtkTreeModel);
20305    pub fn gtk_tree_view_set_reorderable(tree_view: *mut GtkTreeView, reorderable: gboolean);
20306    pub fn gtk_tree_view_set_row_separator_func(
20307        tree_view: *mut GtkTreeView,
20308        func: GtkTreeViewRowSeparatorFunc,
20309        data: gpointer,
20310        destroy: glib::GDestroyNotify,
20311    );
20312    pub fn gtk_tree_view_set_rubber_banding(tree_view: *mut GtkTreeView, enable: gboolean);
20313    pub fn gtk_tree_view_set_search_column(tree_view: *mut GtkTreeView, column: c_int);
20314    pub fn gtk_tree_view_set_search_entry(tree_view: *mut GtkTreeView, entry: *mut GtkEditable);
20315    pub fn gtk_tree_view_set_search_equal_func(
20316        tree_view: *mut GtkTreeView,
20317        search_equal_func: GtkTreeViewSearchEqualFunc,
20318        search_user_data: gpointer,
20319        search_destroy: glib::GDestroyNotify,
20320    );
20321    pub fn gtk_tree_view_set_show_expanders(tree_view: *mut GtkTreeView, enabled: gboolean);
20322    pub fn gtk_tree_view_set_tooltip_cell(
20323        tree_view: *mut GtkTreeView,
20324        tooltip: *mut GtkTooltip,
20325        path: *mut GtkTreePath,
20326        column: *mut GtkTreeViewColumn,
20327        cell: *mut GtkCellRenderer,
20328    );
20329    pub fn gtk_tree_view_set_tooltip_column(tree_view: *mut GtkTreeView, column: c_int);
20330    pub fn gtk_tree_view_set_tooltip_row(
20331        tree_view: *mut GtkTreeView,
20332        tooltip: *mut GtkTooltip,
20333        path: *mut GtkTreePath,
20334    );
20335    pub fn gtk_tree_view_unset_rows_drag_dest(tree_view: *mut GtkTreeView);
20336    pub fn gtk_tree_view_unset_rows_drag_source(tree_view: *mut GtkTreeView);
20337
20338    //=========================================================================
20339    // GtkTreeViewColumn
20340    //=========================================================================
20341    pub fn gtk_tree_view_column_get_type() -> GType;
20342    pub fn gtk_tree_view_column_new() -> *mut GtkTreeViewColumn;
20343    pub fn gtk_tree_view_column_new_with_area(area: *mut GtkCellArea) -> *mut GtkTreeViewColumn;
20344    pub fn gtk_tree_view_column_new_with_attributes(
20345        title: *const c_char,
20346        cell: *mut GtkCellRenderer,
20347        ...
20348    ) -> *mut GtkTreeViewColumn;
20349    pub fn gtk_tree_view_column_add_attribute(
20350        tree_column: *mut GtkTreeViewColumn,
20351        cell_renderer: *mut GtkCellRenderer,
20352        attribute: *const c_char,
20353        column: c_int,
20354    );
20355    pub fn gtk_tree_view_column_cell_get_position(
20356        tree_column: *mut GtkTreeViewColumn,
20357        cell_renderer: *mut GtkCellRenderer,
20358        x_offset: *mut c_int,
20359        width: *mut c_int,
20360    ) -> gboolean;
20361    pub fn gtk_tree_view_column_cell_get_size(
20362        tree_column: *mut GtkTreeViewColumn,
20363        x_offset: *mut c_int,
20364        y_offset: *mut c_int,
20365        width: *mut c_int,
20366        height: *mut c_int,
20367    );
20368    pub fn gtk_tree_view_column_cell_is_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20369    pub fn gtk_tree_view_column_cell_set_cell_data(
20370        tree_column: *mut GtkTreeViewColumn,
20371        tree_model: *mut GtkTreeModel,
20372        iter: *mut GtkTreeIter,
20373        is_expander: gboolean,
20374        is_expanded: gboolean,
20375    );
20376    pub fn gtk_tree_view_column_clear(tree_column: *mut GtkTreeViewColumn);
20377    pub fn gtk_tree_view_column_clear_attributes(
20378        tree_column: *mut GtkTreeViewColumn,
20379        cell_renderer: *mut GtkCellRenderer,
20380    );
20381    pub fn gtk_tree_view_column_clicked(tree_column: *mut GtkTreeViewColumn);
20382    pub fn gtk_tree_view_column_focus_cell(
20383        tree_column: *mut GtkTreeViewColumn,
20384        cell: *mut GtkCellRenderer,
20385    );
20386    pub fn gtk_tree_view_column_get_alignment(tree_column: *mut GtkTreeViewColumn) -> c_float;
20387    pub fn gtk_tree_view_column_get_button(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
20388    pub fn gtk_tree_view_column_get_clickable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20389    pub fn gtk_tree_view_column_get_expand(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20390    pub fn gtk_tree_view_column_get_fixed_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20391    pub fn gtk_tree_view_column_get_max_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20392    pub fn gtk_tree_view_column_get_min_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20393    pub fn gtk_tree_view_column_get_reorderable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20394    pub fn gtk_tree_view_column_get_resizable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20395    pub fn gtk_tree_view_column_get_sizing(
20396        tree_column: *mut GtkTreeViewColumn,
20397    ) -> GtkTreeViewColumnSizing;
20398    pub fn gtk_tree_view_column_get_sort_column_id(tree_column: *mut GtkTreeViewColumn) -> c_int;
20399    pub fn gtk_tree_view_column_get_sort_indicator(tree_column: *mut GtkTreeViewColumn)
20400        -> gboolean;
20401    pub fn gtk_tree_view_column_get_sort_order(tree_column: *mut GtkTreeViewColumn) -> GtkSortType;
20402    pub fn gtk_tree_view_column_get_spacing(tree_column: *mut GtkTreeViewColumn) -> c_int;
20403    pub fn gtk_tree_view_column_get_title(tree_column: *mut GtkTreeViewColumn) -> *const c_char;
20404    pub fn gtk_tree_view_column_get_tree_view(
20405        tree_column: *mut GtkTreeViewColumn,
20406    ) -> *mut GtkWidget;
20407    pub fn gtk_tree_view_column_get_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20408    pub fn gtk_tree_view_column_get_widget(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
20409    pub fn gtk_tree_view_column_get_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20410    pub fn gtk_tree_view_column_get_x_offset(tree_column: *mut GtkTreeViewColumn) -> c_int;
20411    pub fn gtk_tree_view_column_pack_end(
20412        tree_column: *mut GtkTreeViewColumn,
20413        cell: *mut GtkCellRenderer,
20414        expand: gboolean,
20415    );
20416    pub fn gtk_tree_view_column_pack_start(
20417        tree_column: *mut GtkTreeViewColumn,
20418        cell: *mut GtkCellRenderer,
20419        expand: gboolean,
20420    );
20421    pub fn gtk_tree_view_column_queue_resize(tree_column: *mut GtkTreeViewColumn);
20422    pub fn gtk_tree_view_column_set_alignment(tree_column: *mut GtkTreeViewColumn, xalign: c_float);
20423    pub fn gtk_tree_view_column_set_attributes(
20424        tree_column: *mut GtkTreeViewColumn,
20425        cell_renderer: *mut GtkCellRenderer,
20426        ...
20427    );
20428    pub fn gtk_tree_view_column_set_cell_data_func(
20429        tree_column: *mut GtkTreeViewColumn,
20430        cell_renderer: *mut GtkCellRenderer,
20431        func: GtkTreeCellDataFunc,
20432        func_data: gpointer,
20433        destroy: glib::GDestroyNotify,
20434    );
20435    pub fn gtk_tree_view_column_set_clickable(
20436        tree_column: *mut GtkTreeViewColumn,
20437        clickable: gboolean,
20438    );
20439    pub fn gtk_tree_view_column_set_expand(tree_column: *mut GtkTreeViewColumn, expand: gboolean);
20440    pub fn gtk_tree_view_column_set_fixed_width(
20441        tree_column: *mut GtkTreeViewColumn,
20442        fixed_width: c_int,
20443    );
20444    pub fn gtk_tree_view_column_set_max_width(
20445        tree_column: *mut GtkTreeViewColumn,
20446        max_width: c_int,
20447    );
20448    pub fn gtk_tree_view_column_set_min_width(
20449        tree_column: *mut GtkTreeViewColumn,
20450        min_width: c_int,
20451    );
20452    pub fn gtk_tree_view_column_set_reorderable(
20453        tree_column: *mut GtkTreeViewColumn,
20454        reorderable: gboolean,
20455    );
20456    pub fn gtk_tree_view_column_set_resizable(
20457        tree_column: *mut GtkTreeViewColumn,
20458        resizable: gboolean,
20459    );
20460    pub fn gtk_tree_view_column_set_sizing(
20461        tree_column: *mut GtkTreeViewColumn,
20462        type_: GtkTreeViewColumnSizing,
20463    );
20464    pub fn gtk_tree_view_column_set_sort_column_id(
20465        tree_column: *mut GtkTreeViewColumn,
20466        sort_column_id: c_int,
20467    );
20468    pub fn gtk_tree_view_column_set_sort_indicator(
20469        tree_column: *mut GtkTreeViewColumn,
20470        setting: gboolean,
20471    );
20472    pub fn gtk_tree_view_column_set_sort_order(
20473        tree_column: *mut GtkTreeViewColumn,
20474        order: GtkSortType,
20475    );
20476    pub fn gtk_tree_view_column_set_spacing(tree_column: *mut GtkTreeViewColumn, spacing: c_int);
20477    pub fn gtk_tree_view_column_set_title(
20478        tree_column: *mut GtkTreeViewColumn,
20479        title: *const c_char,
20480    );
20481    pub fn gtk_tree_view_column_set_visible(tree_column: *mut GtkTreeViewColumn, visible: gboolean);
20482    pub fn gtk_tree_view_column_set_widget(
20483        tree_column: *mut GtkTreeViewColumn,
20484        widget: *mut GtkWidget,
20485    );
20486
20487    //=========================================================================
20488    // GtkUriLauncher
20489    //=========================================================================
20490    #[cfg(feature = "v4_10")]
20491    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20492    pub fn gtk_uri_launcher_get_type() -> GType;
20493    #[cfg(feature = "v4_10")]
20494    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20495    pub fn gtk_uri_launcher_new(uri: *const c_char) -> *mut GtkUriLauncher;
20496    #[cfg(feature = "v4_20")]
20497    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20498    pub fn gtk_uri_launcher_can_launch(
20499        self_: *mut GtkUriLauncher,
20500        parent: *mut GtkWindow,
20501    ) -> gboolean;
20502    #[cfg(feature = "v4_10")]
20503    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20504    pub fn gtk_uri_launcher_get_uri(self_: *mut GtkUriLauncher) -> *const c_char;
20505    #[cfg(feature = "v4_10")]
20506    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20507    pub fn gtk_uri_launcher_launch(
20508        self_: *mut GtkUriLauncher,
20509        parent: *mut GtkWindow,
20510        cancellable: *mut gio::GCancellable,
20511        callback: gio::GAsyncReadyCallback,
20512        user_data: gpointer,
20513    );
20514    #[cfg(feature = "v4_10")]
20515    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20516    pub fn gtk_uri_launcher_launch_finish(
20517        self_: *mut GtkUriLauncher,
20518        result: *mut gio::GAsyncResult,
20519        error: *mut *mut glib::GError,
20520    ) -> gboolean;
20521    #[cfg(feature = "v4_10")]
20522    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20523    pub fn gtk_uri_launcher_set_uri(self_: *mut GtkUriLauncher, uri: *const c_char);
20524
20525    //=========================================================================
20526    // GtkVideo
20527    //=========================================================================
20528    pub fn gtk_video_get_type() -> GType;
20529    pub fn gtk_video_new() -> *mut GtkWidget;
20530    pub fn gtk_video_new_for_file(file: *mut gio::GFile) -> *mut GtkWidget;
20531    pub fn gtk_video_new_for_filename(filename: *const c_char) -> *mut GtkWidget;
20532    pub fn gtk_video_new_for_media_stream(stream: *mut GtkMediaStream) -> *mut GtkWidget;
20533    pub fn gtk_video_new_for_resource(resource_path: *const c_char) -> *mut GtkWidget;
20534    pub fn gtk_video_get_autoplay(self_: *mut GtkVideo) -> gboolean;
20535    pub fn gtk_video_get_file(self_: *mut GtkVideo) -> *mut gio::GFile;
20536    #[cfg(feature = "v4_14")]
20537    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20538    pub fn gtk_video_get_graphics_offload(self_: *mut GtkVideo) -> GtkGraphicsOffloadEnabled;
20539    pub fn gtk_video_get_loop(self_: *mut GtkVideo) -> gboolean;
20540    pub fn gtk_video_get_media_stream(self_: *mut GtkVideo) -> *mut GtkMediaStream;
20541    pub fn gtk_video_set_autoplay(self_: *mut GtkVideo, autoplay: gboolean);
20542    pub fn gtk_video_set_file(self_: *mut GtkVideo, file: *mut gio::GFile);
20543    pub fn gtk_video_set_filename(self_: *mut GtkVideo, filename: *const c_char);
20544    #[cfg(feature = "v4_14")]
20545    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20546    pub fn gtk_video_set_graphics_offload(self_: *mut GtkVideo, enabled: GtkGraphicsOffloadEnabled);
20547    pub fn gtk_video_set_loop(self_: *mut GtkVideo, loop_: gboolean);
20548    pub fn gtk_video_set_media_stream(self_: *mut GtkVideo, stream: *mut GtkMediaStream);
20549    pub fn gtk_video_set_resource(self_: *mut GtkVideo, resource_path: *const c_char);
20550
20551    //=========================================================================
20552    // GtkViewport
20553    //=========================================================================
20554    pub fn gtk_viewport_get_type() -> GType;
20555    pub fn gtk_viewport_new(
20556        hadjustment: *mut GtkAdjustment,
20557        vadjustment: *mut GtkAdjustment,
20558    ) -> *mut GtkWidget;
20559    pub fn gtk_viewport_get_child(viewport: *mut GtkViewport) -> *mut GtkWidget;
20560    pub fn gtk_viewport_get_scroll_to_focus(viewport: *mut GtkViewport) -> gboolean;
20561    #[cfg(feature = "v4_12")]
20562    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20563    pub fn gtk_viewport_scroll_to(
20564        viewport: *mut GtkViewport,
20565        descendant: *mut GtkWidget,
20566        scroll: *mut GtkScrollInfo,
20567    );
20568    pub fn gtk_viewport_set_child(viewport: *mut GtkViewport, child: *mut GtkWidget);
20569    pub fn gtk_viewport_set_scroll_to_focus(viewport: *mut GtkViewport, scroll_to_focus: gboolean);
20570
20571    //=========================================================================
20572    // GtkVolumeButton
20573    //=========================================================================
20574    pub fn gtk_volume_button_get_type() -> GType;
20575    pub fn gtk_volume_button_new() -> *mut GtkWidget;
20576
20577    //=========================================================================
20578    // GtkWidget
20579    //=========================================================================
20580    pub fn gtk_widget_get_type() -> GType;
20581    pub fn gtk_widget_get_default_direction() -> GtkTextDirection;
20582    pub fn gtk_widget_set_default_direction(dir: GtkTextDirection);
20583    pub fn gtk_widget_action_set_enabled(
20584        widget: *mut GtkWidget,
20585        action_name: *const c_char,
20586        enabled: gboolean,
20587    );
20588    pub fn gtk_widget_activate(widget: *mut GtkWidget) -> gboolean;
20589    pub fn gtk_widget_activate_action(
20590        widget: *mut GtkWidget,
20591        name: *const c_char,
20592        format_string: *const c_char,
20593        ...
20594    ) -> gboolean;
20595    pub fn gtk_widget_activate_action_variant(
20596        widget: *mut GtkWidget,
20597        name: *const c_char,
20598        args: *mut glib::GVariant,
20599    ) -> gboolean;
20600    pub fn gtk_widget_activate_default(widget: *mut GtkWidget);
20601    pub fn gtk_widget_add_controller(widget: *mut GtkWidget, controller: *mut GtkEventController);
20602    pub fn gtk_widget_add_css_class(widget: *mut GtkWidget, css_class: *const c_char);
20603    pub fn gtk_widget_add_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
20604    pub fn gtk_widget_add_tick_callback(
20605        widget: *mut GtkWidget,
20606        callback: GtkTickCallback,
20607        user_data: gpointer,
20608        notify: glib::GDestroyNotify,
20609    ) -> c_uint;
20610    pub fn gtk_widget_allocate(
20611        widget: *mut GtkWidget,
20612        width: c_int,
20613        height: c_int,
20614        baseline: c_int,
20615        transform: *mut gsk::GskTransform,
20616    );
20617    pub fn gtk_widget_child_focus(widget: *mut GtkWidget, direction: GtkDirectionType) -> gboolean;
20618    pub fn gtk_widget_compute_bounds(
20619        widget: *mut GtkWidget,
20620        target: *mut GtkWidget,
20621        out_bounds: *mut graphene::graphene_rect_t,
20622    ) -> gboolean;
20623    pub fn gtk_widget_compute_expand(
20624        widget: *mut GtkWidget,
20625        orientation: GtkOrientation,
20626    ) -> gboolean;
20627    pub fn gtk_widget_compute_point(
20628        widget: *mut GtkWidget,
20629        target: *mut GtkWidget,
20630        point: *const graphene::graphene_point_t,
20631        out_point: *mut graphene::graphene_point_t,
20632    ) -> gboolean;
20633    pub fn gtk_widget_compute_transform(
20634        widget: *mut GtkWidget,
20635        target: *mut GtkWidget,
20636        out_transform: *mut graphene::graphene_matrix_t,
20637    ) -> gboolean;
20638    pub fn gtk_widget_contains(widget: *mut GtkWidget, x: c_double, y: c_double) -> gboolean;
20639    pub fn gtk_widget_create_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
20640    pub fn gtk_widget_create_pango_layout(
20641        widget: *mut GtkWidget,
20642        text: *const c_char,
20643    ) -> *mut pango::PangoLayout;
20644    #[cfg(feature = "v4_8")]
20645    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
20646    pub fn gtk_widget_dispose_template(widget: *mut GtkWidget, widget_type: GType);
20647    pub fn gtk_drag_check_threshold(
20648        widget: *mut GtkWidget,
20649        start_x: c_int,
20650        start_y: c_int,
20651        current_x: c_int,
20652        current_y: c_int,
20653    ) -> gboolean;
20654    pub fn gtk_widget_error_bell(widget: *mut GtkWidget);
20655    pub fn gtk_widget_get_allocated_baseline(widget: *mut GtkWidget) -> c_int;
20656    pub fn gtk_widget_get_allocated_height(widget: *mut GtkWidget) -> c_int;
20657    pub fn gtk_widget_get_allocated_width(widget: *mut GtkWidget) -> c_int;
20658    pub fn gtk_widget_get_allocation(widget: *mut GtkWidget, allocation: *mut GtkAllocation);
20659    pub fn gtk_widget_get_ancestor(widget: *mut GtkWidget, widget_type: GType) -> *mut GtkWidget;
20660    #[cfg(feature = "v4_12")]
20661    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20662    pub fn gtk_widget_get_baseline(widget: *mut GtkWidget) -> c_int;
20663    pub fn gtk_widget_get_can_focus(widget: *mut GtkWidget) -> gboolean;
20664    pub fn gtk_widget_get_can_target(widget: *mut GtkWidget) -> gboolean;
20665    pub fn gtk_widget_get_child_visible(widget: *mut GtkWidget) -> gboolean;
20666    pub fn gtk_widget_get_clipboard(widget: *mut GtkWidget) -> *mut gdk::GdkClipboard;
20667    #[cfg(feature = "v4_10")]
20668    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20669    pub fn gtk_widget_get_color(widget: *mut GtkWidget, color: *mut gdk::GdkRGBA);
20670    pub fn gtk_widget_get_css_classes(widget: *mut GtkWidget) -> *mut *mut c_char;
20671    pub fn gtk_widget_get_css_name(self_: *mut GtkWidget) -> *const c_char;
20672    pub fn gtk_widget_get_cursor(widget: *mut GtkWidget) -> *mut gdk::GdkCursor;
20673    pub fn gtk_widget_get_direction(widget: *mut GtkWidget) -> GtkTextDirection;
20674    pub fn gtk_widget_get_display(widget: *mut GtkWidget) -> *mut gdk::GdkDisplay;
20675    pub fn gtk_widget_get_first_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20676    pub fn gtk_widget_get_focus_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20677    pub fn gtk_widget_get_focus_on_click(widget: *mut GtkWidget) -> gboolean;
20678    pub fn gtk_widget_get_focusable(widget: *mut GtkWidget) -> gboolean;
20679    pub fn gtk_widget_get_font_map(widget: *mut GtkWidget) -> *mut pango::PangoFontMap;
20680    pub fn gtk_widget_get_font_options(
20681        widget: *mut GtkWidget,
20682    ) -> *const cairo::cairo_font_options_t;
20683    pub fn gtk_widget_get_frame_clock(widget: *mut GtkWidget) -> *mut gdk::GdkFrameClock;
20684    pub fn gtk_widget_get_halign(widget: *mut GtkWidget) -> GtkAlign;
20685    pub fn gtk_widget_get_has_tooltip(widget: *mut GtkWidget) -> gboolean;
20686    pub fn gtk_widget_get_height(widget: *mut GtkWidget) -> c_int;
20687    pub fn gtk_widget_get_hexpand(widget: *mut GtkWidget) -> gboolean;
20688    pub fn gtk_widget_get_hexpand_set(widget: *mut GtkWidget) -> gboolean;
20689    pub fn gtk_widget_get_last_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20690    pub fn gtk_widget_get_layout_manager(widget: *mut GtkWidget) -> *mut GtkLayoutManager;
20691    #[cfg(feature = "v4_18")]
20692    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20693    pub fn gtk_widget_get_limit_events(widget: *mut GtkWidget) -> gboolean;
20694    pub fn gtk_widget_get_mapped(widget: *mut GtkWidget) -> gboolean;
20695    pub fn gtk_widget_get_margin_bottom(widget: *mut GtkWidget) -> c_int;
20696    pub fn gtk_widget_get_margin_end(widget: *mut GtkWidget) -> c_int;
20697    pub fn gtk_widget_get_margin_start(widget: *mut GtkWidget) -> c_int;
20698    pub fn gtk_widget_get_margin_top(widget: *mut GtkWidget) -> c_int;
20699    pub fn gtk_widget_get_name(widget: *mut GtkWidget) -> *const c_char;
20700    pub fn gtk_widget_get_native(widget: *mut GtkWidget) -> *mut GtkNative;
20701    pub fn gtk_widget_get_next_sibling(widget: *mut GtkWidget) -> *mut GtkWidget;
20702    pub fn gtk_widget_get_opacity(widget: *mut GtkWidget) -> c_double;
20703    pub fn gtk_widget_get_overflow(widget: *mut GtkWidget) -> GtkOverflow;
20704    pub fn gtk_widget_get_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
20705    pub fn gtk_widget_get_parent(widget: *mut GtkWidget) -> *mut GtkWidget;
20706    pub fn gtk_widget_get_preferred_size(
20707        widget: *mut GtkWidget,
20708        minimum_size: *mut GtkRequisition,
20709        natural_size: *mut GtkRequisition,
20710    );
20711    pub fn gtk_widget_get_prev_sibling(widget: *mut GtkWidget) -> *mut GtkWidget;
20712    pub fn gtk_widget_get_primary_clipboard(widget: *mut GtkWidget) -> *mut gdk::GdkClipboard;
20713    pub fn gtk_widget_get_realized(widget: *mut GtkWidget) -> gboolean;
20714    pub fn gtk_widget_get_receives_default(widget: *mut GtkWidget) -> gboolean;
20715    pub fn gtk_widget_get_request_mode(widget: *mut GtkWidget) -> GtkSizeRequestMode;
20716    pub fn gtk_widget_get_root(widget: *mut GtkWidget) -> *mut GtkRoot;
20717    pub fn gtk_widget_get_scale_factor(widget: *mut GtkWidget) -> c_int;
20718    pub fn gtk_widget_get_sensitive(widget: *mut GtkWidget) -> gboolean;
20719    pub fn gtk_widget_get_settings(widget: *mut GtkWidget) -> *mut GtkSettings;
20720    pub fn gtk_widget_get_size(widget: *mut GtkWidget, orientation: GtkOrientation) -> c_int;
20721    pub fn gtk_widget_get_size_request(
20722        widget: *mut GtkWidget,
20723        width: *mut c_int,
20724        height: *mut c_int,
20725    );
20726    pub fn gtk_widget_get_state_flags(widget: *mut GtkWidget) -> GtkStateFlags;
20727    pub fn gtk_widget_get_style_context(widget: *mut GtkWidget) -> *mut GtkStyleContext;
20728    pub fn gtk_widget_get_template_child(
20729        widget: *mut GtkWidget,
20730        widget_type: GType,
20731        name: *const c_char,
20732    ) -> *mut gobject::GObject;
20733    pub fn gtk_widget_get_tooltip_markup(widget: *mut GtkWidget) -> *const c_char;
20734    pub fn gtk_widget_get_tooltip_text(widget: *mut GtkWidget) -> *const c_char;
20735    pub fn gtk_widget_get_valign(widget: *mut GtkWidget) -> GtkAlign;
20736    pub fn gtk_widget_get_vexpand(widget: *mut GtkWidget) -> gboolean;
20737    pub fn gtk_widget_get_vexpand_set(widget: *mut GtkWidget) -> gboolean;
20738    pub fn gtk_widget_get_visible(widget: *mut GtkWidget) -> gboolean;
20739    pub fn gtk_widget_get_width(widget: *mut GtkWidget) -> c_int;
20740    pub fn gtk_widget_grab_focus(widget: *mut GtkWidget) -> gboolean;
20741    pub fn gtk_widget_has_css_class(widget: *mut GtkWidget, css_class: *const c_char) -> gboolean;
20742    pub fn gtk_widget_has_default(widget: *mut GtkWidget) -> gboolean;
20743    pub fn gtk_widget_has_focus(widget: *mut GtkWidget) -> gboolean;
20744    pub fn gtk_widget_has_visible_focus(widget: *mut GtkWidget) -> gboolean;
20745    pub fn gtk_widget_hide(widget: *mut GtkWidget);
20746    pub fn gtk_widget_in_destruction(widget: *mut GtkWidget) -> gboolean;
20747    pub fn gtk_widget_init_template(widget: *mut GtkWidget);
20748    pub fn gtk_widget_insert_action_group(
20749        widget: *mut GtkWidget,
20750        name: *const c_char,
20751        group: *mut gio::GActionGroup,
20752    );
20753    pub fn gtk_widget_insert_after(
20754        widget: *mut GtkWidget,
20755        parent: *mut GtkWidget,
20756        previous_sibling: *mut GtkWidget,
20757    );
20758    pub fn gtk_widget_insert_before(
20759        widget: *mut GtkWidget,
20760        parent: *mut GtkWidget,
20761        next_sibling: *mut GtkWidget,
20762    );
20763    pub fn gtk_widget_is_ancestor(widget: *mut GtkWidget, ancestor: *mut GtkWidget) -> gboolean;
20764    pub fn gtk_widget_is_drawable(widget: *mut GtkWidget) -> gboolean;
20765    pub fn gtk_widget_is_focus(widget: *mut GtkWidget) -> gboolean;
20766    pub fn gtk_widget_is_sensitive(widget: *mut GtkWidget) -> gboolean;
20767    pub fn gtk_widget_is_visible(widget: *mut GtkWidget) -> gboolean;
20768    pub fn gtk_widget_keynav_failed(
20769        widget: *mut GtkWidget,
20770        direction: GtkDirectionType,
20771    ) -> gboolean;
20772    pub fn gtk_widget_list_mnemonic_labels(widget: *mut GtkWidget) -> *mut glib::GList;
20773    pub fn gtk_widget_map(widget: *mut GtkWidget);
20774    pub fn gtk_widget_measure(
20775        widget: *mut GtkWidget,
20776        orientation: GtkOrientation,
20777        for_size: c_int,
20778        minimum: *mut c_int,
20779        natural: *mut c_int,
20780        minimum_baseline: *mut c_int,
20781        natural_baseline: *mut c_int,
20782    );
20783    pub fn gtk_widget_mnemonic_activate(
20784        widget: *mut GtkWidget,
20785        group_cycling: gboolean,
20786    ) -> gboolean;
20787    pub fn gtk_widget_observe_children(widget: *mut GtkWidget) -> *mut gio::GListModel;
20788    pub fn gtk_widget_observe_controllers(widget: *mut GtkWidget) -> *mut gio::GListModel;
20789    pub fn gtk_widget_pick(
20790        widget: *mut GtkWidget,
20791        x: c_double,
20792        y: c_double,
20793        flags: GtkPickFlags,
20794    ) -> *mut GtkWidget;
20795    pub fn gtk_widget_queue_allocate(widget: *mut GtkWidget);
20796    pub fn gtk_widget_queue_draw(widget: *mut GtkWidget);
20797    pub fn gtk_widget_queue_resize(widget: *mut GtkWidget);
20798    pub fn gtk_widget_realize(widget: *mut GtkWidget);
20799    pub fn gtk_widget_remove_controller(
20800        widget: *mut GtkWidget,
20801        controller: *mut GtkEventController,
20802    );
20803    pub fn gtk_widget_remove_css_class(widget: *mut GtkWidget, css_class: *const c_char);
20804    pub fn gtk_widget_remove_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
20805    pub fn gtk_widget_remove_tick_callback(widget: *mut GtkWidget, id: c_uint);
20806    pub fn gtk_widget_set_can_focus(widget: *mut GtkWidget, can_focus: gboolean);
20807    pub fn gtk_widget_set_can_target(widget: *mut GtkWidget, can_target: gboolean);
20808    pub fn gtk_widget_set_child_visible(widget: *mut GtkWidget, child_visible: gboolean);
20809    pub fn gtk_widget_set_css_classes(widget: *mut GtkWidget, classes: *mut *const c_char);
20810    pub fn gtk_widget_set_cursor(widget: *mut GtkWidget, cursor: *mut gdk::GdkCursor);
20811    pub fn gtk_widget_set_cursor_from_name(widget: *mut GtkWidget, name: *const c_char);
20812    pub fn gtk_widget_set_direction(widget: *mut GtkWidget, dir: GtkTextDirection);
20813    pub fn gtk_widget_set_focus_child(widget: *mut GtkWidget, child: *mut GtkWidget);
20814    pub fn gtk_widget_set_focus_on_click(widget: *mut GtkWidget, focus_on_click: gboolean);
20815    pub fn gtk_widget_set_focusable(widget: *mut GtkWidget, focusable: gboolean);
20816    pub fn gtk_widget_set_font_map(widget: *mut GtkWidget, font_map: *mut pango::PangoFontMap);
20817    pub fn gtk_widget_set_font_options(
20818        widget: *mut GtkWidget,
20819        options: *const cairo::cairo_font_options_t,
20820    );
20821    pub fn gtk_widget_set_halign(widget: *mut GtkWidget, align: GtkAlign);
20822    pub fn gtk_widget_set_has_tooltip(widget: *mut GtkWidget, has_tooltip: gboolean);
20823    pub fn gtk_widget_set_hexpand(widget: *mut GtkWidget, expand: gboolean);
20824    pub fn gtk_widget_set_hexpand_set(widget: *mut GtkWidget, set: gboolean);
20825    pub fn gtk_widget_set_layout_manager(
20826        widget: *mut GtkWidget,
20827        layout_manager: *mut GtkLayoutManager,
20828    );
20829    #[cfg(feature = "v4_18")]
20830    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20831    pub fn gtk_widget_set_limit_events(widget: *mut GtkWidget, limit_events: gboolean);
20832    pub fn gtk_widget_set_margin_bottom(widget: *mut GtkWidget, margin: c_int);
20833    pub fn gtk_widget_set_margin_end(widget: *mut GtkWidget, margin: c_int);
20834    pub fn gtk_widget_set_margin_start(widget: *mut GtkWidget, margin: c_int);
20835    pub fn gtk_widget_set_margin_top(widget: *mut GtkWidget, margin: c_int);
20836    pub fn gtk_widget_set_name(widget: *mut GtkWidget, name: *const c_char);
20837    pub fn gtk_widget_set_opacity(widget: *mut GtkWidget, opacity: c_double);
20838    pub fn gtk_widget_set_overflow(widget: *mut GtkWidget, overflow: GtkOverflow);
20839    pub fn gtk_widget_set_parent(widget: *mut GtkWidget, parent: *mut GtkWidget);
20840    pub fn gtk_widget_set_receives_default(widget: *mut GtkWidget, receives_default: gboolean);
20841    pub fn gtk_widget_set_sensitive(widget: *mut GtkWidget, sensitive: gboolean);
20842    pub fn gtk_widget_set_size_request(widget: *mut GtkWidget, width: c_int, height: c_int);
20843    pub fn gtk_widget_set_state_flags(
20844        widget: *mut GtkWidget,
20845        flags: GtkStateFlags,
20846        clear: gboolean,
20847    );
20848    pub fn gtk_widget_set_tooltip_markup(widget: *mut GtkWidget, markup: *const c_char);
20849    pub fn gtk_widget_set_tooltip_text(widget: *mut GtkWidget, text: *const c_char);
20850    pub fn gtk_widget_set_valign(widget: *mut GtkWidget, align: GtkAlign);
20851    pub fn gtk_widget_set_vexpand(widget: *mut GtkWidget, expand: gboolean);
20852    pub fn gtk_widget_set_vexpand_set(widget: *mut GtkWidget, set: gboolean);
20853    pub fn gtk_widget_set_visible(widget: *mut GtkWidget, visible: gboolean);
20854    pub fn gtk_widget_should_layout(widget: *mut GtkWidget) -> gboolean;
20855    pub fn gtk_widget_show(widget: *mut GtkWidget);
20856    pub fn gtk_widget_size_allocate(
20857        widget: *mut GtkWidget,
20858        allocation: *const GtkAllocation,
20859        baseline: c_int,
20860    );
20861    pub fn gtk_widget_snapshot_child(
20862        widget: *mut GtkWidget,
20863        child: *mut GtkWidget,
20864        snapshot: *mut GtkSnapshot,
20865    );
20866    pub fn gtk_widget_translate_coordinates(
20867        src_widget: *mut GtkWidget,
20868        dest_widget: *mut GtkWidget,
20869        src_x: c_double,
20870        src_y: c_double,
20871        dest_x: *mut c_double,
20872        dest_y: *mut c_double,
20873    ) -> gboolean;
20874    pub fn gtk_widget_trigger_tooltip_query(widget: *mut GtkWidget);
20875    pub fn gtk_widget_unmap(widget: *mut GtkWidget);
20876    pub fn gtk_widget_unparent(widget: *mut GtkWidget);
20877    pub fn gtk_widget_unrealize(widget: *mut GtkWidget);
20878    pub fn gtk_widget_unset_state_flags(widget: *mut GtkWidget, flags: GtkStateFlags);
20879
20880    //=========================================================================
20881    // GtkWidgetPaintable
20882    //=========================================================================
20883    pub fn gtk_widget_paintable_get_type() -> GType;
20884    pub fn gtk_widget_paintable_new(widget: *mut GtkWidget) -> *mut GtkWidgetPaintable;
20885    pub fn gtk_widget_paintable_get_widget(self_: *mut GtkWidgetPaintable) -> *mut GtkWidget;
20886    pub fn gtk_widget_paintable_set_widget(self_: *mut GtkWidgetPaintable, widget: *mut GtkWidget);
20887
20888    //=========================================================================
20889    // GtkWindow
20890    //=========================================================================
20891    pub fn gtk_window_get_type() -> GType;
20892    pub fn gtk_window_new() -> *mut GtkWidget;
20893    pub fn gtk_window_get_default_icon_name() -> *const c_char;
20894    pub fn gtk_window_get_toplevels() -> *mut gio::GListModel;
20895    pub fn gtk_window_list_toplevels() -> *mut glib::GList;
20896    pub fn gtk_window_set_auto_startup_notification(setting: gboolean);
20897    pub fn gtk_window_set_default_icon_name(name: *const c_char);
20898    pub fn gtk_window_set_interactive_debugging(enable: gboolean);
20899    pub fn gtk_window_close(window: *mut GtkWindow);
20900    pub fn gtk_window_destroy(window: *mut GtkWindow);
20901    pub fn gtk_window_fullscreen(window: *mut GtkWindow);
20902    pub fn gtk_window_fullscreen_on_monitor(window: *mut GtkWindow, monitor: *mut gdk::GdkMonitor);
20903    pub fn gtk_window_get_application(window: *mut GtkWindow) -> *mut GtkApplication;
20904    pub fn gtk_window_get_child(window: *mut GtkWindow) -> *mut GtkWidget;
20905    pub fn gtk_window_get_decorated(window: *mut GtkWindow) -> gboolean;
20906    pub fn gtk_window_get_default_size(
20907        window: *mut GtkWindow,
20908        width: *mut c_int,
20909        height: *mut c_int,
20910    );
20911    pub fn gtk_window_get_default_widget(window: *mut GtkWindow) -> *mut GtkWidget;
20912    pub fn gtk_window_get_deletable(window: *mut GtkWindow) -> gboolean;
20913    pub fn gtk_window_get_destroy_with_parent(window: *mut GtkWindow) -> gboolean;
20914    pub fn gtk_window_get_focus(window: *mut GtkWindow) -> *mut GtkWidget;
20915    pub fn gtk_window_get_focus_visible(window: *mut GtkWindow) -> gboolean;
20916    #[cfg(feature = "v4_20")]
20917    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20918    pub fn gtk_window_get_gravity(window: *mut GtkWindow) -> GtkWindowGravity;
20919    pub fn gtk_window_get_group(window: *mut GtkWindow) -> *mut GtkWindowGroup;
20920    #[cfg(feature = "v4_2")]
20921    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
20922    pub fn gtk_window_get_handle_menubar_accel(window: *mut GtkWindow) -> gboolean;
20923    pub fn gtk_window_get_hide_on_close(window: *mut GtkWindow) -> gboolean;
20924    pub fn gtk_window_get_icon_name(window: *mut GtkWindow) -> *const c_char;
20925    pub fn gtk_window_get_mnemonics_visible(window: *mut GtkWindow) -> gboolean;
20926    pub fn gtk_window_get_modal(window: *mut GtkWindow) -> gboolean;
20927    pub fn gtk_window_get_resizable(window: *mut GtkWindow) -> gboolean;
20928    pub fn gtk_window_get_title(window: *mut GtkWindow) -> *const c_char;
20929    pub fn gtk_window_get_titlebar(window: *mut GtkWindow) -> *mut GtkWidget;
20930    pub fn gtk_window_get_transient_for(window: *mut GtkWindow) -> *mut GtkWindow;
20931    pub fn gtk_window_has_group(window: *mut GtkWindow) -> gboolean;
20932    pub fn gtk_window_is_active(window: *mut GtkWindow) -> gboolean;
20933    pub fn gtk_window_is_fullscreen(window: *mut GtkWindow) -> gboolean;
20934    pub fn gtk_window_is_maximized(window: *mut GtkWindow) -> gboolean;
20935    #[cfg(feature = "v4_12")]
20936    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20937    pub fn gtk_window_is_suspended(window: *mut GtkWindow) -> gboolean;
20938    pub fn gtk_window_maximize(window: *mut GtkWindow);
20939    pub fn gtk_window_minimize(window: *mut GtkWindow);
20940    pub fn gtk_window_present(window: *mut GtkWindow);
20941    pub fn gtk_window_present_with_time(window: *mut GtkWindow, timestamp: u32);
20942    pub fn gtk_window_set_application(window: *mut GtkWindow, application: *mut GtkApplication);
20943    pub fn gtk_window_set_child(window: *mut GtkWindow, child: *mut GtkWidget);
20944    pub fn gtk_window_set_decorated(window: *mut GtkWindow, setting: gboolean);
20945    pub fn gtk_window_set_default_size(window: *mut GtkWindow, width: c_int, height: c_int);
20946    pub fn gtk_window_set_default_widget(window: *mut GtkWindow, default_widget: *mut GtkWidget);
20947    pub fn gtk_window_set_deletable(window: *mut GtkWindow, setting: gboolean);
20948    pub fn gtk_window_set_destroy_with_parent(window: *mut GtkWindow, setting: gboolean);
20949    pub fn gtk_window_set_display(window: *mut GtkWindow, display: *mut gdk::GdkDisplay);
20950    pub fn gtk_window_set_focus(window: *mut GtkWindow, focus: *mut GtkWidget);
20951    pub fn gtk_window_set_focus_visible(window: *mut GtkWindow, setting: gboolean);
20952    #[cfg(feature = "v4_20")]
20953    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20954    pub fn gtk_window_set_gravity(window: *mut GtkWindow, gravity: GtkWindowGravity);
20955    #[cfg(feature = "v4_2")]
20956    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
20957    pub fn gtk_window_set_handle_menubar_accel(
20958        window: *mut GtkWindow,
20959        handle_menubar_accel: gboolean,
20960    );
20961    pub fn gtk_window_set_hide_on_close(window: *mut GtkWindow, setting: gboolean);
20962    pub fn gtk_window_set_icon_name(window: *mut GtkWindow, name: *const c_char);
20963    pub fn gtk_window_set_mnemonics_visible(window: *mut GtkWindow, setting: gboolean);
20964    pub fn gtk_window_set_modal(window: *mut GtkWindow, modal: gboolean);
20965    pub fn gtk_window_set_resizable(window: *mut GtkWindow, resizable: gboolean);
20966    pub fn gtk_window_set_startup_id(window: *mut GtkWindow, startup_id: *const c_char);
20967    pub fn gtk_window_set_title(window: *mut GtkWindow, title: *const c_char);
20968    pub fn gtk_window_set_titlebar(window: *mut GtkWindow, titlebar: *mut GtkWidget);
20969    pub fn gtk_window_set_transient_for(window: *mut GtkWindow, parent: *mut GtkWindow);
20970    pub fn gtk_window_unfullscreen(window: *mut GtkWindow);
20971    pub fn gtk_window_unmaximize(window: *mut GtkWindow);
20972    pub fn gtk_window_unminimize(window: *mut GtkWindow);
20973
20974    //=========================================================================
20975    // GtkWindowControls
20976    //=========================================================================
20977    pub fn gtk_window_controls_get_type() -> GType;
20978    pub fn gtk_window_controls_new(side: GtkPackType) -> *mut GtkWidget;
20979    pub fn gtk_window_controls_get_decoration_layout(
20980        self_: *mut GtkWindowControls,
20981    ) -> *const c_char;
20982    pub fn gtk_window_controls_get_empty(self_: *mut GtkWindowControls) -> gboolean;
20983    pub fn gtk_window_controls_get_side(self_: *mut GtkWindowControls) -> GtkPackType;
20984    #[cfg(feature = "v4_18")]
20985    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20986    pub fn gtk_window_controls_get_use_native_controls(self_: *mut GtkWindowControls) -> gboolean;
20987    pub fn gtk_window_controls_set_decoration_layout(
20988        self_: *mut GtkWindowControls,
20989        layout: *const c_char,
20990    );
20991    pub fn gtk_window_controls_set_side(self_: *mut GtkWindowControls, side: GtkPackType);
20992    #[cfg(feature = "v4_18")]
20993    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20994    pub fn gtk_window_controls_set_use_native_controls(
20995        self_: *mut GtkWindowControls,
20996        setting: gboolean,
20997    );
20998
20999    //=========================================================================
21000    // GtkWindowGroup
21001    //=========================================================================
21002    pub fn gtk_window_group_get_type() -> GType;
21003    pub fn gtk_window_group_new() -> *mut GtkWindowGroup;
21004    pub fn gtk_window_group_add_window(window_group: *mut GtkWindowGroup, window: *mut GtkWindow);
21005    pub fn gtk_window_group_list_windows(window_group: *mut GtkWindowGroup) -> *mut glib::GList;
21006    pub fn gtk_window_group_remove_window(
21007        window_group: *mut GtkWindowGroup,
21008        window: *mut GtkWindow,
21009    );
21010
21011    //=========================================================================
21012    // GtkWindowHandle
21013    //=========================================================================
21014    pub fn gtk_window_handle_get_type() -> GType;
21015    pub fn gtk_window_handle_new() -> *mut GtkWidget;
21016    pub fn gtk_window_handle_get_child(self_: *mut GtkWindowHandle) -> *mut GtkWidget;
21017    pub fn gtk_window_handle_set_child(self_: *mut GtkWindowHandle, child: *mut GtkWidget);
21018
21019    //=========================================================================
21020    // GtkAccessible
21021    //=========================================================================
21022    pub fn gtk_accessible_get_type() -> GType;
21023    #[cfg(feature = "v4_14")]
21024    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21025    pub fn gtk_accessible_announce(
21026        self_: *mut GtkAccessible,
21027        message: *const c_char,
21028        priority: GtkAccessibleAnnouncementPriority,
21029    );
21030    #[cfg(feature = "v4_10")]
21031    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21032    pub fn gtk_accessible_get_accessible_parent(self_: *mut GtkAccessible) -> *mut GtkAccessible;
21033    pub fn gtk_accessible_get_accessible_role(self_: *mut GtkAccessible) -> GtkAccessibleRole;
21034    #[cfg(feature = "v4_10")]
21035    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21036    pub fn gtk_accessible_get_at_context(self_: *mut GtkAccessible) -> *mut GtkATContext;
21037    #[cfg(feature = "v4_10")]
21038    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21039    pub fn gtk_accessible_get_bounds(
21040        self_: *mut GtkAccessible,
21041        x: *mut c_int,
21042        y: *mut c_int,
21043        width: *mut c_int,
21044        height: *mut c_int,
21045    ) -> gboolean;
21046    #[cfg(feature = "v4_10")]
21047    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21048    pub fn gtk_accessible_get_first_accessible_child(
21049        self_: *mut GtkAccessible,
21050    ) -> *mut GtkAccessible;
21051    #[cfg(feature = "v4_10")]
21052    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21053    pub fn gtk_accessible_get_next_accessible_sibling(
21054        self_: *mut GtkAccessible,
21055    ) -> *mut GtkAccessible;
21056    #[cfg(feature = "v4_10")]
21057    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21058    pub fn gtk_accessible_get_platform_state(
21059        self_: *mut GtkAccessible,
21060        state: GtkAccessiblePlatformState,
21061    ) -> gboolean;
21062    pub fn gtk_accessible_reset_property(
21063        self_: *mut GtkAccessible,
21064        property: GtkAccessibleProperty,
21065    );
21066    pub fn gtk_accessible_reset_relation(
21067        self_: *mut GtkAccessible,
21068        relation: GtkAccessibleRelation,
21069    );
21070    pub fn gtk_accessible_reset_state(self_: *mut GtkAccessible, state: GtkAccessibleState);
21071    #[cfg(feature = "v4_10")]
21072    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21073    pub fn gtk_accessible_set_accessible_parent(
21074        self_: *mut GtkAccessible,
21075        parent: *mut GtkAccessible,
21076        next_sibling: *mut GtkAccessible,
21077    );
21078    #[cfg(feature = "v4_10")]
21079    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21080    pub fn gtk_accessible_update_next_accessible_sibling(
21081        self_: *mut GtkAccessible,
21082        new_sibling: *mut GtkAccessible,
21083    );
21084    #[cfg(feature = "v4_18")]
21085    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
21086    pub fn gtk_accessible_update_platform_state(
21087        self_: *mut GtkAccessible,
21088        state: GtkAccessiblePlatformState,
21089    );
21090    pub fn gtk_accessible_update_property(
21091        self_: *mut GtkAccessible,
21092        first_property: GtkAccessibleProperty,
21093        ...
21094    );
21095    pub fn gtk_accessible_update_property_value(
21096        self_: *mut GtkAccessible,
21097        n_properties: c_int,
21098        properties: *mut GtkAccessibleProperty,
21099        values: *const gobject::GValue,
21100    );
21101    pub fn gtk_accessible_update_relation(
21102        self_: *mut GtkAccessible,
21103        first_relation: GtkAccessibleRelation,
21104        ...
21105    );
21106    pub fn gtk_accessible_update_relation_value(
21107        self_: *mut GtkAccessible,
21108        n_relations: c_int,
21109        relations: *mut GtkAccessibleRelation,
21110        values: *const gobject::GValue,
21111    );
21112    pub fn gtk_accessible_update_state(
21113        self_: *mut GtkAccessible,
21114        first_state: GtkAccessibleState,
21115        ...
21116    );
21117    pub fn gtk_accessible_update_state_value(
21118        self_: *mut GtkAccessible,
21119        n_states: c_int,
21120        states: *mut GtkAccessibleState,
21121        values: *const gobject::GValue,
21122    );
21123
21124    //=========================================================================
21125    // GtkAccessibleHypertext
21126    //=========================================================================
21127    #[cfg(feature = "v4_22")]
21128    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21129    pub fn gtk_accessible_hypertext_get_type() -> GType;
21130
21131    //=========================================================================
21132    // GtkAccessibleRange
21133    //=========================================================================
21134    #[cfg(feature = "v4_10")]
21135    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21136    pub fn gtk_accessible_range_get_type() -> GType;
21137
21138    //=========================================================================
21139    // GtkAccessibleText
21140    //=========================================================================
21141    #[cfg(feature = "v4_14")]
21142    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21143    pub fn gtk_accessible_text_get_type() -> GType;
21144    #[cfg(feature = "v4_14")]
21145    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21146    pub fn gtk_accessible_text_update_caret_position(self_: *mut GtkAccessibleText);
21147    #[cfg(feature = "v4_14")]
21148    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21149    pub fn gtk_accessible_text_update_contents(
21150        self_: *mut GtkAccessibleText,
21151        change: GtkAccessibleTextContentChange,
21152        start: c_uint,
21153        end: c_uint,
21154    );
21155    #[cfg(feature = "v4_14")]
21156    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21157    pub fn gtk_accessible_text_update_selection_bound(self_: *mut GtkAccessibleText);
21158
21159    //=========================================================================
21160    // GtkActionable
21161    //=========================================================================
21162    pub fn gtk_actionable_get_type() -> GType;
21163    pub fn gtk_actionable_get_action_name(actionable: *mut GtkActionable) -> *const c_char;
21164    pub fn gtk_actionable_get_action_target_value(
21165        actionable: *mut GtkActionable,
21166    ) -> *mut glib::GVariant;
21167    pub fn gtk_actionable_set_action_name(
21168        actionable: *mut GtkActionable,
21169        action_name: *const c_char,
21170    );
21171    pub fn gtk_actionable_set_action_target(
21172        actionable: *mut GtkActionable,
21173        format_string: *const c_char,
21174        ...
21175    );
21176    pub fn gtk_actionable_set_action_target_value(
21177        actionable: *mut GtkActionable,
21178        target_value: *mut glib::GVariant,
21179    );
21180    pub fn gtk_actionable_set_detailed_action_name(
21181        actionable: *mut GtkActionable,
21182        detailed_action_name: *const c_char,
21183    );
21184
21185    //=========================================================================
21186    // GtkAppChooser
21187    //=========================================================================
21188    pub fn gtk_app_chooser_get_type() -> GType;
21189    pub fn gtk_app_chooser_get_app_info(self_: *mut GtkAppChooser) -> *mut gio::GAppInfo;
21190    pub fn gtk_app_chooser_get_content_type(self_: *mut GtkAppChooser) -> *mut c_char;
21191    pub fn gtk_app_chooser_refresh(self_: *mut GtkAppChooser);
21192
21193    //=========================================================================
21194    // GtkBuildable
21195    //=========================================================================
21196    pub fn gtk_buildable_get_type() -> GType;
21197    pub fn gtk_buildable_get_buildable_id(buildable: *mut GtkBuildable) -> *const c_char;
21198
21199    //=========================================================================
21200    // GtkBuilderScope
21201    //=========================================================================
21202    pub fn gtk_builder_scope_get_type() -> GType;
21203
21204    //=========================================================================
21205    // GtkCellEditable
21206    //=========================================================================
21207    pub fn gtk_cell_editable_get_type() -> GType;
21208    pub fn gtk_cell_editable_editing_done(cell_editable: *mut GtkCellEditable);
21209    pub fn gtk_cell_editable_remove_widget(cell_editable: *mut GtkCellEditable);
21210    pub fn gtk_cell_editable_start_editing(
21211        cell_editable: *mut GtkCellEditable,
21212        event: *mut gdk::GdkEvent,
21213    );
21214
21215    //=========================================================================
21216    // GtkCellLayout
21217    //=========================================================================
21218    pub fn gtk_cell_layout_get_type() -> GType;
21219    pub fn gtk_cell_layout_add_attribute(
21220        cell_layout: *mut GtkCellLayout,
21221        cell: *mut GtkCellRenderer,
21222        attribute: *const c_char,
21223        column: c_int,
21224    );
21225    pub fn gtk_cell_layout_clear(cell_layout: *mut GtkCellLayout);
21226    pub fn gtk_cell_layout_clear_attributes(
21227        cell_layout: *mut GtkCellLayout,
21228        cell: *mut GtkCellRenderer,
21229    );
21230    pub fn gtk_cell_layout_get_area(cell_layout: *mut GtkCellLayout) -> *mut GtkCellArea;
21231    pub fn gtk_cell_layout_get_cells(cell_layout: *mut GtkCellLayout) -> *mut glib::GList;
21232    pub fn gtk_cell_layout_pack_end(
21233        cell_layout: *mut GtkCellLayout,
21234        cell: *mut GtkCellRenderer,
21235        expand: gboolean,
21236    );
21237    pub fn gtk_cell_layout_pack_start(
21238        cell_layout: *mut GtkCellLayout,
21239        cell: *mut GtkCellRenderer,
21240        expand: gboolean,
21241    );
21242    pub fn gtk_cell_layout_reorder(
21243        cell_layout: *mut GtkCellLayout,
21244        cell: *mut GtkCellRenderer,
21245        position: c_int,
21246    );
21247    pub fn gtk_cell_layout_set_attributes(
21248        cell_layout: *mut GtkCellLayout,
21249        cell: *mut GtkCellRenderer,
21250        ...
21251    );
21252    pub fn gtk_cell_layout_set_cell_data_func(
21253        cell_layout: *mut GtkCellLayout,
21254        cell: *mut GtkCellRenderer,
21255        func: GtkCellLayoutDataFunc,
21256        func_data: gpointer,
21257        destroy: glib::GDestroyNotify,
21258    );
21259
21260    //=========================================================================
21261    // GtkColorChooser
21262    //=========================================================================
21263    pub fn gtk_color_chooser_get_type() -> GType;
21264    pub fn gtk_color_chooser_add_palette(
21265        chooser: *mut GtkColorChooser,
21266        orientation: GtkOrientation,
21267        colors_per_line: c_int,
21268        n_colors: c_int,
21269        colors: *mut gdk::GdkRGBA,
21270    );
21271    pub fn gtk_color_chooser_get_rgba(chooser: *mut GtkColorChooser, color: *mut gdk::GdkRGBA);
21272    pub fn gtk_color_chooser_get_use_alpha(chooser: *mut GtkColorChooser) -> gboolean;
21273    pub fn gtk_color_chooser_set_rgba(chooser: *mut GtkColorChooser, color: *const gdk::GdkRGBA);
21274    pub fn gtk_color_chooser_set_use_alpha(chooser: *mut GtkColorChooser, use_alpha: gboolean);
21275
21276    //=========================================================================
21277    // GtkConstraintTarget
21278    //=========================================================================
21279    pub fn gtk_constraint_target_get_type() -> GType;
21280
21281    //=========================================================================
21282    // GtkEditable
21283    //=========================================================================
21284    pub fn gtk_editable_get_type() -> GType;
21285    pub fn gtk_editable_delegate_get_property(
21286        object: *mut gobject::GObject,
21287        prop_id: c_uint,
21288        value: *mut gobject::GValue,
21289        pspec: *mut gobject::GParamSpec,
21290    ) -> gboolean;
21291    pub fn gtk_editable_delegate_set_property(
21292        object: *mut gobject::GObject,
21293        prop_id: c_uint,
21294        value: *const gobject::GValue,
21295        pspec: *mut gobject::GParamSpec,
21296    ) -> gboolean;
21297    pub fn gtk_editable_install_properties(
21298        object_class: *mut gobject::GObjectClass,
21299        first_prop: c_uint,
21300    ) -> c_uint;
21301    #[cfg(feature = "v4_10")]
21302    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21303    pub fn gtk_editable_delegate_get_accessible_platform_state(
21304        editable: *mut GtkEditable,
21305        state: GtkAccessiblePlatformState,
21306    ) -> gboolean;
21307    pub fn gtk_editable_delete_selection(editable: *mut GtkEditable);
21308    pub fn gtk_editable_delete_text(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
21309    pub fn gtk_editable_finish_delegate(editable: *mut GtkEditable);
21310    pub fn gtk_editable_get_alignment(editable: *mut GtkEditable) -> c_float;
21311    pub fn gtk_editable_get_chars(
21312        editable: *mut GtkEditable,
21313        start_pos: c_int,
21314        end_pos: c_int,
21315    ) -> *mut c_char;
21316    pub fn gtk_editable_get_delegate(editable: *mut GtkEditable) -> *mut GtkEditable;
21317    pub fn gtk_editable_get_editable(editable: *mut GtkEditable) -> gboolean;
21318    pub fn gtk_editable_get_enable_undo(editable: *mut GtkEditable) -> gboolean;
21319    pub fn gtk_editable_get_max_width_chars(editable: *mut GtkEditable) -> c_int;
21320    pub fn gtk_editable_get_position(editable: *mut GtkEditable) -> c_int;
21321    pub fn gtk_editable_get_selection_bounds(
21322        editable: *mut GtkEditable,
21323        start_pos: *mut c_int,
21324        end_pos: *mut c_int,
21325    ) -> gboolean;
21326    pub fn gtk_editable_get_text(editable: *mut GtkEditable) -> *const c_char;
21327    pub fn gtk_editable_get_width_chars(editable: *mut GtkEditable) -> c_int;
21328    pub fn gtk_editable_init_delegate(editable: *mut GtkEditable);
21329    pub fn gtk_editable_insert_text(
21330        editable: *mut GtkEditable,
21331        text: *const c_char,
21332        length: c_int,
21333        position: *mut c_int,
21334    );
21335    pub fn gtk_editable_select_region(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
21336    pub fn gtk_editable_set_alignment(editable: *mut GtkEditable, xalign: c_float);
21337    pub fn gtk_editable_set_editable(editable: *mut GtkEditable, is_editable: gboolean);
21338    pub fn gtk_editable_set_enable_undo(editable: *mut GtkEditable, enable_undo: gboolean);
21339    pub fn gtk_editable_set_max_width_chars(editable: *mut GtkEditable, n_chars: c_int);
21340    pub fn gtk_editable_set_position(editable: *mut GtkEditable, position: c_int);
21341    pub fn gtk_editable_set_text(editable: *mut GtkEditable, text: *const c_char);
21342    pub fn gtk_editable_set_width_chars(editable: *mut GtkEditable, n_chars: c_int);
21343
21344    //=========================================================================
21345    // GtkFileChooser
21346    //=========================================================================
21347    pub fn gtk_file_chooser_get_type() -> GType;
21348    pub fn gtk_file_chooser_add_choice(
21349        chooser: *mut GtkFileChooser,
21350        id: *const c_char,
21351        label: *const c_char,
21352        options: *mut *const c_char,
21353        option_labels: *mut *const c_char,
21354    );
21355    pub fn gtk_file_chooser_add_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21356    pub fn gtk_file_chooser_add_shortcut_folder(
21357        chooser: *mut GtkFileChooser,
21358        folder: *mut gio::GFile,
21359        error: *mut *mut glib::GError,
21360    ) -> gboolean;
21361    pub fn gtk_file_chooser_get_action(chooser: *mut GtkFileChooser) -> GtkFileChooserAction;
21362    pub fn gtk_file_chooser_get_choice(
21363        chooser: *mut GtkFileChooser,
21364        id: *const c_char,
21365    ) -> *const c_char;
21366    pub fn gtk_file_chooser_get_create_folders(chooser: *mut GtkFileChooser) -> gboolean;
21367    pub fn gtk_file_chooser_get_current_folder(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
21368    pub fn gtk_file_chooser_get_current_name(chooser: *mut GtkFileChooser) -> *mut c_char;
21369    pub fn gtk_file_chooser_get_file(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
21370    pub fn gtk_file_chooser_get_files(chooser: *mut GtkFileChooser) -> *mut gio::GListModel;
21371    pub fn gtk_file_chooser_get_filter(chooser: *mut GtkFileChooser) -> *mut GtkFileFilter;
21372    pub fn gtk_file_chooser_get_filters(chooser: *mut GtkFileChooser) -> *mut gio::GListModel;
21373    pub fn gtk_file_chooser_get_select_multiple(chooser: *mut GtkFileChooser) -> gboolean;
21374    pub fn gtk_file_chooser_get_shortcut_folders(
21375        chooser: *mut GtkFileChooser,
21376    ) -> *mut gio::GListModel;
21377    pub fn gtk_file_chooser_remove_choice(chooser: *mut GtkFileChooser, id: *const c_char);
21378    pub fn gtk_file_chooser_remove_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21379    pub fn gtk_file_chooser_remove_shortcut_folder(
21380        chooser: *mut GtkFileChooser,
21381        folder: *mut gio::GFile,
21382        error: *mut *mut glib::GError,
21383    ) -> gboolean;
21384    pub fn gtk_file_chooser_set_action(chooser: *mut GtkFileChooser, action: GtkFileChooserAction);
21385    pub fn gtk_file_chooser_set_choice(
21386        chooser: *mut GtkFileChooser,
21387        id: *const c_char,
21388        option: *const c_char,
21389    );
21390    pub fn gtk_file_chooser_set_create_folders(
21391        chooser: *mut GtkFileChooser,
21392        create_folders: gboolean,
21393    );
21394    pub fn gtk_file_chooser_set_current_folder(
21395        chooser: *mut GtkFileChooser,
21396        file: *mut gio::GFile,
21397        error: *mut *mut glib::GError,
21398    ) -> gboolean;
21399    pub fn gtk_file_chooser_set_current_name(chooser: *mut GtkFileChooser, name: *const c_char);
21400    pub fn gtk_file_chooser_set_file(
21401        chooser: *mut GtkFileChooser,
21402        file: *mut gio::GFile,
21403        error: *mut *mut glib::GError,
21404    ) -> gboolean;
21405    pub fn gtk_file_chooser_set_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21406    pub fn gtk_file_chooser_set_select_multiple(
21407        chooser: *mut GtkFileChooser,
21408        select_multiple: gboolean,
21409    );
21410
21411    //=========================================================================
21412    // GtkFontChooser
21413    //=========================================================================
21414    pub fn gtk_font_chooser_get_type() -> GType;
21415    pub fn gtk_font_chooser_get_font(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21416    pub fn gtk_font_chooser_get_font_desc(
21417        fontchooser: *mut GtkFontChooser,
21418    ) -> *mut pango::PangoFontDescription;
21419    pub fn gtk_font_chooser_get_font_face(
21420        fontchooser: *mut GtkFontChooser,
21421    ) -> *mut pango::PangoFontFace;
21422    pub fn gtk_font_chooser_get_font_family(
21423        fontchooser: *mut GtkFontChooser,
21424    ) -> *mut pango::PangoFontFamily;
21425    pub fn gtk_font_chooser_get_font_features(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21426    pub fn gtk_font_chooser_get_font_map(
21427        fontchooser: *mut GtkFontChooser,
21428    ) -> *mut pango::PangoFontMap;
21429    pub fn gtk_font_chooser_get_font_size(fontchooser: *mut GtkFontChooser) -> c_int;
21430    pub fn gtk_font_chooser_get_language(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21431    pub fn gtk_font_chooser_get_level(fontchooser: *mut GtkFontChooser) -> GtkFontChooserLevel;
21432    pub fn gtk_font_chooser_get_preview_text(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21433    pub fn gtk_font_chooser_get_show_preview_entry(fontchooser: *mut GtkFontChooser) -> gboolean;
21434    pub fn gtk_font_chooser_set_filter_func(
21435        fontchooser: *mut GtkFontChooser,
21436        filter: GtkFontFilterFunc,
21437        user_data: gpointer,
21438        destroy: glib::GDestroyNotify,
21439    );
21440    pub fn gtk_font_chooser_set_font(fontchooser: *mut GtkFontChooser, fontname: *const c_char);
21441    pub fn gtk_font_chooser_set_font_desc(
21442        fontchooser: *mut GtkFontChooser,
21443        font_desc: *const pango::PangoFontDescription,
21444    );
21445    pub fn gtk_font_chooser_set_font_map(
21446        fontchooser: *mut GtkFontChooser,
21447        fontmap: *mut pango::PangoFontMap,
21448    );
21449    pub fn gtk_font_chooser_set_language(fontchooser: *mut GtkFontChooser, language: *const c_char);
21450    pub fn gtk_font_chooser_set_level(fontchooser: *mut GtkFontChooser, level: GtkFontChooserLevel);
21451    pub fn gtk_font_chooser_set_preview_text(fontchooser: *mut GtkFontChooser, text: *const c_char);
21452    pub fn gtk_font_chooser_set_show_preview_entry(
21453        fontchooser: *mut GtkFontChooser,
21454        show_preview_entry: gboolean,
21455    );
21456
21457    //=========================================================================
21458    // GtkNative
21459    //=========================================================================
21460    pub fn gtk_native_get_type() -> GType;
21461    pub fn gtk_native_get_for_surface(surface: *mut gdk::GdkSurface) -> *mut GtkNative;
21462    pub fn gtk_native_get_renderer(self_: *mut GtkNative) -> *mut gsk::GskRenderer;
21463    pub fn gtk_native_get_surface(self_: *mut GtkNative) -> *mut gdk::GdkSurface;
21464    pub fn gtk_native_get_surface_transform(
21465        self_: *mut GtkNative,
21466        x: *mut c_double,
21467        y: *mut c_double,
21468    );
21469    pub fn gtk_native_realize(self_: *mut GtkNative);
21470    pub fn gtk_native_unrealize(self_: *mut GtkNative);
21471
21472    //=========================================================================
21473    // GtkOrientable
21474    //=========================================================================
21475    pub fn gtk_orientable_get_type() -> GType;
21476    pub fn gtk_orientable_get_orientation(orientable: *mut GtkOrientable) -> GtkOrientation;
21477    pub fn gtk_orientable_set_orientation(
21478        orientable: *mut GtkOrientable,
21479        orientation: GtkOrientation,
21480    );
21481
21482    //=========================================================================
21483    // GtkPrintOperationPreview
21484    //=========================================================================
21485    pub fn gtk_print_operation_preview_get_type() -> GType;
21486    pub fn gtk_print_operation_preview_end_preview(preview: *mut GtkPrintOperationPreview);
21487    pub fn gtk_print_operation_preview_is_selected(
21488        preview: *mut GtkPrintOperationPreview,
21489        page_nr: c_int,
21490    ) -> gboolean;
21491    pub fn gtk_print_operation_preview_render_page(
21492        preview: *mut GtkPrintOperationPreview,
21493        page_nr: c_int,
21494    );
21495
21496    //=========================================================================
21497    // GtkRoot
21498    //=========================================================================
21499    pub fn gtk_root_get_type() -> GType;
21500    pub fn gtk_root_get_display(self_: *mut GtkRoot) -> *mut gdk::GdkDisplay;
21501    pub fn gtk_root_get_focus(self_: *mut GtkRoot) -> *mut GtkWidget;
21502    pub fn gtk_root_set_focus(self_: *mut GtkRoot, focus: *mut GtkWidget);
21503
21504    //=========================================================================
21505    // GtkScrollable
21506    //=========================================================================
21507    pub fn gtk_scrollable_get_type() -> GType;
21508    pub fn gtk_scrollable_get_border(
21509        scrollable: *mut GtkScrollable,
21510        border: *mut GtkBorder,
21511    ) -> gboolean;
21512    pub fn gtk_scrollable_get_hadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
21513    pub fn gtk_scrollable_get_hscroll_policy(scrollable: *mut GtkScrollable)
21514        -> GtkScrollablePolicy;
21515    pub fn gtk_scrollable_get_vadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
21516    pub fn gtk_scrollable_get_vscroll_policy(scrollable: *mut GtkScrollable)
21517        -> GtkScrollablePolicy;
21518    pub fn gtk_scrollable_set_hadjustment(
21519        scrollable: *mut GtkScrollable,
21520        hadjustment: *mut GtkAdjustment,
21521    );
21522    pub fn gtk_scrollable_set_hscroll_policy(
21523        scrollable: *mut GtkScrollable,
21524        policy: GtkScrollablePolicy,
21525    );
21526    pub fn gtk_scrollable_set_vadjustment(
21527        scrollable: *mut GtkScrollable,
21528        vadjustment: *mut GtkAdjustment,
21529    );
21530    pub fn gtk_scrollable_set_vscroll_policy(
21531        scrollable: *mut GtkScrollable,
21532        policy: GtkScrollablePolicy,
21533    );
21534
21535    //=========================================================================
21536    // GtkSectionModel
21537    //=========================================================================
21538    #[cfg(feature = "v4_12")]
21539    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21540    pub fn gtk_section_model_get_type() -> GType;
21541    #[cfg(feature = "v4_12")]
21542    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21543    pub fn gtk_section_model_get_section(
21544        self_: *mut GtkSectionModel,
21545        position: c_uint,
21546        out_start: *mut c_uint,
21547        out_end: *mut c_uint,
21548    );
21549    #[cfg(feature = "v4_12")]
21550    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21551    pub fn gtk_section_model_sections_changed(
21552        self_: *mut GtkSectionModel,
21553        position: c_uint,
21554        n_items: c_uint,
21555    );
21556
21557    //=========================================================================
21558    // GtkSelectionModel
21559    //=========================================================================
21560    pub fn gtk_selection_model_get_type() -> GType;
21561    pub fn gtk_selection_model_get_selection(model: *mut GtkSelectionModel) -> *mut GtkBitset;
21562    pub fn gtk_selection_model_get_selection_in_range(
21563        model: *mut GtkSelectionModel,
21564        position: c_uint,
21565        n_items: c_uint,
21566    ) -> *mut GtkBitset;
21567    pub fn gtk_selection_model_is_selected(
21568        model: *mut GtkSelectionModel,
21569        position: c_uint,
21570    ) -> gboolean;
21571    pub fn gtk_selection_model_select_all(model: *mut GtkSelectionModel) -> gboolean;
21572    pub fn gtk_selection_model_select_item(
21573        model: *mut GtkSelectionModel,
21574        position: c_uint,
21575        unselect_rest: gboolean,
21576    ) -> gboolean;
21577    pub fn gtk_selection_model_select_range(
21578        model: *mut GtkSelectionModel,
21579        position: c_uint,
21580        n_items: c_uint,
21581        unselect_rest: gboolean,
21582    ) -> gboolean;
21583    pub fn gtk_selection_model_selection_changed(
21584        model: *mut GtkSelectionModel,
21585        position: c_uint,
21586        n_items: c_uint,
21587    );
21588    pub fn gtk_selection_model_set_selection(
21589        model: *mut GtkSelectionModel,
21590        selected: *mut GtkBitset,
21591        mask: *mut GtkBitset,
21592    ) -> gboolean;
21593    pub fn gtk_selection_model_unselect_all(model: *mut GtkSelectionModel) -> gboolean;
21594    pub fn gtk_selection_model_unselect_item(
21595        model: *mut GtkSelectionModel,
21596        position: c_uint,
21597    ) -> gboolean;
21598    pub fn gtk_selection_model_unselect_range(
21599        model: *mut GtkSelectionModel,
21600        position: c_uint,
21601        n_items: c_uint,
21602    ) -> gboolean;
21603
21604    //=========================================================================
21605    // GtkShortcutManager
21606    //=========================================================================
21607    pub fn gtk_shortcut_manager_get_type() -> GType;
21608
21609    //=========================================================================
21610    // GtkStyleProvider
21611    //=========================================================================
21612    pub fn gtk_style_provider_get_type() -> GType;
21613
21614    //=========================================================================
21615    // GtkSymbolicPaintable
21616    //=========================================================================
21617    #[cfg(feature = "v4_6")]
21618    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
21619    pub fn gtk_symbolic_paintable_get_type() -> GType;
21620    #[cfg(feature = "v4_6")]
21621    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
21622    pub fn gtk_symbolic_paintable_snapshot_symbolic(
21623        paintable: *mut GtkSymbolicPaintable,
21624        snapshot: *mut gdk::GdkSnapshot,
21625        width: c_double,
21626        height: c_double,
21627        colors: *const gdk::GdkRGBA,
21628        n_colors: size_t,
21629    );
21630    #[cfg(feature = "v4_22")]
21631    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21632    pub fn gtk_symbolic_paintable_snapshot_with_weight(
21633        paintable: *mut GtkSymbolicPaintable,
21634        snapshot: *mut gdk::GdkSnapshot,
21635        width: c_double,
21636        height: c_double,
21637        colors: *const gdk::GdkRGBA,
21638        n_colors: size_t,
21639        weight: c_double,
21640    );
21641
21642    //=========================================================================
21643    // GtkTreeDragDest
21644    //=========================================================================
21645    pub fn gtk_tree_drag_dest_get_type() -> GType;
21646    pub fn gtk_tree_drag_dest_drag_data_received(
21647        drag_dest: *mut GtkTreeDragDest,
21648        dest: *mut GtkTreePath,
21649        value: *const gobject::GValue,
21650    ) -> gboolean;
21651    pub fn gtk_tree_drag_dest_row_drop_possible(
21652        drag_dest: *mut GtkTreeDragDest,
21653        dest_path: *mut GtkTreePath,
21654        value: *const gobject::GValue,
21655    ) -> gboolean;
21656
21657    //=========================================================================
21658    // GtkTreeDragSource
21659    //=========================================================================
21660    pub fn gtk_tree_drag_source_get_type() -> GType;
21661    pub fn gtk_tree_drag_source_drag_data_delete(
21662        drag_source: *mut GtkTreeDragSource,
21663        path: *mut GtkTreePath,
21664    ) -> gboolean;
21665    pub fn gtk_tree_drag_source_drag_data_get(
21666        drag_source: *mut GtkTreeDragSource,
21667        path: *mut GtkTreePath,
21668    ) -> *mut gdk::GdkContentProvider;
21669    pub fn gtk_tree_drag_source_row_draggable(
21670        drag_source: *mut GtkTreeDragSource,
21671        path: *mut GtkTreePath,
21672    ) -> gboolean;
21673
21674    //=========================================================================
21675    // GtkTreeModel
21676    //=========================================================================
21677    pub fn gtk_tree_model_get_type() -> GType;
21678    pub fn gtk_tree_model_filter_new(
21679        child_model: *mut GtkTreeModel,
21680        root: *mut GtkTreePath,
21681    ) -> *mut GtkTreeModel;
21682    pub fn gtk_tree_model_foreach(
21683        model: *mut GtkTreeModel,
21684        func: GtkTreeModelForeachFunc,
21685        user_data: gpointer,
21686    );
21687    pub fn gtk_tree_model_get(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, ...);
21688    pub fn gtk_tree_model_get_column_type(tree_model: *mut GtkTreeModel, index_: c_int) -> GType;
21689    pub fn gtk_tree_model_get_flags(tree_model: *mut GtkTreeModel) -> GtkTreeModelFlags;
21690    pub fn gtk_tree_model_get_iter(
21691        tree_model: *mut GtkTreeModel,
21692        iter: *mut GtkTreeIter,
21693        path: *mut GtkTreePath,
21694    ) -> gboolean;
21695    pub fn gtk_tree_model_get_iter_first(
21696        tree_model: *mut GtkTreeModel,
21697        iter: *mut GtkTreeIter,
21698    ) -> gboolean;
21699    pub fn gtk_tree_model_get_iter_from_string(
21700        tree_model: *mut GtkTreeModel,
21701        iter: *mut GtkTreeIter,
21702        path_string: *const c_char,
21703    ) -> gboolean;
21704    pub fn gtk_tree_model_get_n_columns(tree_model: *mut GtkTreeModel) -> c_int;
21705    pub fn gtk_tree_model_get_path(
21706        tree_model: *mut GtkTreeModel,
21707        iter: *mut GtkTreeIter,
21708    ) -> *mut GtkTreePath;
21709    pub fn gtk_tree_model_get_string_from_iter(
21710        tree_model: *mut GtkTreeModel,
21711        iter: *mut GtkTreeIter,
21712    ) -> *mut c_char;
21713    //pub fn gtk_tree_model_get_valist(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
21714    pub fn gtk_tree_model_get_value(
21715        tree_model: *mut GtkTreeModel,
21716        iter: *mut GtkTreeIter,
21717        column: c_int,
21718        value: *mut gobject::GValue,
21719    );
21720    pub fn gtk_tree_model_iter_children(
21721        tree_model: *mut GtkTreeModel,
21722        iter: *mut GtkTreeIter,
21723        parent: *mut GtkTreeIter,
21724    ) -> gboolean;
21725    pub fn gtk_tree_model_iter_has_child(
21726        tree_model: *mut GtkTreeModel,
21727        iter: *mut GtkTreeIter,
21728    ) -> gboolean;
21729    pub fn gtk_tree_model_iter_n_children(
21730        tree_model: *mut GtkTreeModel,
21731        iter: *mut GtkTreeIter,
21732    ) -> c_int;
21733    pub fn gtk_tree_model_iter_next(
21734        tree_model: *mut GtkTreeModel,
21735        iter: *mut GtkTreeIter,
21736    ) -> gboolean;
21737    pub fn gtk_tree_model_iter_nth_child(
21738        tree_model: *mut GtkTreeModel,
21739        iter: *mut GtkTreeIter,
21740        parent: *mut GtkTreeIter,
21741        n: c_int,
21742    ) -> gboolean;
21743    pub fn gtk_tree_model_iter_parent(
21744        tree_model: *mut GtkTreeModel,
21745        iter: *mut GtkTreeIter,
21746        child: *mut GtkTreeIter,
21747    ) -> gboolean;
21748    pub fn gtk_tree_model_iter_previous(
21749        tree_model: *mut GtkTreeModel,
21750        iter: *mut GtkTreeIter,
21751    ) -> gboolean;
21752    pub fn gtk_tree_model_ref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
21753    pub fn gtk_tree_model_row_changed(
21754        tree_model: *mut GtkTreeModel,
21755        path: *mut GtkTreePath,
21756        iter: *mut GtkTreeIter,
21757    );
21758    pub fn gtk_tree_model_row_deleted(tree_model: *mut GtkTreeModel, path: *mut GtkTreePath);
21759    pub fn gtk_tree_model_row_has_child_toggled(
21760        tree_model: *mut GtkTreeModel,
21761        path: *mut GtkTreePath,
21762        iter: *mut GtkTreeIter,
21763    );
21764    pub fn gtk_tree_model_row_inserted(
21765        tree_model: *mut GtkTreeModel,
21766        path: *mut GtkTreePath,
21767        iter: *mut GtkTreeIter,
21768    );
21769    pub fn gtk_tree_model_rows_reordered(
21770        tree_model: *mut GtkTreeModel,
21771        path: *mut GtkTreePath,
21772        iter: *mut GtkTreeIter,
21773        new_order: *mut c_int,
21774    );
21775    pub fn gtk_tree_model_rows_reordered_with_length(
21776        tree_model: *mut GtkTreeModel,
21777        path: *mut GtkTreePath,
21778        iter: *mut GtkTreeIter,
21779        new_order: *mut c_int,
21780        length: c_int,
21781    );
21782    pub fn gtk_tree_model_unref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
21783
21784    //=========================================================================
21785    // GtkTreeSortable
21786    //=========================================================================
21787    pub fn gtk_tree_sortable_get_type() -> GType;
21788    pub fn gtk_tree_sortable_get_sort_column_id(
21789        sortable: *mut GtkTreeSortable,
21790        sort_column_id: *mut c_int,
21791        order: *mut GtkSortType,
21792    ) -> gboolean;
21793    pub fn gtk_tree_sortable_has_default_sort_func(sortable: *mut GtkTreeSortable) -> gboolean;
21794    pub fn gtk_tree_sortable_set_default_sort_func(
21795        sortable: *mut GtkTreeSortable,
21796        sort_func: GtkTreeIterCompareFunc,
21797        user_data: gpointer,
21798        destroy: glib::GDestroyNotify,
21799    );
21800    pub fn gtk_tree_sortable_set_sort_column_id(
21801        sortable: *mut GtkTreeSortable,
21802        sort_column_id: c_int,
21803        order: GtkSortType,
21804    );
21805    pub fn gtk_tree_sortable_set_sort_func(
21806        sortable: *mut GtkTreeSortable,
21807        sort_column_id: c_int,
21808        sort_func: GtkTreeIterCompareFunc,
21809        user_data: gpointer,
21810        destroy: glib::GDestroyNotify,
21811    );
21812    pub fn gtk_tree_sortable_sort_column_changed(sortable: *mut GtkTreeSortable);
21813
21814    //=========================================================================
21815    // Other functions
21816    //=========================================================================
21817    #[cfg(feature = "v4_22")]
21818    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21819    pub fn gtk_accelerator_get_accessible_label(
21820        accelerator_key: c_uint,
21821        accelerator_mods: gdk::GdkModifierType,
21822    ) -> *mut c_char;
21823    pub fn gtk_accelerator_get_default_mod_mask() -> gdk::GdkModifierType;
21824    pub fn gtk_accelerator_get_label(
21825        accelerator_key: c_uint,
21826        accelerator_mods: gdk::GdkModifierType,
21827    ) -> *mut c_char;
21828    pub fn gtk_accelerator_get_label_with_keycode(
21829        display: *mut gdk::GdkDisplay,
21830        accelerator_key: c_uint,
21831        keycode: c_uint,
21832        accelerator_mods: gdk::GdkModifierType,
21833    ) -> *mut c_char;
21834    pub fn gtk_accelerator_name(
21835        accelerator_key: c_uint,
21836        accelerator_mods: gdk::GdkModifierType,
21837    ) -> *mut c_char;
21838    pub fn gtk_accelerator_name_with_keycode(
21839        display: *mut gdk::GdkDisplay,
21840        accelerator_key: c_uint,
21841        keycode: c_uint,
21842        accelerator_mods: gdk::GdkModifierType,
21843    ) -> *mut c_char;
21844    pub fn gtk_accelerator_parse(
21845        accelerator: *const c_char,
21846        accelerator_key: *mut c_uint,
21847        accelerator_mods: *mut gdk::GdkModifierType,
21848    ) -> gboolean;
21849    pub fn gtk_accelerator_parse_with_keycode(
21850        accelerator: *const c_char,
21851        display: *mut gdk::GdkDisplay,
21852        accelerator_key: *mut c_uint,
21853        accelerator_codes: *mut *mut c_uint,
21854        accelerator_mods: *mut gdk::GdkModifierType,
21855    ) -> gboolean;
21856    pub fn gtk_accelerator_valid(keyval: c_uint, modifiers: gdk::GdkModifierType) -> gboolean;
21857    pub fn gtk_check_version(
21858        required_major: c_uint,
21859        required_minor: c_uint,
21860        required_micro: c_uint,
21861    ) -> *const c_char;
21862    pub fn gtk_css_parser_error_quark() -> glib::GQuark;
21863    pub fn gtk_css_parser_warning_quark() -> glib::GQuark;
21864    #[cfg(feature = "v4_22")]
21865    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21866    pub fn gtk_disable_portal_interfaces(portal_interfaces: *mut *const c_char);
21867    #[cfg(feature = "v4_18")]
21868    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
21869    pub fn gtk_disable_portals();
21870    pub fn gtk_disable_setlocale();
21871    pub fn gtk_distribute_natural_allocation(
21872        extra_space: c_int,
21873        n_requested_sizes: c_uint,
21874        sizes: *mut GtkRequestedSize,
21875    ) -> c_int;
21876    pub fn gtk_enumerate_printers(
21877        func: GtkPrinterFunc,
21878        data: gpointer,
21879        destroy: glib::GDestroyNotify,
21880        wait: gboolean,
21881    );
21882    pub fn gtk_get_binary_age() -> c_uint;
21883    pub fn gtk_get_debug_flags() -> GtkDebugFlags;
21884    pub fn gtk_get_default_language() -> *mut pango::PangoLanguage;
21885    pub fn gtk_get_interface_age() -> c_uint;
21886    pub fn gtk_get_locale_direction() -> GtkTextDirection;
21887    pub fn gtk_get_major_version() -> c_uint;
21888    pub fn gtk_get_micro_version() -> c_uint;
21889    pub fn gtk_get_minor_version() -> c_uint;
21890    pub fn gtk_hsv_to_rgb(
21891        h: c_float,
21892        s: c_float,
21893        v: c_float,
21894        r: *mut c_float,
21895        g: *mut c_float,
21896        b: *mut c_float,
21897    );
21898    pub fn gtk_init();
21899    pub fn gtk_init_check() -> gboolean;
21900    pub fn gtk_is_initialized() -> gboolean;
21901    pub fn gtk_param_spec_expression(
21902        name: *const c_char,
21903        nick: *const c_char,
21904        blurb: *const c_char,
21905        flags: gobject::GParamFlags,
21906    ) -> *mut gobject::GParamSpec;
21907    pub fn gtk_print_run_page_setup_dialog(
21908        parent: *mut GtkWindow,
21909        page_setup: *mut GtkPageSetup,
21910        settings: *mut GtkPrintSettings,
21911    ) -> *mut GtkPageSetup;
21912    pub fn gtk_print_run_page_setup_dialog_async(
21913        parent: *mut GtkWindow,
21914        page_setup: *mut GtkPageSetup,
21915        settings: *mut GtkPrintSettings,
21916        done_cb: GtkPageSetupDoneFunc,
21917        data: gpointer,
21918    );
21919    pub fn gtk_render_activity(
21920        context: *mut GtkStyleContext,
21921        cr: *mut cairo::cairo_t,
21922        x: c_double,
21923        y: c_double,
21924        width: c_double,
21925        height: c_double,
21926    );
21927    pub fn gtk_render_arrow(
21928        context: *mut GtkStyleContext,
21929        cr: *mut cairo::cairo_t,
21930        angle: c_double,
21931        x: c_double,
21932        y: c_double,
21933        size: c_double,
21934    );
21935    pub fn gtk_render_background(
21936        context: *mut GtkStyleContext,
21937        cr: *mut cairo::cairo_t,
21938        x: c_double,
21939        y: c_double,
21940        width: c_double,
21941        height: c_double,
21942    );
21943    pub fn gtk_render_check(
21944        context: *mut GtkStyleContext,
21945        cr: *mut cairo::cairo_t,
21946        x: c_double,
21947        y: c_double,
21948        width: c_double,
21949        height: c_double,
21950    );
21951    pub fn gtk_render_expander(
21952        context: *mut GtkStyleContext,
21953        cr: *mut cairo::cairo_t,
21954        x: c_double,
21955        y: c_double,
21956        width: c_double,
21957        height: c_double,
21958    );
21959    pub fn gtk_render_focus(
21960        context: *mut GtkStyleContext,
21961        cr: *mut cairo::cairo_t,
21962        x: c_double,
21963        y: c_double,
21964        width: c_double,
21965        height: c_double,
21966    );
21967    pub fn gtk_render_frame(
21968        context: *mut GtkStyleContext,
21969        cr: *mut cairo::cairo_t,
21970        x: c_double,
21971        y: c_double,
21972        width: c_double,
21973        height: c_double,
21974    );
21975    pub fn gtk_render_handle(
21976        context: *mut GtkStyleContext,
21977        cr: *mut cairo::cairo_t,
21978        x: c_double,
21979        y: c_double,
21980        width: c_double,
21981        height: c_double,
21982    );
21983    pub fn gtk_render_icon(
21984        context: *mut GtkStyleContext,
21985        cr: *mut cairo::cairo_t,
21986        texture: *mut gdk::GdkTexture,
21987        x: c_double,
21988        y: c_double,
21989    );
21990    pub fn gtk_render_layout(
21991        context: *mut GtkStyleContext,
21992        cr: *mut cairo::cairo_t,
21993        x: c_double,
21994        y: c_double,
21995        layout: *mut pango::PangoLayout,
21996    );
21997    pub fn gtk_render_line(
21998        context: *mut GtkStyleContext,
21999        cr: *mut cairo::cairo_t,
22000        x0: c_double,
22001        y0: c_double,
22002        x1: c_double,
22003        y1: c_double,
22004    );
22005    pub fn gtk_render_option(
22006        context: *mut GtkStyleContext,
22007        cr: *mut cairo::cairo_t,
22008        x: c_double,
22009        y: c_double,
22010        width: c_double,
22011        height: c_double,
22012    );
22013    pub fn gtk_rgb_to_hsv(
22014        r: c_float,
22015        g: c_float,
22016        b: c_float,
22017        h: *mut c_float,
22018        s: *mut c_float,
22019        v: *mut c_float,
22020    );
22021    pub fn gtk_set_debug_flags(flags: GtkDebugFlags);
22022    pub fn gtk_show_about_dialog(parent: *mut GtkWindow, first_property_name: *const c_char, ...);
22023    pub fn gtk_show_uri(parent: *mut GtkWindow, uri: *const c_char, timestamp: u32);
22024    pub fn gtk_show_uri_full(
22025        parent: *mut GtkWindow,
22026        uri: *const c_char,
22027        timestamp: u32,
22028        cancellable: *mut gio::GCancellable,
22029        callback: gio::GAsyncReadyCallback,
22030        user_data: gpointer,
22031    );
22032    pub fn gtk_show_uri_full_finish(
22033        parent: *mut GtkWindow,
22034        result: *mut gio::GAsyncResult,
22035        error: *mut *mut glib::GError,
22036    ) -> gboolean;
22037    pub fn gtk_test_accessible_assertion_message_role(
22038        domain: *const c_char,
22039        file: *const c_char,
22040        line: c_int,
22041        func: *const c_char,
22042        expr: *const c_char,
22043        accessible: *mut GtkAccessible,
22044        expected_role: GtkAccessibleRole,
22045        actual_role: GtkAccessibleRole,
22046    );
22047    pub fn gtk_test_accessible_check_property(
22048        accessible: *mut GtkAccessible,
22049        property: GtkAccessibleProperty,
22050        ...
22051    ) -> *mut c_char;
22052    pub fn gtk_test_accessible_check_relation(
22053        accessible: *mut GtkAccessible,
22054        relation: GtkAccessibleRelation,
22055        ...
22056    ) -> *mut c_char;
22057    pub fn gtk_test_accessible_check_state(
22058        accessible: *mut GtkAccessible,
22059        state: GtkAccessibleState,
22060        ...
22061    ) -> *mut c_char;
22062    pub fn gtk_test_accessible_has_property(
22063        accessible: *mut GtkAccessible,
22064        property: GtkAccessibleProperty,
22065    ) -> gboolean;
22066    pub fn gtk_test_accessible_has_relation(
22067        accessible: *mut GtkAccessible,
22068        relation: GtkAccessibleRelation,
22069    ) -> gboolean;
22070    pub fn gtk_test_accessible_has_role(
22071        accessible: *mut GtkAccessible,
22072        role: GtkAccessibleRole,
22073    ) -> gboolean;
22074    pub fn gtk_test_accessible_has_state(
22075        accessible: *mut GtkAccessible,
22076        state: GtkAccessibleState,
22077    ) -> gboolean;
22078    pub fn gtk_test_init(argcp: *mut c_int, argvp: *mut *mut *mut c_char, ...);
22079    pub fn gtk_test_list_all_types(n_types: *mut c_uint) -> *const GType;
22080    pub fn gtk_test_register_all_types();
22081    pub fn gtk_test_widget_wait_for_draw(widget: *mut GtkWidget);
22082    pub fn gtk_tree_create_row_drag_content(
22083        tree_model: *mut GtkTreeModel,
22084        path: *mut GtkTreePath,
22085    ) -> *mut gdk::GdkContentProvider;
22086    pub fn gtk_tree_get_row_drag_data(
22087        value: *const gobject::GValue,
22088        tree_model: *mut *mut GtkTreeModel,
22089        path: *mut *mut GtkTreePath,
22090    ) -> gboolean;
22091    pub fn gtk_value_dup_expression(value: *const gobject::GValue) -> *mut GtkExpression;
22092    pub fn gtk_value_get_expression(value: *const gobject::GValue) -> *mut GtkExpression;
22093    pub fn gtk_value_set_expression(value: *mut gobject::GValue, expression: *mut GtkExpression);
22094    pub fn gtk_value_take_expression(value: *mut gobject::GValue, expression: *mut GtkExpression);
22095
22096}