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 GtkResponseType = c_int;
737pub const GTK_RESPONSE_NONE: GtkResponseType = -1;
738pub const GTK_RESPONSE_REJECT: GtkResponseType = -2;
739pub const GTK_RESPONSE_ACCEPT: GtkResponseType = -3;
740pub const GTK_RESPONSE_DELETE_EVENT: GtkResponseType = -4;
741pub const GTK_RESPONSE_OK: GtkResponseType = -5;
742pub const GTK_RESPONSE_CANCEL: GtkResponseType = -6;
743pub const GTK_RESPONSE_CLOSE: GtkResponseType = -7;
744pub const GTK_RESPONSE_YES: GtkResponseType = -8;
745pub const GTK_RESPONSE_NO: GtkResponseType = -9;
746pub const GTK_RESPONSE_APPLY: GtkResponseType = -10;
747pub const GTK_RESPONSE_HELP: GtkResponseType = -11;
748
749pub type GtkRevealerTransitionType = c_int;
750pub const GTK_REVEALER_TRANSITION_TYPE_NONE: GtkRevealerTransitionType = 0;
751pub const GTK_REVEALER_TRANSITION_TYPE_CROSSFADE: GtkRevealerTransitionType = 1;
752pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT: GtkRevealerTransitionType = 2;
753pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT: GtkRevealerTransitionType = 3;
754pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP: GtkRevealerTransitionType = 4;
755pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN: GtkRevealerTransitionType = 5;
756pub const GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT: GtkRevealerTransitionType = 6;
757pub const GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT: GtkRevealerTransitionType = 7;
758pub const GTK_REVEALER_TRANSITION_TYPE_SWING_UP: GtkRevealerTransitionType = 8;
759pub const GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN: GtkRevealerTransitionType = 9;
760
761pub type GtkScrollStep = c_int;
762pub const GTK_SCROLL_STEPS: GtkScrollStep = 0;
763pub const GTK_SCROLL_PAGES: GtkScrollStep = 1;
764pub const GTK_SCROLL_ENDS: GtkScrollStep = 2;
765pub const GTK_SCROLL_HORIZONTAL_STEPS: GtkScrollStep = 3;
766pub const GTK_SCROLL_HORIZONTAL_PAGES: GtkScrollStep = 4;
767pub const GTK_SCROLL_HORIZONTAL_ENDS: GtkScrollStep = 5;
768
769pub type GtkScrollType = c_int;
770pub const GTK_SCROLL_NONE: GtkScrollType = 0;
771pub const GTK_SCROLL_JUMP: GtkScrollType = 1;
772pub const GTK_SCROLL_STEP_BACKWARD: GtkScrollType = 2;
773pub const GTK_SCROLL_STEP_FORWARD: GtkScrollType = 3;
774pub const GTK_SCROLL_PAGE_BACKWARD: GtkScrollType = 4;
775pub const GTK_SCROLL_PAGE_FORWARD: GtkScrollType = 5;
776pub const GTK_SCROLL_STEP_UP: GtkScrollType = 6;
777pub const GTK_SCROLL_STEP_DOWN: GtkScrollType = 7;
778pub const GTK_SCROLL_PAGE_UP: GtkScrollType = 8;
779pub const GTK_SCROLL_PAGE_DOWN: GtkScrollType = 9;
780pub const GTK_SCROLL_STEP_LEFT: GtkScrollType = 10;
781pub const GTK_SCROLL_STEP_RIGHT: GtkScrollType = 11;
782pub const GTK_SCROLL_PAGE_LEFT: GtkScrollType = 12;
783pub const GTK_SCROLL_PAGE_RIGHT: GtkScrollType = 13;
784pub const GTK_SCROLL_START: GtkScrollType = 14;
785pub const GTK_SCROLL_END: GtkScrollType = 15;
786
787pub type GtkScrollablePolicy = c_int;
788pub const GTK_SCROLL_MINIMUM: GtkScrollablePolicy = 0;
789pub const GTK_SCROLL_NATURAL: GtkScrollablePolicy = 1;
790
791pub type GtkSelectionMode = c_int;
792pub const GTK_SELECTION_NONE: GtkSelectionMode = 0;
793pub const GTK_SELECTION_SINGLE: GtkSelectionMode = 1;
794pub const GTK_SELECTION_BROWSE: GtkSelectionMode = 2;
795pub const GTK_SELECTION_MULTIPLE: GtkSelectionMode = 3;
796
797pub type GtkSensitivityType = c_int;
798pub const GTK_SENSITIVITY_AUTO: GtkSensitivityType = 0;
799pub const GTK_SENSITIVITY_ON: GtkSensitivityType = 1;
800pub const GTK_SENSITIVITY_OFF: GtkSensitivityType = 2;
801
802pub type GtkShortcutScope = c_int;
803pub const GTK_SHORTCUT_SCOPE_LOCAL: GtkShortcutScope = 0;
804pub const GTK_SHORTCUT_SCOPE_MANAGED: GtkShortcutScope = 1;
805pub const GTK_SHORTCUT_SCOPE_GLOBAL: GtkShortcutScope = 2;
806
807pub type GtkShortcutType = c_int;
808pub const GTK_SHORTCUT_ACCELERATOR: GtkShortcutType = 0;
809pub const GTK_SHORTCUT_GESTURE_PINCH: GtkShortcutType = 1;
810pub const GTK_SHORTCUT_GESTURE_STRETCH: GtkShortcutType = 2;
811pub const GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE: GtkShortcutType = 3;
812pub const GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE: GtkShortcutType = 4;
813pub const GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT: GtkShortcutType = 5;
814pub const GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT: GtkShortcutType = 6;
815pub const GTK_SHORTCUT_GESTURE: GtkShortcutType = 7;
816pub const GTK_SHORTCUT_GESTURE_SWIPE_LEFT: GtkShortcutType = 8;
817pub const GTK_SHORTCUT_GESTURE_SWIPE_RIGHT: GtkShortcutType = 9;
818
819pub type GtkSizeGroupMode = c_int;
820pub const GTK_SIZE_GROUP_NONE: GtkSizeGroupMode = 0;
821pub const GTK_SIZE_GROUP_HORIZONTAL: GtkSizeGroupMode = 1;
822pub const GTK_SIZE_GROUP_VERTICAL: GtkSizeGroupMode = 2;
823pub const GTK_SIZE_GROUP_BOTH: GtkSizeGroupMode = 3;
824
825pub type GtkSizeRequestMode = c_int;
826pub const GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH: GtkSizeRequestMode = 0;
827pub const GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT: GtkSizeRequestMode = 1;
828pub const GTK_SIZE_REQUEST_CONSTANT_SIZE: GtkSizeRequestMode = 2;
829
830pub type GtkSortType = c_int;
831pub const GTK_SORT_ASCENDING: GtkSortType = 0;
832pub const GTK_SORT_DESCENDING: GtkSortType = 1;
833
834pub type GtkSorterChange = c_int;
835pub const GTK_SORTER_CHANGE_DIFFERENT: GtkSorterChange = 0;
836pub const GTK_SORTER_CHANGE_INVERTED: GtkSorterChange = 1;
837pub const GTK_SORTER_CHANGE_LESS_STRICT: GtkSorterChange = 2;
838pub const GTK_SORTER_CHANGE_MORE_STRICT: GtkSorterChange = 3;
839
840pub type GtkSorterOrder = c_int;
841pub const GTK_SORTER_ORDER_PARTIAL: GtkSorterOrder = 0;
842pub const GTK_SORTER_ORDER_NONE: GtkSorterOrder = 1;
843pub const GTK_SORTER_ORDER_TOTAL: GtkSorterOrder = 2;
844
845pub type GtkSpinButtonUpdatePolicy = c_int;
846pub const GTK_UPDATE_ALWAYS: GtkSpinButtonUpdatePolicy = 0;
847pub const GTK_UPDATE_IF_VALID: GtkSpinButtonUpdatePolicy = 1;
848
849pub type GtkSpinType = c_int;
850pub const GTK_SPIN_STEP_FORWARD: GtkSpinType = 0;
851pub const GTK_SPIN_STEP_BACKWARD: GtkSpinType = 1;
852pub const GTK_SPIN_PAGE_FORWARD: GtkSpinType = 2;
853pub const GTK_SPIN_PAGE_BACKWARD: GtkSpinType = 3;
854pub const GTK_SPIN_HOME: GtkSpinType = 4;
855pub const GTK_SPIN_END: GtkSpinType = 5;
856pub const GTK_SPIN_USER_DEFINED: GtkSpinType = 6;
857
858pub type GtkStackTransitionType = c_int;
859pub const GTK_STACK_TRANSITION_TYPE_NONE: GtkStackTransitionType = 0;
860pub const GTK_STACK_TRANSITION_TYPE_CROSSFADE: GtkStackTransitionType = 1;
861pub const GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT: GtkStackTransitionType = 2;
862pub const GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT: GtkStackTransitionType = 3;
863pub const GTK_STACK_TRANSITION_TYPE_SLIDE_UP: GtkStackTransitionType = 4;
864pub const GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN: GtkStackTransitionType = 5;
865pub const GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT: GtkStackTransitionType = 6;
866pub const GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN: GtkStackTransitionType = 7;
867pub const GTK_STACK_TRANSITION_TYPE_OVER_UP: GtkStackTransitionType = 8;
868pub const GTK_STACK_TRANSITION_TYPE_OVER_DOWN: GtkStackTransitionType = 9;
869pub const GTK_STACK_TRANSITION_TYPE_OVER_LEFT: GtkStackTransitionType = 10;
870pub const GTK_STACK_TRANSITION_TYPE_OVER_RIGHT: GtkStackTransitionType = 11;
871pub const GTK_STACK_TRANSITION_TYPE_UNDER_UP: GtkStackTransitionType = 12;
872pub const GTK_STACK_TRANSITION_TYPE_UNDER_DOWN: GtkStackTransitionType = 13;
873pub const GTK_STACK_TRANSITION_TYPE_UNDER_LEFT: GtkStackTransitionType = 14;
874pub const GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT: GtkStackTransitionType = 15;
875pub const GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN: GtkStackTransitionType = 16;
876pub const GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP: GtkStackTransitionType = 17;
877pub const GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT: GtkStackTransitionType = 18;
878pub const GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT: GtkStackTransitionType = 19;
879pub const GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT: GtkStackTransitionType = 20;
880pub const GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT: GtkStackTransitionType = 21;
881pub const GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT: GtkStackTransitionType = 22;
882
883pub type GtkStringFilterMatchMode = c_int;
884pub const GTK_STRING_FILTER_MATCH_MODE_EXACT: GtkStringFilterMatchMode = 0;
885pub const GTK_STRING_FILTER_MATCH_MODE_SUBSTRING: GtkStringFilterMatchMode = 1;
886pub const GTK_STRING_FILTER_MATCH_MODE_PREFIX: GtkStringFilterMatchMode = 2;
887
888pub type GtkSymbolicColor = c_int;
889pub const GTK_SYMBOLIC_COLOR_FOREGROUND: GtkSymbolicColor = 0;
890pub const GTK_SYMBOLIC_COLOR_ERROR: GtkSymbolicColor = 1;
891pub const GTK_SYMBOLIC_COLOR_WARNING: GtkSymbolicColor = 2;
892pub const GTK_SYMBOLIC_COLOR_SUCCESS: GtkSymbolicColor = 3;
893
894pub type GtkSystemSetting = c_int;
895pub const GTK_SYSTEM_SETTING_DPI: GtkSystemSetting = 0;
896pub const GTK_SYSTEM_SETTING_FONT_NAME: GtkSystemSetting = 1;
897pub const GTK_SYSTEM_SETTING_FONT_CONFIG: GtkSystemSetting = 2;
898pub const GTK_SYSTEM_SETTING_DISPLAY: GtkSystemSetting = 3;
899pub const GTK_SYSTEM_SETTING_ICON_THEME: GtkSystemSetting = 4;
900
901pub type GtkTextDirection = c_int;
902pub const GTK_TEXT_DIR_NONE: GtkTextDirection = 0;
903pub const GTK_TEXT_DIR_LTR: GtkTextDirection = 1;
904pub const GTK_TEXT_DIR_RTL: GtkTextDirection = 2;
905
906pub type GtkTextExtendSelection = c_int;
907pub const GTK_TEXT_EXTEND_SELECTION_WORD: GtkTextExtendSelection = 0;
908pub const GTK_TEXT_EXTEND_SELECTION_LINE: GtkTextExtendSelection = 1;
909
910pub type GtkTextViewLayer = c_int;
911pub const GTK_TEXT_VIEW_LAYER_BELOW_TEXT: GtkTextViewLayer = 0;
912pub const GTK_TEXT_VIEW_LAYER_ABOVE_TEXT: GtkTextViewLayer = 1;
913
914pub type GtkTextWindowType = c_int;
915pub const GTK_TEXT_WINDOW_WIDGET: GtkTextWindowType = 1;
916pub const GTK_TEXT_WINDOW_TEXT: GtkTextWindowType = 2;
917pub const GTK_TEXT_WINDOW_LEFT: GtkTextWindowType = 3;
918pub const GTK_TEXT_WINDOW_RIGHT: GtkTextWindowType = 4;
919pub const GTK_TEXT_WINDOW_TOP: GtkTextWindowType = 5;
920pub const GTK_TEXT_WINDOW_BOTTOM: GtkTextWindowType = 6;
921
922pub type GtkTreeViewColumnSizing = c_int;
923pub const GTK_TREE_VIEW_COLUMN_GROW_ONLY: GtkTreeViewColumnSizing = 0;
924pub const GTK_TREE_VIEW_COLUMN_AUTOSIZE: GtkTreeViewColumnSizing = 1;
925pub const GTK_TREE_VIEW_COLUMN_FIXED: GtkTreeViewColumnSizing = 2;
926
927pub type GtkTreeViewDropPosition = c_int;
928pub const GTK_TREE_VIEW_DROP_BEFORE: GtkTreeViewDropPosition = 0;
929pub const GTK_TREE_VIEW_DROP_AFTER: GtkTreeViewDropPosition = 1;
930pub const GTK_TREE_VIEW_DROP_INTO_OR_BEFORE: GtkTreeViewDropPosition = 2;
931pub const GTK_TREE_VIEW_DROP_INTO_OR_AFTER: GtkTreeViewDropPosition = 3;
932
933pub type GtkTreeViewGridLines = c_int;
934pub const GTK_TREE_VIEW_GRID_LINES_NONE: GtkTreeViewGridLines = 0;
935pub const GTK_TREE_VIEW_GRID_LINES_HORIZONTAL: GtkTreeViewGridLines = 1;
936pub const GTK_TREE_VIEW_GRID_LINES_VERTICAL: GtkTreeViewGridLines = 2;
937pub const GTK_TREE_VIEW_GRID_LINES_BOTH: GtkTreeViewGridLines = 3;
938
939pub type GtkUnit = c_int;
940pub const GTK_UNIT_NONE: GtkUnit = 0;
941pub const GTK_UNIT_POINTS: GtkUnit = 1;
942pub const GTK_UNIT_INCH: GtkUnit = 2;
943pub const GTK_UNIT_MM: GtkUnit = 3;
944
945pub type GtkWindowGravity = c_int;
946pub const GTK_WINDOW_GRAVITY_TOP_LEFT: GtkWindowGravity = 0;
947pub const GTK_WINDOW_GRAVITY_TOP: GtkWindowGravity = 1;
948pub const GTK_WINDOW_GRAVITY_TOP_RIGHT: GtkWindowGravity = 2;
949pub const GTK_WINDOW_GRAVITY_LEFT: GtkWindowGravity = 3;
950pub const GTK_WINDOW_GRAVITY_CENTER: GtkWindowGravity = 4;
951pub const GTK_WINDOW_GRAVITY_RIGHT: GtkWindowGravity = 5;
952pub const GTK_WINDOW_GRAVITY_BOTTOM_LEFT: GtkWindowGravity = 6;
953pub const GTK_WINDOW_GRAVITY_BOTTOM: GtkWindowGravity = 7;
954pub const GTK_WINDOW_GRAVITY_BOTTOM_RIGHT: GtkWindowGravity = 8;
955pub const GTK_WINDOW_GRAVITY_TOP_START: GtkWindowGravity = 9;
956pub const GTK_WINDOW_GRAVITY_TOP_END: GtkWindowGravity = 10;
957pub const GTK_WINDOW_GRAVITY_START: GtkWindowGravity = 11;
958pub const GTK_WINDOW_GRAVITY_END: GtkWindowGravity = 12;
959pub const GTK_WINDOW_GRAVITY_BOTTOM_START: GtkWindowGravity = 13;
960pub const GTK_WINDOW_GRAVITY_BOTTOM_END: GtkWindowGravity = 14;
961
962pub type GtkWrapMode = c_int;
963pub const GTK_WRAP_NONE: GtkWrapMode = 0;
964pub const GTK_WRAP_CHAR: GtkWrapMode = 1;
965pub const GTK_WRAP_WORD: GtkWrapMode = 2;
966pub const GTK_WRAP_WORD_CHAR: GtkWrapMode = 3;
967
968// Constants
969pub const GTK_ACCESSIBLE_ATTRIBUTE_BACKGROUND: &[u8] = b"bg-color\0";
970pub const GTK_ACCESSIBLE_ATTRIBUTE_FAMILY: &[u8] = b"family-name\0";
971pub const GTK_ACCESSIBLE_ATTRIBUTE_FOREGROUND: &[u8] = b"fg-color\0";
972pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE: &[u8] = b"overline\0";
973pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE_NONE: &[u8] = b"none\0";
974pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE_SINGLE: &[u8] = b"single\0";
975pub const GTK_ACCESSIBLE_ATTRIBUTE_SIZE: &[u8] = b"size\0";
976pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH: &[u8] = b"stretch\0";
977pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_CONDENSED: &[u8] = b"condensed\0";
978pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXPANDED: &[u8] = b"expanded\0";
979pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXTRA_CONDENSED: &[u8] = b"extra_condensed\0";
980pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXTRA_EXPANDED: &[u8] = b"extra_expanded\0";
981pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_NORMAL: &[u8] = b"normal\0";
982pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_SEMI_CONDENSED: &[u8] = b"semi_condensed\0";
983pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_SEMI_EXPANDED: &[u8] = b"semi_expanded\0";
984pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_ULTRA_CONDENSED: &[u8] = b"ultra_condensed\0";
985pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_ULTRA_EXPANDED: &[u8] = b"ultra_expanded\0";
986pub const GTK_ACCESSIBLE_ATTRIBUTE_STRIKETHROUGH: &[u8] = b"strikethrough\0";
987pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE: &[u8] = b"style\0";
988pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_ITALIC: &[u8] = b"italic\0";
989pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_NORMAL: &[u8] = b"normal\0";
990pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_OBLIQUE: &[u8] = b"oblique\0";
991pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE: &[u8] = b"underline\0";
992pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_DOUBLE: &[u8] = b"double\0";
993pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_ERROR: &[u8] = b"error\0";
994pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_NONE: &[u8] = b"none\0";
995pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_SINGLE: &[u8] = b"single\0";
996pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT: &[u8] = b"variant\0";
997pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_ALL_PETITE_CAPS: &[u8] = b"all-petite-caps\0";
998pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_ALL_SMALL_CAPS: &[u8] = b"all-small-caps\0";
999pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_PETITE_CAPS: &[u8] = b"petite-caps\0";
1000pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_SMALL_CAPS: &[u8] = b"small-caps\0";
1001pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_TITLE_CAPS: &[u8] = b"title-caps\0";
1002pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_UNICASE: &[u8] = b"unicase\0";
1003pub const GTK_ACCESSIBLE_ATTRIBUTE_WEIGHT: &[u8] = b"weight\0";
1004pub const GTK_ACCESSIBLE_VALUE_UNDEFINED: c_int = -1;
1005pub const GTK_IM_MODULE_EXTENSION_POINT_NAME: &[u8] = b"gtk-im-module\0";
1006pub const GTK_INPUT_ERROR: c_int = -1;
1007pub const GTK_INVALID_LIST_POSITION: c_uint = 4294967295;
1008pub const GTK_LEVEL_BAR_OFFSET_FULL: &[u8] = b"full\0";
1009pub const GTK_LEVEL_BAR_OFFSET_HIGH: &[u8] = b"high\0";
1010pub const GTK_LEVEL_BAR_OFFSET_LOW: &[u8] = b"low\0";
1011pub const GTK_MAX_COMPOSE_LEN: c_int = 7;
1012pub const GTK_MEDIA_FILE_EXTENSION_POINT_NAME: &[u8] = b"gtk-media-file\0";
1013pub const GTK_PAPER_NAME_A3: &[u8] = b"iso_a3\0";
1014pub const GTK_PAPER_NAME_A4: &[u8] = b"iso_a4\0";
1015pub const GTK_PAPER_NAME_A5: &[u8] = b"iso_a5\0";
1016pub const GTK_PAPER_NAME_B5: &[u8] = b"iso_b5\0";
1017pub const GTK_PAPER_NAME_EXECUTIVE: &[u8] = b"na_executive\0";
1018pub const GTK_PAPER_NAME_LEGAL: &[u8] = b"na_legal\0";
1019pub const GTK_PAPER_NAME_LETTER: &[u8] = b"na_letter\0";
1020pub const GTK_PRINT_SETTINGS_COLLATE: &[u8] = b"collate\0";
1021pub const GTK_PRINT_SETTINGS_DEFAULT_SOURCE: &[u8] = b"default-source\0";
1022pub const GTK_PRINT_SETTINGS_DITHER: &[u8] = b"dither\0";
1023pub const GTK_PRINT_SETTINGS_DUPLEX: &[u8] = b"duplex\0";
1024pub const GTK_PRINT_SETTINGS_FINISHINGS: &[u8] = b"finishings\0";
1025pub const GTK_PRINT_SETTINGS_MEDIA_TYPE: &[u8] = b"media-type\0";
1026pub const GTK_PRINT_SETTINGS_NUMBER_UP: &[u8] = b"number-up\0";
1027pub const GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT: &[u8] = b"number-up-layout\0";
1028pub const GTK_PRINT_SETTINGS_N_COPIES: &[u8] = b"n-copies\0";
1029pub const GTK_PRINT_SETTINGS_ORIENTATION: &[u8] = b"orientation\0";
1030pub const GTK_PRINT_SETTINGS_OUTPUT_BASENAME: &[u8] = b"output-basename\0";
1031pub const GTK_PRINT_SETTINGS_OUTPUT_BIN: &[u8] = b"output-bin\0";
1032pub const GTK_PRINT_SETTINGS_OUTPUT_DIR: &[u8] = b"output-dir\0";
1033pub const GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT: &[u8] = b"output-file-format\0";
1034pub const GTK_PRINT_SETTINGS_OUTPUT_URI: &[u8] = b"output-uri\0";
1035pub const GTK_PRINT_SETTINGS_PAGE_RANGES: &[u8] = b"page-ranges\0";
1036pub const GTK_PRINT_SETTINGS_PAGE_SET: &[u8] = b"page-set\0";
1037pub const GTK_PRINT_SETTINGS_PAPER_FORMAT: &[u8] = b"paper-format\0";
1038pub const GTK_PRINT_SETTINGS_PAPER_HEIGHT: &[u8] = b"paper-height\0";
1039pub const GTK_PRINT_SETTINGS_PAPER_WIDTH: &[u8] = b"paper-width\0";
1040pub const GTK_PRINT_SETTINGS_PRINTER: &[u8] = b"printer\0";
1041pub const GTK_PRINT_SETTINGS_PRINTER_LPI: &[u8] = b"printer-lpi\0";
1042pub const GTK_PRINT_SETTINGS_PRINT_PAGES: &[u8] = b"print-pages\0";
1043pub const GTK_PRINT_SETTINGS_QUALITY: &[u8] = b"quality\0";
1044pub const GTK_PRINT_SETTINGS_RESOLUTION: &[u8] = b"resolution\0";
1045pub const GTK_PRINT_SETTINGS_RESOLUTION_X: &[u8] = b"resolution-x\0";
1046pub const GTK_PRINT_SETTINGS_RESOLUTION_Y: &[u8] = b"resolution-y\0";
1047pub const GTK_PRINT_SETTINGS_REVERSE: &[u8] = b"reverse\0";
1048pub const GTK_PRINT_SETTINGS_SCALE: &[u8] = b"scale\0";
1049pub const GTK_PRINT_SETTINGS_USE_COLOR: &[u8] = b"use-color\0";
1050pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_EXTRA: &[u8] = b"win32-driver-extra\0";
1051pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_VERSION: &[u8] = b"win32-driver-version\0";
1052pub const GTK_PRIORITY_RESIZE: c_int = 110;
1053pub const GTK_STYLE_PROVIDER_PRIORITY_APPLICATION: c_int = 600;
1054pub const GTK_STYLE_PROVIDER_PRIORITY_FALLBACK: c_int = 1;
1055pub const GTK_STYLE_PROVIDER_PRIORITY_SETTINGS: c_int = 400;
1056pub const GTK_STYLE_PROVIDER_PRIORITY_THEME: c_int = 200;
1057pub const GTK_STYLE_PROVIDER_PRIORITY_USER: c_int = 800;
1058pub const GTK_TEXT_VIEW_PRIORITY_VALIDATE: c_int = 125;
1059pub const GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID: c_int = -1;
1060pub const GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID: c_int = -2;
1061
1062// Flags
1063pub type GtkApplicationInhibitFlags = c_uint;
1064pub const GTK_APPLICATION_INHIBIT_LOGOUT: GtkApplicationInhibitFlags = 1;
1065pub const GTK_APPLICATION_INHIBIT_SWITCH: GtkApplicationInhibitFlags = 2;
1066pub const GTK_APPLICATION_INHIBIT_SUSPEND: GtkApplicationInhibitFlags = 4;
1067pub const GTK_APPLICATION_INHIBIT_IDLE: GtkApplicationInhibitFlags = 8;
1068
1069pub type GtkBuilderClosureFlags = c_uint;
1070pub const GTK_BUILDER_CLOSURE_SWAPPED: GtkBuilderClosureFlags = 1;
1071
1072pub type GtkCellRendererState = c_uint;
1073pub const GTK_CELL_RENDERER_SELECTED: GtkCellRendererState = 1;
1074pub const GTK_CELL_RENDERER_PRELIT: GtkCellRendererState = 2;
1075pub const GTK_CELL_RENDERER_INSENSITIVE: GtkCellRendererState = 4;
1076pub const GTK_CELL_RENDERER_SORTED: GtkCellRendererState = 8;
1077pub const GTK_CELL_RENDERER_FOCUSED: GtkCellRendererState = 16;
1078pub const GTK_CELL_RENDERER_EXPANDABLE: GtkCellRendererState = 32;
1079pub const GTK_CELL_RENDERER_EXPANDED: GtkCellRendererState = 64;
1080
1081pub type GtkDebugFlags = c_uint;
1082pub const GTK_DEBUG_TEXT: GtkDebugFlags = 1;
1083pub const GTK_DEBUG_TREE: GtkDebugFlags = 2;
1084pub const GTK_DEBUG_KEYBINDINGS: GtkDebugFlags = 4;
1085pub const GTK_DEBUG_MODULES: GtkDebugFlags = 8;
1086pub const GTK_DEBUG_GEOMETRY: GtkDebugFlags = 16;
1087pub const GTK_DEBUG_ICONTHEME: GtkDebugFlags = 32;
1088pub const GTK_DEBUG_PRINTING: GtkDebugFlags = 64;
1089pub const GTK_DEBUG_BUILDER_TRACE: GtkDebugFlags = 128;
1090pub const GTK_DEBUG_SIZE_REQUEST: GtkDebugFlags = 256;
1091pub const GTK_DEBUG_NO_CSS_CACHE: GtkDebugFlags = 512;
1092pub const GTK_DEBUG_INTERACTIVE: GtkDebugFlags = 1024;
1093#[cfg(feature = "v4_20")]
1094#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1095pub const GTK_DEBUG_TOUCHSCREEN: GtkDebugFlags = 2048;
1096pub const GTK_DEBUG_ACTIONS: GtkDebugFlags = 4096;
1097pub const GTK_DEBUG_LAYOUT: GtkDebugFlags = 8192;
1098pub const GTK_DEBUG_SNAPSHOT: GtkDebugFlags = 16384;
1099pub const GTK_DEBUG_CONSTRAINTS: GtkDebugFlags = 32768;
1100pub const GTK_DEBUG_BUILDER_OBJECTS: GtkDebugFlags = 65536;
1101pub const GTK_DEBUG_A11Y: GtkDebugFlags = 131072;
1102#[cfg(feature = "v4_2")]
1103#[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
1104pub const GTK_DEBUG_ICONFALLBACK: GtkDebugFlags = 262144;
1105#[cfg(feature = "v4_8")]
1106#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
1107pub const GTK_DEBUG_INVERT_TEXT_DIR: GtkDebugFlags = 524288;
1108#[cfg(feature = "v4_16")]
1109#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
1110pub const GTK_DEBUG_CSS: GtkDebugFlags = 1048576;
1111#[cfg(feature = "v4_18")]
1112#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
1113pub const GTK_DEBUG_BUILDER: GtkDebugFlags = 2097152;
1114
1115pub type GtkDialogFlags = c_uint;
1116pub const GTK_DIALOG_MODAL: GtkDialogFlags = 1;
1117pub const GTK_DIALOG_DESTROY_WITH_PARENT: GtkDialogFlags = 2;
1118pub const GTK_DIALOG_USE_HEADER_BAR: GtkDialogFlags = 4;
1119
1120pub type GtkEventControllerScrollFlags = c_uint;
1121pub const GTK_EVENT_CONTROLLER_SCROLL_NONE: GtkEventControllerScrollFlags = 0;
1122pub const GTK_EVENT_CONTROLLER_SCROLL_VERTICAL: GtkEventControllerScrollFlags = 1;
1123pub const GTK_EVENT_CONTROLLER_SCROLL_HORIZONTAL: GtkEventControllerScrollFlags = 2;
1124pub const GTK_EVENT_CONTROLLER_SCROLL_DISCRETE: GtkEventControllerScrollFlags = 4;
1125pub const GTK_EVENT_CONTROLLER_SCROLL_KINETIC: GtkEventControllerScrollFlags = 8;
1126#[cfg(feature = "v4_20")]
1127#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1128pub const GTK_EVENT_CONTROLLER_SCROLL_PHYSICAL_DIRECTION: GtkEventControllerScrollFlags = 16;
1129pub const GTK_EVENT_CONTROLLER_SCROLL_BOTH_AXES: GtkEventControllerScrollFlags = 3;
1130
1131pub type GtkFontChooserLevel = c_uint;
1132pub const GTK_FONT_CHOOSER_LEVEL_FAMILY: GtkFontChooserLevel = 0;
1133pub const GTK_FONT_CHOOSER_LEVEL_STYLE: GtkFontChooserLevel = 1;
1134pub const GTK_FONT_CHOOSER_LEVEL_SIZE: GtkFontChooserLevel = 2;
1135pub const GTK_FONT_CHOOSER_LEVEL_VARIATIONS: GtkFontChooserLevel = 4;
1136pub const GTK_FONT_CHOOSER_LEVEL_FEATURES: GtkFontChooserLevel = 8;
1137
1138pub type GtkIconLookupFlags = c_uint;
1139#[cfg(feature = "v4_18")]
1140#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
1141pub const GTK_ICON_LOOKUP_NONE: GtkIconLookupFlags = 0;
1142pub const GTK_ICON_LOOKUP_FORCE_REGULAR: GtkIconLookupFlags = 1;
1143pub const GTK_ICON_LOOKUP_FORCE_SYMBOLIC: GtkIconLookupFlags = 2;
1144pub const GTK_ICON_LOOKUP_PRELOAD: GtkIconLookupFlags = 4;
1145
1146pub type GtkInputHints = c_uint;
1147pub const GTK_INPUT_HINT_NONE: GtkInputHints = 0;
1148pub const GTK_INPUT_HINT_SPELLCHECK: GtkInputHints = 1;
1149pub const GTK_INPUT_HINT_NO_SPELLCHECK: GtkInputHints = 2;
1150pub const GTK_INPUT_HINT_WORD_COMPLETION: GtkInputHints = 4;
1151pub const GTK_INPUT_HINT_LOWERCASE: GtkInputHints = 8;
1152pub const GTK_INPUT_HINT_UPPERCASE_CHARS: GtkInputHints = 16;
1153pub const GTK_INPUT_HINT_UPPERCASE_WORDS: GtkInputHints = 32;
1154pub const GTK_INPUT_HINT_UPPERCASE_SENTENCES: GtkInputHints = 64;
1155pub const GTK_INPUT_HINT_INHIBIT_OSK: GtkInputHints = 128;
1156pub const GTK_INPUT_HINT_VERTICAL_WRITING: GtkInputHints = 256;
1157pub const GTK_INPUT_HINT_EMOJI: GtkInputHints = 512;
1158pub const GTK_INPUT_HINT_NO_EMOJI: GtkInputHints = 1024;
1159pub const GTK_INPUT_HINT_PRIVATE: GtkInputHints = 2048;
1160
1161pub type GtkListScrollFlags = c_uint;
1162pub const GTK_LIST_SCROLL_NONE: GtkListScrollFlags = 0;
1163pub const GTK_LIST_SCROLL_FOCUS: GtkListScrollFlags = 1;
1164pub const GTK_LIST_SCROLL_SELECT: GtkListScrollFlags = 2;
1165
1166pub type GtkPickFlags = c_uint;
1167pub const GTK_PICK_DEFAULT: GtkPickFlags = 0;
1168pub const GTK_PICK_INSENSITIVE: GtkPickFlags = 1;
1169pub const GTK_PICK_NON_TARGETABLE: GtkPickFlags = 2;
1170
1171pub type GtkPopoverMenuFlags = c_uint;
1172#[cfg(feature = "v4_14")]
1173#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1174pub const GTK_POPOVER_MENU_SLIDING: GtkPopoverMenuFlags = 0;
1175pub const GTK_POPOVER_MENU_NESTED: GtkPopoverMenuFlags = 1;
1176
1177pub type GtkPrintCapabilities = c_uint;
1178pub const GTK_PRINT_CAPABILITY_PAGE_SET: GtkPrintCapabilities = 1;
1179pub const GTK_PRINT_CAPABILITY_COPIES: GtkPrintCapabilities = 2;
1180pub const GTK_PRINT_CAPABILITY_COLLATE: GtkPrintCapabilities = 4;
1181pub const GTK_PRINT_CAPABILITY_REVERSE: GtkPrintCapabilities = 8;
1182pub const GTK_PRINT_CAPABILITY_SCALE: GtkPrintCapabilities = 16;
1183pub const GTK_PRINT_CAPABILITY_GENERATE_PDF: GtkPrintCapabilities = 32;
1184pub const GTK_PRINT_CAPABILITY_GENERATE_PS: GtkPrintCapabilities = 64;
1185pub const GTK_PRINT_CAPABILITY_PREVIEW: GtkPrintCapabilities = 128;
1186pub const GTK_PRINT_CAPABILITY_NUMBER_UP: GtkPrintCapabilities = 256;
1187pub const GTK_PRINT_CAPABILITY_NUMBER_UP_LAYOUT: GtkPrintCapabilities = 512;
1188
1189pub type GtkShortcutActionFlags = c_uint;
1190pub const GTK_SHORTCUT_ACTION_EXCLUSIVE: GtkShortcutActionFlags = 1;
1191
1192pub type GtkStateFlags = c_uint;
1193pub const GTK_STATE_FLAG_NORMAL: GtkStateFlags = 0;
1194pub const GTK_STATE_FLAG_ACTIVE: GtkStateFlags = 1;
1195pub const GTK_STATE_FLAG_PRELIGHT: GtkStateFlags = 2;
1196pub const GTK_STATE_FLAG_SELECTED: GtkStateFlags = 4;
1197pub const GTK_STATE_FLAG_INSENSITIVE: GtkStateFlags = 8;
1198pub const GTK_STATE_FLAG_INCONSISTENT: GtkStateFlags = 16;
1199pub const GTK_STATE_FLAG_FOCUSED: GtkStateFlags = 32;
1200pub const GTK_STATE_FLAG_BACKDROP: GtkStateFlags = 64;
1201pub const GTK_STATE_FLAG_DIR_LTR: GtkStateFlags = 128;
1202pub const GTK_STATE_FLAG_DIR_RTL: GtkStateFlags = 256;
1203pub const GTK_STATE_FLAG_LINK: GtkStateFlags = 512;
1204pub const GTK_STATE_FLAG_VISITED: GtkStateFlags = 1024;
1205pub const GTK_STATE_FLAG_CHECKED: GtkStateFlags = 2048;
1206pub const GTK_STATE_FLAG_DROP_ACTIVE: GtkStateFlags = 4096;
1207pub const GTK_STATE_FLAG_FOCUS_VISIBLE: GtkStateFlags = 8192;
1208pub const GTK_STATE_FLAG_FOCUS_WITHIN: GtkStateFlags = 16384;
1209
1210pub type GtkStyleContextPrintFlags = c_uint;
1211pub const GTK_STYLE_CONTEXT_PRINT_NONE: GtkStyleContextPrintFlags = 0;
1212pub const GTK_STYLE_CONTEXT_PRINT_RECURSE: GtkStyleContextPrintFlags = 1;
1213pub const GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE: GtkStyleContextPrintFlags = 2;
1214pub const GTK_STYLE_CONTEXT_PRINT_SHOW_CHANGE: GtkStyleContextPrintFlags = 4;
1215
1216pub type GtkTextBufferNotifyFlags = c_uint;
1217pub const GTK_TEXT_BUFFER_NOTIFY_BEFORE_INSERT: GtkTextBufferNotifyFlags = 1;
1218pub const GTK_TEXT_BUFFER_NOTIFY_AFTER_INSERT: GtkTextBufferNotifyFlags = 2;
1219pub const GTK_TEXT_BUFFER_NOTIFY_BEFORE_DELETE: GtkTextBufferNotifyFlags = 4;
1220pub const GTK_TEXT_BUFFER_NOTIFY_AFTER_DELETE: GtkTextBufferNotifyFlags = 8;
1221
1222pub type GtkTextSearchFlags = c_uint;
1223pub const GTK_TEXT_SEARCH_VISIBLE_ONLY: GtkTextSearchFlags = 1;
1224pub const GTK_TEXT_SEARCH_TEXT_ONLY: GtkTextSearchFlags = 2;
1225pub const GTK_TEXT_SEARCH_CASE_INSENSITIVE: GtkTextSearchFlags = 4;
1226
1227pub type GtkTreeModelFlags = c_uint;
1228pub const GTK_TREE_MODEL_ITERS_PERSIST: GtkTreeModelFlags = 1;
1229pub const GTK_TREE_MODEL_LIST_ONLY: GtkTreeModelFlags = 2;
1230
1231// Callbacks
1232pub type GtkAssistantPageFunc = Option<unsafe extern "C" fn(c_int, gpointer) -> c_int>;
1233pub type GtkCellAllocCallback = Option<
1234    unsafe extern "C" fn(
1235        *mut GtkCellRenderer,
1236        *const gdk::GdkRectangle,
1237        *const gdk::GdkRectangle,
1238        gpointer,
1239    ) -> gboolean,
1240>;
1241pub type GtkCellCallback = Option<unsafe extern "C" fn(*mut GtkCellRenderer, gpointer) -> gboolean>;
1242pub type GtkCellLayoutDataFunc = Option<
1243    unsafe extern "C" fn(
1244        *mut GtkCellLayout,
1245        *mut GtkCellRenderer,
1246        *mut GtkTreeModel,
1247        *mut GtkTreeIter,
1248        gpointer,
1249    ),
1250>;
1251pub type GtkCustomAllocateFunc = Option<unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, c_int)>;
1252pub type GtkCustomFilterFunc =
1253    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> gboolean>;
1254pub type GtkCustomMeasureFunc = Option<
1255    unsafe extern "C" fn(
1256        *mut GtkWidget,
1257        GtkOrientation,
1258        c_int,
1259        *mut c_int,
1260        *mut c_int,
1261        *mut c_int,
1262        *mut c_int,
1263    ),
1264>;
1265pub type GtkCustomRequestModeFunc =
1266    Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>;
1267pub type GtkDrawingAreaDrawFunc =
1268    Option<unsafe extern "C" fn(*mut GtkDrawingArea, *mut cairo::cairo_t, c_int, c_int, gpointer)>;
1269pub type GtkEntryCompletionMatchFunc = Option<
1270    unsafe extern "C" fn(
1271        *mut GtkEntryCompletion,
1272        *const c_char,
1273        *mut GtkTreeIter,
1274        gpointer,
1275    ) -> gboolean,
1276>;
1277pub type GtkExpressionNotify = Option<unsafe extern "C" fn(gpointer)>;
1278pub type GtkFlowBoxCreateWidgetFunc =
1279    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1280pub type GtkFlowBoxFilterFunc =
1281    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, gpointer) -> gboolean>;
1282pub type GtkFlowBoxForeachFunc =
1283    Option<unsafe extern "C" fn(*mut GtkFlowBox, *mut GtkFlowBoxChild, gpointer)>;
1284pub type GtkFlowBoxSortFunc =
1285    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, *mut GtkFlowBoxChild, gpointer) -> c_int>;
1286pub type GtkFontFilterFunc = Option<
1287    unsafe extern "C" fn(
1288        *const pango::PangoFontFamily,
1289        *const pango::PangoFontFace,
1290        gpointer,
1291    ) -> gboolean,
1292>;
1293pub type GtkIconViewForeachFunc =
1294    Option<unsafe extern "C" fn(*mut GtkIconView, *mut GtkTreePath, gpointer)>;
1295pub type GtkListBoxCreateWidgetFunc =
1296    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1297pub type GtkListBoxFilterFunc =
1298    Option<unsafe extern "C" fn(*mut GtkListBoxRow, gpointer) -> gboolean>;
1299pub type GtkListBoxForeachFunc =
1300    Option<unsafe extern "C" fn(*mut GtkListBox, *mut GtkListBoxRow, gpointer)>;
1301pub type GtkListBoxSortFunc =
1302    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer) -> c_int>;
1303pub type GtkListBoxUpdateHeaderFunc =
1304    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer)>;
1305pub type GtkMapListModelMapFunc =
1306    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut gobject::GObject>;
1307pub type GtkMenuButtonCreatePopupFunc = Option<unsafe extern "C" fn(*mut GtkMenuButton, gpointer)>;
1308pub type GtkPageSetupDoneFunc = Option<unsafe extern "C" fn(*mut GtkPageSetup, gpointer)>;
1309pub type GtkPrintJobCompleteFunc =
1310    Option<unsafe extern "C" fn(*mut GtkPrintJob, gpointer, *const glib::GError)>;
1311pub type GtkPrintSettingsFunc =
1312    Option<unsafe extern "C" fn(*const c_char, *const c_char, gpointer)>;
1313pub type GtkPrinterFunc = Option<unsafe extern "C" fn(*mut GtkPrinter, gpointer) -> gboolean>;
1314pub type GtkScaleFormatValueFunc =
1315    Option<unsafe extern "C" fn(*mut GtkScale, c_double, gpointer) -> *mut c_char>;
1316pub type GtkShortcutFunc =
1317    Option<unsafe extern "C" fn(*mut GtkWidget, *mut glib::GVariant, gpointer) -> gboolean>;
1318pub type GtkTextBufferCommitNotify = Option<
1319    unsafe extern "C" fn(*mut GtkTextBuffer, GtkTextBufferNotifyFlags, c_uint, c_uint, gpointer),
1320>;
1321pub type GtkTextCharPredicate = Option<unsafe extern "C" fn(u32, gpointer) -> gboolean>;
1322pub type GtkTextTagTableForeach = Option<unsafe extern "C" fn(*mut GtkTextTag, gpointer)>;
1323pub type GtkTickCallback =
1324    Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkFrameClock, gpointer) -> gboolean>;
1325pub type GtkTreeCellDataFunc = Option<
1326    unsafe extern "C" fn(
1327        *mut GtkTreeViewColumn,
1328        *mut GtkCellRenderer,
1329        *mut GtkTreeModel,
1330        *mut GtkTreeIter,
1331        gpointer,
1332    ),
1333>;
1334pub type GtkTreeIterCompareFunc = Option<
1335    unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter, gpointer) -> c_int,
1336>;
1337pub type GtkTreeListModelCreateModelFunc =
1338    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut gio::GListModel>;
1339pub type GtkTreeModelFilterModifyFunc = Option<
1340    unsafe extern "C" fn(
1341        *mut GtkTreeModel,
1342        *mut GtkTreeIter,
1343        *mut gobject::GValue,
1344        c_int,
1345        gpointer,
1346    ),
1347>;
1348pub type GtkTreeModelFilterVisibleFunc =
1349    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1350pub type GtkTreeModelForeachFunc = Option<
1351    unsafe extern "C" fn(
1352        *mut GtkTreeModel,
1353        *mut GtkTreePath,
1354        *mut GtkTreeIter,
1355        gpointer,
1356    ) -> gboolean,
1357>;
1358pub type GtkTreeSelectionForeachFunc =
1359    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, gpointer)>;
1360pub type GtkTreeSelectionFunc = Option<
1361    unsafe extern "C" fn(
1362        *mut GtkTreeSelection,
1363        *mut GtkTreeModel,
1364        *mut GtkTreePath,
1365        gboolean,
1366        gpointer,
1367    ) -> gboolean,
1368>;
1369pub type GtkTreeViewColumnDropFunc = Option<
1370    unsafe extern "C" fn(
1371        *mut GtkTreeView,
1372        *mut GtkTreeViewColumn,
1373        *mut GtkTreeViewColumn,
1374        *mut GtkTreeViewColumn,
1375        gpointer,
1376    ) -> gboolean,
1377>;
1378pub type GtkTreeViewMappingFunc =
1379    Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, gpointer)>;
1380pub type GtkTreeViewRowSeparatorFunc =
1381    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1382pub type GtkTreeViewSearchEqualFunc = Option<
1383    unsafe extern "C" fn(
1384        *mut GtkTreeModel,
1385        c_int,
1386        *const c_char,
1387        *mut GtkTreeIter,
1388        gpointer,
1389    ) -> gboolean,
1390>;
1391pub type GtkWidgetActionActivateFunc =
1392    Option<unsafe extern "C" fn(*mut GtkWidget, *const c_char, *mut glib::GVariant)>;
1393
1394// Records
1395#[repr(C)]
1396#[allow(dead_code)]
1397pub struct _GtkATContextClass {
1398    _data: [u8; 0],
1399    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1400}
1401
1402pub type GtkATContextClass = _GtkATContextClass;
1403
1404#[derive(Copy, Clone)]
1405#[repr(C)]
1406pub struct GtkAccessibleInterface {
1407    pub g_iface: gobject::GTypeInterface,
1408    pub get_at_context: Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkATContext>,
1409    pub get_platform_state:
1410        Option<unsafe extern "C" fn(*mut GtkAccessible, GtkAccessiblePlatformState) -> gboolean>,
1411    pub get_accessible_parent:
1412        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1413    pub get_first_accessible_child:
1414        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1415    pub get_next_accessible_sibling:
1416        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1417    pub get_bounds: Option<
1418        unsafe extern "C" fn(
1419            *mut GtkAccessible,
1420            *mut c_int,
1421            *mut c_int,
1422            *mut c_int,
1423            *mut c_int,
1424        ) -> gboolean,
1425    >,
1426}
1427
1428impl ::std::fmt::Debug for GtkAccessibleInterface {
1429    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1430        f.debug_struct(&format!("GtkAccessibleInterface @ {self:p}"))
1431            .field("g_iface", &self.g_iface)
1432            .field("get_at_context", &self.get_at_context)
1433            .field("get_platform_state", &self.get_platform_state)
1434            .field("get_accessible_parent", &self.get_accessible_parent)
1435            .field(
1436                "get_first_accessible_child",
1437                &self.get_first_accessible_child,
1438            )
1439            .field(
1440                "get_next_accessible_sibling",
1441                &self.get_next_accessible_sibling,
1442            )
1443            .field("get_bounds", &self.get_bounds)
1444            .finish()
1445    }
1446}
1447
1448#[repr(C)]
1449#[allow(dead_code)]
1450pub struct GtkAccessibleList {
1451    _data: [u8; 0],
1452    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1453}
1454
1455impl ::std::fmt::Debug for GtkAccessibleList {
1456    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1457        f.debug_struct(&format!("GtkAccessibleList @ {self:p}"))
1458            .finish()
1459    }
1460}
1461
1462#[derive(Copy, Clone)]
1463#[repr(C)]
1464pub struct GtkAccessibleRangeInterface {
1465    pub g_iface: gobject::GTypeInterface,
1466    pub set_current_value:
1467        Option<unsafe extern "C" fn(*mut GtkAccessibleRange, c_double) -> gboolean>,
1468}
1469
1470impl ::std::fmt::Debug for GtkAccessibleRangeInterface {
1471    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1472        f.debug_struct(&format!("GtkAccessibleRangeInterface @ {self:p}"))
1473            .field("g_iface", &self.g_iface)
1474            .field("set_current_value", &self.set_current_value)
1475            .finish()
1476    }
1477}
1478
1479#[derive(Copy, Clone)]
1480#[repr(C)]
1481pub struct GtkAccessibleTextInterface {
1482    pub g_iface: gobject::GTypeInterface,
1483    pub get_contents:
1484        Option<unsafe extern "C" fn(*mut GtkAccessibleText, c_uint, c_uint) -> *mut glib::GBytes>,
1485    pub get_contents_at: Option<
1486        unsafe extern "C" fn(
1487            *mut GtkAccessibleText,
1488            c_uint,
1489            GtkAccessibleTextGranularity,
1490            *mut c_uint,
1491            *mut c_uint,
1492        ) -> *mut glib::GBytes,
1493    >,
1494    pub get_caret_position: Option<unsafe extern "C" fn(*mut GtkAccessibleText) -> c_uint>,
1495    pub get_selection: Option<
1496        unsafe extern "C" fn(
1497            *mut GtkAccessibleText,
1498            *mut size_t,
1499            *mut *mut GtkAccessibleTextRange,
1500        ) -> gboolean,
1501    >,
1502    pub get_attributes: Option<
1503        unsafe extern "C" fn(
1504            *mut GtkAccessibleText,
1505            c_uint,
1506            *mut size_t,
1507            *mut *mut GtkAccessibleTextRange,
1508            *mut *mut *mut c_char,
1509            *mut *mut *mut c_char,
1510        ) -> gboolean,
1511    >,
1512    pub get_default_attributes: Option<
1513        unsafe extern "C" fn(*mut GtkAccessibleText, *mut *mut *mut c_char, *mut *mut *mut c_char),
1514    >,
1515    pub get_extents: Option<
1516        unsafe extern "C" fn(
1517            *mut GtkAccessibleText,
1518            c_uint,
1519            c_uint,
1520            *mut graphene::graphene_rect_t,
1521        ) -> gboolean,
1522    >,
1523    pub get_offset: Option<
1524        unsafe extern "C" fn(
1525            *mut GtkAccessibleText,
1526            *const graphene::graphene_point_t,
1527            *mut c_uint,
1528        ) -> gboolean,
1529    >,
1530}
1531
1532impl ::std::fmt::Debug for GtkAccessibleTextInterface {
1533    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1534        f.debug_struct(&format!("GtkAccessibleTextInterface @ {self:p}"))
1535            .field("get_contents", &self.get_contents)
1536            .field("get_contents_at", &self.get_contents_at)
1537            .field("get_caret_position", &self.get_caret_position)
1538            .field("get_selection", &self.get_selection)
1539            .field("get_attributes", &self.get_attributes)
1540            .field("get_default_attributes", &self.get_default_attributes)
1541            .field("get_extents", &self.get_extents)
1542            .field("get_offset", &self.get_offset)
1543            .finish()
1544    }
1545}
1546
1547#[derive(Copy, Clone)]
1548#[repr(C)]
1549pub struct GtkAccessibleTextRange {
1550    pub start: size_t,
1551    pub length: size_t,
1552}
1553
1554impl ::std::fmt::Debug for GtkAccessibleTextRange {
1555    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1556        f.debug_struct(&format!("GtkAccessibleTextRange @ {self:p}"))
1557            .field("start", &self.start)
1558            .field("length", &self.length)
1559            .finish()
1560    }
1561}
1562
1563#[derive(Copy, Clone)]
1564#[repr(C)]
1565pub struct GtkActionableInterface {
1566    pub g_iface: gobject::GTypeInterface,
1567    pub get_action_name: Option<unsafe extern "C" fn(*mut GtkActionable) -> *const c_char>,
1568    pub set_action_name: Option<unsafe extern "C" fn(*mut GtkActionable, *const c_char)>,
1569    pub get_action_target_value:
1570        Option<unsafe extern "C" fn(*mut GtkActionable) -> *mut glib::GVariant>,
1571    pub set_action_target_value:
1572        Option<unsafe extern "C" fn(*mut GtkActionable, *mut glib::GVariant)>,
1573}
1574
1575impl ::std::fmt::Debug for GtkActionableInterface {
1576    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1577        f.debug_struct(&format!("GtkActionableInterface @ {self:p}"))
1578            .field("get_action_name", &self.get_action_name)
1579            .field("set_action_name", &self.set_action_name)
1580            .field("get_action_target_value", &self.get_action_target_value)
1581            .field("set_action_target_value", &self.set_action_target_value)
1582            .finish()
1583    }
1584}
1585
1586#[repr(C)]
1587#[allow(dead_code)]
1588pub struct _GtkActivateActionClass {
1589    _data: [u8; 0],
1590    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1591}
1592
1593pub type GtkActivateActionClass = _GtkActivateActionClass;
1594
1595#[derive(Copy, Clone)]
1596#[repr(C)]
1597pub struct GtkAdjustmentClass {
1598    pub parent_class: gobject::GInitiallyUnownedClass,
1599    pub changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1600    pub value_changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1601    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1602    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1603    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1604    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1605}
1606
1607impl ::std::fmt::Debug for GtkAdjustmentClass {
1608    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1609        f.debug_struct(&format!("GtkAdjustmentClass @ {self:p}"))
1610            .field("parent_class", &self.parent_class)
1611            .field("changed", &self.changed)
1612            .field("value_changed", &self.value_changed)
1613            .field("_gtk_reserved1", &self._gtk_reserved1)
1614            .field("_gtk_reserved2", &self._gtk_reserved2)
1615            .field("_gtk_reserved3", &self._gtk_reserved3)
1616            .field("_gtk_reserved4", &self._gtk_reserved4)
1617            .finish()
1618    }
1619}
1620
1621#[derive(Copy, Clone)]
1622#[repr(C)]
1623pub struct GtkAlertDialogClass {
1624    pub parent_class: gobject::GObjectClass,
1625}
1626
1627impl ::std::fmt::Debug for GtkAlertDialogClass {
1628    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1629        f.debug_struct(&format!("GtkAlertDialogClass @ {self:p}"))
1630            .field("parent_class", &self.parent_class)
1631            .finish()
1632    }
1633}
1634
1635#[repr(C)]
1636#[allow(dead_code)]
1637pub struct _GtkAlternativeTriggerClass {
1638    _data: [u8; 0],
1639    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1640}
1641
1642pub type GtkAlternativeTriggerClass = _GtkAlternativeTriggerClass;
1643
1644#[repr(C)]
1645#[allow(dead_code)]
1646pub struct _GtkAnyFilterClass {
1647    _data: [u8; 0],
1648    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1649}
1650
1651pub type GtkAnyFilterClass = _GtkAnyFilterClass;
1652
1653#[derive(Copy, Clone)]
1654#[repr(C)]
1655pub struct GtkApplicationClass {
1656    pub parent_class: gio::GApplicationClass,
1657    pub window_added: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
1658    pub window_removed: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
1659    pub padding: [gpointer; 8],
1660}
1661
1662impl ::std::fmt::Debug for GtkApplicationClass {
1663    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1664        f.debug_struct(&format!("GtkApplicationClass @ {self:p}"))
1665            .field("parent_class", &self.parent_class)
1666            .field("window_added", &self.window_added)
1667            .field("window_removed", &self.window_removed)
1668            .finish()
1669    }
1670}
1671
1672#[derive(Copy, Clone)]
1673#[repr(C)]
1674pub struct GtkApplicationWindowClass {
1675    pub parent_class: GtkWindowClass,
1676    pub padding: [gpointer; 8],
1677}
1678
1679impl ::std::fmt::Debug for GtkApplicationWindowClass {
1680    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1681        f.debug_struct(&format!("GtkApplicationWindowClass @ {self:p}"))
1682            .field("parent_class", &self.parent_class)
1683            .finish()
1684    }
1685}
1686
1687#[derive(Copy, Clone)]
1688#[repr(C)]
1689pub struct GtkBinLayoutClass {
1690    pub parent_class: GtkLayoutManagerClass,
1691}
1692
1693impl ::std::fmt::Debug for GtkBinLayoutClass {
1694    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1695        f.debug_struct(&format!("GtkBinLayoutClass @ {self:p}"))
1696            .field("parent_class", &self.parent_class)
1697            .finish()
1698    }
1699}
1700
1701#[repr(C)]
1702#[allow(dead_code)]
1703pub struct GtkBitset {
1704    _data: [u8; 0],
1705    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1706}
1707
1708impl ::std::fmt::Debug for GtkBitset {
1709    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1710        f.debug_struct(&format!("GtkBitset @ {self:p}")).finish()
1711    }
1712}
1713
1714#[derive(Copy, Clone)]
1715#[repr(C)]
1716pub struct GtkBitsetIter {
1717    pub private_data: [gpointer; 10],
1718}
1719
1720impl ::std::fmt::Debug for GtkBitsetIter {
1721    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1722        f.debug_struct(&format!("GtkBitsetIter @ {self:p}"))
1723            .finish()
1724    }
1725}
1726
1727#[derive(Copy, Clone)]
1728#[repr(C)]
1729pub struct GtkBookmarkListClass {
1730    pub parent_class: gobject::GObjectClass,
1731}
1732
1733impl ::std::fmt::Debug for GtkBookmarkListClass {
1734    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1735        f.debug_struct(&format!("GtkBookmarkListClass @ {self:p}"))
1736            .field("parent_class", &self.parent_class)
1737            .finish()
1738    }
1739}
1740
1741#[derive(Copy, Clone)]
1742#[repr(C)]
1743pub struct GtkBoolFilterClass {
1744    pub parent_class: GtkFilterClass,
1745}
1746
1747impl ::std::fmt::Debug for GtkBoolFilterClass {
1748    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1749        f.debug_struct(&format!("GtkBoolFilterClass @ {self:p}"))
1750            .field("parent_class", &self.parent_class)
1751            .finish()
1752    }
1753}
1754
1755#[derive(Copy, Clone)]
1756#[repr(C)]
1757pub struct GtkBorder {
1758    pub left: i16,
1759    pub right: i16,
1760    pub top: i16,
1761    pub bottom: i16,
1762}
1763
1764impl ::std::fmt::Debug for GtkBorder {
1765    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1766        f.debug_struct(&format!("GtkBorder @ {self:p}"))
1767            .field("left", &self.left)
1768            .field("right", &self.right)
1769            .field("top", &self.top)
1770            .field("bottom", &self.bottom)
1771            .finish()
1772    }
1773}
1774
1775#[derive(Copy, Clone)]
1776#[repr(C)]
1777pub struct GtkBoxClass {
1778    pub parent_class: GtkWidgetClass,
1779    pub padding: [gpointer; 8],
1780}
1781
1782impl ::std::fmt::Debug for GtkBoxClass {
1783    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1784        f.debug_struct(&format!("GtkBoxClass @ {self:p}"))
1785            .field("parent_class", &self.parent_class)
1786            .finish()
1787    }
1788}
1789
1790#[derive(Copy, Clone)]
1791#[repr(C)]
1792pub struct GtkBoxLayoutClass {
1793    pub parent_class: GtkLayoutManagerClass,
1794}
1795
1796impl ::std::fmt::Debug for GtkBoxLayoutClass {
1797    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1798        f.debug_struct(&format!("GtkBoxLayoutClass @ {self:p}"))
1799            .field("parent_class", &self.parent_class)
1800            .finish()
1801    }
1802}
1803
1804#[derive(Copy, Clone)]
1805#[repr(C)]
1806pub struct GtkBuildableIface {
1807    pub g_iface: gobject::GTypeInterface,
1808    pub set_id: Option<unsafe extern "C" fn(*mut GtkBuildable, *const c_char)>,
1809    pub get_id: Option<unsafe extern "C" fn(*mut GtkBuildable) -> *const c_char>,
1810    pub add_child: Option<
1811        unsafe extern "C" fn(
1812            *mut GtkBuildable,
1813            *mut GtkBuilder,
1814            *mut gobject::GObject,
1815            *const c_char,
1816        ),
1817    >,
1818    pub set_buildable_property: Option<
1819        unsafe extern "C" fn(
1820            *mut GtkBuildable,
1821            *mut GtkBuilder,
1822            *const c_char,
1823            *const gobject::GValue,
1824        ),
1825    >,
1826    pub construct_child: Option<
1827        unsafe extern "C" fn(
1828            *mut GtkBuildable,
1829            *mut GtkBuilder,
1830            *const c_char,
1831        ) -> *mut gobject::GObject,
1832    >,
1833    pub custom_tag_start: Option<
1834        unsafe extern "C" fn(
1835            *mut GtkBuildable,
1836            *mut GtkBuilder,
1837            *mut gobject::GObject,
1838            *const c_char,
1839            *mut GtkBuildableParser,
1840            *mut gpointer,
1841        ) -> gboolean,
1842    >,
1843    pub custom_tag_end: Option<
1844        unsafe extern "C" fn(
1845            *mut GtkBuildable,
1846            *mut GtkBuilder,
1847            *mut gobject::GObject,
1848            *const c_char,
1849            gpointer,
1850        ),
1851    >,
1852    pub custom_finished: Option<
1853        unsafe extern "C" fn(
1854            *mut GtkBuildable,
1855            *mut GtkBuilder,
1856            *mut gobject::GObject,
1857            *const c_char,
1858            gpointer,
1859        ),
1860    >,
1861    pub parser_finished: Option<unsafe extern "C" fn(*mut GtkBuildable, *mut GtkBuilder)>,
1862    pub get_internal_child: Option<
1863        unsafe extern "C" fn(
1864            *mut GtkBuildable,
1865            *mut GtkBuilder,
1866            *const c_char,
1867        ) -> *mut gobject::GObject,
1868    >,
1869}
1870
1871impl ::std::fmt::Debug for GtkBuildableIface {
1872    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1873        f.debug_struct(&format!("GtkBuildableIface @ {self:p}"))
1874            .field("g_iface", &self.g_iface)
1875            .field("set_id", &self.set_id)
1876            .field("get_id", &self.get_id)
1877            .field("add_child", &self.add_child)
1878            .field("set_buildable_property", &self.set_buildable_property)
1879            .field("construct_child", &self.construct_child)
1880            .field("custom_tag_start", &self.custom_tag_start)
1881            .field("custom_tag_end", &self.custom_tag_end)
1882            .field("custom_finished", &self.custom_finished)
1883            .field("parser_finished", &self.parser_finished)
1884            .field("get_internal_child", &self.get_internal_child)
1885            .finish()
1886    }
1887}
1888
1889#[repr(C)]
1890#[allow(dead_code)]
1891pub struct _GtkBuildableParseContext {
1892    _data: [u8; 0],
1893    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1894}
1895
1896pub type GtkBuildableParseContext = _GtkBuildableParseContext;
1897
1898#[derive(Copy, Clone)]
1899#[repr(C)]
1900pub struct GtkBuildableParser {
1901    pub start_element: Option<
1902        unsafe extern "C" fn(
1903            *mut GtkBuildableParseContext,
1904            *const c_char,
1905            *mut *const c_char,
1906            *mut *const c_char,
1907            gpointer,
1908            *mut *mut glib::GError,
1909        ),
1910    >,
1911    pub end_element: Option<
1912        unsafe extern "C" fn(
1913            *mut GtkBuildableParseContext,
1914            *const c_char,
1915            gpointer,
1916            *mut *mut glib::GError,
1917        ),
1918    >,
1919    pub text: Option<
1920        unsafe extern "C" fn(
1921            *mut GtkBuildableParseContext,
1922            *const c_char,
1923            size_t,
1924            gpointer,
1925            *mut *mut glib::GError,
1926        ),
1927    >,
1928    pub error:
1929        Option<unsafe extern "C" fn(*mut GtkBuildableParseContext, *mut glib::GError, gpointer)>,
1930    pub padding: [gpointer; 4],
1931}
1932
1933impl ::std::fmt::Debug for GtkBuildableParser {
1934    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1935        f.debug_struct(&format!("GtkBuildableParser @ {self:p}"))
1936            .field("start_element", &self.start_element)
1937            .field("end_element", &self.end_element)
1938            .field("text", &self.text)
1939            .field("error", &self.error)
1940            .finish()
1941    }
1942}
1943
1944#[derive(Copy, Clone)]
1945#[repr(C)]
1946pub struct GtkBuilderCScopeClass {
1947    pub parent_class: gobject::GObjectClass,
1948}
1949
1950impl ::std::fmt::Debug for GtkBuilderCScopeClass {
1951    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1952        f.debug_struct(&format!("GtkBuilderCScopeClass @ {self:p}"))
1953            .field("parent_class", &self.parent_class)
1954            .finish()
1955    }
1956}
1957
1958#[repr(C)]
1959#[allow(dead_code)]
1960pub struct _GtkBuilderClass {
1961    _data: [u8; 0],
1962    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1963}
1964
1965pub type GtkBuilderClass = _GtkBuilderClass;
1966
1967#[repr(C)]
1968#[allow(dead_code)]
1969pub struct _GtkBuilderListItemFactoryClass {
1970    _data: [u8; 0],
1971    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1972}
1973
1974pub type GtkBuilderListItemFactoryClass = _GtkBuilderListItemFactoryClass;
1975
1976#[derive(Copy, Clone)]
1977#[repr(C)]
1978pub struct GtkBuilderScopeInterface {
1979    pub g_iface: gobject::GTypeInterface,
1980    pub get_type_from_name:
1981        Option<unsafe extern "C" fn(*mut GtkBuilderScope, *mut GtkBuilder, *const c_char) -> GType>,
1982    pub get_type_from_function:
1983        Option<unsafe extern "C" fn(*mut GtkBuilderScope, *mut GtkBuilder, *const c_char) -> GType>,
1984    pub create_closure: Option<
1985        unsafe extern "C" fn(
1986            *mut GtkBuilderScope,
1987            *mut GtkBuilder,
1988            *const c_char,
1989            GtkBuilderClosureFlags,
1990            *mut gobject::GObject,
1991            *mut *mut glib::GError,
1992        ) -> *mut gobject::GClosure,
1993    >,
1994}
1995
1996impl ::std::fmt::Debug for GtkBuilderScopeInterface {
1997    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1998        f.debug_struct(&format!("GtkBuilderScopeInterface @ {self:p}"))
1999            .field("get_type_from_name", &self.get_type_from_name)
2000            .field("get_type_from_function", &self.get_type_from_function)
2001            .field("create_closure", &self.create_closure)
2002            .finish()
2003    }
2004}
2005
2006#[derive(Copy, Clone)]
2007#[repr(C)]
2008pub struct GtkButtonClass {
2009    pub parent_class: GtkWidgetClass,
2010    pub clicked: Option<unsafe extern "C" fn(*mut GtkButton)>,
2011    pub activate: Option<unsafe extern "C" fn(*mut GtkButton)>,
2012    pub padding: [gpointer; 8],
2013}
2014
2015impl ::std::fmt::Debug for GtkButtonClass {
2016    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2017        f.debug_struct(&format!("GtkButtonClass @ {self:p}"))
2018            .field("parent_class", &self.parent_class)
2019            .field("clicked", &self.clicked)
2020            .field("activate", &self.activate)
2021            .finish()
2022    }
2023}
2024
2025#[repr(C)]
2026#[allow(dead_code)]
2027pub struct _GtkButtonPrivate {
2028    _data: [u8; 0],
2029    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2030}
2031
2032pub type GtkButtonPrivate = _GtkButtonPrivate;
2033
2034#[repr(C)]
2035#[allow(dead_code)]
2036pub struct _GtkCallbackActionClass {
2037    _data: [u8; 0],
2038    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2039}
2040
2041pub type GtkCallbackActionClass = _GtkCallbackActionClass;
2042
2043#[derive(Copy, Clone)]
2044#[repr(C)]
2045pub struct GtkCellAreaClass {
2046    pub parent_class: gobject::GInitiallyUnownedClass,
2047    pub add: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2048    pub remove: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2049    pub foreach: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkCellCallback, gpointer)>,
2050    pub foreach_alloc: Option<
2051        unsafe extern "C" fn(
2052            *mut GtkCellArea,
2053            *mut GtkCellAreaContext,
2054            *mut GtkWidget,
2055            *const gdk::GdkRectangle,
2056            *const gdk::GdkRectangle,
2057            GtkCellAllocCallback,
2058            gpointer,
2059        ),
2060    >,
2061    pub event: Option<
2062        unsafe extern "C" fn(
2063            *mut GtkCellArea,
2064            *mut GtkCellAreaContext,
2065            *mut GtkWidget,
2066            *mut gdk::GdkEvent,
2067            *const gdk::GdkRectangle,
2068            GtkCellRendererState,
2069        ) -> c_int,
2070    >,
2071    pub snapshot: Option<
2072        unsafe extern "C" fn(
2073            *mut GtkCellArea,
2074            *mut GtkCellAreaContext,
2075            *mut GtkWidget,
2076            *mut GtkSnapshot,
2077            *const gdk::GdkRectangle,
2078            *const gdk::GdkRectangle,
2079            GtkCellRendererState,
2080            gboolean,
2081        ),
2082    >,
2083    pub apply_attributes: Option<
2084        unsafe extern "C" fn(
2085            *mut GtkCellArea,
2086            *mut GtkTreeModel,
2087            *mut GtkTreeIter,
2088            gboolean,
2089            gboolean,
2090        ),
2091    >,
2092    pub create_context: Option<unsafe extern "C" fn(*mut GtkCellArea) -> *mut GtkCellAreaContext>,
2093    pub copy_context: Option<
2094        unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellAreaContext) -> *mut GtkCellAreaContext,
2095    >,
2096    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellArea) -> GtkSizeRequestMode>,
2097    pub get_preferred_width: Option<
2098        unsafe extern "C" fn(
2099            *mut GtkCellArea,
2100            *mut GtkCellAreaContext,
2101            *mut GtkWidget,
2102            *mut c_int,
2103            *mut c_int,
2104        ),
2105    >,
2106    pub get_preferred_height_for_width: Option<
2107        unsafe extern "C" fn(
2108            *mut GtkCellArea,
2109            *mut GtkCellAreaContext,
2110            *mut GtkWidget,
2111            c_int,
2112            *mut c_int,
2113            *mut c_int,
2114        ),
2115    >,
2116    pub get_preferred_height: Option<
2117        unsafe extern "C" fn(
2118            *mut GtkCellArea,
2119            *mut GtkCellAreaContext,
2120            *mut GtkWidget,
2121            *mut c_int,
2122            *mut c_int,
2123        ),
2124    >,
2125    pub get_preferred_width_for_height: Option<
2126        unsafe extern "C" fn(
2127            *mut GtkCellArea,
2128            *mut GtkCellAreaContext,
2129            *mut GtkWidget,
2130            c_int,
2131            *mut c_int,
2132            *mut c_int,
2133        ),
2134    >,
2135    pub set_cell_property: Option<
2136        unsafe extern "C" fn(
2137            *mut GtkCellArea,
2138            *mut GtkCellRenderer,
2139            c_uint,
2140            *mut gobject::GValue,
2141            *mut gobject::GParamSpec,
2142        ),
2143    >,
2144    pub get_cell_property: Option<
2145        unsafe extern "C" fn(
2146            *mut GtkCellArea,
2147            *mut GtkCellRenderer,
2148            c_uint,
2149            *mut gobject::GValue,
2150            *mut gobject::GParamSpec,
2151        ),
2152    >,
2153    pub focus: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkDirectionType) -> gboolean>,
2154    pub is_activatable: Option<unsafe extern "C" fn(*mut GtkCellArea) -> gboolean>,
2155    pub activate: Option<
2156        unsafe extern "C" fn(
2157            *mut GtkCellArea,
2158            *mut GtkCellAreaContext,
2159            *mut GtkWidget,
2160            *const gdk::GdkRectangle,
2161            GtkCellRendererState,
2162            gboolean,
2163        ) -> gboolean,
2164    >,
2165    pub padding: [gpointer; 8],
2166}
2167
2168impl ::std::fmt::Debug for GtkCellAreaClass {
2169    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2170        f.debug_struct(&format!("GtkCellAreaClass @ {self:p}"))
2171            .field("add", &self.add)
2172            .field("remove", &self.remove)
2173            .field("foreach", &self.foreach)
2174            .field("foreach_alloc", &self.foreach_alloc)
2175            .field("event", &self.event)
2176            .field("snapshot", &self.snapshot)
2177            .field("apply_attributes", &self.apply_attributes)
2178            .field("create_context", &self.create_context)
2179            .field("copy_context", &self.copy_context)
2180            .field("get_request_mode", &self.get_request_mode)
2181            .field("get_preferred_width", &self.get_preferred_width)
2182            .field(
2183                "get_preferred_height_for_width",
2184                &self.get_preferred_height_for_width,
2185            )
2186            .field("get_preferred_height", &self.get_preferred_height)
2187            .field(
2188                "get_preferred_width_for_height",
2189                &self.get_preferred_width_for_height,
2190            )
2191            .field("set_cell_property", &self.set_cell_property)
2192            .field("get_cell_property", &self.get_cell_property)
2193            .field("focus", &self.focus)
2194            .field("is_activatable", &self.is_activatable)
2195            .field("activate", &self.activate)
2196            .finish()
2197    }
2198}
2199
2200#[derive(Copy, Clone)]
2201#[repr(C)]
2202pub struct GtkCellAreaContextClass {
2203    pub parent_class: gobject::GObjectClass,
2204    pub allocate: Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, c_int)>,
2205    pub reset: Option<unsafe extern "C" fn(*mut GtkCellAreaContext)>,
2206    pub get_preferred_height_for_width:
2207        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2208    pub get_preferred_width_for_height:
2209        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2210    pub padding: [gpointer; 8],
2211}
2212
2213impl ::std::fmt::Debug for GtkCellAreaContextClass {
2214    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2215        f.debug_struct(&format!("GtkCellAreaContextClass @ {self:p}"))
2216            .field("allocate", &self.allocate)
2217            .field("reset", &self.reset)
2218            .field(
2219                "get_preferred_height_for_width",
2220                &self.get_preferred_height_for_width,
2221            )
2222            .field(
2223                "get_preferred_width_for_height",
2224                &self.get_preferred_width_for_height,
2225            )
2226            .finish()
2227    }
2228}
2229
2230#[repr(C)]
2231#[allow(dead_code)]
2232pub struct _GtkCellAreaContextPrivate {
2233    _data: [u8; 0],
2234    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2235}
2236
2237pub type GtkCellAreaContextPrivate = _GtkCellAreaContextPrivate;
2238
2239#[derive(Copy, Clone)]
2240#[repr(C)]
2241pub struct GtkCellEditableIface {
2242    pub g_iface: gobject::GTypeInterface,
2243    pub editing_done: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
2244    pub remove_widget: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
2245    pub start_editing: Option<unsafe extern "C" fn(*mut GtkCellEditable, *mut gdk::GdkEvent)>,
2246}
2247
2248impl ::std::fmt::Debug for GtkCellEditableIface {
2249    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2250        f.debug_struct(&format!("GtkCellEditableIface @ {self:p}"))
2251            .field("editing_done", &self.editing_done)
2252            .field("remove_widget", &self.remove_widget)
2253            .field("start_editing", &self.start_editing)
2254            .finish()
2255    }
2256}
2257
2258#[derive(Copy, Clone)]
2259#[repr(C)]
2260pub struct GtkCellLayoutIface {
2261    pub g_iface: gobject::GTypeInterface,
2262    pub pack_start:
2263        Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
2264    pub pack_end: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
2265    pub clear: Option<unsafe extern "C" fn(*mut GtkCellLayout)>,
2266    pub add_attribute: Option<
2267        unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, *const c_char, c_int),
2268    >,
2269    pub set_cell_data_func: Option<
2270        unsafe extern "C" fn(
2271            *mut GtkCellLayout,
2272            *mut GtkCellRenderer,
2273            GtkCellLayoutDataFunc,
2274            gpointer,
2275            glib::GDestroyNotify,
2276        ),
2277    >,
2278    pub clear_attributes: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer)>,
2279    pub reorder: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, c_int)>,
2280    pub get_cells: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut glib::GList>,
2281    pub get_area: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut GtkCellArea>,
2282}
2283
2284impl ::std::fmt::Debug for GtkCellLayoutIface {
2285    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2286        f.debug_struct(&format!("GtkCellLayoutIface @ {self:p}"))
2287            .field("pack_start", &self.pack_start)
2288            .field("pack_end", &self.pack_end)
2289            .field("clear", &self.clear)
2290            .field("add_attribute", &self.add_attribute)
2291            .field("set_cell_data_func", &self.set_cell_data_func)
2292            .field("clear_attributes", &self.clear_attributes)
2293            .field("reorder", &self.reorder)
2294            .field("get_cells", &self.get_cells)
2295            .field("get_area", &self.get_area)
2296            .finish()
2297    }
2298}
2299
2300#[derive(Copy, Clone)]
2301#[repr(C)]
2302pub struct GtkCellRendererClass {
2303    pub parent_class: gobject::GInitiallyUnownedClass,
2304    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellRenderer) -> GtkSizeRequestMode>,
2305    pub get_preferred_width:
2306        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
2307    pub get_preferred_height_for_width: Option<
2308        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
2309    >,
2310    pub get_preferred_height:
2311        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
2312    pub get_preferred_width_for_height: Option<
2313        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
2314    >,
2315    pub get_aligned_area: Option<
2316        unsafe extern "C" fn(
2317            *mut GtkCellRenderer,
2318            *mut GtkWidget,
2319            GtkCellRendererState,
2320            *const gdk::GdkRectangle,
2321            *mut gdk::GdkRectangle,
2322        ),
2323    >,
2324    pub snapshot: Option<
2325        unsafe extern "C" fn(
2326            *mut GtkCellRenderer,
2327            *mut GtkSnapshot,
2328            *mut GtkWidget,
2329            *const gdk::GdkRectangle,
2330            *const gdk::GdkRectangle,
2331            GtkCellRendererState,
2332        ),
2333    >,
2334    pub activate: Option<
2335        unsafe extern "C" fn(
2336            *mut GtkCellRenderer,
2337            *mut gdk::GdkEvent,
2338            *mut GtkWidget,
2339            *const c_char,
2340            *const gdk::GdkRectangle,
2341            *const gdk::GdkRectangle,
2342            GtkCellRendererState,
2343        ) -> gboolean,
2344    >,
2345    pub start_editing: Option<
2346        unsafe extern "C" fn(
2347            *mut GtkCellRenderer,
2348            *mut gdk::GdkEvent,
2349            *mut GtkWidget,
2350            *const c_char,
2351            *const gdk::GdkRectangle,
2352            *const gdk::GdkRectangle,
2353            GtkCellRendererState,
2354        ) -> *mut GtkCellEditable,
2355    >,
2356    pub editing_canceled: Option<unsafe extern "C" fn(*mut GtkCellRenderer)>,
2357    pub editing_started:
2358        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkCellEditable, *const c_char)>,
2359    pub padding: [gpointer; 8],
2360}
2361
2362impl ::std::fmt::Debug for GtkCellRendererClass {
2363    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2364        f.debug_struct(&format!("GtkCellRendererClass @ {self:p}"))
2365            .field("get_request_mode", &self.get_request_mode)
2366            .field("get_preferred_width", &self.get_preferred_width)
2367            .field(
2368                "get_preferred_height_for_width",
2369                &self.get_preferred_height_for_width,
2370            )
2371            .field("get_preferred_height", &self.get_preferred_height)
2372            .field(
2373                "get_preferred_width_for_height",
2374                &self.get_preferred_width_for_height,
2375            )
2376            .field("get_aligned_area", &self.get_aligned_area)
2377            .field("snapshot", &self.snapshot)
2378            .field("activate", &self.activate)
2379            .field("start_editing", &self.start_editing)
2380            .field("editing_canceled", &self.editing_canceled)
2381            .field("editing_started", &self.editing_started)
2382            .finish()
2383    }
2384}
2385
2386#[repr(C)]
2387#[allow(dead_code)]
2388pub struct _GtkCellRendererClassPrivate {
2389    _data: [u8; 0],
2390    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2391}
2392
2393pub type GtkCellRendererClassPrivate = _GtkCellRendererClassPrivate;
2394
2395#[repr(C)]
2396#[allow(dead_code)]
2397pub struct _GtkCellRendererPrivate {
2398    _data: [u8; 0],
2399    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2400}
2401
2402pub type GtkCellRendererPrivate = _GtkCellRendererPrivate;
2403
2404#[derive(Copy, Clone)]
2405#[repr(C)]
2406pub struct GtkCellRendererTextClass {
2407    pub parent_class: GtkCellRendererClass,
2408    pub edited:
2409        Option<unsafe extern "C" fn(*mut GtkCellRendererText, *const c_char, *const c_char)>,
2410    pub padding: [gpointer; 8],
2411}
2412
2413impl ::std::fmt::Debug for GtkCellRendererTextClass {
2414    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2415        f.debug_struct(&format!("GtkCellRendererTextClass @ {self:p}"))
2416            .field("parent_class", &self.parent_class)
2417            .field("edited", &self.edited)
2418            .finish()
2419    }
2420}
2421
2422#[repr(C)]
2423#[allow(dead_code)]
2424pub struct _GtkCenterBoxClass {
2425    _data: [u8; 0],
2426    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2427}
2428
2429pub type GtkCenterBoxClass = _GtkCenterBoxClass;
2430
2431#[derive(Copy, Clone)]
2432#[repr(C)]
2433pub struct GtkCenterLayoutClass {
2434    pub parent_class: GtkLayoutManagerClass,
2435}
2436
2437impl ::std::fmt::Debug for GtkCenterLayoutClass {
2438    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2439        f.debug_struct(&format!("GtkCenterLayoutClass @ {self:p}"))
2440            .field("parent_class", &self.parent_class)
2441            .finish()
2442    }
2443}
2444
2445#[derive(Copy, Clone)]
2446#[repr(C)]
2447pub struct GtkCheckButtonClass {
2448    pub parent_class: GtkWidgetClass,
2449    pub toggled: Option<unsafe extern "C" fn(*mut GtkCheckButton)>,
2450    pub activate: Option<unsafe extern "C" fn(*mut GtkCheckButton)>,
2451    pub padding: [gpointer; 7],
2452}
2453
2454impl ::std::fmt::Debug for GtkCheckButtonClass {
2455    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2456        f.debug_struct(&format!("GtkCheckButtonClass @ {self:p}"))
2457            .field("parent_class", &self.parent_class)
2458            .field("toggled", &self.toggled)
2459            .field("activate", &self.activate)
2460            .finish()
2461    }
2462}
2463
2464#[derive(Copy, Clone)]
2465#[repr(C)]
2466pub struct GtkColorChooserInterface {
2467    pub base_interface: gobject::GTypeInterface,
2468    pub get_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2469    pub set_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2470    pub add_palette: Option<
2471        unsafe extern "C" fn(*mut GtkColorChooser, GtkOrientation, c_int, c_int, *mut gdk::GdkRGBA),
2472    >,
2473    pub color_activated: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2474    pub padding: [gpointer; 12],
2475}
2476
2477impl ::std::fmt::Debug for GtkColorChooserInterface {
2478    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2479        f.debug_struct(&format!("GtkColorChooserInterface @ {self:p}"))
2480            .field("base_interface", &self.base_interface)
2481            .field("get_rgba", &self.get_rgba)
2482            .field("set_rgba", &self.set_rgba)
2483            .field("add_palette", &self.add_palette)
2484            .field("color_activated", &self.color_activated)
2485            .finish()
2486    }
2487}
2488
2489#[derive(Copy, Clone)]
2490#[repr(C)]
2491pub struct GtkColorDialogButtonClass {
2492    pub parent_class: GtkWidgetClass,
2493}
2494
2495impl ::std::fmt::Debug for GtkColorDialogButtonClass {
2496    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2497        f.debug_struct(&format!("GtkColorDialogButtonClass @ {self:p}"))
2498            .field("parent_class", &self.parent_class)
2499            .finish()
2500    }
2501}
2502
2503#[derive(Copy, Clone)]
2504#[repr(C)]
2505pub struct GtkColorDialogClass {
2506    pub parent_class: gobject::GObjectClass,
2507}
2508
2509impl ::std::fmt::Debug for GtkColorDialogClass {
2510    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2511        f.debug_struct(&format!("GtkColorDialogClass @ {self:p}"))
2512            .field("parent_class", &self.parent_class)
2513            .finish()
2514    }
2515}
2516
2517#[repr(C)]
2518#[allow(dead_code)]
2519pub struct _GtkColumnViewCellClass {
2520    _data: [u8; 0],
2521    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2522}
2523
2524pub type GtkColumnViewCellClass = _GtkColumnViewCellClass;
2525
2526#[repr(C)]
2527#[allow(dead_code)]
2528pub struct _GtkColumnViewClass {
2529    _data: [u8; 0],
2530    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2531}
2532
2533pub type GtkColumnViewClass = _GtkColumnViewClass;
2534
2535#[repr(C)]
2536#[allow(dead_code)]
2537pub struct _GtkColumnViewColumnClass {
2538    _data: [u8; 0],
2539    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2540}
2541
2542pub type GtkColumnViewColumnClass = _GtkColumnViewColumnClass;
2543
2544#[repr(C)]
2545#[allow(dead_code)]
2546pub struct _GtkColumnViewRowClass {
2547    _data: [u8; 0],
2548    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2549}
2550
2551pub type GtkColumnViewRowClass = _GtkColumnViewRowClass;
2552
2553#[derive(Copy, Clone)]
2554#[repr(C)]
2555pub struct GtkColumnViewSorterClass {
2556    pub parent_class: GtkSorterClass,
2557}
2558
2559impl ::std::fmt::Debug for GtkColumnViewSorterClass {
2560    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2561        f.debug_struct(&format!("GtkColumnViewSorterClass @ {self:p}"))
2562            .field("parent_class", &self.parent_class)
2563            .finish()
2564    }
2565}
2566
2567#[derive(Copy, Clone)]
2568#[repr(C)]
2569pub struct GtkComboBoxClass {
2570    pub parent_class: GtkWidgetClass,
2571    pub changed: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
2572    pub format_entry_text:
2573        Option<unsafe extern "C" fn(*mut GtkComboBox, *const c_char) -> *mut c_char>,
2574    pub activate: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
2575    pub padding: [gpointer; 7],
2576}
2577
2578impl ::std::fmt::Debug for GtkComboBoxClass {
2579    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2580        f.debug_struct(&format!("GtkComboBoxClass @ {self:p}"))
2581            .field("parent_class", &self.parent_class)
2582            .field("changed", &self.changed)
2583            .field("format_entry_text", &self.format_entry_text)
2584            .field("activate", &self.activate)
2585            .finish()
2586    }
2587}
2588
2589#[derive(Copy, Clone)]
2590#[repr(C)]
2591pub struct GtkConstraintClass {
2592    pub parent_class: gobject::GObjectClass,
2593}
2594
2595impl ::std::fmt::Debug for GtkConstraintClass {
2596    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2597        f.debug_struct(&format!("GtkConstraintClass @ {self:p}"))
2598            .field("parent_class", &self.parent_class)
2599            .finish()
2600    }
2601}
2602
2603#[derive(Copy, Clone)]
2604#[repr(C)]
2605pub struct GtkConstraintGuideClass {
2606    pub parent_class: gobject::GObjectClass,
2607}
2608
2609impl ::std::fmt::Debug for GtkConstraintGuideClass {
2610    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2611        f.debug_struct(&format!("GtkConstraintGuideClass @ {self:p}"))
2612            .field("parent_class", &self.parent_class)
2613            .finish()
2614    }
2615}
2616
2617#[derive(Copy, Clone)]
2618#[repr(C)]
2619pub struct GtkConstraintLayoutChildClass {
2620    pub parent_class: GtkLayoutChildClass,
2621}
2622
2623impl ::std::fmt::Debug for GtkConstraintLayoutChildClass {
2624    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2625        f.debug_struct(&format!("GtkConstraintLayoutChildClass @ {self:p}"))
2626            .field("parent_class", &self.parent_class)
2627            .finish()
2628    }
2629}
2630
2631#[derive(Copy, Clone)]
2632#[repr(C)]
2633pub struct GtkConstraintLayoutClass {
2634    pub parent_class: GtkLayoutManagerClass,
2635}
2636
2637impl ::std::fmt::Debug for GtkConstraintLayoutClass {
2638    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2639        f.debug_struct(&format!("GtkConstraintLayoutClass @ {self:p}"))
2640            .field("parent_class", &self.parent_class)
2641            .finish()
2642    }
2643}
2644
2645#[repr(C)]
2646#[allow(dead_code)]
2647pub struct _GtkConstraintTargetInterface {
2648    _data: [u8; 0],
2649    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2650}
2651
2652pub type GtkConstraintTargetInterface = _GtkConstraintTargetInterface;
2653
2654#[derive(Copy, Clone)]
2655#[repr(C)]
2656pub struct GtkCssLocation {
2657    pub bytes: size_t,
2658    pub chars: size_t,
2659    pub lines: size_t,
2660    pub line_bytes: size_t,
2661    pub line_chars: size_t,
2662}
2663
2664impl ::std::fmt::Debug for GtkCssLocation {
2665    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2666        f.debug_struct(&format!("GtkCssLocation @ {self:p}"))
2667            .field("bytes", &self.bytes)
2668            .field("chars", &self.chars)
2669            .field("lines", &self.lines)
2670            .field("line_bytes", &self.line_bytes)
2671            .field("line_chars", &self.line_chars)
2672            .finish()
2673    }
2674}
2675
2676#[repr(C)]
2677#[allow(dead_code)]
2678pub struct _GtkCssProviderClass {
2679    _data: [u8; 0],
2680    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2681}
2682
2683pub type GtkCssProviderClass = _GtkCssProviderClass;
2684
2685#[repr(C)]
2686#[allow(dead_code)]
2687pub struct _GtkCssProviderPrivate {
2688    _data: [u8; 0],
2689    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2690}
2691
2692pub type GtkCssProviderPrivate = _GtkCssProviderPrivate;
2693
2694#[repr(C)]
2695#[allow(dead_code)]
2696pub struct GtkCssSection {
2697    _data: [u8; 0],
2698    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2699}
2700
2701impl ::std::fmt::Debug for GtkCssSection {
2702    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2703        f.debug_struct(&format!("GtkCssSection @ {self:p}"))
2704            .finish()
2705    }
2706}
2707
2708#[repr(C)]
2709#[allow(dead_code)]
2710pub struct _GtkCssStyleChange {
2711    _data: [u8; 0],
2712    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2713}
2714
2715pub type GtkCssStyleChange = _GtkCssStyleChange;
2716
2717#[derive(Copy, Clone)]
2718#[repr(C)]
2719pub struct GtkCustomFilterClass {
2720    pub parent_class: GtkFilterClass,
2721}
2722
2723impl ::std::fmt::Debug for GtkCustomFilterClass {
2724    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2725        f.debug_struct(&format!("GtkCustomFilterClass @ {self:p}"))
2726            .field("parent_class", &self.parent_class)
2727            .finish()
2728    }
2729}
2730
2731#[derive(Copy, Clone)]
2732#[repr(C)]
2733pub struct GtkCustomLayoutClass {
2734    pub parent_class: GtkLayoutManagerClass,
2735}
2736
2737impl ::std::fmt::Debug for GtkCustomLayoutClass {
2738    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2739        f.debug_struct(&format!("GtkCustomLayoutClass @ {self:p}"))
2740            .field("parent_class", &self.parent_class)
2741            .finish()
2742    }
2743}
2744
2745#[derive(Copy, Clone)]
2746#[repr(C)]
2747pub struct GtkCustomSorterClass {
2748    pub parent_class: GtkSorterClass,
2749}
2750
2751impl ::std::fmt::Debug for GtkCustomSorterClass {
2752    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2753        f.debug_struct(&format!("GtkCustomSorterClass @ {self:p}"))
2754            .field("parent_class", &self.parent_class)
2755            .finish()
2756    }
2757}
2758
2759#[derive(Copy, Clone)]
2760#[repr(C)]
2761pub struct GtkDialogClass {
2762    pub parent_class: GtkWindowClass,
2763    pub response: Option<unsafe extern "C" fn(*mut GtkDialog, GtkResponseType)>,
2764    pub close: Option<unsafe extern "C" fn(*mut GtkDialog)>,
2765    pub padding: [gpointer; 8],
2766}
2767
2768impl ::std::fmt::Debug for GtkDialogClass {
2769    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2770        f.debug_struct(&format!("GtkDialogClass @ {self:p}"))
2771            .field("parent_class", &self.parent_class)
2772            .field("response", &self.response)
2773            .field("close", &self.close)
2774            .finish()
2775    }
2776}
2777
2778#[derive(Copy, Clone)]
2779#[repr(C)]
2780pub struct GtkDirectoryListClass {
2781    pub parent_class: gobject::GObjectClass,
2782}
2783
2784impl ::std::fmt::Debug for GtkDirectoryListClass {
2785    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2786        f.debug_struct(&format!("GtkDirectoryListClass @ {self:p}"))
2787            .field("parent_class", &self.parent_class)
2788            .finish()
2789    }
2790}
2791
2792#[derive(Copy, Clone)]
2793#[repr(C)]
2794pub struct GtkDragIconClass {
2795    pub parent_class: GtkWidgetClass,
2796}
2797
2798impl ::std::fmt::Debug for GtkDragIconClass {
2799    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2800        f.debug_struct(&format!("GtkDragIconClass @ {self:p}"))
2801            .field("parent_class", &self.parent_class)
2802            .finish()
2803    }
2804}
2805
2806#[repr(C)]
2807#[allow(dead_code)]
2808pub struct _GtkDragSourceClass {
2809    _data: [u8; 0],
2810    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2811}
2812
2813pub type GtkDragSourceClass = _GtkDragSourceClass;
2814
2815#[derive(Copy, Clone)]
2816#[repr(C)]
2817pub struct GtkDrawingAreaClass {
2818    pub parent_class: GtkWidgetClass,
2819    pub resize: Option<unsafe extern "C" fn(*mut GtkDrawingArea, c_int, c_int)>,
2820    pub padding: [gpointer; 8],
2821}
2822
2823impl ::std::fmt::Debug for GtkDrawingAreaClass {
2824    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2825        f.debug_struct(&format!("GtkDrawingAreaClass @ {self:p}"))
2826            .field("parent_class", &self.parent_class)
2827            .field("resize", &self.resize)
2828            .finish()
2829    }
2830}
2831
2832#[repr(C)]
2833#[allow(dead_code)]
2834pub struct _GtkDropControllerMotionClass {
2835    _data: [u8; 0],
2836    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2837}
2838
2839pub type GtkDropControllerMotionClass = _GtkDropControllerMotionClass;
2840
2841#[derive(Copy, Clone)]
2842#[repr(C)]
2843pub struct GtkDropDownClass {
2844    pub parent_class: GtkWidgetClass,
2845}
2846
2847impl ::std::fmt::Debug for GtkDropDownClass {
2848    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2849        f.debug_struct(&format!("GtkDropDownClass @ {self:p}"))
2850            .field("parent_class", &self.parent_class)
2851            .finish()
2852    }
2853}
2854
2855#[repr(C)]
2856#[allow(dead_code)]
2857pub struct _GtkDropTargetAsyncClass {
2858    _data: [u8; 0],
2859    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2860}
2861
2862pub type GtkDropTargetAsyncClass = _GtkDropTargetAsyncClass;
2863
2864#[repr(C)]
2865#[allow(dead_code)]
2866pub struct _GtkDropTargetClass {
2867    _data: [u8; 0],
2868    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2869}
2870
2871pub type GtkDropTargetClass = _GtkDropTargetClass;
2872
2873#[derive(Copy, Clone)]
2874#[repr(C)]
2875pub struct GtkEditableInterface {
2876    pub base_iface: gobject::GTypeInterface,
2877    pub insert_text:
2878        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
2879    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2880    pub changed: Option<unsafe extern "C" fn(*mut GtkEditable)>,
2881    pub get_text: Option<unsafe extern "C" fn(*mut GtkEditable) -> *const c_char>,
2882    pub do_insert_text:
2883        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
2884    pub do_delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2885    pub get_selection_bounds:
2886        Option<unsafe extern "C" fn(*mut GtkEditable, *mut c_int, *mut c_int) -> gboolean>,
2887    pub set_selection_bounds: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2888    pub get_delegate: Option<unsafe extern "C" fn(*mut GtkEditable) -> *mut GtkEditable>,
2889}
2890
2891impl ::std::fmt::Debug for GtkEditableInterface {
2892    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2893        f.debug_struct(&format!("GtkEditableInterface @ {self:p}"))
2894            .field("base_iface", &self.base_iface)
2895            .field("insert_text", &self.insert_text)
2896            .field("delete_text", &self.delete_text)
2897            .field("changed", &self.changed)
2898            .field("get_text", &self.get_text)
2899            .field("do_insert_text", &self.do_insert_text)
2900            .field("do_delete_text", &self.do_delete_text)
2901            .field("get_selection_bounds", &self.get_selection_bounds)
2902            .field("set_selection_bounds", &self.set_selection_bounds)
2903            .field("get_delegate", &self.get_delegate)
2904            .finish()
2905    }
2906}
2907
2908#[derive(Copy, Clone)]
2909#[repr(C)]
2910pub struct GtkEditableLabelClass {
2911    pub parent_class: GtkWidgetClass,
2912}
2913
2914impl ::std::fmt::Debug for GtkEditableLabelClass {
2915    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2916        f.debug_struct(&format!("GtkEditableLabelClass @ {self:p}"))
2917            .field("parent_class", &self.parent_class)
2918            .finish()
2919    }
2920}
2921
2922#[repr(C)]
2923#[allow(dead_code)]
2924pub struct _GtkEmojiChooserClass {
2925    _data: [u8; 0],
2926    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2927}
2928
2929pub type GtkEmojiChooserClass = _GtkEmojiChooserClass;
2930
2931#[derive(Copy, Clone)]
2932#[repr(C)]
2933pub struct GtkEntryBufferClass {
2934    pub parent_class: gobject::GObjectClass,
2935    pub inserted_text:
2936        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint)>,
2937    pub deleted_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint)>,
2938    pub get_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, *mut size_t) -> *const c_char>,
2939    pub get_length: Option<unsafe extern "C" fn(*mut GtkEntryBuffer) -> c_uint>,
2940    pub insert_text:
2941        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint) -> c_uint>,
2942    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint) -> c_uint>,
2943    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2944    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2945    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2946    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2947    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
2948    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
2949    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
2950    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
2951}
2952
2953impl ::std::fmt::Debug for GtkEntryBufferClass {
2954    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2955        f.debug_struct(&format!("GtkEntryBufferClass @ {self:p}"))
2956            .field("parent_class", &self.parent_class)
2957            .field("inserted_text", &self.inserted_text)
2958            .field("deleted_text", &self.deleted_text)
2959            .field("get_text", &self.get_text)
2960            .field("get_length", &self.get_length)
2961            .field("insert_text", &self.insert_text)
2962            .field("delete_text", &self.delete_text)
2963            .field("_gtk_reserved1", &self._gtk_reserved1)
2964            .field("_gtk_reserved2", &self._gtk_reserved2)
2965            .field("_gtk_reserved3", &self._gtk_reserved3)
2966            .field("_gtk_reserved4", &self._gtk_reserved4)
2967            .field("_gtk_reserved5", &self._gtk_reserved5)
2968            .field("_gtk_reserved6", &self._gtk_reserved6)
2969            .field("_gtk_reserved7", &self._gtk_reserved7)
2970            .field("_gtk_reserved8", &self._gtk_reserved8)
2971            .finish()
2972    }
2973}
2974
2975#[derive(Copy, Clone)]
2976#[repr(C)]
2977pub struct GtkEntryClass {
2978    pub parent_class: GtkWidgetClass,
2979    pub activate: Option<unsafe extern "C" fn(*mut GtkEntry)>,
2980    pub padding: [gpointer; 8],
2981}
2982
2983impl ::std::fmt::Debug for GtkEntryClass {
2984    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2985        f.debug_struct(&format!("GtkEntryClass @ {self:p}"))
2986            .field("parent_class", &self.parent_class)
2987            .field("activate", &self.activate)
2988            .finish()
2989    }
2990}
2991
2992#[repr(C)]
2993#[allow(dead_code)]
2994pub struct _GtkEventControllerClass {
2995    _data: [u8; 0],
2996    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2997}
2998
2999pub type GtkEventControllerClass = _GtkEventControllerClass;
3000
3001#[repr(C)]
3002#[allow(dead_code)]
3003pub struct _GtkEventControllerFocusClass {
3004    _data: [u8; 0],
3005    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3006}
3007
3008pub type GtkEventControllerFocusClass = _GtkEventControllerFocusClass;
3009
3010#[repr(C)]
3011#[allow(dead_code)]
3012pub struct _GtkEventControllerKeyClass {
3013    _data: [u8; 0],
3014    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3015}
3016
3017pub type GtkEventControllerKeyClass = _GtkEventControllerKeyClass;
3018
3019#[repr(C)]
3020#[allow(dead_code)]
3021pub struct _GtkEventControllerLegacyClass {
3022    _data: [u8; 0],
3023    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3024}
3025
3026pub type GtkEventControllerLegacyClass = _GtkEventControllerLegacyClass;
3027
3028#[repr(C)]
3029#[allow(dead_code)]
3030pub struct _GtkEventControllerMotionClass {
3031    _data: [u8; 0],
3032    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3033}
3034
3035pub type GtkEventControllerMotionClass = _GtkEventControllerMotionClass;
3036
3037#[repr(C)]
3038#[allow(dead_code)]
3039pub struct _GtkEventControllerScrollClass {
3040    _data: [u8; 0],
3041    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3042}
3043
3044pub type GtkEventControllerScrollClass = _GtkEventControllerScrollClass;
3045
3046#[repr(C)]
3047#[allow(dead_code)]
3048pub struct _GtkEveryFilterClass {
3049    _data: [u8; 0],
3050    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3051}
3052
3053pub type GtkEveryFilterClass = _GtkEveryFilterClass;
3054
3055#[repr(C)]
3056#[allow(dead_code)]
3057pub struct GtkExpressionWatch {
3058    _data: [u8; 0],
3059    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3060}
3061
3062impl ::std::fmt::Debug for GtkExpressionWatch {
3063    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3064        f.debug_struct(&format!("GtkExpressionWatch @ {self:p}"))
3065            .finish()
3066    }
3067}
3068
3069#[derive(Copy, Clone)]
3070#[repr(C)]
3071pub struct GtkFileChooserNativeClass {
3072    pub parent_class: GtkNativeDialogClass,
3073}
3074
3075impl ::std::fmt::Debug for GtkFileChooserNativeClass {
3076    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3077        f.debug_struct(&format!("GtkFileChooserNativeClass @ {self:p}"))
3078            .field("parent_class", &self.parent_class)
3079            .finish()
3080    }
3081}
3082
3083#[derive(Copy, Clone)]
3084#[repr(C)]
3085pub struct GtkFileDialogClass {
3086    pub parent_class: gobject::GObjectClass,
3087}
3088
3089impl ::std::fmt::Debug for GtkFileDialogClass {
3090    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3091        f.debug_struct(&format!("GtkFileDialogClass @ {self:p}"))
3092            .field("parent_class", &self.parent_class)
3093            .finish()
3094    }
3095}
3096
3097#[derive(Copy, Clone)]
3098#[repr(C)]
3099pub struct GtkFileLauncherClass {
3100    pub parent_class: gobject::GObjectClass,
3101}
3102
3103impl ::std::fmt::Debug for GtkFileLauncherClass {
3104    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3105        f.debug_struct(&format!("GtkFileLauncherClass @ {self:p}"))
3106            .field("parent_class", &self.parent_class)
3107            .finish()
3108    }
3109}
3110
3111#[derive(Copy, Clone)]
3112#[repr(C)]
3113pub struct GtkFilterClass {
3114    pub parent_class: gobject::GObjectClass,
3115    pub match_: Option<unsafe extern "C" fn(*mut GtkFilter, *mut gobject::GObject) -> gboolean>,
3116    pub get_strictness: Option<unsafe extern "C" fn(*mut GtkFilter) -> GtkFilterMatch>,
3117    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3118    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3119    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3120    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3121    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3122    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3123    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3124    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3125}
3126
3127impl ::std::fmt::Debug for GtkFilterClass {
3128    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3129        f.debug_struct(&format!("GtkFilterClass @ {self:p}"))
3130            .field("parent_class", &self.parent_class)
3131            .field("match_", &self.match_)
3132            .field("get_strictness", &self.get_strictness)
3133            .field("_gtk_reserved1", &self._gtk_reserved1)
3134            .field("_gtk_reserved2", &self._gtk_reserved2)
3135            .field("_gtk_reserved3", &self._gtk_reserved3)
3136            .field("_gtk_reserved4", &self._gtk_reserved4)
3137            .field("_gtk_reserved5", &self._gtk_reserved5)
3138            .field("_gtk_reserved6", &self._gtk_reserved6)
3139            .field("_gtk_reserved7", &self._gtk_reserved7)
3140            .field("_gtk_reserved8", &self._gtk_reserved8)
3141            .finish()
3142    }
3143}
3144
3145#[derive(Copy, Clone)]
3146#[repr(C)]
3147pub struct GtkFilterListModelClass {
3148    pub parent_class: gobject::GObjectClass,
3149}
3150
3151impl ::std::fmt::Debug for GtkFilterListModelClass {
3152    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3153        f.debug_struct(&format!("GtkFilterListModelClass @ {self:p}"))
3154            .field("parent_class", &self.parent_class)
3155            .finish()
3156    }
3157}
3158
3159#[derive(Copy, Clone)]
3160#[repr(C)]
3161pub struct GtkFixedClass {
3162    pub parent_class: GtkWidgetClass,
3163    pub padding: [gpointer; 8],
3164}
3165
3166impl ::std::fmt::Debug for GtkFixedClass {
3167    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3168        f.debug_struct(&format!("GtkFixedClass @ {self:p}"))
3169            .field("parent_class", &self.parent_class)
3170            .finish()
3171    }
3172}
3173
3174#[derive(Copy, Clone)]
3175#[repr(C)]
3176pub struct GtkFixedLayoutChildClass {
3177    pub parent_class: GtkLayoutChildClass,
3178}
3179
3180impl ::std::fmt::Debug for GtkFixedLayoutChildClass {
3181    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3182        f.debug_struct(&format!("GtkFixedLayoutChildClass @ {self:p}"))
3183            .field("parent_class", &self.parent_class)
3184            .finish()
3185    }
3186}
3187
3188#[derive(Copy, Clone)]
3189#[repr(C)]
3190pub struct GtkFixedLayoutClass {
3191    pub parent_class: GtkLayoutManagerClass,
3192}
3193
3194impl ::std::fmt::Debug for GtkFixedLayoutClass {
3195    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3196        f.debug_struct(&format!("GtkFixedLayoutClass @ {self:p}"))
3197            .field("parent_class", &self.parent_class)
3198            .finish()
3199    }
3200}
3201
3202#[derive(Copy, Clone)]
3203#[repr(C)]
3204pub struct GtkFlattenListModelClass {
3205    pub parent_class: gobject::GObjectClass,
3206}
3207
3208impl ::std::fmt::Debug for GtkFlattenListModelClass {
3209    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3210        f.debug_struct(&format!("GtkFlattenListModelClass @ {self:p}"))
3211            .field("parent_class", &self.parent_class)
3212            .finish()
3213    }
3214}
3215
3216#[derive(Copy, Clone)]
3217#[repr(C)]
3218pub struct GtkFlowBoxChildClass {
3219    pub parent_class: GtkWidgetClass,
3220    pub activate: Option<unsafe extern "C" fn(*mut GtkFlowBoxChild)>,
3221    pub padding: [gpointer; 8],
3222}
3223
3224impl ::std::fmt::Debug for GtkFlowBoxChildClass {
3225    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3226        f.debug_struct(&format!("GtkFlowBoxChildClass @ {self:p}"))
3227            .field("activate", &self.activate)
3228            .finish()
3229    }
3230}
3231
3232#[derive(Copy, Clone)]
3233#[repr(C)]
3234pub struct GtkFontChooserIface {
3235    pub base_iface: gobject::GTypeInterface,
3236    pub get_font_family:
3237        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFamily>,
3238    pub get_font_face:
3239        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFace>,
3240    pub get_font_size: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> c_int>,
3241    pub set_filter_func: Option<
3242        unsafe extern "C" fn(
3243            *mut GtkFontChooser,
3244            GtkFontFilterFunc,
3245            gpointer,
3246            glib::GDestroyNotify,
3247        ),
3248    >,
3249    pub font_activated: Option<unsafe extern "C" fn(*mut GtkFontChooser, *const c_char)>,
3250    pub set_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser, *mut pango::PangoFontMap)>,
3251    pub get_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontMap>,
3252    pub padding: [gpointer; 10],
3253}
3254
3255impl ::std::fmt::Debug for GtkFontChooserIface {
3256    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3257        f.debug_struct(&format!("GtkFontChooserIface @ {self:p}"))
3258            .field("base_iface", &self.base_iface)
3259            .field("get_font_family", &self.get_font_family)
3260            .field("get_font_face", &self.get_font_face)
3261            .field("get_font_size", &self.get_font_size)
3262            .field("set_filter_func", &self.set_filter_func)
3263            .field("font_activated", &self.font_activated)
3264            .field("set_font_map", &self.set_font_map)
3265            .field("get_font_map", &self.get_font_map)
3266            .finish()
3267    }
3268}
3269
3270#[derive(Copy, Clone)]
3271#[repr(C)]
3272pub struct GtkFontDialogButtonClass {
3273    pub parent_class: GtkWidgetClass,
3274}
3275
3276impl ::std::fmt::Debug for GtkFontDialogButtonClass {
3277    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3278        f.debug_struct(&format!("GtkFontDialogButtonClass @ {self:p}"))
3279            .field("parent_class", &self.parent_class)
3280            .finish()
3281    }
3282}
3283
3284#[derive(Copy, Clone)]
3285#[repr(C)]
3286pub struct GtkFontDialogClass {
3287    pub parent_class: gobject::GObjectClass,
3288}
3289
3290impl ::std::fmt::Debug for GtkFontDialogClass {
3291    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3292        f.debug_struct(&format!("GtkFontDialogClass @ {self:p}"))
3293            .field("parent_class", &self.parent_class)
3294            .finish()
3295    }
3296}
3297
3298#[derive(Copy, Clone)]
3299#[repr(C)]
3300pub struct GtkFrameClass {
3301    pub parent_class: GtkWidgetClass,
3302    pub compute_child_allocation: Option<unsafe extern "C" fn(*mut GtkFrame, *mut GtkAllocation)>,
3303    pub padding: [gpointer; 8],
3304}
3305
3306impl ::std::fmt::Debug for GtkFrameClass {
3307    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3308        f.debug_struct(&format!("GtkFrameClass @ {self:p}"))
3309            .field("parent_class", &self.parent_class)
3310            .field("compute_child_allocation", &self.compute_child_allocation)
3311            .finish()
3312    }
3313}
3314
3315#[derive(Copy, Clone)]
3316#[repr(C)]
3317pub struct GtkGLAreaClass {
3318    pub parent_class: GtkWidgetClass,
3319    pub render: Option<unsafe extern "C" fn(*mut GtkGLArea, *mut gdk::GdkGLContext) -> gboolean>,
3320    pub resize: Option<unsafe extern "C" fn(*mut GtkGLArea, c_int, c_int)>,
3321    pub create_context: Option<unsafe extern "C" fn(*mut GtkGLArea) -> *mut gdk::GdkGLContext>,
3322    pub _padding: [gpointer; 8],
3323}
3324
3325impl ::std::fmt::Debug for GtkGLAreaClass {
3326    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3327        f.debug_struct(&format!("GtkGLAreaClass @ {self:p}"))
3328            .field("render", &self.render)
3329            .field("resize", &self.resize)
3330            .field("create_context", &self.create_context)
3331            .finish()
3332    }
3333}
3334
3335#[repr(C)]
3336#[allow(dead_code)]
3337pub struct _GtkGestureClass {
3338    _data: [u8; 0],
3339    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3340}
3341
3342pub type GtkGestureClass = _GtkGestureClass;
3343
3344#[repr(C)]
3345#[allow(dead_code)]
3346pub struct _GtkGestureClickClass {
3347    _data: [u8; 0],
3348    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3349}
3350
3351pub type GtkGestureClickClass = _GtkGestureClickClass;
3352
3353#[repr(C)]
3354#[allow(dead_code)]
3355pub struct _GtkGestureDragClass {
3356    _data: [u8; 0],
3357    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3358}
3359
3360pub type GtkGestureDragClass = _GtkGestureDragClass;
3361
3362#[repr(C)]
3363#[allow(dead_code)]
3364pub struct _GtkGestureLongPressClass {
3365    _data: [u8; 0],
3366    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3367}
3368
3369pub type GtkGestureLongPressClass = _GtkGestureLongPressClass;
3370
3371#[repr(C)]
3372#[allow(dead_code)]
3373pub struct _GtkGesturePanClass {
3374    _data: [u8; 0],
3375    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3376}
3377
3378pub type GtkGesturePanClass = _GtkGesturePanClass;
3379
3380#[repr(C)]
3381#[allow(dead_code)]
3382pub struct _GtkGestureRotateClass {
3383    _data: [u8; 0],
3384    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3385}
3386
3387pub type GtkGestureRotateClass = _GtkGestureRotateClass;
3388
3389#[repr(C)]
3390#[allow(dead_code)]
3391pub struct _GtkGestureSingleClass {
3392    _data: [u8; 0],
3393    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3394}
3395
3396pub type GtkGestureSingleClass = _GtkGestureSingleClass;
3397
3398#[repr(C)]
3399#[allow(dead_code)]
3400pub struct _GtkGestureStylusClass {
3401    _data: [u8; 0],
3402    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3403}
3404
3405pub type GtkGestureStylusClass = _GtkGestureStylusClass;
3406
3407#[repr(C)]
3408#[allow(dead_code)]
3409pub struct _GtkGestureSwipeClass {
3410    _data: [u8; 0],
3411    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3412}
3413
3414pub type GtkGestureSwipeClass = _GtkGestureSwipeClass;
3415
3416#[repr(C)]
3417#[allow(dead_code)]
3418pub struct _GtkGestureZoomClass {
3419    _data: [u8; 0],
3420    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3421}
3422
3423pub type GtkGestureZoomClass = _GtkGestureZoomClass;
3424
3425#[derive(Copy, Clone)]
3426#[repr(C)]
3427pub struct GtkGraphicsOffloadClass {
3428    pub parent_class: GtkWidgetClass,
3429}
3430
3431impl ::std::fmt::Debug for GtkGraphicsOffloadClass {
3432    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3433        f.debug_struct(&format!("GtkGraphicsOffloadClass @ {self:p}"))
3434            .field("parent_class", &self.parent_class)
3435            .finish()
3436    }
3437}
3438
3439#[derive(Copy, Clone)]
3440#[repr(C)]
3441pub struct GtkGridClass {
3442    pub parent_class: GtkWidgetClass,
3443    pub padding: [gpointer; 8],
3444}
3445
3446impl ::std::fmt::Debug for GtkGridClass {
3447    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3448        f.debug_struct(&format!("GtkGridClass @ {self:p}"))
3449            .field("parent_class", &self.parent_class)
3450            .finish()
3451    }
3452}
3453
3454#[derive(Copy, Clone)]
3455#[repr(C)]
3456pub struct GtkGridLayoutChildClass {
3457    pub parent_class: GtkLayoutChildClass,
3458}
3459
3460impl ::std::fmt::Debug for GtkGridLayoutChildClass {
3461    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3462        f.debug_struct(&format!("GtkGridLayoutChildClass @ {self:p}"))
3463            .field("parent_class", &self.parent_class)
3464            .finish()
3465    }
3466}
3467
3468#[derive(Copy, Clone)]
3469#[repr(C)]
3470pub struct GtkGridLayoutClass {
3471    pub parent_class: GtkLayoutManagerClass,
3472}
3473
3474impl ::std::fmt::Debug for GtkGridLayoutClass {
3475    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3476        f.debug_struct(&format!("GtkGridLayoutClass @ {self:p}"))
3477            .field("parent_class", &self.parent_class)
3478            .finish()
3479    }
3480}
3481
3482#[repr(C)]
3483#[allow(dead_code)]
3484pub struct _GtkGridViewClass {
3485    _data: [u8; 0],
3486    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3487}
3488
3489pub type GtkGridViewClass = _GtkGridViewClass;
3490
3491#[derive(Copy, Clone)]
3492#[repr(C)]
3493pub struct GtkIMContextClass {
3494    pub parent_class: gobject::GObjectClass,
3495    pub preedit_start: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3496    pub preedit_end: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3497    pub preedit_changed: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3498    pub commit: Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char)>,
3499    pub retrieve_surrounding: Option<unsafe extern "C" fn(*mut GtkIMContext) -> gboolean>,
3500    pub delete_surrounding:
3501        Option<unsafe extern "C" fn(*mut GtkIMContext, c_int, c_int) -> gboolean>,
3502    pub set_client_widget: Option<unsafe extern "C" fn(*mut GtkIMContext, *mut GtkWidget)>,
3503    pub get_preedit_string: Option<
3504        unsafe extern "C" fn(
3505            *mut GtkIMContext,
3506            *mut *mut c_char,
3507            *mut *mut pango::PangoAttrList,
3508            *mut c_int,
3509        ),
3510    >,
3511    pub filter_keypress:
3512        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEvent) -> gboolean>,
3513    pub focus_in: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3514    pub focus_out: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3515    pub reset: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3516    pub set_cursor_location:
3517        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkRectangle)>,
3518    pub set_use_preedit: Option<unsafe extern "C" fn(*mut GtkIMContext, gboolean)>,
3519    pub set_surrounding:
3520        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int)>,
3521    pub get_surrounding:
3522        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut *mut c_char, *mut c_int) -> gboolean>,
3523    pub set_surrounding_with_selection:
3524        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int, c_int)>,
3525    pub get_surrounding_with_selection: Option<
3526        unsafe extern "C" fn(
3527            *mut GtkIMContext,
3528            *mut *mut c_char,
3529            *mut c_int,
3530            *mut c_int,
3531        ) -> gboolean,
3532    >,
3533    pub activate_osk: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3534    pub activate_osk_with_event:
3535        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEvent) -> gboolean>,
3536    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3537    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3538    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3539}
3540
3541impl ::std::fmt::Debug for GtkIMContextClass {
3542    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3543        f.debug_struct(&format!("GtkIMContextClass @ {self:p}"))
3544            .field("preedit_start", &self.preedit_start)
3545            .field("preedit_end", &self.preedit_end)
3546            .field("preedit_changed", &self.preedit_changed)
3547            .field("commit", &self.commit)
3548            .field("retrieve_surrounding", &self.retrieve_surrounding)
3549            .field("delete_surrounding", &self.delete_surrounding)
3550            .field("set_client_widget", &self.set_client_widget)
3551            .field("get_preedit_string", &self.get_preedit_string)
3552            .field("filter_keypress", &self.filter_keypress)
3553            .field("focus_in", &self.focus_in)
3554            .field("focus_out", &self.focus_out)
3555            .field("reset", &self.reset)
3556            .field("set_cursor_location", &self.set_cursor_location)
3557            .field("set_use_preedit", &self.set_use_preedit)
3558            .field("set_surrounding", &self.set_surrounding)
3559            .field("get_surrounding", &self.get_surrounding)
3560            .field(
3561                "set_surrounding_with_selection",
3562                &self.set_surrounding_with_selection,
3563            )
3564            .field(
3565                "get_surrounding_with_selection",
3566                &self.get_surrounding_with_selection,
3567            )
3568            .field("activate_osk", &self.activate_osk)
3569            .field("activate_osk_with_event", &self.activate_osk_with_event)
3570            .field("_gtk_reserved2", &self._gtk_reserved2)
3571            .field("_gtk_reserved3", &self._gtk_reserved3)
3572            .field("_gtk_reserved4", &self._gtk_reserved4)
3573            .finish()
3574    }
3575}
3576
3577#[derive(Copy, Clone)]
3578#[repr(C)]
3579pub struct GtkIMContextSimpleClass {
3580    pub parent_class: GtkIMContextClass,
3581}
3582
3583impl ::std::fmt::Debug for GtkIMContextSimpleClass {
3584    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3585        f.debug_struct(&format!("GtkIMContextSimpleClass @ {self:p}"))
3586            .field("parent_class", &self.parent_class)
3587            .finish()
3588    }
3589}
3590
3591#[repr(C)]
3592#[allow(dead_code)]
3593pub struct _GtkIMContextSimplePrivate {
3594    _data: [u8; 0],
3595    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3596}
3597
3598pub type GtkIMContextSimplePrivate = _GtkIMContextSimplePrivate;
3599
3600#[derive(Copy, Clone)]
3601#[repr(C)]
3602pub struct GtkIMMulticontextClass {
3603    pub parent_class: GtkIMContextClass,
3604    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3605    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3606    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3607    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3608}
3609
3610impl ::std::fmt::Debug for GtkIMMulticontextClass {
3611    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3612        f.debug_struct(&format!("GtkIMMulticontextClass @ {self:p}"))
3613            .field("parent_class", &self.parent_class)
3614            .field("_gtk_reserved1", &self._gtk_reserved1)
3615            .field("_gtk_reserved2", &self._gtk_reserved2)
3616            .field("_gtk_reserved3", &self._gtk_reserved3)
3617            .field("_gtk_reserved4", &self._gtk_reserved4)
3618            .finish()
3619    }
3620}
3621
3622#[repr(C)]
3623#[allow(dead_code)]
3624pub struct _GtkIMMulticontextPrivate {
3625    _data: [u8; 0],
3626    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3627}
3628
3629pub type GtkIMMulticontextPrivate = _GtkIMMulticontextPrivate;
3630
3631#[derive(Copy, Clone)]
3632#[repr(C)]
3633pub struct GtkIconPaintableClass {
3634    pub parent_class: gobject::GObjectClass,
3635}
3636
3637impl ::std::fmt::Debug for GtkIconPaintableClass {
3638    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3639        f.debug_struct(&format!("GtkIconPaintableClass @ {self:p}"))
3640            .field("parent_class", &self.parent_class)
3641            .finish()
3642    }
3643}
3644
3645#[derive(Copy, Clone)]
3646#[repr(C)]
3647pub struct GtkInscriptionClass {
3648    pub parent_class: GtkWidgetClass,
3649}
3650
3651impl ::std::fmt::Debug for GtkInscriptionClass {
3652    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3653        f.debug_struct(&format!("GtkInscriptionClass @ {self:p}"))
3654            .field("parent_class", &self.parent_class)
3655            .finish()
3656    }
3657}
3658
3659#[repr(C)]
3660#[allow(dead_code)]
3661pub struct _GtkKeyvalTriggerClass {
3662    _data: [u8; 0],
3663    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3664}
3665
3666pub type GtkKeyvalTriggerClass = _GtkKeyvalTriggerClass;
3667
3668#[derive(Copy, Clone)]
3669#[repr(C)]
3670pub struct GtkLayoutChildClass {
3671    pub parent_class: gobject::GObjectClass,
3672}
3673
3674impl ::std::fmt::Debug for GtkLayoutChildClass {
3675    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3676        f.debug_struct(&format!("GtkLayoutChildClass @ {self:p}"))
3677            .finish()
3678    }
3679}
3680
3681#[derive(Copy, Clone)]
3682#[repr(C)]
3683pub struct GtkLayoutManagerClass {
3684    pub parent_class: gobject::GObjectClass,
3685    pub get_request_mode:
3686        Option<unsafe extern "C" fn(*mut GtkLayoutManager, *mut GtkWidget) -> GtkSizeRequestMode>,
3687    pub measure: Option<
3688        unsafe extern "C" fn(
3689            *mut GtkLayoutManager,
3690            *mut GtkWidget,
3691            GtkOrientation,
3692            c_int,
3693            *mut c_int,
3694            *mut c_int,
3695            *mut c_int,
3696            *mut c_int,
3697        ),
3698    >,
3699    pub allocate:
3700        Option<unsafe extern "C" fn(*mut GtkLayoutManager, *mut GtkWidget, c_int, c_int, c_int)>,
3701    pub layout_child_type: GType,
3702    pub create_layout_child: Option<
3703        unsafe extern "C" fn(
3704            *mut GtkLayoutManager,
3705            *mut GtkWidget,
3706            *mut GtkWidget,
3707        ) -> *mut GtkLayoutChild,
3708    >,
3709    pub root: Option<unsafe extern "C" fn(*mut GtkLayoutManager)>,
3710    pub unroot: Option<unsafe extern "C" fn(*mut GtkLayoutManager)>,
3711    pub _padding: [gpointer; 16],
3712}
3713
3714impl ::std::fmt::Debug for GtkLayoutManagerClass {
3715    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3716        f.debug_struct(&format!("GtkLayoutManagerClass @ {self:p}"))
3717            .field("get_request_mode", &self.get_request_mode)
3718            .field("measure", &self.measure)
3719            .field("allocate", &self.allocate)
3720            .field("layout_child_type", &self.layout_child_type)
3721            .field("create_layout_child", &self.create_layout_child)
3722            .field("root", &self.root)
3723            .field("unroot", &self.unroot)
3724            .finish()
3725    }
3726}
3727
3728#[repr(C)]
3729#[allow(dead_code)]
3730pub struct _GtkListBaseClass {
3731    _data: [u8; 0],
3732    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3733}
3734
3735pub type GtkListBaseClass = _GtkListBaseClass;
3736
3737#[derive(Copy, Clone)]
3738#[repr(C)]
3739pub struct GtkListBoxRowClass {
3740    pub parent_class: GtkWidgetClass,
3741    pub activate: Option<unsafe extern "C" fn(*mut GtkListBoxRow)>,
3742    pub padding: [gpointer; 8],
3743}
3744
3745impl ::std::fmt::Debug for GtkListBoxRowClass {
3746    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3747        f.debug_struct(&format!("GtkListBoxRowClass @ {self:p}"))
3748            .field("parent_class", &self.parent_class)
3749            .field("activate", &self.activate)
3750            .finish()
3751    }
3752}
3753
3754#[repr(C)]
3755#[allow(dead_code)]
3756pub struct _GtkListHeaderClass {
3757    _data: [u8; 0],
3758    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3759}
3760
3761pub type GtkListHeaderClass = _GtkListHeaderClass;
3762
3763#[repr(C)]
3764#[allow(dead_code)]
3765pub struct _GtkListItemClass {
3766    _data: [u8; 0],
3767    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3768}
3769
3770pub type GtkListItemClass = _GtkListItemClass;
3771
3772#[repr(C)]
3773#[allow(dead_code)]
3774pub struct _GtkListItemFactoryClass {
3775    _data: [u8; 0],
3776    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3777}
3778
3779pub type GtkListItemFactoryClass = _GtkListItemFactoryClass;
3780
3781#[derive(Copy, Clone)]
3782#[repr(C)]
3783pub struct GtkListStoreClass {
3784    pub parent_class: gobject::GObjectClass,
3785    pub padding: [gpointer; 8],
3786}
3787
3788impl ::std::fmt::Debug for GtkListStoreClass {
3789    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3790        f.debug_struct(&format!("GtkListStoreClass @ {self:p}"))
3791            .field("parent_class", &self.parent_class)
3792            .finish()
3793    }
3794}
3795
3796#[repr(C)]
3797#[allow(dead_code)]
3798pub struct _GtkListStorePrivate {
3799    _data: [u8; 0],
3800    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3801}
3802
3803pub type GtkListStorePrivate = _GtkListStorePrivate;
3804
3805#[repr(C)]
3806#[allow(dead_code)]
3807pub struct _GtkListViewClass {
3808    _data: [u8; 0],
3809    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3810}
3811
3812pub type GtkListViewClass = _GtkListViewClass;
3813
3814#[derive(Copy, Clone)]
3815#[repr(C)]
3816pub struct GtkMapListModelClass {
3817    pub parent_class: gobject::GObjectClass,
3818}
3819
3820impl ::std::fmt::Debug for GtkMapListModelClass {
3821    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3822        f.debug_struct(&format!("GtkMapListModelClass @ {self:p}"))
3823            .field("parent_class", &self.parent_class)
3824            .finish()
3825    }
3826}
3827
3828#[derive(Copy, Clone)]
3829#[repr(C)]
3830pub struct GtkMediaControlsClass {
3831    pub parent_class: GtkWidgetClass,
3832}
3833
3834impl ::std::fmt::Debug for GtkMediaControlsClass {
3835    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3836        f.debug_struct(&format!("GtkMediaControlsClass @ {self:p}"))
3837            .field("parent_class", &self.parent_class)
3838            .finish()
3839    }
3840}
3841
3842#[derive(Copy, Clone)]
3843#[repr(C)]
3844pub struct GtkMediaFileClass {
3845    pub parent_class: GtkMediaStreamClass,
3846    pub open: Option<unsafe extern "C" fn(*mut GtkMediaFile)>,
3847    pub close: Option<unsafe extern "C" fn(*mut GtkMediaFile)>,
3848    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3849    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3850    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3851    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3852}
3853
3854impl ::std::fmt::Debug for GtkMediaFileClass {
3855    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3856        f.debug_struct(&format!("GtkMediaFileClass @ {self:p}"))
3857            .field("parent_class", &self.parent_class)
3858            .field("open", &self.open)
3859            .field("close", &self.close)
3860            .field("_gtk_reserved1", &self._gtk_reserved1)
3861            .field("_gtk_reserved2", &self._gtk_reserved2)
3862            .field("_gtk_reserved3", &self._gtk_reserved3)
3863            .field("_gtk_reserved4", &self._gtk_reserved4)
3864            .finish()
3865    }
3866}
3867
3868#[derive(Copy, Clone)]
3869#[repr(C)]
3870pub struct GtkMediaStreamClass {
3871    pub parent_class: gobject::GObjectClass,
3872    pub play: Option<unsafe extern "C" fn(*mut GtkMediaStream) -> gboolean>,
3873    pub pause: Option<unsafe extern "C" fn(*mut GtkMediaStream)>,
3874    pub seek: Option<unsafe extern "C" fn(*mut GtkMediaStream, i64)>,
3875    pub update_audio: Option<unsafe extern "C" fn(*mut GtkMediaStream, gboolean, c_double)>,
3876    pub realize: Option<unsafe extern "C" fn(*mut GtkMediaStream, *mut gdk::GdkSurface)>,
3877    pub unrealize: Option<unsafe extern "C" fn(*mut GtkMediaStream, *mut gdk::GdkSurface)>,
3878    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3879    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3880    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3881    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3882    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3883    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3884    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3885    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3886}
3887
3888impl ::std::fmt::Debug for GtkMediaStreamClass {
3889    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3890        f.debug_struct(&format!("GtkMediaStreamClass @ {self:p}"))
3891            .field("parent_class", &self.parent_class)
3892            .field("play", &self.play)
3893            .field("pause", &self.pause)
3894            .field("seek", &self.seek)
3895            .field("update_audio", &self.update_audio)
3896            .field("realize", &self.realize)
3897            .field("unrealize", &self.unrealize)
3898            .field("_gtk_reserved1", &self._gtk_reserved1)
3899            .field("_gtk_reserved2", &self._gtk_reserved2)
3900            .field("_gtk_reserved3", &self._gtk_reserved3)
3901            .field("_gtk_reserved4", &self._gtk_reserved4)
3902            .field("_gtk_reserved5", &self._gtk_reserved5)
3903            .field("_gtk_reserved6", &self._gtk_reserved6)
3904            .field("_gtk_reserved7", &self._gtk_reserved7)
3905            .field("_gtk_reserved8", &self._gtk_reserved8)
3906            .finish()
3907    }
3908}
3909
3910#[repr(C)]
3911#[allow(dead_code)]
3912pub struct _GtkMessageDialogClass {
3913    _data: [u8; 0],
3914    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3915}
3916
3917pub type GtkMessageDialogClass = _GtkMessageDialogClass;
3918
3919#[repr(C)]
3920#[allow(dead_code)]
3921pub struct _GtkMnemonicActionClass {
3922    _data: [u8; 0],
3923    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3924}
3925
3926pub type GtkMnemonicActionClass = _GtkMnemonicActionClass;
3927
3928#[repr(C)]
3929#[allow(dead_code)]
3930pub struct _GtkMnemonicTriggerClass {
3931    _data: [u8; 0],
3932    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3933}
3934
3935pub type GtkMnemonicTriggerClass = _GtkMnemonicTriggerClass;
3936
3937#[derive(Copy, Clone)]
3938#[repr(C)]
3939pub struct GtkMountOperationClass {
3940    pub parent_class: gio::GMountOperationClass,
3941    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3942    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3943    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3944    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3945}
3946
3947impl ::std::fmt::Debug for GtkMountOperationClass {
3948    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3949        f.debug_struct(&format!("GtkMountOperationClass @ {self:p}"))
3950            .field("parent_class", &self.parent_class)
3951            .field("_gtk_reserved1", &self._gtk_reserved1)
3952            .field("_gtk_reserved2", &self._gtk_reserved2)
3953            .field("_gtk_reserved3", &self._gtk_reserved3)
3954            .field("_gtk_reserved4", &self._gtk_reserved4)
3955            .finish()
3956    }
3957}
3958
3959#[repr(C)]
3960#[allow(dead_code)]
3961pub struct _GtkMountOperationPrivate {
3962    _data: [u8; 0],
3963    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3964}
3965
3966pub type GtkMountOperationPrivate = _GtkMountOperationPrivate;
3967
3968#[repr(C)]
3969#[allow(dead_code)]
3970pub struct _GtkMultiFilterClass {
3971    _data: [u8; 0],
3972    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3973}
3974
3975pub type GtkMultiFilterClass = _GtkMultiFilterClass;
3976
3977#[derive(Copy, Clone)]
3978#[repr(C)]
3979pub struct GtkMultiSelectionClass {
3980    pub parent_class: gobject::GObjectClass,
3981}
3982
3983impl ::std::fmt::Debug for GtkMultiSelectionClass {
3984    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3985        f.debug_struct(&format!("GtkMultiSelectionClass @ {self:p}"))
3986            .field("parent_class", &self.parent_class)
3987            .finish()
3988    }
3989}
3990
3991#[derive(Copy, Clone)]
3992#[repr(C)]
3993pub struct GtkMultiSorterClass {
3994    pub parent_class: GtkSorterClass,
3995}
3996
3997impl ::std::fmt::Debug for GtkMultiSorterClass {
3998    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3999        f.debug_struct(&format!("GtkMultiSorterClass @ {self:p}"))
4000            .field("parent_class", &self.parent_class)
4001            .finish()
4002    }
4003}
4004
4005#[repr(C)]
4006#[allow(dead_code)]
4007pub struct _GtkNamedActionClass {
4008    _data: [u8; 0],
4009    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4010}
4011
4012pub type GtkNamedActionClass = _GtkNamedActionClass;
4013
4014#[derive(Copy, Clone)]
4015#[repr(C)]
4016pub struct GtkNativeDialogClass {
4017    pub parent_class: gobject::GObjectClass,
4018    pub response: Option<unsafe extern "C" fn(*mut GtkNativeDialog, GtkResponseType)>,
4019    pub show: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
4020    pub hide: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
4021    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4022    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4023    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4024    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4025}
4026
4027impl ::std::fmt::Debug for GtkNativeDialogClass {
4028    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4029        f.debug_struct(&format!("GtkNativeDialogClass @ {self:p}"))
4030            .field("response", &self.response)
4031            .field("show", &self.show)
4032            .field("hide", &self.hide)
4033            .field("_gtk_reserved1", &self._gtk_reserved1)
4034            .field("_gtk_reserved2", &self._gtk_reserved2)
4035            .field("_gtk_reserved3", &self._gtk_reserved3)
4036            .field("_gtk_reserved4", &self._gtk_reserved4)
4037            .finish()
4038    }
4039}
4040
4041#[repr(C)]
4042#[allow(dead_code)]
4043pub struct _GtkNativeInterface {
4044    _data: [u8; 0],
4045    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4046}
4047
4048pub type GtkNativeInterface = _GtkNativeInterface;
4049
4050#[repr(C)]
4051#[allow(dead_code)]
4052pub struct _GtkNeverTriggerClass {
4053    _data: [u8; 0],
4054    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4055}
4056
4057pub type GtkNeverTriggerClass = _GtkNeverTriggerClass;
4058
4059#[derive(Copy, Clone)]
4060#[repr(C)]
4061pub struct GtkNoSelectionClass {
4062    pub parent_class: gobject::GObjectClass,
4063}
4064
4065impl ::std::fmt::Debug for GtkNoSelectionClass {
4066    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4067        f.debug_struct(&format!("GtkNoSelectionClass @ {self:p}"))
4068            .field("parent_class", &self.parent_class)
4069            .finish()
4070    }
4071}
4072
4073#[repr(C)]
4074#[allow(dead_code)]
4075pub struct _GtkNothingActionClass {
4076    _data: [u8; 0],
4077    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4078}
4079
4080pub type GtkNothingActionClass = _GtkNothingActionClass;
4081
4082#[derive(Copy, Clone)]
4083#[repr(C)]
4084pub struct GtkNumericSorterClass {
4085    pub parent_class: GtkSorterClass,
4086}
4087
4088impl ::std::fmt::Debug for GtkNumericSorterClass {
4089    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4090        f.debug_struct(&format!("GtkNumericSorterClass @ {self:p}"))
4091            .field("parent_class", &self.parent_class)
4092            .finish()
4093    }
4094}
4095
4096#[derive(Copy, Clone)]
4097#[repr(C)]
4098pub struct GtkOrientableIface {
4099    pub base_iface: gobject::GTypeInterface,
4100}
4101
4102impl ::std::fmt::Debug for GtkOrientableIface {
4103    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4104        f.debug_struct(&format!("GtkOrientableIface @ {self:p}"))
4105            .field("base_iface", &self.base_iface)
4106            .finish()
4107    }
4108}
4109
4110#[derive(Copy, Clone)]
4111#[repr(C)]
4112pub struct GtkOverlayLayoutChildClass {
4113    pub parent_class: GtkLayoutChildClass,
4114}
4115
4116impl ::std::fmt::Debug for GtkOverlayLayoutChildClass {
4117    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4118        f.debug_struct(&format!("GtkOverlayLayoutChildClass @ {self:p}"))
4119            .field("parent_class", &self.parent_class)
4120            .finish()
4121    }
4122}
4123
4124#[derive(Copy, Clone)]
4125#[repr(C)]
4126pub struct GtkOverlayLayoutClass {
4127    pub parent_class: GtkLayoutManagerClass,
4128}
4129
4130impl ::std::fmt::Debug for GtkOverlayLayoutClass {
4131    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4132        f.debug_struct(&format!("GtkOverlayLayoutClass @ {self:p}"))
4133            .field("parent_class", &self.parent_class)
4134            .finish()
4135    }
4136}
4137
4138#[derive(Copy, Clone)]
4139#[repr(C)]
4140pub struct GtkPadActionEntry {
4141    pub type_: GtkPadActionType,
4142    pub index: c_int,
4143    pub mode: c_int,
4144    pub label: *const c_char,
4145    pub action_name: *const c_char,
4146}
4147
4148impl ::std::fmt::Debug for GtkPadActionEntry {
4149    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4150        f.debug_struct(&format!("GtkPadActionEntry @ {self:p}"))
4151            .field("type_", &self.type_)
4152            .field("index", &self.index)
4153            .field("mode", &self.mode)
4154            .field("label", &self.label)
4155            .field("action_name", &self.action_name)
4156            .finish()
4157    }
4158}
4159
4160#[repr(C)]
4161#[allow(dead_code)]
4162pub struct _GtkPadControllerClass {
4163    _data: [u8; 0],
4164    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4165}
4166
4167pub type GtkPadControllerClass = _GtkPadControllerClass;
4168
4169#[derive(Copy, Clone)]
4170#[repr(C)]
4171pub struct GtkPageRange {
4172    pub start: c_int,
4173    pub end: c_int,
4174}
4175
4176impl ::std::fmt::Debug for GtkPageRange {
4177    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4178        f.debug_struct(&format!("GtkPageRange @ {self:p}"))
4179            .field("start", &self.start)
4180            .field("end", &self.end)
4181            .finish()
4182    }
4183}
4184
4185#[repr(C)]
4186#[allow(dead_code)]
4187pub struct GtkPaperSize {
4188    _data: [u8; 0],
4189    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4190}
4191
4192impl ::std::fmt::Debug for GtkPaperSize {
4193    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4194        f.debug_struct(&format!("GtkPaperSize @ {self:p}")).finish()
4195    }
4196}
4197
4198#[derive(Copy, Clone)]
4199#[repr(C)]
4200pub struct GtkPasswordEntryBufferClass {
4201    pub parent_class: GtkEntryBufferClass,
4202}
4203
4204impl ::std::fmt::Debug for GtkPasswordEntryBufferClass {
4205    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4206        f.debug_struct(&format!("GtkPasswordEntryBufferClass @ {self:p}"))
4207            .field("parent_class", &self.parent_class)
4208            .finish()
4209    }
4210}
4211
4212#[repr(C)]
4213#[allow(dead_code)]
4214pub struct _GtkPasswordEntryClass {
4215    _data: [u8; 0],
4216    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4217}
4218
4219pub type GtkPasswordEntryClass = _GtkPasswordEntryClass;
4220
4221#[derive(Copy, Clone)]
4222#[repr(C)]
4223pub struct GtkPictureClass {
4224    pub parent_class: GtkWidgetClass,
4225}
4226
4227impl ::std::fmt::Debug for GtkPictureClass {
4228    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4229        f.debug_struct(&format!("GtkPictureClass @ {self:p}"))
4230            .field("parent_class", &self.parent_class)
4231            .finish()
4232    }
4233}
4234
4235#[derive(Copy, Clone)]
4236#[repr(C)]
4237pub struct GtkPopoverClass {
4238    pub parent_class: GtkWidgetClass,
4239    pub closed: Option<unsafe extern "C" fn(*mut GtkPopover)>,
4240    pub activate_default: Option<unsafe extern "C" fn(*mut GtkPopover)>,
4241    pub reserved: [gpointer; 8],
4242}
4243
4244impl ::std::fmt::Debug for GtkPopoverClass {
4245    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4246        f.debug_struct(&format!("GtkPopoverClass @ {self:p}"))
4247            .field("parent_class", &self.parent_class)
4248            .field("closed", &self.closed)
4249            .field("activate_default", &self.activate_default)
4250            .finish()
4251    }
4252}
4253
4254#[repr(C)]
4255#[allow(dead_code)]
4256pub struct _GtkPrintBackend {
4257    _data: [u8; 0],
4258    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4259}
4260
4261pub type GtkPrintBackend = _GtkPrintBackend;
4262
4263#[derive(Copy, Clone)]
4264#[repr(C)]
4265pub struct GtkPrintDialogClass {
4266    pub parent_class: gobject::GObjectClass,
4267}
4268
4269impl ::std::fmt::Debug for GtkPrintDialogClass {
4270    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4271        f.debug_struct(&format!("GtkPrintDialogClass @ {self:p}"))
4272            .field("parent_class", &self.parent_class)
4273            .finish()
4274    }
4275}
4276
4277#[derive(Copy, Clone)]
4278#[repr(C)]
4279pub struct GtkPrintOperationClass {
4280    pub parent_class: gobject::GObjectClass,
4281    pub done: Option<unsafe extern "C" fn(*mut GtkPrintOperation, GtkPrintOperationResult)>,
4282    pub begin_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
4283    pub paginate:
4284        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext) -> gboolean>,
4285    pub request_page_setup: Option<
4286        unsafe extern "C" fn(
4287            *mut GtkPrintOperation,
4288            *mut GtkPrintContext,
4289            c_int,
4290            *mut GtkPageSetup,
4291        ),
4292    >,
4293    pub draw_page:
4294        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext, c_int)>,
4295    pub end_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
4296    pub status_changed: Option<unsafe extern "C" fn(*mut GtkPrintOperation)>,
4297    pub create_custom_widget:
4298        Option<unsafe extern "C" fn(*mut GtkPrintOperation) -> *mut GtkWidget>,
4299    pub custom_widget_apply: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkWidget)>,
4300    pub preview: Option<
4301        unsafe extern "C" fn(
4302            *mut GtkPrintOperation,
4303            *mut GtkPrintOperationPreview,
4304            *mut GtkPrintContext,
4305            *mut GtkWindow,
4306        ) -> gboolean,
4307    >,
4308    pub update_custom_widget: Option<
4309        unsafe extern "C" fn(
4310            *mut GtkPrintOperation,
4311            *mut GtkWidget,
4312            *mut GtkPageSetup,
4313            *mut GtkPrintSettings,
4314        ),
4315    >,
4316    pub padding: [gpointer; 8],
4317}
4318
4319impl ::std::fmt::Debug for GtkPrintOperationClass {
4320    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4321        f.debug_struct(&format!("GtkPrintOperationClass @ {self:p}"))
4322            .field("parent_class", &self.parent_class)
4323            .field("done", &self.done)
4324            .field("begin_print", &self.begin_print)
4325            .field("paginate", &self.paginate)
4326            .field("request_page_setup", &self.request_page_setup)
4327            .field("draw_page", &self.draw_page)
4328            .field("end_print", &self.end_print)
4329            .field("status_changed", &self.status_changed)
4330            .field("create_custom_widget", &self.create_custom_widget)
4331            .field("custom_widget_apply", &self.custom_widget_apply)
4332            .field("preview", &self.preview)
4333            .field("update_custom_widget", &self.update_custom_widget)
4334            .finish()
4335    }
4336}
4337
4338#[derive(Copy, Clone)]
4339#[repr(C)]
4340pub struct GtkPrintOperationPreviewIface {
4341    pub g_iface: gobject::GTypeInterface,
4342    pub ready: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, *mut GtkPrintContext)>,
4343    pub got_page_size: Option<
4344        unsafe extern "C" fn(
4345            *mut GtkPrintOperationPreview,
4346            *mut GtkPrintContext,
4347            *mut GtkPageSetup,
4348        ),
4349    >,
4350    pub render_page: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int)>,
4351    pub is_selected: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int) -> gboolean>,
4352    pub end_preview: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview)>,
4353    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4354    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4355    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4356    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4357    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4358    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4359    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4360    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4361}
4362
4363impl ::std::fmt::Debug for GtkPrintOperationPreviewIface {
4364    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4365        f.debug_struct(&format!("GtkPrintOperationPreviewIface @ {self:p}"))
4366            .field("g_iface", &self.g_iface)
4367            .field("ready", &self.ready)
4368            .field("got_page_size", &self.got_page_size)
4369            .field("render_page", &self.render_page)
4370            .field("is_selected", &self.is_selected)
4371            .field("end_preview", &self.end_preview)
4372            .field("_gtk_reserved1", &self._gtk_reserved1)
4373            .field("_gtk_reserved2", &self._gtk_reserved2)
4374            .field("_gtk_reserved3", &self._gtk_reserved3)
4375            .field("_gtk_reserved4", &self._gtk_reserved4)
4376            .field("_gtk_reserved5", &self._gtk_reserved5)
4377            .field("_gtk_reserved6", &self._gtk_reserved6)
4378            .field("_gtk_reserved7", &self._gtk_reserved7)
4379            .field("_gtk_reserved8", &self._gtk_reserved8)
4380            .finish()
4381    }
4382}
4383
4384#[repr(C)]
4385#[allow(dead_code)]
4386pub struct _GtkPrintOperationPrivate {
4387    _data: [u8; 0],
4388    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4389}
4390
4391pub type GtkPrintOperationPrivate = _GtkPrintOperationPrivate;
4392
4393#[repr(C)]
4394#[allow(dead_code)]
4395pub struct GtkPrintSetup {
4396    _data: [u8; 0],
4397    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4398}
4399
4400impl ::std::fmt::Debug for GtkPrintSetup {
4401    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4402        f.debug_struct(&format!("GtkPrintSetup @ {self:p}"))
4403            .finish()
4404    }
4405}
4406
4407#[derive(Copy, Clone)]
4408#[repr(C)]
4409pub struct GtkRangeClass {
4410    pub parent_class: GtkWidgetClass,
4411    pub value_changed: Option<unsafe extern "C" fn(*mut GtkRange)>,
4412    pub adjust_bounds: Option<unsafe extern "C" fn(*mut GtkRange, c_double)>,
4413    pub move_slider: Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType)>,
4414    pub get_range_border: Option<unsafe extern "C" fn(*mut GtkRange, *mut GtkBorder)>,
4415    pub change_value:
4416        Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType, c_double) -> gboolean>,
4417    pub padding: [gpointer; 8],
4418}
4419
4420impl ::std::fmt::Debug for GtkRangeClass {
4421    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4422        f.debug_struct(&format!("GtkRangeClass @ {self:p}"))
4423            .field("parent_class", &self.parent_class)
4424            .field("value_changed", &self.value_changed)
4425            .field("adjust_bounds", &self.adjust_bounds)
4426            .field("move_slider", &self.move_slider)
4427            .field("get_range_border", &self.get_range_border)
4428            .field("change_value", &self.change_value)
4429            .finish()
4430    }
4431}
4432
4433#[derive(Copy, Clone)]
4434#[repr(C)]
4435pub struct GtkRecentData {
4436    pub display_name: *mut c_char,
4437    pub description: *mut c_char,
4438    pub mime_type: *mut c_char,
4439    pub app_name: *mut c_char,
4440    pub app_exec: *mut c_char,
4441    pub groups: *mut *mut c_char,
4442    pub is_private: gboolean,
4443}
4444
4445impl ::std::fmt::Debug for GtkRecentData {
4446    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4447        f.debug_struct(&format!("GtkRecentData @ {self:p}"))
4448            .field("display_name", &self.display_name)
4449            .field("description", &self.description)
4450            .field("mime_type", &self.mime_type)
4451            .field("app_name", &self.app_name)
4452            .field("app_exec", &self.app_exec)
4453            .field("groups", &self.groups)
4454            .field("is_private", &self.is_private)
4455            .finish()
4456    }
4457}
4458
4459#[repr(C)]
4460#[allow(dead_code)]
4461pub struct GtkRecentInfo {
4462    _data: [u8; 0],
4463    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4464}
4465
4466impl ::std::fmt::Debug for GtkRecentInfo {
4467    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4468        f.debug_struct(&format!("GtkRecentInfo @ {self:p}"))
4469            .finish()
4470    }
4471}
4472
4473#[derive(Copy, Clone)]
4474#[repr(C)]
4475pub struct GtkRecentManagerClass {
4476    pub parent_class: gobject::GObjectClass,
4477    pub changed: Option<unsafe extern "C" fn(*mut GtkRecentManager)>,
4478    pub _gtk_recent1: Option<unsafe extern "C" fn()>,
4479    pub _gtk_recent2: Option<unsafe extern "C" fn()>,
4480    pub _gtk_recent3: Option<unsafe extern "C" fn()>,
4481    pub _gtk_recent4: Option<unsafe extern "C" fn()>,
4482}
4483
4484impl ::std::fmt::Debug for GtkRecentManagerClass {
4485    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4486        f.debug_struct(&format!("GtkRecentManagerClass @ {self:p}"))
4487            .field("changed", &self.changed)
4488            .field("_gtk_recent1", &self._gtk_recent1)
4489            .field("_gtk_recent2", &self._gtk_recent2)
4490            .field("_gtk_recent3", &self._gtk_recent3)
4491            .field("_gtk_recent4", &self._gtk_recent4)
4492            .finish()
4493    }
4494}
4495
4496#[repr(C)]
4497#[allow(dead_code)]
4498pub struct _GtkRecentManagerPrivate {
4499    _data: [u8; 0],
4500    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4501}
4502
4503pub type GtkRecentManagerPrivate = _GtkRecentManagerPrivate;
4504
4505#[derive(Copy, Clone)]
4506#[repr(C)]
4507pub struct GtkRequestedSize {
4508    pub data: gpointer,
4509    pub minimum_size: c_int,
4510    pub natural_size: c_int,
4511}
4512
4513impl ::std::fmt::Debug for GtkRequestedSize {
4514    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4515        f.debug_struct(&format!("GtkRequestedSize @ {self:p}"))
4516            .field("data", &self.data)
4517            .field("minimum_size", &self.minimum_size)
4518            .field("natural_size", &self.natural_size)
4519            .finish()
4520    }
4521}
4522
4523#[derive(Copy, Clone)]
4524#[repr(C)]
4525pub struct GtkRequisition {
4526    pub width: c_int,
4527    pub height: c_int,
4528}
4529
4530impl ::std::fmt::Debug for GtkRequisition {
4531    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4532        f.debug_struct(&format!("GtkRequisition @ {self:p}"))
4533            .field("width", &self.width)
4534            .field("height", &self.height)
4535            .finish()
4536    }
4537}
4538
4539#[repr(C)]
4540#[allow(dead_code)]
4541pub struct _GtkRootInterface {
4542    _data: [u8; 0],
4543    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4544}
4545
4546pub type GtkRootInterface = _GtkRootInterface;
4547
4548#[derive(Copy, Clone)]
4549#[repr(C)]
4550pub struct GtkScaleButtonClass {
4551    pub parent_class: GtkWidgetClass,
4552    pub value_changed: Option<unsafe extern "C" fn(*mut GtkScaleButton, c_double)>,
4553    pub padding: [gpointer; 8],
4554}
4555
4556impl ::std::fmt::Debug for GtkScaleButtonClass {
4557    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4558        f.debug_struct(&format!("GtkScaleButtonClass @ {self:p}"))
4559            .field("parent_class", &self.parent_class)
4560            .field("value_changed", &self.value_changed)
4561            .finish()
4562    }
4563}
4564
4565#[derive(Copy, Clone)]
4566#[repr(C)]
4567pub struct GtkScaleClass {
4568    pub parent_class: GtkRangeClass,
4569    pub get_layout_offsets: Option<unsafe extern "C" fn(*mut GtkScale, *mut c_int, *mut c_int)>,
4570    pub padding: [gpointer; 8],
4571}
4572
4573impl ::std::fmt::Debug for GtkScaleClass {
4574    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4575        f.debug_struct(&format!("GtkScaleClass @ {self:p}"))
4576            .field("parent_class", &self.parent_class)
4577            .field("get_layout_offsets", &self.get_layout_offsets)
4578            .finish()
4579    }
4580}
4581
4582#[repr(C)]
4583#[allow(dead_code)]
4584pub struct GtkScrollInfo {
4585    _data: [u8; 0],
4586    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4587}
4588
4589impl ::std::fmt::Debug for GtkScrollInfo {
4590    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4591        f.debug_struct(&format!("GtkScrollInfo @ {self:p}"))
4592            .finish()
4593    }
4594}
4595
4596#[derive(Copy, Clone)]
4597#[repr(C)]
4598pub struct GtkScrollableInterface {
4599    pub base_iface: gobject::GTypeInterface,
4600    pub get_border: Option<unsafe extern "C" fn(*mut GtkScrollable, *mut GtkBorder) -> gboolean>,
4601}
4602
4603impl ::std::fmt::Debug for GtkScrollableInterface {
4604    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4605        f.debug_struct(&format!("GtkScrollableInterface @ {self:p}"))
4606            .field("base_iface", &self.base_iface)
4607            .field("get_border", &self.get_border)
4608            .finish()
4609    }
4610}
4611
4612#[derive(Copy, Clone)]
4613#[repr(C)]
4614pub struct GtkSectionModelInterface {
4615    pub g_iface: gobject::GTypeInterface,
4616    pub get_section:
4617        Option<unsafe extern "C" fn(*mut GtkSectionModel, c_uint, *mut c_uint, *mut c_uint)>,
4618}
4619
4620impl ::std::fmt::Debug for GtkSectionModelInterface {
4621    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4622        f.debug_struct(&format!("GtkSectionModelInterface @ {self:p}"))
4623            .field("get_section", &self.get_section)
4624            .finish()
4625    }
4626}
4627
4628#[derive(Copy, Clone)]
4629#[repr(C)]
4630pub struct GtkSelectionFilterModelClass {
4631    pub parent_class: gobject::GObjectClass,
4632}
4633
4634impl ::std::fmt::Debug for GtkSelectionFilterModelClass {
4635    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4636        f.debug_struct(&format!("GtkSelectionFilterModelClass @ {self:p}"))
4637            .field("parent_class", &self.parent_class)
4638            .finish()
4639    }
4640}
4641
4642#[derive(Copy, Clone)]
4643#[repr(C)]
4644pub struct GtkSelectionModelInterface {
4645    pub g_iface: gobject::GTypeInterface,
4646    pub is_selected: Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint) -> gboolean>,
4647    pub get_selection_in_range:
4648        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint) -> *mut GtkBitset>,
4649    pub select_item:
4650        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, gboolean) -> gboolean>,
4651    pub unselect_item: Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint) -> gboolean>,
4652    pub select_range:
4653        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint, gboolean) -> gboolean>,
4654    pub unselect_range:
4655        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint) -> gboolean>,
4656    pub select_all: Option<unsafe extern "C" fn(*mut GtkSelectionModel) -> gboolean>,
4657    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkSelectionModel) -> gboolean>,
4658    pub set_selection: Option<
4659        unsafe extern "C" fn(*mut GtkSelectionModel, *mut GtkBitset, *mut GtkBitset) -> gboolean,
4660    >,
4661}
4662
4663impl ::std::fmt::Debug for GtkSelectionModelInterface {
4664    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4665        f.debug_struct(&format!("GtkSelectionModelInterface @ {self:p}"))
4666            .field("is_selected", &self.is_selected)
4667            .field("get_selection_in_range", &self.get_selection_in_range)
4668            .field("select_item", &self.select_item)
4669            .field("unselect_item", &self.unselect_item)
4670            .field("select_range", &self.select_range)
4671            .field("unselect_range", &self.unselect_range)
4672            .field("select_all", &self.select_all)
4673            .field("unselect_all", &self.unselect_all)
4674            .field("set_selection", &self.set_selection)
4675            .finish()
4676    }
4677}
4678
4679#[repr(C)]
4680#[allow(dead_code)]
4681pub struct _GtkShortcutActionClass {
4682    _data: [u8; 0],
4683    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4684}
4685
4686pub type GtkShortcutActionClass = _GtkShortcutActionClass;
4687
4688#[derive(Copy, Clone)]
4689#[repr(C)]
4690pub struct GtkShortcutClass {
4691    pub parent_class: gobject::GObjectClass,
4692}
4693
4694impl ::std::fmt::Debug for GtkShortcutClass {
4695    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4696        f.debug_struct(&format!("GtkShortcutClass @ {self:p}"))
4697            .field("parent_class", &self.parent_class)
4698            .finish()
4699    }
4700}
4701
4702#[repr(C)]
4703#[allow(dead_code)]
4704pub struct _GtkShortcutControllerClass {
4705    _data: [u8; 0],
4706    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4707}
4708
4709pub type GtkShortcutControllerClass = _GtkShortcutControllerClass;
4710
4711#[repr(C)]
4712#[allow(dead_code)]
4713pub struct _GtkShortcutLabelClass {
4714    _data: [u8; 0],
4715    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4716}
4717
4718pub type GtkShortcutLabelClass = _GtkShortcutLabelClass;
4719
4720#[derive(Copy, Clone)]
4721#[repr(C)]
4722pub struct GtkShortcutManagerInterface {
4723    pub g_iface: gobject::GTypeInterface,
4724    pub add_controller:
4725        Option<unsafe extern "C" fn(*mut GtkShortcutManager, *mut GtkShortcutController)>,
4726    pub remove_controller:
4727        Option<unsafe extern "C" fn(*mut GtkShortcutManager, *mut GtkShortcutController)>,
4728}
4729
4730impl ::std::fmt::Debug for GtkShortcutManagerInterface {
4731    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4732        f.debug_struct(&format!("GtkShortcutManagerInterface @ {self:p}"))
4733            .field("add_controller", &self.add_controller)
4734            .field("remove_controller", &self.remove_controller)
4735            .finish()
4736    }
4737}
4738
4739#[repr(C)]
4740#[allow(dead_code)]
4741pub struct _GtkShortcutTriggerClass {
4742    _data: [u8; 0],
4743    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4744}
4745
4746pub type GtkShortcutTriggerClass = _GtkShortcutTriggerClass;
4747
4748#[repr(C)]
4749#[allow(dead_code)]
4750pub struct _GtkShortcutsGroupClass {
4751    _data: [u8; 0],
4752    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4753}
4754
4755pub type GtkShortcutsGroupClass = _GtkShortcutsGroupClass;
4756
4757#[repr(C)]
4758#[allow(dead_code)]
4759pub struct _GtkShortcutsSectionClass {
4760    _data: [u8; 0],
4761    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4762}
4763
4764pub type GtkShortcutsSectionClass = _GtkShortcutsSectionClass;
4765
4766#[repr(C)]
4767#[allow(dead_code)]
4768pub struct _GtkShortcutsShortcutClass {
4769    _data: [u8; 0],
4770    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4771}
4772
4773pub type GtkShortcutsShortcutClass = _GtkShortcutsShortcutClass;
4774
4775#[repr(C)]
4776#[allow(dead_code)]
4777pub struct _GtkSignalActionClass {
4778    _data: [u8; 0],
4779    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4780}
4781
4782pub type GtkSignalActionClass = _GtkSignalActionClass;
4783
4784#[repr(C)]
4785#[allow(dead_code)]
4786pub struct _GtkSignalListItemFactoryClass {
4787    _data: [u8; 0],
4788    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4789}
4790
4791pub type GtkSignalListItemFactoryClass = _GtkSignalListItemFactoryClass;
4792
4793#[derive(Copy, Clone)]
4794#[repr(C)]
4795pub struct GtkSingleSelectionClass {
4796    pub parent_class: gobject::GObjectClass,
4797}
4798
4799impl ::std::fmt::Debug for GtkSingleSelectionClass {
4800    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4801        f.debug_struct(&format!("GtkSingleSelectionClass @ {self:p}"))
4802            .field("parent_class", &self.parent_class)
4803            .finish()
4804    }
4805}
4806
4807#[derive(Copy, Clone)]
4808#[repr(C)]
4809pub struct GtkSliceListModelClass {
4810    pub parent_class: gobject::GObjectClass,
4811}
4812
4813impl ::std::fmt::Debug for GtkSliceListModelClass {
4814    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4815        f.debug_struct(&format!("GtkSliceListModelClass @ {self:p}"))
4816            .field("parent_class", &self.parent_class)
4817            .finish()
4818    }
4819}
4820
4821#[repr(C)]
4822#[allow(dead_code)]
4823pub struct _GtkSnapshotClass {
4824    _data: [u8; 0],
4825    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4826}
4827
4828pub type GtkSnapshotClass = _GtkSnapshotClass;
4829
4830#[derive(Copy, Clone)]
4831#[repr(C)]
4832pub struct GtkSortListModelClass {
4833    pub parent_class: gobject::GObjectClass,
4834}
4835
4836impl ::std::fmt::Debug for GtkSortListModelClass {
4837    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4838        f.debug_struct(&format!("GtkSortListModelClass @ {self:p}"))
4839            .field("parent_class", &self.parent_class)
4840            .finish()
4841    }
4842}
4843
4844#[derive(Copy, Clone)]
4845#[repr(C)]
4846pub struct GtkSorterClass {
4847    pub parent_class: gobject::GObjectClass,
4848    pub compare: Option<
4849        unsafe extern "C" fn(
4850            *mut GtkSorter,
4851            *mut gobject::GObject,
4852            *mut gobject::GObject,
4853        ) -> GtkOrdering,
4854    >,
4855    pub get_order: Option<unsafe extern "C" fn(*mut GtkSorter) -> GtkSorterOrder>,
4856    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4857    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4858    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4859    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4860    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4861    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4862    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4863    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4864}
4865
4866impl ::std::fmt::Debug for GtkSorterClass {
4867    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4868        f.debug_struct(&format!("GtkSorterClass @ {self:p}"))
4869            .field("parent_class", &self.parent_class)
4870            .field("compare", &self.compare)
4871            .field("get_order", &self.get_order)
4872            .field("_gtk_reserved1", &self._gtk_reserved1)
4873            .field("_gtk_reserved2", &self._gtk_reserved2)
4874            .field("_gtk_reserved3", &self._gtk_reserved3)
4875            .field("_gtk_reserved4", &self._gtk_reserved4)
4876            .field("_gtk_reserved5", &self._gtk_reserved5)
4877            .field("_gtk_reserved6", &self._gtk_reserved6)
4878            .field("_gtk_reserved7", &self._gtk_reserved7)
4879            .field("_gtk_reserved8", &self._gtk_reserved8)
4880            .finish()
4881    }
4882}
4883
4884#[derive(Copy, Clone)]
4885#[repr(C)]
4886pub struct GtkStringFilterClass {
4887    pub parent_class: GtkFilterClass,
4888}
4889
4890impl ::std::fmt::Debug for GtkStringFilterClass {
4891    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4892        f.debug_struct(&format!("GtkStringFilterClass @ {self:p}"))
4893            .field("parent_class", &self.parent_class)
4894            .finish()
4895    }
4896}
4897
4898#[derive(Copy, Clone)]
4899#[repr(C)]
4900pub struct GtkStringListClass {
4901    pub parent_class: gobject::GObjectClass,
4902}
4903
4904impl ::std::fmt::Debug for GtkStringListClass {
4905    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4906        f.debug_struct(&format!("GtkStringListClass @ {self:p}"))
4907            .field("parent_class", &self.parent_class)
4908            .finish()
4909    }
4910}
4911
4912#[derive(Copy, Clone)]
4913#[repr(C)]
4914pub struct GtkStringObjectClass {
4915    pub parent_class: gobject::GObjectClass,
4916}
4917
4918impl ::std::fmt::Debug for GtkStringObjectClass {
4919    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4920        f.debug_struct(&format!("GtkStringObjectClass @ {self:p}"))
4921            .field("parent_class", &self.parent_class)
4922            .finish()
4923    }
4924}
4925
4926#[derive(Copy, Clone)]
4927#[repr(C)]
4928pub struct GtkStringSorterClass {
4929    pub parent_class: GtkSorterClass,
4930}
4931
4932impl ::std::fmt::Debug for GtkStringSorterClass {
4933    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4934        f.debug_struct(&format!("GtkStringSorterClass @ {self:p}"))
4935            .field("parent_class", &self.parent_class)
4936            .finish()
4937    }
4938}
4939
4940#[derive(Copy, Clone)]
4941#[repr(C)]
4942pub struct GtkStyleContextClass {
4943    pub parent_class: gobject::GObjectClass,
4944    pub changed: Option<unsafe extern "C" fn(*mut GtkStyleContext)>,
4945    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4946    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4947    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4948    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4949}
4950
4951impl ::std::fmt::Debug for GtkStyleContextClass {
4952    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4953        f.debug_struct(&format!("GtkStyleContextClass @ {self:p}"))
4954            .field("parent_class", &self.parent_class)
4955            .field("changed", &self.changed)
4956            .field("_gtk_reserved1", &self._gtk_reserved1)
4957            .field("_gtk_reserved2", &self._gtk_reserved2)
4958            .field("_gtk_reserved3", &self._gtk_reserved3)
4959            .field("_gtk_reserved4", &self._gtk_reserved4)
4960            .finish()
4961    }
4962}
4963
4964#[derive(Copy, Clone)]
4965#[repr(C)]
4966pub struct GtkSymbolicPaintableInterface {
4967    pub g_iface: gobject::GTypeInterface,
4968    pub snapshot_symbolic: Option<
4969        unsafe extern "C" fn(
4970            *mut GtkSymbolicPaintable,
4971            *mut gdk::GdkSnapshot,
4972            c_double,
4973            c_double,
4974            *const gdk::GdkRGBA,
4975            size_t,
4976        ),
4977    >,
4978}
4979
4980impl ::std::fmt::Debug for GtkSymbolicPaintableInterface {
4981    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4982        f.debug_struct(&format!("GtkSymbolicPaintableInterface @ {self:p}"))
4983            .field("snapshot_symbolic", &self.snapshot_symbolic)
4984            .finish()
4985    }
4986}
4987
4988#[derive(Copy, Clone)]
4989#[repr(C)]
4990pub struct GtkTextBufferClass {
4991    pub parent_class: gobject::GObjectClass,
4992    pub insert_text:
4993        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *const c_char, c_int)>,
4994    pub insert_paintable:
4995        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut gdk::GdkPaintable)>,
4996    pub insert_child_anchor:
4997        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextChildAnchor)>,
4998    pub delete_range:
4999        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextIter)>,
5000    pub changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5001    pub modified_changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5002    pub mark_set:
5003        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *const GtkTextIter, *mut GtkTextMark)>,
5004    pub mark_deleted: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextMark)>,
5005    pub apply_tag: Option<
5006        unsafe extern "C" fn(
5007            *mut GtkTextBuffer,
5008            *mut GtkTextTag,
5009            *const GtkTextIter,
5010            *const GtkTextIter,
5011        ),
5012    >,
5013    pub remove_tag: Option<
5014        unsafe extern "C" fn(
5015            *mut GtkTextBuffer,
5016            *mut GtkTextTag,
5017            *const GtkTextIter,
5018            *const GtkTextIter,
5019        ),
5020    >,
5021    pub begin_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5022    pub end_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5023    pub paste_done: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut gdk::GdkClipboard)>,
5024    pub undo: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5025    pub redo: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5026    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5027    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5028    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5029    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5030}
5031
5032impl ::std::fmt::Debug for GtkTextBufferClass {
5033    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5034        f.debug_struct(&format!("GtkTextBufferClass @ {self:p}"))
5035            .field("parent_class", &self.parent_class)
5036            .field("insert_text", &self.insert_text)
5037            .field("insert_paintable", &self.insert_paintable)
5038            .field("insert_child_anchor", &self.insert_child_anchor)
5039            .field("delete_range", &self.delete_range)
5040            .field("changed", &self.changed)
5041            .field("modified_changed", &self.modified_changed)
5042            .field("mark_set", &self.mark_set)
5043            .field("mark_deleted", &self.mark_deleted)
5044            .field("apply_tag", &self.apply_tag)
5045            .field("remove_tag", &self.remove_tag)
5046            .field("begin_user_action", &self.begin_user_action)
5047            .field("end_user_action", &self.end_user_action)
5048            .field("paste_done", &self.paste_done)
5049            .field("undo", &self.undo)
5050            .field("redo", &self.redo)
5051            .field("_gtk_reserved1", &self._gtk_reserved1)
5052            .field("_gtk_reserved2", &self._gtk_reserved2)
5053            .field("_gtk_reserved3", &self._gtk_reserved3)
5054            .field("_gtk_reserved4", &self._gtk_reserved4)
5055            .finish()
5056    }
5057}
5058
5059#[repr(C)]
5060#[allow(dead_code)]
5061pub struct _GtkTextBufferPrivate {
5062    _data: [u8; 0],
5063    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5064}
5065
5066pub type GtkTextBufferPrivate = _GtkTextBufferPrivate;
5067
5068#[derive(Copy, Clone)]
5069#[repr(C)]
5070pub struct GtkTextChildAnchorClass {
5071    pub parent_class: gobject::GObjectClass,
5072    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5073    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5074    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5075    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5076}
5077
5078impl ::std::fmt::Debug for GtkTextChildAnchorClass {
5079    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5080        f.debug_struct(&format!("GtkTextChildAnchorClass @ {self:p}"))
5081            .field("parent_class", &self.parent_class)
5082            .field("_gtk_reserved1", &self._gtk_reserved1)
5083            .field("_gtk_reserved2", &self._gtk_reserved2)
5084            .field("_gtk_reserved3", &self._gtk_reserved3)
5085            .field("_gtk_reserved4", &self._gtk_reserved4)
5086            .finish()
5087    }
5088}
5089
5090#[derive(Copy, Clone)]
5091#[repr(C)]
5092pub struct GtkTextIter {
5093    pub dummy1: gpointer,
5094    pub dummy2: gpointer,
5095    pub dummy3: c_int,
5096    pub dummy4: c_int,
5097    pub dummy5: c_int,
5098    pub dummy6: c_int,
5099    pub dummy7: c_int,
5100    pub dummy8: c_int,
5101    pub dummy9: gpointer,
5102    pub dummy10: gpointer,
5103    pub dummy11: c_int,
5104    pub dummy12: c_int,
5105    pub dummy13: c_int,
5106    pub dummy14: gpointer,
5107}
5108
5109impl ::std::fmt::Debug for GtkTextIter {
5110    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5111        f.debug_struct(&format!("GtkTextIter @ {self:p}")).finish()
5112    }
5113}
5114
5115#[derive(Copy, Clone)]
5116#[repr(C)]
5117pub struct GtkTextMarkClass {
5118    pub parent_class: gobject::GObjectClass,
5119    pub padding: [gpointer; 8],
5120}
5121
5122impl ::std::fmt::Debug for GtkTextMarkClass {
5123    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5124        f.debug_struct(&format!("GtkTextMarkClass @ {self:p}"))
5125            .field("parent_class", &self.parent_class)
5126            .finish()
5127    }
5128}
5129
5130#[derive(Copy, Clone)]
5131#[repr(C)]
5132pub struct GtkTextTagClass {
5133    pub parent_class: gobject::GObjectClass,
5134    pub padding: [gpointer; 8],
5135}
5136
5137impl ::std::fmt::Debug for GtkTextTagClass {
5138    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5139        f.debug_struct(&format!("GtkTextTagClass @ {self:p}"))
5140            .field("parent_class", &self.parent_class)
5141            .finish()
5142    }
5143}
5144
5145#[repr(C)]
5146#[allow(dead_code)]
5147pub struct _GtkTextTagPrivate {
5148    _data: [u8; 0],
5149    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5150}
5151
5152pub type GtkTextTagPrivate = _GtkTextTagPrivate;
5153
5154#[derive(Copy, Clone)]
5155#[repr(C)]
5156pub struct GtkTextViewClass {
5157    pub parent_class: GtkWidgetClass,
5158    pub move_cursor:
5159        Option<unsafe extern "C" fn(*mut GtkTextView, GtkMovementStep, c_int, gboolean)>,
5160    pub set_anchor: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5161    pub insert_at_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, *const c_char)>,
5162    pub delete_from_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, GtkDeleteType, c_int)>,
5163    pub backspace: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5164    pub cut_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5165    pub copy_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5166    pub paste_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5167    pub toggle_overwrite: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5168    pub create_buffer: Option<unsafe extern "C" fn(*mut GtkTextView) -> *mut GtkTextBuffer>,
5169    pub snapshot_layer:
5170        Option<unsafe extern "C" fn(*mut GtkTextView, GtkTextViewLayer, *mut GtkSnapshot)>,
5171    pub extend_selection: Option<
5172        unsafe extern "C" fn(
5173            *mut GtkTextView,
5174            GtkTextExtendSelection,
5175            *const GtkTextIter,
5176            *mut GtkTextIter,
5177            *mut GtkTextIter,
5178        ) -> gboolean,
5179    >,
5180    pub insert_emoji: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5181    pub padding: [gpointer; 8],
5182}
5183
5184impl ::std::fmt::Debug for GtkTextViewClass {
5185    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5186        f.debug_struct(&format!("GtkTextViewClass @ {self:p}"))
5187            .field("parent_class", &self.parent_class)
5188            .field("move_cursor", &self.move_cursor)
5189            .field("set_anchor", &self.set_anchor)
5190            .field("insert_at_cursor", &self.insert_at_cursor)
5191            .field("delete_from_cursor", &self.delete_from_cursor)
5192            .field("backspace", &self.backspace)
5193            .field("cut_clipboard", &self.cut_clipboard)
5194            .field("copy_clipboard", &self.copy_clipboard)
5195            .field("paste_clipboard", &self.paste_clipboard)
5196            .field("toggle_overwrite", &self.toggle_overwrite)
5197            .field("create_buffer", &self.create_buffer)
5198            .field("snapshot_layer", &self.snapshot_layer)
5199            .field("extend_selection", &self.extend_selection)
5200            .field("insert_emoji", &self.insert_emoji)
5201            .finish()
5202    }
5203}
5204
5205#[repr(C)]
5206#[allow(dead_code)]
5207pub struct _GtkTextViewPrivate {
5208    _data: [u8; 0],
5209    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5210}
5211
5212pub type GtkTextViewPrivate = _GtkTextViewPrivate;
5213
5214#[derive(Copy, Clone)]
5215#[repr(C)]
5216pub struct GtkToggleButtonClass {
5217    pub parent_class: GtkButtonClass,
5218    pub toggled: Option<unsafe extern "C" fn(*mut GtkToggleButton)>,
5219    pub padding: [gpointer; 8],
5220}
5221
5222impl ::std::fmt::Debug for GtkToggleButtonClass {
5223    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5224        f.debug_struct(&format!("GtkToggleButtonClass @ {self:p}"))
5225            .field("parent_class", &self.parent_class)
5226            .field("toggled", &self.toggled)
5227            .finish()
5228    }
5229}
5230
5231#[derive(Copy, Clone)]
5232#[repr(C)]
5233pub struct GtkTreeDragDestIface {
5234    pub g_iface: gobject::GTypeInterface,
5235    pub drag_data_received: Option<
5236        unsafe extern "C" fn(
5237            *mut GtkTreeDragDest,
5238            *mut GtkTreePath,
5239            *const gobject::GValue,
5240        ) -> gboolean,
5241    >,
5242    pub row_drop_possible: Option<
5243        unsafe extern "C" fn(
5244            *mut GtkTreeDragDest,
5245            *mut GtkTreePath,
5246            *const gobject::GValue,
5247        ) -> gboolean,
5248    >,
5249}
5250
5251impl ::std::fmt::Debug for GtkTreeDragDestIface {
5252    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5253        f.debug_struct(&format!("GtkTreeDragDestIface @ {self:p}"))
5254            .field("drag_data_received", &self.drag_data_received)
5255            .field("row_drop_possible", &self.row_drop_possible)
5256            .finish()
5257    }
5258}
5259
5260#[derive(Copy, Clone)]
5261#[repr(C)]
5262pub struct GtkTreeDragSourceIface {
5263    pub g_iface: gobject::GTypeInterface,
5264    pub row_draggable:
5265        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
5266    pub drag_data_get: Option<
5267        unsafe extern "C" fn(
5268            *mut GtkTreeDragSource,
5269            *mut GtkTreePath,
5270        ) -> *mut gdk::GdkContentProvider,
5271    >,
5272    pub drag_data_delete:
5273        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
5274}
5275
5276impl ::std::fmt::Debug for GtkTreeDragSourceIface {
5277    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5278        f.debug_struct(&format!("GtkTreeDragSourceIface @ {self:p}"))
5279            .field("row_draggable", &self.row_draggable)
5280            .field("drag_data_get", &self.drag_data_get)
5281            .field("drag_data_delete", &self.drag_data_delete)
5282            .finish()
5283    }
5284}
5285
5286#[derive(Copy, Clone)]
5287#[repr(C)]
5288pub struct GtkTreeExpanderClass {
5289    pub parent_class: GtkWidgetClass,
5290}
5291
5292impl ::std::fmt::Debug for GtkTreeExpanderClass {
5293    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5294        f.debug_struct(&format!("GtkTreeExpanderClass @ {self:p}"))
5295            .field("parent_class", &self.parent_class)
5296            .finish()
5297    }
5298}
5299
5300#[derive(Copy, Clone)]
5301#[repr(C)]
5302pub struct GtkTreeIter {
5303    pub stamp: c_int,
5304    pub user_data: gpointer,
5305    pub user_data2: gpointer,
5306    pub user_data3: gpointer,
5307}
5308
5309impl ::std::fmt::Debug for GtkTreeIter {
5310    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5311        f.debug_struct(&format!("GtkTreeIter @ {self:p}"))
5312            .field("stamp", &self.stamp)
5313            .field("user_data", &self.user_data)
5314            .field("user_data2", &self.user_data2)
5315            .field("user_data3", &self.user_data3)
5316            .finish()
5317    }
5318}
5319
5320#[derive(Copy, Clone)]
5321#[repr(C)]
5322pub struct GtkTreeListModelClass {
5323    pub parent_class: gobject::GObjectClass,
5324}
5325
5326impl ::std::fmt::Debug for GtkTreeListModelClass {
5327    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5328        f.debug_struct(&format!("GtkTreeListModelClass @ {self:p}"))
5329            .field("parent_class", &self.parent_class)
5330            .finish()
5331    }
5332}
5333
5334#[derive(Copy, Clone)]
5335#[repr(C)]
5336pub struct GtkTreeListRowClass {
5337    pub parent_class: gobject::GObjectClass,
5338}
5339
5340impl ::std::fmt::Debug for GtkTreeListRowClass {
5341    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5342        f.debug_struct(&format!("GtkTreeListRowClass @ {self:p}"))
5343            .field("parent_class", &self.parent_class)
5344            .finish()
5345    }
5346}
5347
5348#[derive(Copy, Clone)]
5349#[repr(C)]
5350pub struct GtkTreeListRowSorterClass {
5351    pub parent_class: GtkSorterClass,
5352}
5353
5354impl ::std::fmt::Debug for GtkTreeListRowSorterClass {
5355    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5356        f.debug_struct(&format!("GtkTreeListRowSorterClass @ {self:p}"))
5357            .field("parent_class", &self.parent_class)
5358            .finish()
5359    }
5360}
5361
5362#[derive(Copy, Clone)]
5363#[repr(C)]
5364pub struct GtkTreeModelFilterClass {
5365    pub parent_class: gobject::GObjectClass,
5366    pub visible: Option<
5367        unsafe extern "C" fn(
5368            *mut GtkTreeModelFilter,
5369            *mut GtkTreeModel,
5370            *mut GtkTreeIter,
5371        ) -> gboolean,
5372    >,
5373    pub modify: Option<
5374        unsafe extern "C" fn(
5375            *mut GtkTreeModelFilter,
5376            *mut GtkTreeModel,
5377            *mut GtkTreeIter,
5378            *mut gobject::GValue,
5379            c_int,
5380        ),
5381    >,
5382    pub padding: [gpointer; 8],
5383}
5384
5385impl ::std::fmt::Debug for GtkTreeModelFilterClass {
5386    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5387        f.debug_struct(&format!("GtkTreeModelFilterClass @ {self:p}"))
5388            .field("parent_class", &self.parent_class)
5389            .field("visible", &self.visible)
5390            .field("modify", &self.modify)
5391            .finish()
5392    }
5393}
5394
5395#[repr(C)]
5396#[allow(dead_code)]
5397pub struct _GtkTreeModelFilterPrivate {
5398    _data: [u8; 0],
5399    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5400}
5401
5402pub type GtkTreeModelFilterPrivate = _GtkTreeModelFilterPrivate;
5403
5404#[derive(Copy, Clone)]
5405#[repr(C)]
5406pub struct GtkTreeModelIface {
5407    pub g_iface: gobject::GTypeInterface,
5408    pub row_changed:
5409        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5410    pub row_inserted:
5411        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5412    pub row_has_child_toggled:
5413        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5414    pub row_deleted: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath)>,
5415    pub rows_reordered: Option<
5416        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, *mut c_int),
5417    >,
5418    pub get_flags: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> GtkTreeModelFlags>,
5419    pub get_n_columns: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> c_int>,
5420    pub get_column_type: Option<unsafe extern "C" fn(*mut GtkTreeModel, c_int) -> GType>,
5421    pub get_iter: Option<
5422        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5423    >,
5424    pub get_path:
5425        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> *mut GtkTreePath>,
5426    pub get_value: Option<
5427        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, c_int, *mut gobject::GValue),
5428    >,
5429    pub iter_next: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5430    pub iter_previous:
5431        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5432    pub iter_children: Option<
5433        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
5434    >,
5435    pub iter_has_child:
5436        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5437    pub iter_n_children: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> c_int>,
5438    pub iter_nth_child: Option<
5439        unsafe extern "C" fn(
5440            *mut GtkTreeModel,
5441            *mut GtkTreeIter,
5442            *mut GtkTreeIter,
5443            c_int,
5444        ) -> gboolean,
5445    >,
5446    pub iter_parent: Option<
5447        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
5448    >,
5449    pub ref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
5450    pub unref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
5451}
5452
5453impl ::std::fmt::Debug for GtkTreeModelIface {
5454    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5455        f.debug_struct(&format!("GtkTreeModelIface @ {self:p}"))
5456            .field("row_changed", &self.row_changed)
5457            .field("row_inserted", &self.row_inserted)
5458            .field("row_has_child_toggled", &self.row_has_child_toggled)
5459            .field("row_deleted", &self.row_deleted)
5460            .field("rows_reordered", &self.rows_reordered)
5461            .field("get_flags", &self.get_flags)
5462            .field("get_n_columns", &self.get_n_columns)
5463            .field("get_column_type", &self.get_column_type)
5464            .field("get_iter", &self.get_iter)
5465            .field("get_path", &self.get_path)
5466            .field("get_value", &self.get_value)
5467            .field("iter_next", &self.iter_next)
5468            .field("iter_previous", &self.iter_previous)
5469            .field("iter_children", &self.iter_children)
5470            .field("iter_has_child", &self.iter_has_child)
5471            .field("iter_n_children", &self.iter_n_children)
5472            .field("iter_nth_child", &self.iter_nth_child)
5473            .field("iter_parent", &self.iter_parent)
5474            .field("ref_node", &self.ref_node)
5475            .field("unref_node", &self.unref_node)
5476            .finish()
5477    }
5478}
5479
5480#[derive(Copy, Clone)]
5481#[repr(C)]
5482pub struct GtkTreeModelSortClass {
5483    pub parent_class: gobject::GObjectClass,
5484    pub padding: [gpointer; 8],
5485}
5486
5487impl ::std::fmt::Debug for GtkTreeModelSortClass {
5488    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5489        f.debug_struct(&format!("GtkTreeModelSortClass @ {self:p}"))
5490            .field("parent_class", &self.parent_class)
5491            .finish()
5492    }
5493}
5494
5495#[repr(C)]
5496#[allow(dead_code)]
5497pub struct _GtkTreeModelSortPrivate {
5498    _data: [u8; 0],
5499    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5500}
5501
5502pub type GtkTreeModelSortPrivate = _GtkTreeModelSortPrivate;
5503
5504#[repr(C)]
5505#[allow(dead_code)]
5506pub struct GtkTreePath {
5507    _data: [u8; 0],
5508    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5509}
5510
5511impl ::std::fmt::Debug for GtkTreePath {
5512    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5513        f.debug_struct(&format!("GtkTreePath @ {self:p}")).finish()
5514    }
5515}
5516
5517#[repr(C)]
5518#[allow(dead_code)]
5519pub struct GtkTreeRowReference {
5520    _data: [u8; 0],
5521    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5522}
5523
5524impl ::std::fmt::Debug for GtkTreeRowReference {
5525    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5526        f.debug_struct(&format!("GtkTreeRowReference @ {self:p}"))
5527            .finish()
5528    }
5529}
5530
5531#[derive(Copy, Clone)]
5532#[repr(C)]
5533pub struct GtkTreeSortableIface {
5534    pub g_iface: gobject::GTypeInterface,
5535    pub sort_column_changed: Option<unsafe extern "C" fn(*mut GtkTreeSortable)>,
5536    pub get_sort_column_id: Option<
5537        unsafe extern "C" fn(*mut GtkTreeSortable, *mut c_int, *mut GtkSortType) -> gboolean,
5538    >,
5539    pub set_sort_column_id: Option<unsafe extern "C" fn(*mut GtkTreeSortable, c_int, GtkSortType)>,
5540    pub set_sort_func: Option<
5541        unsafe extern "C" fn(
5542            *mut GtkTreeSortable,
5543            c_int,
5544            GtkTreeIterCompareFunc,
5545            gpointer,
5546            glib::GDestroyNotify,
5547        ),
5548    >,
5549    pub set_default_sort_func: Option<
5550        unsafe extern "C" fn(
5551            *mut GtkTreeSortable,
5552            GtkTreeIterCompareFunc,
5553            gpointer,
5554            glib::GDestroyNotify,
5555        ),
5556    >,
5557    pub has_default_sort_func: Option<unsafe extern "C" fn(*mut GtkTreeSortable) -> gboolean>,
5558}
5559
5560impl ::std::fmt::Debug for GtkTreeSortableIface {
5561    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5562        f.debug_struct(&format!("GtkTreeSortableIface @ {self:p}"))
5563            .field("sort_column_changed", &self.sort_column_changed)
5564            .field("get_sort_column_id", &self.get_sort_column_id)
5565            .field("set_sort_column_id", &self.set_sort_column_id)
5566            .field("set_sort_func", &self.set_sort_func)
5567            .field("set_default_sort_func", &self.set_default_sort_func)
5568            .field("has_default_sort_func", &self.has_default_sort_func)
5569            .finish()
5570    }
5571}
5572
5573#[derive(Copy, Clone)]
5574#[repr(C)]
5575pub struct GtkTreeStoreClass {
5576    pub parent_class: gobject::GObjectClass,
5577    pub padding: [gpointer; 8],
5578}
5579
5580impl ::std::fmt::Debug for GtkTreeStoreClass {
5581    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5582        f.debug_struct(&format!("GtkTreeStoreClass @ {self:p}"))
5583            .field("parent_class", &self.parent_class)
5584            .finish()
5585    }
5586}
5587
5588#[repr(C)]
5589#[allow(dead_code)]
5590pub struct _GtkTreeStorePrivate {
5591    _data: [u8; 0],
5592    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5593}
5594
5595pub type GtkTreeStorePrivate = _GtkTreeStorePrivate;
5596
5597#[derive(Copy, Clone)]
5598#[repr(C)]
5599pub struct GtkTreeViewClass {
5600    pub parent_class: GtkWidgetClass,
5601    pub row_activated:
5602        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, *mut GtkTreeViewColumn)>,
5603    pub test_expand_row: Option<
5604        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5605    >,
5606    pub test_collapse_row: Option<
5607        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5608    >,
5609    pub row_expanded:
5610        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
5611    pub row_collapsed:
5612        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
5613    pub columns_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
5614    pub cursor_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
5615    pub move_cursor: Option<
5616        unsafe extern "C" fn(
5617            *mut GtkTreeView,
5618            GtkMovementStep,
5619            c_int,
5620            gboolean,
5621            gboolean,
5622        ) -> gboolean,
5623    >,
5624    pub select_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5625    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5626    pub select_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean) -> gboolean>,
5627    pub toggle_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5628    pub expand_collapse_cursor_row:
5629        Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean, gboolean, gboolean) -> gboolean>,
5630    pub select_cursor_parent: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5631    pub start_interactive_search: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5632    pub _reserved: [gpointer; 16],
5633}
5634
5635impl ::std::fmt::Debug for GtkTreeViewClass {
5636    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5637        f.debug_struct(&format!("GtkTreeViewClass @ {self:p}"))
5638            .field("parent_class", &self.parent_class)
5639            .field("row_activated", &self.row_activated)
5640            .field("test_expand_row", &self.test_expand_row)
5641            .field("test_collapse_row", &self.test_collapse_row)
5642            .field("row_expanded", &self.row_expanded)
5643            .field("row_collapsed", &self.row_collapsed)
5644            .field("columns_changed", &self.columns_changed)
5645            .field("cursor_changed", &self.cursor_changed)
5646            .field("move_cursor", &self.move_cursor)
5647            .field("select_all", &self.select_all)
5648            .field("unselect_all", &self.unselect_all)
5649            .field("select_cursor_row", &self.select_cursor_row)
5650            .field("toggle_cursor_row", &self.toggle_cursor_row)
5651            .field(
5652                "expand_collapse_cursor_row",
5653                &self.expand_collapse_cursor_row,
5654            )
5655            .field("select_cursor_parent", &self.select_cursor_parent)
5656            .field("start_interactive_search", &self.start_interactive_search)
5657            .finish()
5658    }
5659}
5660
5661#[derive(Copy, Clone)]
5662#[repr(C)]
5663pub struct GtkUriLauncherClass {
5664    pub parent_class: gobject::GObjectClass,
5665}
5666
5667impl ::std::fmt::Debug for GtkUriLauncherClass {
5668    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5669        f.debug_struct(&format!("GtkUriLauncherClass @ {self:p}"))
5670            .field("parent_class", &self.parent_class)
5671            .finish()
5672    }
5673}
5674
5675#[derive(Copy, Clone)]
5676#[repr(C)]
5677pub struct GtkVideoClass {
5678    pub parent_class: GtkWidgetClass,
5679}
5680
5681impl ::std::fmt::Debug for GtkVideoClass {
5682    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5683        f.debug_struct(&format!("GtkVideoClass @ {self:p}"))
5684            .field("parent_class", &self.parent_class)
5685            .finish()
5686    }
5687}
5688
5689#[derive(Copy, Clone)]
5690#[repr(C)]
5691pub struct GtkWidgetClass {
5692    pub parent_class: gobject::GInitiallyUnownedClass,
5693    pub show: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5694    pub hide: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5695    pub map: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5696    pub unmap: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5697    pub realize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5698    pub unrealize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5699    pub root: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5700    pub unroot: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5701    pub size_allocate: Option<unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, c_int)>,
5702    pub state_flags_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkStateFlags)>,
5703    pub direction_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkTextDirection)>,
5704    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>,
5705    pub measure: Option<
5706        unsafe extern "C" fn(
5707            *mut GtkWidget,
5708            GtkOrientation,
5709            c_int,
5710            *mut c_int,
5711            *mut c_int,
5712            *mut c_int,
5713            *mut c_int,
5714        ),
5715    >,
5716    pub mnemonic_activate: Option<unsafe extern "C" fn(*mut GtkWidget, gboolean) -> gboolean>,
5717    pub grab_focus: Option<unsafe extern "C" fn(*mut GtkWidget) -> gboolean>,
5718    pub focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
5719    pub set_focus_child: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkWidget)>,
5720    pub move_focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType)>,
5721    pub keynav_failed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
5722    pub query_tooltip: Option<
5723        unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, gboolean, *mut GtkTooltip) -> gboolean,
5724    >,
5725    pub compute_expand: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gboolean, *mut gboolean)>,
5726    pub css_changed: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkCssStyleChange)>,
5727    pub system_setting_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkSystemSetting)>,
5728    pub snapshot: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkSnapshot)>,
5729    pub contains: Option<unsafe extern "C" fn(*mut GtkWidget, c_double, c_double) -> gboolean>,
5730    pub priv_: *mut GtkWidgetClassPrivate,
5731    pub padding: [gpointer; 8],
5732}
5733
5734impl ::std::fmt::Debug for GtkWidgetClass {
5735    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5736        f.debug_struct(&format!("GtkWidgetClass @ {self:p}"))
5737            .field("parent_class", &self.parent_class)
5738            .field("show", &self.show)
5739            .field("hide", &self.hide)
5740            .field("map", &self.map)
5741            .field("unmap", &self.unmap)
5742            .field("realize", &self.realize)
5743            .field("unrealize", &self.unrealize)
5744            .field("root", &self.root)
5745            .field("unroot", &self.unroot)
5746            .field("size_allocate", &self.size_allocate)
5747            .field("state_flags_changed", &self.state_flags_changed)
5748            .field("direction_changed", &self.direction_changed)
5749            .field("get_request_mode", &self.get_request_mode)
5750            .field("measure", &self.measure)
5751            .field("mnemonic_activate", &self.mnemonic_activate)
5752            .field("grab_focus", &self.grab_focus)
5753            .field("focus", &self.focus)
5754            .field("set_focus_child", &self.set_focus_child)
5755            .field("move_focus", &self.move_focus)
5756            .field("keynav_failed", &self.keynav_failed)
5757            .field("query_tooltip", &self.query_tooltip)
5758            .field("compute_expand", &self.compute_expand)
5759            .field("css_changed", &self.css_changed)
5760            .field("system_setting_changed", &self.system_setting_changed)
5761            .field("snapshot", &self.snapshot)
5762            .field("contains", &self.contains)
5763            .finish()
5764    }
5765}
5766
5767#[repr(C)]
5768#[allow(dead_code)]
5769pub struct _GtkWidgetClassPrivate {
5770    _data: [u8; 0],
5771    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5772}
5773
5774pub type GtkWidgetClassPrivate = _GtkWidgetClassPrivate;
5775
5776#[derive(Copy, Clone)]
5777#[repr(C)]
5778pub struct GtkWidgetPaintableClass {
5779    pub parent_class: gobject::GObjectClass,
5780}
5781
5782impl ::std::fmt::Debug for GtkWidgetPaintableClass {
5783    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5784        f.debug_struct(&format!("GtkWidgetPaintableClass @ {self:p}"))
5785            .field("parent_class", &self.parent_class)
5786            .finish()
5787    }
5788}
5789
5790#[repr(C)]
5791#[allow(dead_code)]
5792pub struct _GtkWidgetPrivate {
5793    _data: [u8; 0],
5794    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5795}
5796
5797pub type GtkWidgetPrivate = _GtkWidgetPrivate;
5798
5799#[derive(Copy, Clone)]
5800#[repr(C)]
5801pub struct GtkWindowClass {
5802    pub parent_class: GtkWidgetClass,
5803    pub activate_focus: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5804    pub activate_default: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5805    pub keys_changed: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5806    pub enable_debugging: Option<unsafe extern "C" fn(*mut GtkWindow, gboolean) -> gboolean>,
5807    pub close_request: Option<unsafe extern "C" fn(*mut GtkWindow) -> gboolean>,
5808    pub padding: [gpointer; 8],
5809}
5810
5811impl ::std::fmt::Debug for GtkWindowClass {
5812    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5813        f.debug_struct(&format!("GtkWindowClass @ {self:p}"))
5814            .field("parent_class", &self.parent_class)
5815            .field("activate_focus", &self.activate_focus)
5816            .field("activate_default", &self.activate_default)
5817            .field("keys_changed", &self.keys_changed)
5818            .field("enable_debugging", &self.enable_debugging)
5819            .field("close_request", &self.close_request)
5820            .finish()
5821    }
5822}
5823
5824#[derive(Copy, Clone)]
5825#[repr(C)]
5826pub struct GtkWindowControlsClass {
5827    pub parent_class: GtkWidgetClass,
5828}
5829
5830impl ::std::fmt::Debug for GtkWindowControlsClass {
5831    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5832        f.debug_struct(&format!("GtkWindowControlsClass @ {self:p}"))
5833            .field("parent_class", &self.parent_class)
5834            .finish()
5835    }
5836}
5837
5838#[derive(Copy, Clone)]
5839#[repr(C)]
5840pub struct GtkWindowGroupClass {
5841    pub parent_class: gobject::GObjectClass,
5842    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5843    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5844    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5845    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5846}
5847
5848impl ::std::fmt::Debug for GtkWindowGroupClass {
5849    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5850        f.debug_struct(&format!("GtkWindowGroupClass @ {self:p}"))
5851            .field("parent_class", &self.parent_class)
5852            .field("_gtk_reserved1", &self._gtk_reserved1)
5853            .field("_gtk_reserved2", &self._gtk_reserved2)
5854            .field("_gtk_reserved3", &self._gtk_reserved3)
5855            .field("_gtk_reserved4", &self._gtk_reserved4)
5856            .finish()
5857    }
5858}
5859
5860#[repr(C)]
5861#[allow(dead_code)]
5862pub struct _GtkWindowGroupPrivate {
5863    _data: [u8; 0],
5864    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5865}
5866
5867pub type GtkWindowGroupPrivate = _GtkWindowGroupPrivate;
5868
5869#[derive(Copy, Clone)]
5870#[repr(C)]
5871pub struct GtkWindowHandleClass {
5872    pub parent_class: GtkWidgetClass,
5873}
5874
5875impl ::std::fmt::Debug for GtkWindowHandleClass {
5876    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5877        f.debug_struct(&format!("GtkWindowHandleClass @ {self:p}"))
5878            .field("parent_class", &self.parent_class)
5879            .finish()
5880    }
5881}
5882
5883// Classes
5884#[repr(C)]
5885#[allow(dead_code)]
5886pub struct GtkATContext {
5887    _data: [u8; 0],
5888    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5889}
5890
5891impl ::std::fmt::Debug for GtkATContext {
5892    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5893        f.debug_struct(&format!("GtkATContext @ {self:p}")).finish()
5894    }
5895}
5896
5897#[repr(C)]
5898#[allow(dead_code)]
5899pub struct GtkAboutDialog {
5900    _data: [u8; 0],
5901    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5902}
5903
5904impl ::std::fmt::Debug for GtkAboutDialog {
5905    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5906        f.debug_struct(&format!("GtkAboutDialog @ {self:p}"))
5907            .finish()
5908    }
5909}
5910
5911#[repr(C)]
5912#[allow(dead_code)]
5913pub struct GtkActionBar {
5914    _data: [u8; 0],
5915    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5916}
5917
5918impl ::std::fmt::Debug for GtkActionBar {
5919    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5920        f.debug_struct(&format!("GtkActionBar @ {self:p}")).finish()
5921    }
5922}
5923
5924#[repr(C)]
5925#[allow(dead_code)]
5926pub struct GtkActivateAction {
5927    _data: [u8; 0],
5928    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5929}
5930
5931impl ::std::fmt::Debug for GtkActivateAction {
5932    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5933        f.debug_struct(&format!("GtkActivateAction @ {self:p}"))
5934            .finish()
5935    }
5936}
5937
5938#[derive(Copy, Clone)]
5939#[repr(C)]
5940pub struct GtkAdjustment {
5941    pub parent_instance: gobject::GInitiallyUnowned,
5942}
5943
5944impl ::std::fmt::Debug for GtkAdjustment {
5945    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5946        f.debug_struct(&format!("GtkAdjustment @ {self:p}"))
5947            .field("parent_instance", &self.parent_instance)
5948            .finish()
5949    }
5950}
5951
5952#[repr(C)]
5953#[allow(dead_code)]
5954pub struct GtkAlertDialog {
5955    _data: [u8; 0],
5956    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5957}
5958
5959impl ::std::fmt::Debug for GtkAlertDialog {
5960    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5961        f.debug_struct(&format!("GtkAlertDialog @ {self:p}"))
5962            .finish()
5963    }
5964}
5965
5966#[repr(C)]
5967#[allow(dead_code)]
5968pub struct GtkAlternativeTrigger {
5969    _data: [u8; 0],
5970    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5971}
5972
5973impl ::std::fmt::Debug for GtkAlternativeTrigger {
5974    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5975        f.debug_struct(&format!("GtkAlternativeTrigger @ {self:p}"))
5976            .finish()
5977    }
5978}
5979
5980#[repr(C)]
5981#[allow(dead_code)]
5982pub struct GtkAnyFilter {
5983    _data: [u8; 0],
5984    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5985}
5986
5987impl ::std::fmt::Debug for GtkAnyFilter {
5988    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5989        f.debug_struct(&format!("GtkAnyFilter @ {self:p}")).finish()
5990    }
5991}
5992
5993#[repr(C)]
5994#[allow(dead_code)]
5995pub struct GtkAppChooserButton {
5996    _data: [u8; 0],
5997    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5998}
5999
6000impl ::std::fmt::Debug for GtkAppChooserButton {
6001    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6002        f.debug_struct(&format!("GtkAppChooserButton @ {self:p}"))
6003            .finish()
6004    }
6005}
6006
6007#[repr(C)]
6008#[allow(dead_code)]
6009pub struct GtkAppChooserDialog {
6010    _data: [u8; 0],
6011    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6012}
6013
6014impl ::std::fmt::Debug for GtkAppChooserDialog {
6015    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6016        f.debug_struct(&format!("GtkAppChooserDialog @ {self:p}"))
6017            .finish()
6018    }
6019}
6020
6021#[repr(C)]
6022#[allow(dead_code)]
6023pub struct GtkAppChooserWidget {
6024    _data: [u8; 0],
6025    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6026}
6027
6028impl ::std::fmt::Debug for GtkAppChooserWidget {
6029    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6030        f.debug_struct(&format!("GtkAppChooserWidget @ {self:p}"))
6031            .finish()
6032    }
6033}
6034
6035#[derive(Copy, Clone)]
6036#[repr(C)]
6037pub struct GtkApplication {
6038    pub parent_instance: gio::GApplication,
6039}
6040
6041impl ::std::fmt::Debug for GtkApplication {
6042    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6043        f.debug_struct(&format!("GtkApplication @ {self:p}"))
6044            .field("parent_instance", &self.parent_instance)
6045            .finish()
6046    }
6047}
6048
6049#[derive(Copy, Clone)]
6050#[repr(C)]
6051pub struct GtkApplicationWindow {
6052    pub parent_instance: GtkWindow,
6053}
6054
6055impl ::std::fmt::Debug for GtkApplicationWindow {
6056    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6057        f.debug_struct(&format!("GtkApplicationWindow @ {self:p}"))
6058            .field("parent_instance", &self.parent_instance)
6059            .finish()
6060    }
6061}
6062
6063#[repr(C)]
6064#[allow(dead_code)]
6065pub struct GtkAspectFrame {
6066    _data: [u8; 0],
6067    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6068}
6069
6070impl ::std::fmt::Debug for GtkAspectFrame {
6071    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6072        f.debug_struct(&format!("GtkAspectFrame @ {self:p}"))
6073            .finish()
6074    }
6075}
6076
6077#[repr(C)]
6078#[allow(dead_code)]
6079pub struct GtkAssistant {
6080    _data: [u8; 0],
6081    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6082}
6083
6084impl ::std::fmt::Debug for GtkAssistant {
6085    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6086        f.debug_struct(&format!("GtkAssistant @ {self:p}")).finish()
6087    }
6088}
6089
6090#[repr(C)]
6091#[allow(dead_code)]
6092pub struct GtkAssistantPage {
6093    _data: [u8; 0],
6094    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6095}
6096
6097impl ::std::fmt::Debug for GtkAssistantPage {
6098    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6099        f.debug_struct(&format!("GtkAssistantPage @ {self:p}"))
6100            .finish()
6101    }
6102}
6103
6104#[repr(C)]
6105#[allow(dead_code)]
6106pub struct GtkBinLayout {
6107    _data: [u8; 0],
6108    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6109}
6110
6111impl ::std::fmt::Debug for GtkBinLayout {
6112    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6113        f.debug_struct(&format!("GtkBinLayout @ {self:p}")).finish()
6114    }
6115}
6116
6117#[repr(C)]
6118#[allow(dead_code)]
6119pub struct GtkBookmarkList {
6120    _data: [u8; 0],
6121    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6122}
6123
6124impl ::std::fmt::Debug for GtkBookmarkList {
6125    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6126        f.debug_struct(&format!("GtkBookmarkList @ {self:p}"))
6127            .finish()
6128    }
6129}
6130
6131#[repr(C)]
6132#[allow(dead_code)]
6133pub struct GtkBoolFilter {
6134    _data: [u8; 0],
6135    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6136}
6137
6138impl ::std::fmt::Debug for GtkBoolFilter {
6139    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6140        f.debug_struct(&format!("GtkBoolFilter @ {self:p}"))
6141            .finish()
6142    }
6143}
6144
6145#[derive(Copy, Clone)]
6146#[repr(C)]
6147pub struct GtkBox {
6148    pub parent_instance: GtkWidget,
6149}
6150
6151impl ::std::fmt::Debug for GtkBox {
6152    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6153        f.debug_struct(&format!("GtkBox @ {self:p}"))
6154            .field("parent_instance", &self.parent_instance)
6155            .finish()
6156    }
6157}
6158
6159#[repr(C)]
6160#[allow(dead_code)]
6161pub struct GtkBoxLayout {
6162    _data: [u8; 0],
6163    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6164}
6165
6166impl ::std::fmt::Debug for GtkBoxLayout {
6167    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6168        f.debug_struct(&format!("GtkBoxLayout @ {self:p}")).finish()
6169    }
6170}
6171
6172#[repr(C)]
6173#[allow(dead_code)]
6174pub struct GtkBuilder {
6175    _data: [u8; 0],
6176    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6177}
6178
6179impl ::std::fmt::Debug for GtkBuilder {
6180    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6181        f.debug_struct(&format!("GtkBuilder @ {self:p}")).finish()
6182    }
6183}
6184
6185#[derive(Copy, Clone)]
6186#[repr(C)]
6187pub struct GtkBuilderCScope {
6188    pub parent_instance: gobject::GObject,
6189}
6190
6191impl ::std::fmt::Debug for GtkBuilderCScope {
6192    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6193        f.debug_struct(&format!("GtkBuilderCScope @ {self:p}"))
6194            .field("parent_instance", &self.parent_instance)
6195            .finish()
6196    }
6197}
6198
6199#[repr(C)]
6200#[allow(dead_code)]
6201pub struct GtkBuilderListItemFactory {
6202    _data: [u8; 0],
6203    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6204}
6205
6206impl ::std::fmt::Debug for GtkBuilderListItemFactory {
6207    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6208        f.debug_struct(&format!("GtkBuilderListItemFactory @ {self:p}"))
6209            .finish()
6210    }
6211}
6212
6213#[derive(Copy, Clone)]
6214#[repr(C)]
6215pub struct GtkButton {
6216    pub parent_instance: GtkWidget,
6217}
6218
6219impl ::std::fmt::Debug for GtkButton {
6220    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6221        f.debug_struct(&format!("GtkButton @ {self:p}")).finish()
6222    }
6223}
6224
6225#[repr(C)]
6226#[allow(dead_code)]
6227pub struct GtkCClosureExpression {
6228    _data: [u8; 0],
6229    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6230}
6231
6232impl ::std::fmt::Debug for GtkCClosureExpression {
6233    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6234        f.debug_struct(&format!("GtkCClosureExpression @ {self:p}"))
6235            .finish()
6236    }
6237}
6238
6239#[repr(C)]
6240#[allow(dead_code)]
6241pub struct GtkCalendar {
6242    _data: [u8; 0],
6243    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6244}
6245
6246impl ::std::fmt::Debug for GtkCalendar {
6247    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6248        f.debug_struct(&format!("GtkCalendar @ {self:p}")).finish()
6249    }
6250}
6251
6252#[repr(C)]
6253#[allow(dead_code)]
6254pub struct GtkCallbackAction {
6255    _data: [u8; 0],
6256    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6257}
6258
6259impl ::std::fmt::Debug for GtkCallbackAction {
6260    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6261        f.debug_struct(&format!("GtkCallbackAction @ {self:p}"))
6262            .finish()
6263    }
6264}
6265
6266#[derive(Copy, Clone)]
6267#[repr(C)]
6268pub struct GtkCellArea {
6269    pub parent_instance: gobject::GInitiallyUnowned,
6270}
6271
6272impl ::std::fmt::Debug for GtkCellArea {
6273    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6274        f.debug_struct(&format!("GtkCellArea @ {self:p}")).finish()
6275    }
6276}
6277
6278#[repr(C)]
6279#[allow(dead_code)]
6280pub struct GtkCellAreaBox {
6281    _data: [u8; 0],
6282    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6283}
6284
6285impl ::std::fmt::Debug for GtkCellAreaBox {
6286    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6287        f.debug_struct(&format!("GtkCellAreaBox @ {self:p}"))
6288            .finish()
6289    }
6290}
6291
6292#[derive(Copy, Clone)]
6293#[repr(C)]
6294pub struct GtkCellAreaContext {
6295    pub parent_instance: gobject::GObject,
6296}
6297
6298impl ::std::fmt::Debug for GtkCellAreaContext {
6299    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6300        f.debug_struct(&format!("GtkCellAreaContext @ {self:p}"))
6301            .finish()
6302    }
6303}
6304
6305#[derive(Copy, Clone)]
6306#[repr(C)]
6307pub struct GtkCellRenderer {
6308    pub parent_instance: gobject::GInitiallyUnowned,
6309    pub priv_: *mut GtkCellRendererPrivate,
6310}
6311
6312impl ::std::fmt::Debug for GtkCellRenderer {
6313    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6314        f.debug_struct(&format!("GtkCellRenderer @ {self:p}"))
6315            .field("parent_instance", &self.parent_instance)
6316            .finish()
6317    }
6318}
6319
6320#[repr(C)]
6321#[allow(dead_code)]
6322pub struct GtkCellRendererAccel {
6323    _data: [u8; 0],
6324    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6325}
6326
6327impl ::std::fmt::Debug for GtkCellRendererAccel {
6328    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6329        f.debug_struct(&format!("GtkCellRendererAccel @ {self:p}"))
6330            .finish()
6331    }
6332}
6333
6334#[repr(C)]
6335#[allow(dead_code)]
6336pub struct GtkCellRendererCombo {
6337    _data: [u8; 0],
6338    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6339}
6340
6341impl ::std::fmt::Debug for GtkCellRendererCombo {
6342    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6343        f.debug_struct(&format!("GtkCellRendererCombo @ {self:p}"))
6344            .finish()
6345    }
6346}
6347
6348#[repr(C)]
6349#[allow(dead_code)]
6350pub struct GtkCellRendererPixbuf {
6351    _data: [u8; 0],
6352    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6353}
6354
6355impl ::std::fmt::Debug for GtkCellRendererPixbuf {
6356    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6357        f.debug_struct(&format!("GtkCellRendererPixbuf @ {self:p}"))
6358            .finish()
6359    }
6360}
6361
6362#[repr(C)]
6363#[allow(dead_code)]
6364pub struct GtkCellRendererProgress {
6365    _data: [u8; 0],
6366    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6367}
6368
6369impl ::std::fmt::Debug for GtkCellRendererProgress {
6370    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6371        f.debug_struct(&format!("GtkCellRendererProgress @ {self:p}"))
6372            .finish()
6373    }
6374}
6375
6376#[repr(C)]
6377#[allow(dead_code)]
6378pub struct GtkCellRendererSpin {
6379    _data: [u8; 0],
6380    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6381}
6382
6383impl ::std::fmt::Debug for GtkCellRendererSpin {
6384    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6385        f.debug_struct(&format!("GtkCellRendererSpin @ {self:p}"))
6386            .finish()
6387    }
6388}
6389
6390#[repr(C)]
6391#[allow(dead_code)]
6392pub struct GtkCellRendererSpinner {
6393    _data: [u8; 0],
6394    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6395}
6396
6397impl ::std::fmt::Debug for GtkCellRendererSpinner {
6398    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6399        f.debug_struct(&format!("GtkCellRendererSpinner @ {self:p}"))
6400            .finish()
6401    }
6402}
6403
6404#[derive(Copy, Clone)]
6405#[repr(C)]
6406pub struct GtkCellRendererText {
6407    pub parent: GtkCellRenderer,
6408}
6409
6410impl ::std::fmt::Debug for GtkCellRendererText {
6411    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6412        f.debug_struct(&format!("GtkCellRendererText @ {self:p}"))
6413            .field("parent", &self.parent)
6414            .finish()
6415    }
6416}
6417
6418#[repr(C)]
6419#[allow(dead_code)]
6420pub struct GtkCellRendererToggle {
6421    _data: [u8; 0],
6422    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6423}
6424
6425impl ::std::fmt::Debug for GtkCellRendererToggle {
6426    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6427        f.debug_struct(&format!("GtkCellRendererToggle @ {self:p}"))
6428            .finish()
6429    }
6430}
6431
6432#[repr(C)]
6433#[allow(dead_code)]
6434pub struct GtkCellView {
6435    _data: [u8; 0],
6436    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6437}
6438
6439impl ::std::fmt::Debug for GtkCellView {
6440    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6441        f.debug_struct(&format!("GtkCellView @ {self:p}")).finish()
6442    }
6443}
6444
6445#[repr(C)]
6446#[allow(dead_code)]
6447pub struct GtkCenterBox {
6448    _data: [u8; 0],
6449    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6450}
6451
6452impl ::std::fmt::Debug for GtkCenterBox {
6453    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6454        f.debug_struct(&format!("GtkCenterBox @ {self:p}")).finish()
6455    }
6456}
6457
6458#[repr(C)]
6459#[allow(dead_code)]
6460pub struct GtkCenterLayout {
6461    _data: [u8; 0],
6462    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6463}
6464
6465impl ::std::fmt::Debug for GtkCenterLayout {
6466    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6467        f.debug_struct(&format!("GtkCenterLayout @ {self:p}"))
6468            .finish()
6469    }
6470}
6471
6472#[derive(Copy, Clone)]
6473#[repr(C)]
6474pub struct GtkCheckButton {
6475    pub parent_instance: GtkWidget,
6476}
6477
6478impl ::std::fmt::Debug for GtkCheckButton {
6479    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6480        f.debug_struct(&format!("GtkCheckButton @ {self:p}"))
6481            .field("parent_instance", &self.parent_instance)
6482            .finish()
6483    }
6484}
6485
6486#[repr(C)]
6487#[allow(dead_code)]
6488pub struct GtkClosureExpression {
6489    _data: [u8; 0],
6490    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6491}
6492
6493impl ::std::fmt::Debug for GtkClosureExpression {
6494    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6495        f.debug_struct(&format!("GtkClosureExpression @ {self:p}"))
6496            .finish()
6497    }
6498}
6499
6500#[repr(C)]
6501#[allow(dead_code)]
6502pub struct GtkColorButton {
6503    _data: [u8; 0],
6504    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6505}
6506
6507impl ::std::fmt::Debug for GtkColorButton {
6508    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6509        f.debug_struct(&format!("GtkColorButton @ {self:p}"))
6510            .finish()
6511    }
6512}
6513
6514#[repr(C)]
6515#[allow(dead_code)]
6516pub struct GtkColorChooserDialog {
6517    _data: [u8; 0],
6518    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6519}
6520
6521impl ::std::fmt::Debug for GtkColorChooserDialog {
6522    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6523        f.debug_struct(&format!("GtkColorChooserDialog @ {self:p}"))
6524            .finish()
6525    }
6526}
6527
6528#[repr(C)]
6529#[allow(dead_code)]
6530pub struct GtkColorChooserWidget {
6531    _data: [u8; 0],
6532    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6533}
6534
6535impl ::std::fmt::Debug for GtkColorChooserWidget {
6536    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6537        f.debug_struct(&format!("GtkColorChooserWidget @ {self:p}"))
6538            .finish()
6539    }
6540}
6541
6542#[repr(C)]
6543#[allow(dead_code)]
6544pub struct GtkColorDialog {
6545    _data: [u8; 0],
6546    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6547}
6548
6549impl ::std::fmt::Debug for GtkColorDialog {
6550    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6551        f.debug_struct(&format!("GtkColorDialog @ {self:p}"))
6552            .finish()
6553    }
6554}
6555
6556#[repr(C)]
6557#[allow(dead_code)]
6558pub struct GtkColorDialogButton {
6559    _data: [u8; 0],
6560    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6561}
6562
6563impl ::std::fmt::Debug for GtkColorDialogButton {
6564    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6565        f.debug_struct(&format!("GtkColorDialogButton @ {self:p}"))
6566            .finish()
6567    }
6568}
6569
6570#[repr(C)]
6571#[allow(dead_code)]
6572pub struct GtkColumnView {
6573    _data: [u8; 0],
6574    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6575}
6576
6577impl ::std::fmt::Debug for GtkColumnView {
6578    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6579        f.debug_struct(&format!("GtkColumnView @ {self:p}"))
6580            .finish()
6581    }
6582}
6583
6584#[repr(C)]
6585#[allow(dead_code)]
6586pub struct GtkColumnViewCell {
6587    _data: [u8; 0],
6588    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6589}
6590
6591impl ::std::fmt::Debug for GtkColumnViewCell {
6592    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6593        f.debug_struct(&format!("GtkColumnViewCell @ {self:p}"))
6594            .finish()
6595    }
6596}
6597
6598#[repr(C)]
6599#[allow(dead_code)]
6600pub struct GtkColumnViewColumn {
6601    _data: [u8; 0],
6602    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6603}
6604
6605impl ::std::fmt::Debug for GtkColumnViewColumn {
6606    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6607        f.debug_struct(&format!("GtkColumnViewColumn @ {self:p}"))
6608            .finish()
6609    }
6610}
6611
6612#[repr(C)]
6613#[allow(dead_code)]
6614pub struct GtkColumnViewRow {
6615    _data: [u8; 0],
6616    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6617}
6618
6619impl ::std::fmt::Debug for GtkColumnViewRow {
6620    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6621        f.debug_struct(&format!("GtkColumnViewRow @ {self:p}"))
6622            .finish()
6623    }
6624}
6625
6626#[repr(C)]
6627#[allow(dead_code)]
6628pub struct GtkColumnViewSorter {
6629    _data: [u8; 0],
6630    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6631}
6632
6633impl ::std::fmt::Debug for GtkColumnViewSorter {
6634    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6635        f.debug_struct(&format!("GtkColumnViewSorter @ {self:p}"))
6636            .finish()
6637    }
6638}
6639
6640#[derive(Copy, Clone)]
6641#[repr(C)]
6642pub struct GtkComboBox {
6643    pub parent_instance: GtkWidget,
6644}
6645
6646impl ::std::fmt::Debug for GtkComboBox {
6647    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6648        f.debug_struct(&format!("GtkComboBox @ {self:p}"))
6649            .field("parent_instance", &self.parent_instance)
6650            .finish()
6651    }
6652}
6653
6654#[repr(C)]
6655#[allow(dead_code)]
6656pub struct GtkComboBoxText {
6657    _data: [u8; 0],
6658    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6659}
6660
6661impl ::std::fmt::Debug for GtkComboBoxText {
6662    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6663        f.debug_struct(&format!("GtkComboBoxText @ {self:p}"))
6664            .finish()
6665    }
6666}
6667
6668#[repr(C)]
6669#[allow(dead_code)]
6670pub struct GtkConstantExpression {
6671    _data: [u8; 0],
6672    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6673}
6674
6675impl ::std::fmt::Debug for GtkConstantExpression {
6676    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6677        f.debug_struct(&format!("GtkConstantExpression @ {self:p}"))
6678            .finish()
6679    }
6680}
6681
6682#[repr(C)]
6683#[allow(dead_code)]
6684pub struct GtkConstraint {
6685    _data: [u8; 0],
6686    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6687}
6688
6689impl ::std::fmt::Debug for GtkConstraint {
6690    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6691        f.debug_struct(&format!("GtkConstraint @ {self:p}"))
6692            .finish()
6693    }
6694}
6695
6696#[repr(C)]
6697#[allow(dead_code)]
6698pub struct GtkConstraintGuide {
6699    _data: [u8; 0],
6700    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6701}
6702
6703impl ::std::fmt::Debug for GtkConstraintGuide {
6704    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6705        f.debug_struct(&format!("GtkConstraintGuide @ {self:p}"))
6706            .finish()
6707    }
6708}
6709
6710#[repr(C)]
6711#[allow(dead_code)]
6712pub struct GtkConstraintLayout {
6713    _data: [u8; 0],
6714    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6715}
6716
6717impl ::std::fmt::Debug for GtkConstraintLayout {
6718    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6719        f.debug_struct(&format!("GtkConstraintLayout @ {self:p}"))
6720            .finish()
6721    }
6722}
6723
6724#[repr(C)]
6725#[allow(dead_code)]
6726pub struct GtkConstraintLayoutChild {
6727    _data: [u8; 0],
6728    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6729}
6730
6731impl ::std::fmt::Debug for GtkConstraintLayoutChild {
6732    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6733        f.debug_struct(&format!("GtkConstraintLayoutChild @ {self:p}"))
6734            .finish()
6735    }
6736}
6737
6738#[derive(Copy, Clone)]
6739#[repr(C)]
6740pub struct GtkCssProvider {
6741    pub parent_instance: gobject::GObject,
6742}
6743
6744impl ::std::fmt::Debug for GtkCssProvider {
6745    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6746        f.debug_struct(&format!("GtkCssProvider @ {self:p}"))
6747            .field("parent_instance", &self.parent_instance)
6748            .finish()
6749    }
6750}
6751
6752#[repr(C)]
6753#[allow(dead_code)]
6754pub struct GtkCustomFilter {
6755    _data: [u8; 0],
6756    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6757}
6758
6759impl ::std::fmt::Debug for GtkCustomFilter {
6760    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6761        f.debug_struct(&format!("GtkCustomFilter @ {self:p}"))
6762            .finish()
6763    }
6764}
6765
6766#[repr(C)]
6767#[allow(dead_code)]
6768pub struct GtkCustomLayout {
6769    _data: [u8; 0],
6770    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6771}
6772
6773impl ::std::fmt::Debug for GtkCustomLayout {
6774    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6775        f.debug_struct(&format!("GtkCustomLayout @ {self:p}"))
6776            .finish()
6777    }
6778}
6779
6780#[repr(C)]
6781#[allow(dead_code)]
6782pub struct GtkCustomSorter {
6783    _data: [u8; 0],
6784    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6785}
6786
6787impl ::std::fmt::Debug for GtkCustomSorter {
6788    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6789        f.debug_struct(&format!("GtkCustomSorter @ {self:p}"))
6790            .finish()
6791    }
6792}
6793
6794#[derive(Copy, Clone)]
6795#[repr(C)]
6796pub struct GtkDialog {
6797    pub parent_instance: GtkWindow,
6798}
6799
6800impl ::std::fmt::Debug for GtkDialog {
6801    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6802        f.debug_struct(&format!("GtkDialog @ {self:p}"))
6803            .field("parent_instance", &self.parent_instance)
6804            .finish()
6805    }
6806}
6807
6808#[repr(C)]
6809#[allow(dead_code)]
6810pub struct GtkDirectoryList {
6811    _data: [u8; 0],
6812    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6813}
6814
6815impl ::std::fmt::Debug for GtkDirectoryList {
6816    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6817        f.debug_struct(&format!("GtkDirectoryList @ {self:p}"))
6818            .finish()
6819    }
6820}
6821
6822#[repr(C)]
6823#[allow(dead_code)]
6824pub struct GtkDragIcon {
6825    _data: [u8; 0],
6826    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6827}
6828
6829impl ::std::fmt::Debug for GtkDragIcon {
6830    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6831        f.debug_struct(&format!("GtkDragIcon @ {self:p}")).finish()
6832    }
6833}
6834
6835#[repr(C)]
6836#[allow(dead_code)]
6837pub struct GtkDragSource {
6838    _data: [u8; 0],
6839    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6840}
6841
6842impl ::std::fmt::Debug for GtkDragSource {
6843    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6844        f.debug_struct(&format!("GtkDragSource @ {self:p}"))
6845            .finish()
6846    }
6847}
6848
6849#[derive(Copy, Clone)]
6850#[repr(C)]
6851pub struct GtkDrawingArea {
6852    pub widget: GtkWidget,
6853}
6854
6855impl ::std::fmt::Debug for GtkDrawingArea {
6856    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6857        f.debug_struct(&format!("GtkDrawingArea @ {self:p}"))
6858            .field("widget", &self.widget)
6859            .finish()
6860    }
6861}
6862
6863#[repr(C)]
6864#[allow(dead_code)]
6865pub struct GtkDropControllerMotion {
6866    _data: [u8; 0],
6867    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6868}
6869
6870impl ::std::fmt::Debug for GtkDropControllerMotion {
6871    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6872        f.debug_struct(&format!("GtkDropControllerMotion @ {self:p}"))
6873            .finish()
6874    }
6875}
6876
6877#[repr(C)]
6878#[allow(dead_code)]
6879pub struct GtkDropDown {
6880    _data: [u8; 0],
6881    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6882}
6883
6884impl ::std::fmt::Debug for GtkDropDown {
6885    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6886        f.debug_struct(&format!("GtkDropDown @ {self:p}")).finish()
6887    }
6888}
6889
6890#[repr(C)]
6891#[allow(dead_code)]
6892pub struct GtkDropTarget {
6893    _data: [u8; 0],
6894    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6895}
6896
6897impl ::std::fmt::Debug for GtkDropTarget {
6898    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6899        f.debug_struct(&format!("GtkDropTarget @ {self:p}"))
6900            .finish()
6901    }
6902}
6903
6904#[repr(C)]
6905#[allow(dead_code)]
6906pub struct GtkDropTargetAsync {
6907    _data: [u8; 0],
6908    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6909}
6910
6911impl ::std::fmt::Debug for GtkDropTargetAsync {
6912    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6913        f.debug_struct(&format!("GtkDropTargetAsync @ {self:p}"))
6914            .finish()
6915    }
6916}
6917
6918#[repr(C)]
6919#[allow(dead_code)]
6920pub struct GtkEditableLabel {
6921    _data: [u8; 0],
6922    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6923}
6924
6925impl ::std::fmt::Debug for GtkEditableLabel {
6926    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6927        f.debug_struct(&format!("GtkEditableLabel @ {self:p}"))
6928            .finish()
6929    }
6930}
6931
6932#[repr(C)]
6933#[allow(dead_code)]
6934pub struct GtkEmojiChooser {
6935    _data: [u8; 0],
6936    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6937}
6938
6939impl ::std::fmt::Debug for GtkEmojiChooser {
6940    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6941        f.debug_struct(&format!("GtkEmojiChooser @ {self:p}"))
6942            .finish()
6943    }
6944}
6945
6946#[derive(Copy, Clone)]
6947#[repr(C)]
6948pub struct GtkEntry {
6949    pub parent_instance: GtkWidget,
6950}
6951
6952impl ::std::fmt::Debug for GtkEntry {
6953    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6954        f.debug_struct(&format!("GtkEntry @ {self:p}")).finish()
6955    }
6956}
6957
6958#[derive(Copy, Clone)]
6959#[repr(C)]
6960pub struct GtkEntryBuffer {
6961    pub parent_instance: gobject::GObject,
6962}
6963
6964impl ::std::fmt::Debug for GtkEntryBuffer {
6965    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6966        f.debug_struct(&format!("GtkEntryBuffer @ {self:p}"))
6967            .field("parent_instance", &self.parent_instance)
6968            .finish()
6969    }
6970}
6971
6972#[repr(C)]
6973#[allow(dead_code)]
6974pub struct GtkEntryCompletion {
6975    _data: [u8; 0],
6976    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6977}
6978
6979impl ::std::fmt::Debug for GtkEntryCompletion {
6980    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6981        f.debug_struct(&format!("GtkEntryCompletion @ {self:p}"))
6982            .finish()
6983    }
6984}
6985
6986#[repr(C)]
6987#[allow(dead_code)]
6988pub struct GtkEventController {
6989    _data: [u8; 0],
6990    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6991}
6992
6993impl ::std::fmt::Debug for GtkEventController {
6994    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6995        f.debug_struct(&format!("GtkEventController @ {self:p}"))
6996            .finish()
6997    }
6998}
6999
7000#[repr(C)]
7001#[allow(dead_code)]
7002pub struct GtkEventControllerFocus {
7003    _data: [u8; 0],
7004    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7005}
7006
7007impl ::std::fmt::Debug for GtkEventControllerFocus {
7008    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7009        f.debug_struct(&format!("GtkEventControllerFocus @ {self:p}"))
7010            .finish()
7011    }
7012}
7013
7014#[repr(C)]
7015#[allow(dead_code)]
7016pub struct GtkEventControllerKey {
7017    _data: [u8; 0],
7018    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7019}
7020
7021impl ::std::fmt::Debug for GtkEventControllerKey {
7022    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7023        f.debug_struct(&format!("GtkEventControllerKey @ {self:p}"))
7024            .finish()
7025    }
7026}
7027
7028#[repr(C)]
7029#[allow(dead_code)]
7030pub struct GtkEventControllerLegacy {
7031    _data: [u8; 0],
7032    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7033}
7034
7035impl ::std::fmt::Debug for GtkEventControllerLegacy {
7036    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7037        f.debug_struct(&format!("GtkEventControllerLegacy @ {self:p}"))
7038            .finish()
7039    }
7040}
7041
7042#[repr(C)]
7043#[allow(dead_code)]
7044pub struct GtkEventControllerMotion {
7045    _data: [u8; 0],
7046    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7047}
7048
7049impl ::std::fmt::Debug for GtkEventControllerMotion {
7050    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7051        f.debug_struct(&format!("GtkEventControllerMotion @ {self:p}"))
7052            .finish()
7053    }
7054}
7055
7056#[repr(C)]
7057#[allow(dead_code)]
7058pub struct GtkEventControllerScroll {
7059    _data: [u8; 0],
7060    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7061}
7062
7063impl ::std::fmt::Debug for GtkEventControllerScroll {
7064    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7065        f.debug_struct(&format!("GtkEventControllerScroll @ {self:p}"))
7066            .finish()
7067    }
7068}
7069
7070#[repr(C)]
7071#[allow(dead_code)]
7072pub struct GtkEveryFilter {
7073    _data: [u8; 0],
7074    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7075}
7076
7077impl ::std::fmt::Debug for GtkEveryFilter {
7078    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7079        f.debug_struct(&format!("GtkEveryFilter @ {self:p}"))
7080            .finish()
7081    }
7082}
7083
7084#[repr(C)]
7085#[allow(dead_code)]
7086pub struct GtkExpander {
7087    _data: [u8; 0],
7088    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7089}
7090
7091impl ::std::fmt::Debug for GtkExpander {
7092    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7093        f.debug_struct(&format!("GtkExpander @ {self:p}")).finish()
7094    }
7095}
7096
7097#[repr(C)]
7098#[allow(dead_code)]
7099pub struct GtkExpression {
7100    _data: [u8; 0],
7101    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7102}
7103
7104impl ::std::fmt::Debug for GtkExpression {
7105    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7106        f.debug_struct(&format!("GtkExpression @ {self:p}"))
7107            .finish()
7108    }
7109}
7110
7111#[repr(C)]
7112#[allow(dead_code)]
7113pub struct GtkFileChooserDialog {
7114    _data: [u8; 0],
7115    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7116}
7117
7118impl ::std::fmt::Debug for GtkFileChooserDialog {
7119    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7120        f.debug_struct(&format!("GtkFileChooserDialog @ {self:p}"))
7121            .finish()
7122    }
7123}
7124
7125#[repr(C)]
7126#[allow(dead_code)]
7127pub struct GtkFileChooserNative {
7128    _data: [u8; 0],
7129    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7130}
7131
7132impl ::std::fmt::Debug for GtkFileChooserNative {
7133    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7134        f.debug_struct(&format!("GtkFileChooserNative @ {self:p}"))
7135            .finish()
7136    }
7137}
7138
7139#[repr(C)]
7140#[allow(dead_code)]
7141pub struct GtkFileChooserWidget {
7142    _data: [u8; 0],
7143    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7144}
7145
7146impl ::std::fmt::Debug for GtkFileChooserWidget {
7147    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7148        f.debug_struct(&format!("GtkFileChooserWidget @ {self:p}"))
7149            .finish()
7150    }
7151}
7152
7153#[repr(C)]
7154#[allow(dead_code)]
7155pub struct GtkFileDialog {
7156    _data: [u8; 0],
7157    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7158}
7159
7160impl ::std::fmt::Debug for GtkFileDialog {
7161    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7162        f.debug_struct(&format!("GtkFileDialog @ {self:p}"))
7163            .finish()
7164    }
7165}
7166
7167#[repr(C)]
7168#[allow(dead_code)]
7169pub struct GtkFileFilter {
7170    _data: [u8; 0],
7171    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7172}
7173
7174impl ::std::fmt::Debug for GtkFileFilter {
7175    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7176        f.debug_struct(&format!("GtkFileFilter @ {self:p}"))
7177            .finish()
7178    }
7179}
7180
7181#[repr(C)]
7182#[allow(dead_code)]
7183pub struct GtkFileLauncher {
7184    _data: [u8; 0],
7185    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7186}
7187
7188impl ::std::fmt::Debug for GtkFileLauncher {
7189    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7190        f.debug_struct(&format!("GtkFileLauncher @ {self:p}"))
7191            .finish()
7192    }
7193}
7194
7195#[derive(Copy, Clone)]
7196#[repr(C)]
7197pub struct GtkFilter {
7198    pub parent_instance: gobject::GObject,
7199}
7200
7201impl ::std::fmt::Debug for GtkFilter {
7202    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7203        f.debug_struct(&format!("GtkFilter @ {self:p}"))
7204            .field("parent_instance", &self.parent_instance)
7205            .finish()
7206    }
7207}
7208
7209#[repr(C)]
7210#[allow(dead_code)]
7211pub struct GtkFilterListModel {
7212    _data: [u8; 0],
7213    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7214}
7215
7216impl ::std::fmt::Debug for GtkFilterListModel {
7217    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7218        f.debug_struct(&format!("GtkFilterListModel @ {self:p}"))
7219            .finish()
7220    }
7221}
7222
7223#[derive(Copy, Clone)]
7224#[repr(C)]
7225pub struct GtkFixed {
7226    pub parent_instance: GtkWidget,
7227}
7228
7229impl ::std::fmt::Debug for GtkFixed {
7230    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7231        f.debug_struct(&format!("GtkFixed @ {self:p}"))
7232            .field("parent_instance", &self.parent_instance)
7233            .finish()
7234    }
7235}
7236
7237#[repr(C)]
7238#[allow(dead_code)]
7239pub struct GtkFixedLayout {
7240    _data: [u8; 0],
7241    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7242}
7243
7244impl ::std::fmt::Debug for GtkFixedLayout {
7245    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7246        f.debug_struct(&format!("GtkFixedLayout @ {self:p}"))
7247            .finish()
7248    }
7249}
7250
7251#[repr(C)]
7252#[allow(dead_code)]
7253pub struct GtkFixedLayoutChild {
7254    _data: [u8; 0],
7255    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7256}
7257
7258impl ::std::fmt::Debug for GtkFixedLayoutChild {
7259    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7260        f.debug_struct(&format!("GtkFixedLayoutChild @ {self:p}"))
7261            .finish()
7262    }
7263}
7264
7265#[repr(C)]
7266#[allow(dead_code)]
7267pub struct GtkFlattenListModel {
7268    _data: [u8; 0],
7269    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7270}
7271
7272impl ::std::fmt::Debug for GtkFlattenListModel {
7273    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7274        f.debug_struct(&format!("GtkFlattenListModel @ {self:p}"))
7275            .finish()
7276    }
7277}
7278
7279#[repr(C)]
7280#[allow(dead_code)]
7281pub struct GtkFlowBox {
7282    _data: [u8; 0],
7283    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7284}
7285
7286impl ::std::fmt::Debug for GtkFlowBox {
7287    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7288        f.debug_struct(&format!("GtkFlowBox @ {self:p}")).finish()
7289    }
7290}
7291
7292#[derive(Copy, Clone)]
7293#[repr(C)]
7294pub struct GtkFlowBoxChild {
7295    pub parent_instance: GtkWidget,
7296}
7297
7298impl ::std::fmt::Debug for GtkFlowBoxChild {
7299    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7300        f.debug_struct(&format!("GtkFlowBoxChild @ {self:p}"))
7301            .finish()
7302    }
7303}
7304
7305#[repr(C)]
7306#[allow(dead_code)]
7307pub struct GtkFontButton {
7308    _data: [u8; 0],
7309    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7310}
7311
7312impl ::std::fmt::Debug for GtkFontButton {
7313    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7314        f.debug_struct(&format!("GtkFontButton @ {self:p}"))
7315            .finish()
7316    }
7317}
7318
7319#[repr(C)]
7320#[allow(dead_code)]
7321pub struct GtkFontChooserDialog {
7322    _data: [u8; 0],
7323    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7324}
7325
7326impl ::std::fmt::Debug for GtkFontChooserDialog {
7327    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7328        f.debug_struct(&format!("GtkFontChooserDialog @ {self:p}"))
7329            .finish()
7330    }
7331}
7332
7333#[repr(C)]
7334#[allow(dead_code)]
7335pub struct GtkFontChooserWidget {
7336    _data: [u8; 0],
7337    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7338}
7339
7340impl ::std::fmt::Debug for GtkFontChooserWidget {
7341    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7342        f.debug_struct(&format!("GtkFontChooserWidget @ {self:p}"))
7343            .finish()
7344    }
7345}
7346
7347#[repr(C)]
7348#[allow(dead_code)]
7349pub struct GtkFontDialog {
7350    _data: [u8; 0],
7351    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7352}
7353
7354impl ::std::fmt::Debug for GtkFontDialog {
7355    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7356        f.debug_struct(&format!("GtkFontDialog @ {self:p}"))
7357            .finish()
7358    }
7359}
7360
7361#[repr(C)]
7362#[allow(dead_code)]
7363pub struct GtkFontDialogButton {
7364    _data: [u8; 0],
7365    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7366}
7367
7368impl ::std::fmt::Debug for GtkFontDialogButton {
7369    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7370        f.debug_struct(&format!("GtkFontDialogButton @ {self:p}"))
7371            .finish()
7372    }
7373}
7374
7375#[derive(Copy, Clone)]
7376#[repr(C)]
7377pub struct GtkFrame {
7378    pub parent_instance: GtkWidget,
7379}
7380
7381impl ::std::fmt::Debug for GtkFrame {
7382    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7383        f.debug_struct(&format!("GtkFrame @ {self:p}"))
7384            .field("parent_instance", &self.parent_instance)
7385            .finish()
7386    }
7387}
7388
7389#[derive(Copy, Clone)]
7390#[repr(C)]
7391pub struct GtkGLArea {
7392    pub parent_instance: GtkWidget,
7393}
7394
7395impl ::std::fmt::Debug for GtkGLArea {
7396    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7397        f.debug_struct(&format!("GtkGLArea @ {self:p}")).finish()
7398    }
7399}
7400
7401#[repr(C)]
7402#[allow(dead_code)]
7403pub struct GtkGesture {
7404    _data: [u8; 0],
7405    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7406}
7407
7408impl ::std::fmt::Debug for GtkGesture {
7409    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7410        f.debug_struct(&format!("GtkGesture @ {self:p}")).finish()
7411    }
7412}
7413
7414#[repr(C)]
7415#[allow(dead_code)]
7416pub struct GtkGestureClick {
7417    _data: [u8; 0],
7418    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7419}
7420
7421impl ::std::fmt::Debug for GtkGestureClick {
7422    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7423        f.debug_struct(&format!("GtkGestureClick @ {self:p}"))
7424            .finish()
7425    }
7426}
7427
7428#[repr(C)]
7429#[allow(dead_code)]
7430pub struct GtkGestureDrag {
7431    _data: [u8; 0],
7432    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7433}
7434
7435impl ::std::fmt::Debug for GtkGestureDrag {
7436    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7437        f.debug_struct(&format!("GtkGestureDrag @ {self:p}"))
7438            .finish()
7439    }
7440}
7441
7442#[repr(C)]
7443#[allow(dead_code)]
7444pub struct GtkGestureLongPress {
7445    _data: [u8; 0],
7446    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7447}
7448
7449impl ::std::fmt::Debug for GtkGestureLongPress {
7450    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7451        f.debug_struct(&format!("GtkGestureLongPress @ {self:p}"))
7452            .finish()
7453    }
7454}
7455
7456#[repr(C)]
7457#[allow(dead_code)]
7458pub struct GtkGesturePan {
7459    _data: [u8; 0],
7460    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7461}
7462
7463impl ::std::fmt::Debug for GtkGesturePan {
7464    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7465        f.debug_struct(&format!("GtkGesturePan @ {self:p}"))
7466            .finish()
7467    }
7468}
7469
7470#[repr(C)]
7471#[allow(dead_code)]
7472pub struct GtkGestureRotate {
7473    _data: [u8; 0],
7474    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7475}
7476
7477impl ::std::fmt::Debug for GtkGestureRotate {
7478    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7479        f.debug_struct(&format!("GtkGestureRotate @ {self:p}"))
7480            .finish()
7481    }
7482}
7483
7484#[repr(C)]
7485#[allow(dead_code)]
7486pub struct GtkGestureSingle {
7487    _data: [u8; 0],
7488    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7489}
7490
7491impl ::std::fmt::Debug for GtkGestureSingle {
7492    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7493        f.debug_struct(&format!("GtkGestureSingle @ {self:p}"))
7494            .finish()
7495    }
7496}
7497
7498#[repr(C)]
7499#[allow(dead_code)]
7500pub struct GtkGestureStylus {
7501    _data: [u8; 0],
7502    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7503}
7504
7505impl ::std::fmt::Debug for GtkGestureStylus {
7506    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7507        f.debug_struct(&format!("GtkGestureStylus @ {self:p}"))
7508            .finish()
7509    }
7510}
7511
7512#[repr(C)]
7513#[allow(dead_code)]
7514pub struct GtkGestureSwipe {
7515    _data: [u8; 0],
7516    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7517}
7518
7519impl ::std::fmt::Debug for GtkGestureSwipe {
7520    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7521        f.debug_struct(&format!("GtkGestureSwipe @ {self:p}"))
7522            .finish()
7523    }
7524}
7525
7526#[repr(C)]
7527#[allow(dead_code)]
7528pub struct GtkGestureZoom {
7529    _data: [u8; 0],
7530    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7531}
7532
7533impl ::std::fmt::Debug for GtkGestureZoom {
7534    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7535        f.debug_struct(&format!("GtkGestureZoom @ {self:p}"))
7536            .finish()
7537    }
7538}
7539
7540#[repr(C)]
7541#[allow(dead_code)]
7542pub struct GtkGraphicsOffload {
7543    _data: [u8; 0],
7544    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7545}
7546
7547impl ::std::fmt::Debug for GtkGraphicsOffload {
7548    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7549        f.debug_struct(&format!("GtkGraphicsOffload @ {self:p}"))
7550            .finish()
7551    }
7552}
7553
7554#[derive(Copy, Clone)]
7555#[repr(C)]
7556pub struct GtkGrid {
7557    pub parent_instance: GtkWidget,
7558}
7559
7560impl ::std::fmt::Debug for GtkGrid {
7561    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7562        f.debug_struct(&format!("GtkGrid @ {self:p}")).finish()
7563    }
7564}
7565
7566#[repr(C)]
7567#[allow(dead_code)]
7568pub struct GtkGridLayout {
7569    _data: [u8; 0],
7570    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7571}
7572
7573impl ::std::fmt::Debug for GtkGridLayout {
7574    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7575        f.debug_struct(&format!("GtkGridLayout @ {self:p}"))
7576            .finish()
7577    }
7578}
7579
7580#[repr(C)]
7581#[allow(dead_code)]
7582pub struct GtkGridLayoutChild {
7583    _data: [u8; 0],
7584    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7585}
7586
7587impl ::std::fmt::Debug for GtkGridLayoutChild {
7588    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7589        f.debug_struct(&format!("GtkGridLayoutChild @ {self:p}"))
7590            .finish()
7591    }
7592}
7593
7594#[repr(C)]
7595#[allow(dead_code)]
7596pub struct GtkGridView {
7597    _data: [u8; 0],
7598    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7599}
7600
7601impl ::std::fmt::Debug for GtkGridView {
7602    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7603        f.debug_struct(&format!("GtkGridView @ {self:p}")).finish()
7604    }
7605}
7606
7607#[repr(C)]
7608#[allow(dead_code)]
7609pub struct GtkHeaderBar {
7610    _data: [u8; 0],
7611    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7612}
7613
7614impl ::std::fmt::Debug for GtkHeaderBar {
7615    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7616        f.debug_struct(&format!("GtkHeaderBar @ {self:p}")).finish()
7617    }
7618}
7619
7620#[derive(Copy, Clone)]
7621#[repr(C)]
7622pub struct GtkIMContext {
7623    pub parent_instance: gobject::GObject,
7624}
7625
7626impl ::std::fmt::Debug for GtkIMContext {
7627    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7628        f.debug_struct(&format!("GtkIMContext @ {self:p}"))
7629            .field("parent_instance", &self.parent_instance)
7630            .finish()
7631    }
7632}
7633
7634#[derive(Copy, Clone)]
7635#[repr(C)]
7636pub struct GtkIMContextSimple {
7637    pub object: GtkIMContext,
7638    pub priv_: *mut GtkIMContextSimplePrivate,
7639}
7640
7641impl ::std::fmt::Debug for GtkIMContextSimple {
7642    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7643        f.debug_struct(&format!("GtkIMContextSimple @ {self:p}"))
7644            .field("object", &self.object)
7645            .finish()
7646    }
7647}
7648
7649#[derive(Copy, Clone)]
7650#[repr(C)]
7651pub struct GtkIMMulticontext {
7652    pub object: GtkIMContext,
7653    pub priv_: *mut GtkIMMulticontextPrivate,
7654}
7655
7656impl ::std::fmt::Debug for GtkIMMulticontext {
7657    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7658        f.debug_struct(&format!("GtkIMMulticontext @ {self:p}"))
7659            .field("object", &self.object)
7660            .finish()
7661    }
7662}
7663
7664#[repr(C)]
7665#[allow(dead_code)]
7666pub struct GtkIconPaintable {
7667    _data: [u8; 0],
7668    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7669}
7670
7671impl ::std::fmt::Debug for GtkIconPaintable {
7672    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7673        f.debug_struct(&format!("GtkIconPaintable @ {self:p}"))
7674            .finish()
7675    }
7676}
7677
7678#[repr(C)]
7679#[allow(dead_code)]
7680pub struct GtkIconTheme {
7681    _data: [u8; 0],
7682    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7683}
7684
7685impl ::std::fmt::Debug for GtkIconTheme {
7686    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7687        f.debug_struct(&format!("GtkIconTheme @ {self:p}")).finish()
7688    }
7689}
7690
7691#[repr(C)]
7692#[allow(dead_code)]
7693pub struct GtkIconView {
7694    _data: [u8; 0],
7695    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7696}
7697
7698impl ::std::fmt::Debug for GtkIconView {
7699    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7700        f.debug_struct(&format!("GtkIconView @ {self:p}")).finish()
7701    }
7702}
7703
7704#[repr(C)]
7705#[allow(dead_code)]
7706pub struct GtkImage {
7707    _data: [u8; 0],
7708    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7709}
7710
7711impl ::std::fmt::Debug for GtkImage {
7712    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7713        f.debug_struct(&format!("GtkImage @ {self:p}")).finish()
7714    }
7715}
7716
7717#[repr(C)]
7718#[allow(dead_code)]
7719pub struct GtkInfoBar {
7720    _data: [u8; 0],
7721    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7722}
7723
7724impl ::std::fmt::Debug for GtkInfoBar {
7725    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7726        f.debug_struct(&format!("GtkInfoBar @ {self:p}")).finish()
7727    }
7728}
7729
7730#[repr(C)]
7731#[allow(dead_code)]
7732pub struct GtkInscription {
7733    _data: [u8; 0],
7734    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7735}
7736
7737impl ::std::fmt::Debug for GtkInscription {
7738    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7739        f.debug_struct(&format!("GtkInscription @ {self:p}"))
7740            .finish()
7741    }
7742}
7743
7744#[repr(C)]
7745#[allow(dead_code)]
7746pub struct GtkKeyvalTrigger {
7747    _data: [u8; 0],
7748    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7749}
7750
7751impl ::std::fmt::Debug for GtkKeyvalTrigger {
7752    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7753        f.debug_struct(&format!("GtkKeyvalTrigger @ {self:p}"))
7754            .finish()
7755    }
7756}
7757
7758#[repr(C)]
7759#[allow(dead_code)]
7760pub struct GtkLabel {
7761    _data: [u8; 0],
7762    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7763}
7764
7765impl ::std::fmt::Debug for GtkLabel {
7766    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7767        f.debug_struct(&format!("GtkLabel @ {self:p}")).finish()
7768    }
7769}
7770
7771#[derive(Copy, Clone)]
7772#[repr(C)]
7773pub struct GtkLayoutChild {
7774    pub parent_instance: gobject::GObject,
7775}
7776
7777impl ::std::fmt::Debug for GtkLayoutChild {
7778    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7779        f.debug_struct(&format!("GtkLayoutChild @ {self:p}"))
7780            .field("parent_instance", &self.parent_instance)
7781            .finish()
7782    }
7783}
7784
7785#[derive(Copy, Clone)]
7786#[repr(C)]
7787pub struct GtkLayoutManager {
7788    pub parent_instance: gobject::GObject,
7789}
7790
7791impl ::std::fmt::Debug for GtkLayoutManager {
7792    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7793        f.debug_struct(&format!("GtkLayoutManager @ {self:p}"))
7794            .field("parent_instance", &self.parent_instance)
7795            .finish()
7796    }
7797}
7798
7799#[repr(C)]
7800#[allow(dead_code)]
7801pub struct GtkLevelBar {
7802    _data: [u8; 0],
7803    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7804}
7805
7806impl ::std::fmt::Debug for GtkLevelBar {
7807    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7808        f.debug_struct(&format!("GtkLevelBar @ {self:p}")).finish()
7809    }
7810}
7811
7812#[repr(C)]
7813#[allow(dead_code)]
7814pub struct GtkLinkButton {
7815    _data: [u8; 0],
7816    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7817}
7818
7819impl ::std::fmt::Debug for GtkLinkButton {
7820    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7821        f.debug_struct(&format!("GtkLinkButton @ {self:p}"))
7822            .finish()
7823    }
7824}
7825
7826#[repr(C)]
7827#[allow(dead_code)]
7828pub struct GtkListBase {
7829    _data: [u8; 0],
7830    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7831}
7832
7833impl ::std::fmt::Debug for GtkListBase {
7834    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7835        f.debug_struct(&format!("GtkListBase @ {self:p}")).finish()
7836    }
7837}
7838
7839#[repr(C)]
7840#[allow(dead_code)]
7841pub struct GtkListBox {
7842    _data: [u8; 0],
7843    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7844}
7845
7846impl ::std::fmt::Debug for GtkListBox {
7847    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7848        f.debug_struct(&format!("GtkListBox @ {self:p}")).finish()
7849    }
7850}
7851
7852#[derive(Copy, Clone)]
7853#[repr(C)]
7854pub struct GtkListBoxRow {
7855    pub parent_instance: GtkWidget,
7856}
7857
7858impl ::std::fmt::Debug for GtkListBoxRow {
7859    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7860        f.debug_struct(&format!("GtkListBoxRow @ {self:p}"))
7861            .field("parent_instance", &self.parent_instance)
7862            .finish()
7863    }
7864}
7865
7866#[repr(C)]
7867#[allow(dead_code)]
7868pub struct GtkListHeader {
7869    _data: [u8; 0],
7870    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7871}
7872
7873impl ::std::fmt::Debug for GtkListHeader {
7874    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7875        f.debug_struct(&format!("GtkListHeader @ {self:p}"))
7876            .finish()
7877    }
7878}
7879
7880#[repr(C)]
7881#[allow(dead_code)]
7882pub struct GtkListItem {
7883    _data: [u8; 0],
7884    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7885}
7886
7887impl ::std::fmt::Debug for GtkListItem {
7888    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7889        f.debug_struct(&format!("GtkListItem @ {self:p}")).finish()
7890    }
7891}
7892
7893#[repr(C)]
7894#[allow(dead_code)]
7895pub struct GtkListItemFactory {
7896    _data: [u8; 0],
7897    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7898}
7899
7900impl ::std::fmt::Debug for GtkListItemFactory {
7901    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7902        f.debug_struct(&format!("GtkListItemFactory @ {self:p}"))
7903            .finish()
7904    }
7905}
7906
7907#[derive(Copy, Clone)]
7908#[repr(C)]
7909pub struct GtkListStore {
7910    pub parent: gobject::GObject,
7911    pub priv_: *mut GtkListStorePrivate,
7912}
7913
7914impl ::std::fmt::Debug for GtkListStore {
7915    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7916        f.debug_struct(&format!("GtkListStore @ {self:p}"))
7917            .field("parent", &self.parent)
7918            .finish()
7919    }
7920}
7921
7922#[repr(C)]
7923#[allow(dead_code)]
7924pub struct GtkListView {
7925    _data: [u8; 0],
7926    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7927}
7928
7929impl ::std::fmt::Debug for GtkListView {
7930    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7931        f.debug_struct(&format!("GtkListView @ {self:p}")).finish()
7932    }
7933}
7934
7935#[repr(C)]
7936#[allow(dead_code)]
7937pub struct GtkLockButton {
7938    _data: [u8; 0],
7939    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7940}
7941
7942impl ::std::fmt::Debug for GtkLockButton {
7943    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7944        f.debug_struct(&format!("GtkLockButton @ {self:p}"))
7945            .finish()
7946    }
7947}
7948
7949#[repr(C)]
7950#[allow(dead_code)]
7951pub struct GtkMapListModel {
7952    _data: [u8; 0],
7953    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7954}
7955
7956impl ::std::fmt::Debug for GtkMapListModel {
7957    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7958        f.debug_struct(&format!("GtkMapListModel @ {self:p}"))
7959            .finish()
7960    }
7961}
7962
7963#[repr(C)]
7964#[allow(dead_code)]
7965pub struct GtkMediaControls {
7966    _data: [u8; 0],
7967    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7968}
7969
7970impl ::std::fmt::Debug for GtkMediaControls {
7971    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7972        f.debug_struct(&format!("GtkMediaControls @ {self:p}"))
7973            .finish()
7974    }
7975}
7976
7977#[derive(Copy, Clone)]
7978#[repr(C)]
7979pub struct GtkMediaFile {
7980    pub parent_instance: GtkMediaStream,
7981}
7982
7983impl ::std::fmt::Debug for GtkMediaFile {
7984    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7985        f.debug_struct(&format!("GtkMediaFile @ {self:p}"))
7986            .field("parent_instance", &self.parent_instance)
7987            .finish()
7988    }
7989}
7990
7991#[derive(Copy, Clone)]
7992#[repr(C)]
7993pub struct GtkMediaStream {
7994    pub parent_instance: gobject::GObject,
7995}
7996
7997impl ::std::fmt::Debug for GtkMediaStream {
7998    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7999        f.debug_struct(&format!("GtkMediaStream @ {self:p}"))
8000            .field("parent_instance", &self.parent_instance)
8001            .finish()
8002    }
8003}
8004
8005#[repr(C)]
8006#[allow(dead_code)]
8007pub struct GtkMenuButton {
8008    _data: [u8; 0],
8009    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8010}
8011
8012impl ::std::fmt::Debug for GtkMenuButton {
8013    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8014        f.debug_struct(&format!("GtkMenuButton @ {self:p}"))
8015            .finish()
8016    }
8017}
8018
8019#[derive(Copy, Clone)]
8020#[repr(C)]
8021pub struct GtkMessageDialog {
8022    pub parent_instance: GtkDialog,
8023}
8024
8025impl ::std::fmt::Debug for GtkMessageDialog {
8026    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8027        f.debug_struct(&format!("GtkMessageDialog @ {self:p}"))
8028            .field("parent_instance", &self.parent_instance)
8029            .finish()
8030    }
8031}
8032
8033#[repr(C)]
8034#[allow(dead_code)]
8035pub struct GtkMnemonicAction {
8036    _data: [u8; 0],
8037    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8038}
8039
8040impl ::std::fmt::Debug for GtkMnemonicAction {
8041    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8042        f.debug_struct(&format!("GtkMnemonicAction @ {self:p}"))
8043            .finish()
8044    }
8045}
8046
8047#[repr(C)]
8048#[allow(dead_code)]
8049pub struct GtkMnemonicTrigger {
8050    _data: [u8; 0],
8051    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8052}
8053
8054impl ::std::fmt::Debug for GtkMnemonicTrigger {
8055    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8056        f.debug_struct(&format!("GtkMnemonicTrigger @ {self:p}"))
8057            .finish()
8058    }
8059}
8060
8061#[derive(Copy, Clone)]
8062#[repr(C)]
8063pub struct GtkMountOperation {
8064    pub parent_instance: gio::GMountOperation,
8065    pub priv_: *mut GtkMountOperationPrivate,
8066}
8067
8068impl ::std::fmt::Debug for GtkMountOperation {
8069    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8070        f.debug_struct(&format!("GtkMountOperation @ {self:p}"))
8071            .field("parent_instance", &self.parent_instance)
8072            .field("priv_", &self.priv_)
8073            .finish()
8074    }
8075}
8076
8077#[repr(C)]
8078#[allow(dead_code)]
8079pub struct GtkMultiFilter {
8080    _data: [u8; 0],
8081    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8082}
8083
8084impl ::std::fmt::Debug for GtkMultiFilter {
8085    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8086        f.debug_struct(&format!("GtkMultiFilter @ {self:p}"))
8087            .finish()
8088    }
8089}
8090
8091#[repr(C)]
8092#[allow(dead_code)]
8093pub struct GtkMultiSelection {
8094    _data: [u8; 0],
8095    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8096}
8097
8098impl ::std::fmt::Debug for GtkMultiSelection {
8099    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8100        f.debug_struct(&format!("GtkMultiSelection @ {self:p}"))
8101            .finish()
8102    }
8103}
8104
8105#[repr(C)]
8106#[allow(dead_code)]
8107pub struct GtkMultiSorter {
8108    _data: [u8; 0],
8109    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8110}
8111
8112impl ::std::fmt::Debug for GtkMultiSorter {
8113    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8114        f.debug_struct(&format!("GtkMultiSorter @ {self:p}"))
8115            .finish()
8116    }
8117}
8118
8119#[repr(C)]
8120#[allow(dead_code)]
8121pub struct GtkNamedAction {
8122    _data: [u8; 0],
8123    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8124}
8125
8126impl ::std::fmt::Debug for GtkNamedAction {
8127    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8128        f.debug_struct(&format!("GtkNamedAction @ {self:p}"))
8129            .finish()
8130    }
8131}
8132
8133#[derive(Copy, Clone)]
8134#[repr(C)]
8135pub struct GtkNativeDialog {
8136    pub parent_instance: gobject::GObject,
8137}
8138
8139impl ::std::fmt::Debug for GtkNativeDialog {
8140    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8141        f.debug_struct(&format!("GtkNativeDialog @ {self:p}"))
8142            .field("parent_instance", &self.parent_instance)
8143            .finish()
8144    }
8145}
8146
8147#[repr(C)]
8148#[allow(dead_code)]
8149pub struct GtkNeverTrigger {
8150    _data: [u8; 0],
8151    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8152}
8153
8154impl ::std::fmt::Debug for GtkNeverTrigger {
8155    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8156        f.debug_struct(&format!("GtkNeverTrigger @ {self:p}"))
8157            .finish()
8158    }
8159}
8160
8161#[repr(C)]
8162#[allow(dead_code)]
8163pub struct GtkNoSelection {
8164    _data: [u8; 0],
8165    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8166}
8167
8168impl ::std::fmt::Debug for GtkNoSelection {
8169    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8170        f.debug_struct(&format!("GtkNoSelection @ {self:p}"))
8171            .finish()
8172    }
8173}
8174
8175#[repr(C)]
8176#[allow(dead_code)]
8177pub struct GtkNotebook {
8178    _data: [u8; 0],
8179    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8180}
8181
8182impl ::std::fmt::Debug for GtkNotebook {
8183    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8184        f.debug_struct(&format!("GtkNotebook @ {self:p}")).finish()
8185    }
8186}
8187
8188#[repr(C)]
8189#[allow(dead_code)]
8190pub struct GtkNotebookPage {
8191    _data: [u8; 0],
8192    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8193}
8194
8195impl ::std::fmt::Debug for GtkNotebookPage {
8196    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8197        f.debug_struct(&format!("GtkNotebookPage @ {self:p}"))
8198            .finish()
8199    }
8200}
8201
8202#[repr(C)]
8203#[allow(dead_code)]
8204pub struct GtkNothingAction {
8205    _data: [u8; 0],
8206    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8207}
8208
8209impl ::std::fmt::Debug for GtkNothingAction {
8210    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8211        f.debug_struct(&format!("GtkNothingAction @ {self:p}"))
8212            .finish()
8213    }
8214}
8215
8216#[repr(C)]
8217#[allow(dead_code)]
8218pub struct GtkNumericSorter {
8219    _data: [u8; 0],
8220    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8221}
8222
8223impl ::std::fmt::Debug for GtkNumericSorter {
8224    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8225        f.debug_struct(&format!("GtkNumericSorter @ {self:p}"))
8226            .finish()
8227    }
8228}
8229
8230#[repr(C)]
8231#[allow(dead_code)]
8232pub struct GtkObjectExpression {
8233    _data: [u8; 0],
8234    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8235}
8236
8237impl ::std::fmt::Debug for GtkObjectExpression {
8238    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8239        f.debug_struct(&format!("GtkObjectExpression @ {self:p}"))
8240            .finish()
8241    }
8242}
8243
8244#[repr(C)]
8245#[allow(dead_code)]
8246pub struct GtkOverlay {
8247    _data: [u8; 0],
8248    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8249}
8250
8251impl ::std::fmt::Debug for GtkOverlay {
8252    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8253        f.debug_struct(&format!("GtkOverlay @ {self:p}")).finish()
8254    }
8255}
8256
8257#[repr(C)]
8258#[allow(dead_code)]
8259pub struct GtkOverlayLayout {
8260    _data: [u8; 0],
8261    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8262}
8263
8264impl ::std::fmt::Debug for GtkOverlayLayout {
8265    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8266        f.debug_struct(&format!("GtkOverlayLayout @ {self:p}"))
8267            .finish()
8268    }
8269}
8270
8271#[repr(C)]
8272#[allow(dead_code)]
8273pub struct GtkOverlayLayoutChild {
8274    _data: [u8; 0],
8275    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8276}
8277
8278impl ::std::fmt::Debug for GtkOverlayLayoutChild {
8279    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8280        f.debug_struct(&format!("GtkOverlayLayoutChild @ {self:p}"))
8281            .finish()
8282    }
8283}
8284
8285#[repr(C)]
8286#[allow(dead_code)]
8287pub struct GtkPadController {
8288    _data: [u8; 0],
8289    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8290}
8291
8292impl ::std::fmt::Debug for GtkPadController {
8293    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8294        f.debug_struct(&format!("GtkPadController @ {self:p}"))
8295            .finish()
8296    }
8297}
8298
8299#[repr(C)]
8300#[allow(dead_code)]
8301pub struct GtkPageSetup {
8302    _data: [u8; 0],
8303    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8304}
8305
8306impl ::std::fmt::Debug for GtkPageSetup {
8307    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8308        f.debug_struct(&format!("GtkPageSetup @ {self:p}")).finish()
8309    }
8310}
8311
8312#[repr(C)]
8313#[allow(dead_code)]
8314pub struct GtkPageSetupUnixDialog {
8315    _data: [u8; 0],
8316    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8317}
8318
8319impl ::std::fmt::Debug for GtkPageSetupUnixDialog {
8320    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8321        f.debug_struct(&format!("GtkPageSetupUnixDialog @ {self:p}"))
8322            .finish()
8323    }
8324}
8325
8326#[repr(C)]
8327#[allow(dead_code)]
8328pub struct GtkPaned {
8329    _data: [u8; 0],
8330    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8331}
8332
8333impl ::std::fmt::Debug for GtkPaned {
8334    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8335        f.debug_struct(&format!("GtkPaned @ {self:p}")).finish()
8336    }
8337}
8338
8339#[derive(Copy, Clone)]
8340#[repr(C)]
8341pub struct GtkParamSpecExpression {
8342    pub parent_instance: gobject::GParamSpec,
8343}
8344
8345impl ::std::fmt::Debug for GtkParamSpecExpression {
8346    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8347        f.debug_struct(&format!("GtkParamSpecExpression @ {self:p}"))
8348            .finish()
8349    }
8350}
8351
8352#[repr(C)]
8353#[allow(dead_code)]
8354pub struct GtkPasswordEntry {
8355    _data: [u8; 0],
8356    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8357}
8358
8359impl ::std::fmt::Debug for GtkPasswordEntry {
8360    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8361        f.debug_struct(&format!("GtkPasswordEntry @ {self:p}"))
8362            .finish()
8363    }
8364}
8365
8366#[repr(C)]
8367#[allow(dead_code)]
8368pub struct GtkPasswordEntryBuffer {
8369    _data: [u8; 0],
8370    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8371}
8372
8373impl ::std::fmt::Debug for GtkPasswordEntryBuffer {
8374    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8375        f.debug_struct(&format!("GtkPasswordEntryBuffer @ {self:p}"))
8376            .finish()
8377    }
8378}
8379
8380#[repr(C)]
8381#[allow(dead_code)]
8382pub struct GtkPicture {
8383    _data: [u8; 0],
8384    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8385}
8386
8387impl ::std::fmt::Debug for GtkPicture {
8388    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8389        f.debug_struct(&format!("GtkPicture @ {self:p}")).finish()
8390    }
8391}
8392
8393#[derive(Copy, Clone)]
8394#[repr(C)]
8395pub struct GtkPopover {
8396    pub parent: GtkWidget,
8397}
8398
8399impl ::std::fmt::Debug for GtkPopover {
8400    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8401        f.debug_struct(&format!("GtkPopover @ {self:p}"))
8402            .field("parent", &self.parent)
8403            .finish()
8404    }
8405}
8406
8407#[repr(C)]
8408#[allow(dead_code)]
8409pub struct GtkPopoverMenu {
8410    _data: [u8; 0],
8411    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8412}
8413
8414impl ::std::fmt::Debug for GtkPopoverMenu {
8415    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8416        f.debug_struct(&format!("GtkPopoverMenu @ {self:p}"))
8417            .finish()
8418    }
8419}
8420
8421#[repr(C)]
8422#[allow(dead_code)]
8423pub struct GtkPopoverMenuBar {
8424    _data: [u8; 0],
8425    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8426}
8427
8428impl ::std::fmt::Debug for GtkPopoverMenuBar {
8429    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8430        f.debug_struct(&format!("GtkPopoverMenuBar @ {self:p}"))
8431            .finish()
8432    }
8433}
8434
8435#[repr(C)]
8436#[allow(dead_code)]
8437pub struct GtkPrintContext {
8438    _data: [u8; 0],
8439    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8440}
8441
8442impl ::std::fmt::Debug for GtkPrintContext {
8443    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8444        f.debug_struct(&format!("GtkPrintContext @ {self:p}"))
8445            .finish()
8446    }
8447}
8448
8449#[repr(C)]
8450#[allow(dead_code)]
8451pub struct GtkPrintDialog {
8452    _data: [u8; 0],
8453    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8454}
8455
8456impl ::std::fmt::Debug for GtkPrintDialog {
8457    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8458        f.debug_struct(&format!("GtkPrintDialog @ {self:p}"))
8459            .finish()
8460    }
8461}
8462
8463#[repr(C)]
8464#[allow(dead_code)]
8465pub struct GtkPrintJob {
8466    _data: [u8; 0],
8467    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8468}
8469
8470impl ::std::fmt::Debug for GtkPrintJob {
8471    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8472        f.debug_struct(&format!("GtkPrintJob @ {self:p}")).finish()
8473    }
8474}
8475
8476#[derive(Copy, Clone)]
8477#[repr(C)]
8478pub struct GtkPrintOperation {
8479    pub parent_instance: gobject::GObject,
8480    pub priv_: *mut GtkPrintOperationPrivate,
8481}
8482
8483impl ::std::fmt::Debug for GtkPrintOperation {
8484    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8485        f.debug_struct(&format!("GtkPrintOperation @ {self:p}"))
8486            .field("parent_instance", &self.parent_instance)
8487            .finish()
8488    }
8489}
8490
8491#[repr(C)]
8492#[allow(dead_code)]
8493pub struct GtkPrintSettings {
8494    _data: [u8; 0],
8495    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8496}
8497
8498impl ::std::fmt::Debug for GtkPrintSettings {
8499    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8500        f.debug_struct(&format!("GtkPrintSettings @ {self:p}"))
8501            .finish()
8502    }
8503}
8504
8505#[repr(C)]
8506#[allow(dead_code)]
8507pub struct GtkPrintUnixDialog {
8508    _data: [u8; 0],
8509    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8510}
8511
8512impl ::std::fmt::Debug for GtkPrintUnixDialog {
8513    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8514        f.debug_struct(&format!("GtkPrintUnixDialog @ {self:p}"))
8515            .finish()
8516    }
8517}
8518
8519#[repr(C)]
8520#[allow(dead_code)]
8521pub struct GtkPrinter {
8522    _data: [u8; 0],
8523    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8524}
8525
8526impl ::std::fmt::Debug for GtkPrinter {
8527    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8528        f.debug_struct(&format!("GtkPrinter @ {self:p}")).finish()
8529    }
8530}
8531
8532#[repr(C)]
8533#[allow(dead_code)]
8534pub struct GtkProgressBar {
8535    _data: [u8; 0],
8536    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8537}
8538
8539impl ::std::fmt::Debug for GtkProgressBar {
8540    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8541        f.debug_struct(&format!("GtkProgressBar @ {self:p}"))
8542            .finish()
8543    }
8544}
8545
8546#[repr(C)]
8547#[allow(dead_code)]
8548pub struct GtkPropertyExpression {
8549    _data: [u8; 0],
8550    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8551}
8552
8553impl ::std::fmt::Debug for GtkPropertyExpression {
8554    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8555        f.debug_struct(&format!("GtkPropertyExpression @ {self:p}"))
8556            .finish()
8557    }
8558}
8559
8560#[derive(Copy, Clone)]
8561#[repr(C)]
8562pub struct GtkRange {
8563    pub parent_instance: GtkWidget,
8564}
8565
8566impl ::std::fmt::Debug for GtkRange {
8567    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8568        f.debug_struct(&format!("GtkRange @ {self:p}"))
8569            .field("parent_instance", &self.parent_instance)
8570            .finish()
8571    }
8572}
8573
8574#[derive(Copy, Clone)]
8575#[repr(C)]
8576pub struct GtkRecentManager {
8577    pub parent_instance: gobject::GObject,
8578    pub priv_: *mut GtkRecentManagerPrivate,
8579}
8580
8581impl ::std::fmt::Debug for GtkRecentManager {
8582    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8583        f.debug_struct(&format!("GtkRecentManager @ {self:p}"))
8584            .finish()
8585    }
8586}
8587
8588#[repr(C)]
8589#[allow(dead_code)]
8590pub struct GtkRevealer {
8591    _data: [u8; 0],
8592    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8593}
8594
8595impl ::std::fmt::Debug for GtkRevealer {
8596    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8597        f.debug_struct(&format!("GtkRevealer @ {self:p}")).finish()
8598    }
8599}
8600
8601#[derive(Copy, Clone)]
8602#[repr(C)]
8603pub struct GtkScale {
8604    pub parent_instance: GtkRange,
8605}
8606
8607impl ::std::fmt::Debug for GtkScale {
8608    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8609        f.debug_struct(&format!("GtkScale @ {self:p}"))
8610            .field("parent_instance", &self.parent_instance)
8611            .finish()
8612    }
8613}
8614
8615#[derive(Copy, Clone)]
8616#[repr(C)]
8617pub struct GtkScaleButton {
8618    pub parent_instance: GtkWidget,
8619}
8620
8621impl ::std::fmt::Debug for GtkScaleButton {
8622    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8623        f.debug_struct(&format!("GtkScaleButton @ {self:p}"))
8624            .field("parent_instance", &self.parent_instance)
8625            .finish()
8626    }
8627}
8628
8629#[repr(C)]
8630#[allow(dead_code)]
8631pub struct GtkScrollbar {
8632    _data: [u8; 0],
8633    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8634}
8635
8636impl ::std::fmt::Debug for GtkScrollbar {
8637    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8638        f.debug_struct(&format!("GtkScrollbar @ {self:p}")).finish()
8639    }
8640}
8641
8642#[repr(C)]
8643#[allow(dead_code)]
8644pub struct GtkScrolledWindow {
8645    _data: [u8; 0],
8646    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8647}
8648
8649impl ::std::fmt::Debug for GtkScrolledWindow {
8650    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8651        f.debug_struct(&format!("GtkScrolledWindow @ {self:p}"))
8652            .finish()
8653    }
8654}
8655
8656#[repr(C)]
8657#[allow(dead_code)]
8658pub struct GtkSearchBar {
8659    _data: [u8; 0],
8660    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8661}
8662
8663impl ::std::fmt::Debug for GtkSearchBar {
8664    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8665        f.debug_struct(&format!("GtkSearchBar @ {self:p}")).finish()
8666    }
8667}
8668
8669#[repr(C)]
8670#[allow(dead_code)]
8671pub struct GtkSearchEntry {
8672    _data: [u8; 0],
8673    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8674}
8675
8676impl ::std::fmt::Debug for GtkSearchEntry {
8677    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8678        f.debug_struct(&format!("GtkSearchEntry @ {self:p}"))
8679            .finish()
8680    }
8681}
8682
8683#[repr(C)]
8684#[allow(dead_code)]
8685pub struct GtkSelectionFilterModel {
8686    _data: [u8; 0],
8687    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8688}
8689
8690impl ::std::fmt::Debug for GtkSelectionFilterModel {
8691    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8692        f.debug_struct(&format!("GtkSelectionFilterModel @ {self:p}"))
8693            .finish()
8694    }
8695}
8696
8697#[repr(C)]
8698#[allow(dead_code)]
8699pub struct GtkSeparator {
8700    _data: [u8; 0],
8701    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8702}
8703
8704impl ::std::fmt::Debug for GtkSeparator {
8705    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8706        f.debug_struct(&format!("GtkSeparator @ {self:p}")).finish()
8707    }
8708}
8709
8710#[repr(C)]
8711#[allow(dead_code)]
8712pub struct GtkSettings {
8713    _data: [u8; 0],
8714    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8715}
8716
8717impl ::std::fmt::Debug for GtkSettings {
8718    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8719        f.debug_struct(&format!("GtkSettings @ {self:p}")).finish()
8720    }
8721}
8722
8723#[repr(C)]
8724#[allow(dead_code)]
8725pub struct GtkShortcut {
8726    _data: [u8; 0],
8727    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8728}
8729
8730impl ::std::fmt::Debug for GtkShortcut {
8731    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8732        f.debug_struct(&format!("GtkShortcut @ {self:p}")).finish()
8733    }
8734}
8735
8736#[repr(C)]
8737#[allow(dead_code)]
8738pub struct GtkShortcutAction {
8739    _data: [u8; 0],
8740    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8741}
8742
8743impl ::std::fmt::Debug for GtkShortcutAction {
8744    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8745        f.debug_struct(&format!("GtkShortcutAction @ {self:p}"))
8746            .finish()
8747    }
8748}
8749
8750#[repr(C)]
8751#[allow(dead_code)]
8752pub struct GtkShortcutController {
8753    _data: [u8; 0],
8754    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8755}
8756
8757impl ::std::fmt::Debug for GtkShortcutController {
8758    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8759        f.debug_struct(&format!("GtkShortcutController @ {self:p}"))
8760            .finish()
8761    }
8762}
8763
8764#[repr(C)]
8765#[allow(dead_code)]
8766pub struct GtkShortcutLabel {
8767    _data: [u8; 0],
8768    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8769}
8770
8771impl ::std::fmt::Debug for GtkShortcutLabel {
8772    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8773        f.debug_struct(&format!("GtkShortcutLabel @ {self:p}"))
8774            .finish()
8775    }
8776}
8777
8778#[repr(C)]
8779#[allow(dead_code)]
8780pub struct GtkShortcutTrigger {
8781    _data: [u8; 0],
8782    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8783}
8784
8785impl ::std::fmt::Debug for GtkShortcutTrigger {
8786    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8787        f.debug_struct(&format!("GtkShortcutTrigger @ {self:p}"))
8788            .finish()
8789    }
8790}
8791
8792#[repr(C)]
8793#[allow(dead_code)]
8794pub struct GtkShortcutsGroup {
8795    _data: [u8; 0],
8796    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8797}
8798
8799impl ::std::fmt::Debug for GtkShortcutsGroup {
8800    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8801        f.debug_struct(&format!("GtkShortcutsGroup @ {self:p}"))
8802            .finish()
8803    }
8804}
8805
8806#[repr(C)]
8807#[allow(dead_code)]
8808pub struct GtkShortcutsSection {
8809    _data: [u8; 0],
8810    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8811}
8812
8813impl ::std::fmt::Debug for GtkShortcutsSection {
8814    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8815        f.debug_struct(&format!("GtkShortcutsSection @ {self:p}"))
8816            .finish()
8817    }
8818}
8819
8820#[repr(C)]
8821#[allow(dead_code)]
8822pub struct GtkShortcutsShortcut {
8823    _data: [u8; 0],
8824    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8825}
8826
8827impl ::std::fmt::Debug for GtkShortcutsShortcut {
8828    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8829        f.debug_struct(&format!("GtkShortcutsShortcut @ {self:p}"))
8830            .finish()
8831    }
8832}
8833
8834#[repr(C)]
8835#[allow(dead_code)]
8836pub struct GtkShortcutsWindow {
8837    _data: [u8; 0],
8838    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8839}
8840
8841impl ::std::fmt::Debug for GtkShortcutsWindow {
8842    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8843        f.debug_struct(&format!("GtkShortcutsWindow @ {self:p}"))
8844            .finish()
8845    }
8846}
8847
8848#[repr(C)]
8849#[allow(dead_code)]
8850pub struct GtkSignalAction {
8851    _data: [u8; 0],
8852    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8853}
8854
8855impl ::std::fmt::Debug for GtkSignalAction {
8856    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8857        f.debug_struct(&format!("GtkSignalAction @ {self:p}"))
8858            .finish()
8859    }
8860}
8861
8862#[repr(C)]
8863#[allow(dead_code)]
8864pub struct GtkSignalListItemFactory {
8865    _data: [u8; 0],
8866    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8867}
8868
8869impl ::std::fmt::Debug for GtkSignalListItemFactory {
8870    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8871        f.debug_struct(&format!("GtkSignalListItemFactory @ {self:p}"))
8872            .finish()
8873    }
8874}
8875
8876#[repr(C)]
8877#[allow(dead_code)]
8878pub struct GtkSingleSelection {
8879    _data: [u8; 0],
8880    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8881}
8882
8883impl ::std::fmt::Debug for GtkSingleSelection {
8884    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8885        f.debug_struct(&format!("GtkSingleSelection @ {self:p}"))
8886            .finish()
8887    }
8888}
8889
8890#[derive(Copy, Clone)]
8891#[repr(C)]
8892pub struct GtkSizeGroup {
8893    pub parent_instance: gobject::GObject,
8894}
8895
8896impl ::std::fmt::Debug for GtkSizeGroup {
8897    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8898        f.debug_struct(&format!("GtkSizeGroup @ {self:p}"))
8899            .field("parent_instance", &self.parent_instance)
8900            .finish()
8901    }
8902}
8903
8904#[repr(C)]
8905#[allow(dead_code)]
8906pub struct GtkSliceListModel {
8907    _data: [u8; 0],
8908    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8909}
8910
8911impl ::std::fmt::Debug for GtkSliceListModel {
8912    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8913        f.debug_struct(&format!("GtkSliceListModel @ {self:p}"))
8914            .finish()
8915    }
8916}
8917
8918#[repr(C)]
8919#[allow(dead_code)]
8920pub struct GtkSnapshot {
8921    _data: [u8; 0],
8922    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8923}
8924
8925impl ::std::fmt::Debug for GtkSnapshot {
8926    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8927        f.debug_struct(&format!("GtkSnapshot @ {self:p}")).finish()
8928    }
8929}
8930
8931#[repr(C)]
8932#[allow(dead_code)]
8933pub struct GtkSortListModel {
8934    _data: [u8; 0],
8935    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8936}
8937
8938impl ::std::fmt::Debug for GtkSortListModel {
8939    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8940        f.debug_struct(&format!("GtkSortListModel @ {self:p}"))
8941            .finish()
8942    }
8943}
8944
8945#[derive(Copy, Clone)]
8946#[repr(C)]
8947pub struct GtkSorter {
8948    pub parent_instance: gobject::GObject,
8949}
8950
8951impl ::std::fmt::Debug for GtkSorter {
8952    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8953        f.debug_struct(&format!("GtkSorter @ {self:p}"))
8954            .field("parent_instance", &self.parent_instance)
8955            .finish()
8956    }
8957}
8958
8959#[repr(C)]
8960#[allow(dead_code)]
8961pub struct GtkSpinButton {
8962    _data: [u8; 0],
8963    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8964}
8965
8966impl ::std::fmt::Debug for GtkSpinButton {
8967    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8968        f.debug_struct(&format!("GtkSpinButton @ {self:p}"))
8969            .finish()
8970    }
8971}
8972
8973#[repr(C)]
8974#[allow(dead_code)]
8975pub struct GtkSpinner {
8976    _data: [u8; 0],
8977    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8978}
8979
8980impl ::std::fmt::Debug for GtkSpinner {
8981    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8982        f.debug_struct(&format!("GtkSpinner @ {self:p}")).finish()
8983    }
8984}
8985
8986#[repr(C)]
8987#[allow(dead_code)]
8988pub struct GtkStack {
8989    _data: [u8; 0],
8990    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8991}
8992
8993impl ::std::fmt::Debug for GtkStack {
8994    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8995        f.debug_struct(&format!("GtkStack @ {self:p}")).finish()
8996    }
8997}
8998
8999#[repr(C)]
9000#[allow(dead_code)]
9001pub struct GtkStackPage {
9002    _data: [u8; 0],
9003    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9004}
9005
9006impl ::std::fmt::Debug for GtkStackPage {
9007    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9008        f.debug_struct(&format!("GtkStackPage @ {self:p}")).finish()
9009    }
9010}
9011
9012#[repr(C)]
9013#[allow(dead_code)]
9014pub struct GtkStackSidebar {
9015    _data: [u8; 0],
9016    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9017}
9018
9019impl ::std::fmt::Debug for GtkStackSidebar {
9020    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9021        f.debug_struct(&format!("GtkStackSidebar @ {self:p}"))
9022            .finish()
9023    }
9024}
9025
9026#[repr(C)]
9027#[allow(dead_code)]
9028pub struct GtkStackSwitcher {
9029    _data: [u8; 0],
9030    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9031}
9032
9033impl ::std::fmt::Debug for GtkStackSwitcher {
9034    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9035        f.debug_struct(&format!("GtkStackSwitcher @ {self:p}"))
9036            .finish()
9037    }
9038}
9039
9040#[repr(C)]
9041#[allow(dead_code)]
9042pub struct GtkStatusbar {
9043    _data: [u8; 0],
9044    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9045}
9046
9047impl ::std::fmt::Debug for GtkStatusbar {
9048    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9049        f.debug_struct(&format!("GtkStatusbar @ {self:p}")).finish()
9050    }
9051}
9052
9053#[repr(C)]
9054#[allow(dead_code)]
9055pub struct GtkStringFilter {
9056    _data: [u8; 0],
9057    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9058}
9059
9060impl ::std::fmt::Debug for GtkStringFilter {
9061    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9062        f.debug_struct(&format!("GtkStringFilter @ {self:p}"))
9063            .finish()
9064    }
9065}
9066
9067#[repr(C)]
9068#[allow(dead_code)]
9069pub struct GtkStringList {
9070    _data: [u8; 0],
9071    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9072}
9073
9074impl ::std::fmt::Debug for GtkStringList {
9075    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9076        f.debug_struct(&format!("GtkStringList @ {self:p}"))
9077            .finish()
9078    }
9079}
9080
9081#[repr(C)]
9082#[allow(dead_code)]
9083pub struct GtkStringObject {
9084    _data: [u8; 0],
9085    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9086}
9087
9088impl ::std::fmt::Debug for GtkStringObject {
9089    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9090        f.debug_struct(&format!("GtkStringObject @ {self:p}"))
9091            .finish()
9092    }
9093}
9094
9095#[repr(C)]
9096#[allow(dead_code)]
9097pub struct GtkStringSorter {
9098    _data: [u8; 0],
9099    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9100}
9101
9102impl ::std::fmt::Debug for GtkStringSorter {
9103    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9104        f.debug_struct(&format!("GtkStringSorter @ {self:p}"))
9105            .finish()
9106    }
9107}
9108
9109#[derive(Copy, Clone)]
9110#[repr(C)]
9111pub struct GtkStyleContext {
9112    pub parent_object: gobject::GObject,
9113}
9114
9115impl ::std::fmt::Debug for GtkStyleContext {
9116    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9117        f.debug_struct(&format!("GtkStyleContext @ {self:p}"))
9118            .field("parent_object", &self.parent_object)
9119            .finish()
9120    }
9121}
9122
9123#[repr(C)]
9124#[allow(dead_code)]
9125pub struct GtkSwitch {
9126    _data: [u8; 0],
9127    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9128}
9129
9130impl ::std::fmt::Debug for GtkSwitch {
9131    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9132        f.debug_struct(&format!("GtkSwitch @ {self:p}")).finish()
9133    }
9134}
9135
9136#[derive(Copy, Clone)]
9137#[repr(C)]
9138pub struct GtkText {
9139    pub parent_instance: GtkWidget,
9140}
9141
9142impl ::std::fmt::Debug for GtkText {
9143    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9144        f.debug_struct(&format!("GtkText @ {self:p}")).finish()
9145    }
9146}
9147
9148#[derive(Copy, Clone)]
9149#[repr(C)]
9150pub struct GtkTextBuffer {
9151    pub parent_instance: gobject::GObject,
9152    pub priv_: *mut GtkTextBufferPrivate,
9153}
9154
9155impl ::std::fmt::Debug for GtkTextBuffer {
9156    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9157        f.debug_struct(&format!("GtkTextBuffer @ {self:p}"))
9158            .field("parent_instance", &self.parent_instance)
9159            .field("priv_", &self.priv_)
9160            .finish()
9161    }
9162}
9163
9164#[derive(Copy, Clone)]
9165#[repr(C)]
9166pub struct GtkTextChildAnchor {
9167    pub parent_instance: gobject::GObject,
9168    pub segment: gpointer,
9169}
9170
9171impl ::std::fmt::Debug for GtkTextChildAnchor {
9172    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9173        f.debug_struct(&format!("GtkTextChildAnchor @ {self:p}"))
9174            .field("parent_instance", &self.parent_instance)
9175            .finish()
9176    }
9177}
9178
9179#[derive(Copy, Clone)]
9180#[repr(C)]
9181pub struct GtkTextMark {
9182    pub parent_instance: gobject::GObject,
9183    pub segment: gpointer,
9184}
9185
9186impl ::std::fmt::Debug for GtkTextMark {
9187    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9188        f.debug_struct(&format!("GtkTextMark @ {self:p}"))
9189            .field("parent_instance", &self.parent_instance)
9190            .finish()
9191    }
9192}
9193
9194#[derive(Copy, Clone)]
9195#[repr(C)]
9196pub struct GtkTextTag {
9197    pub parent_instance: gobject::GObject,
9198    pub priv_: *mut GtkTextTagPrivate,
9199}
9200
9201impl ::std::fmt::Debug for GtkTextTag {
9202    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9203        f.debug_struct(&format!("GtkTextTag @ {self:p}"))
9204            .field("parent_instance", &self.parent_instance)
9205            .field("priv_", &self.priv_)
9206            .finish()
9207    }
9208}
9209
9210#[repr(C)]
9211#[allow(dead_code)]
9212pub struct GtkTextTagTable {
9213    _data: [u8; 0],
9214    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9215}
9216
9217impl ::std::fmt::Debug for GtkTextTagTable {
9218    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9219        f.debug_struct(&format!("GtkTextTagTable @ {self:p}"))
9220            .finish()
9221    }
9222}
9223
9224#[derive(Copy, Clone)]
9225#[repr(C)]
9226pub struct GtkTextView {
9227    pub parent_instance: GtkWidget,
9228    pub priv_: *mut GtkTextViewPrivate,
9229}
9230
9231impl ::std::fmt::Debug for GtkTextView {
9232    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9233        f.debug_struct(&format!("GtkTextView @ {self:p}"))
9234            .field("parent_instance", &self.parent_instance)
9235            .finish()
9236    }
9237}
9238
9239#[derive(Copy, Clone)]
9240#[repr(C)]
9241pub struct GtkToggleButton {
9242    pub button: GtkButton,
9243}
9244
9245impl ::std::fmt::Debug for GtkToggleButton {
9246    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9247        f.debug_struct(&format!("GtkToggleButton @ {self:p}"))
9248            .finish()
9249    }
9250}
9251
9252#[repr(C)]
9253#[allow(dead_code)]
9254pub struct GtkTooltip {
9255    _data: [u8; 0],
9256    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9257}
9258
9259impl ::std::fmt::Debug for GtkTooltip {
9260    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9261        f.debug_struct(&format!("GtkTooltip @ {self:p}")).finish()
9262    }
9263}
9264
9265#[repr(C)]
9266#[allow(dead_code)]
9267pub struct GtkTreeExpander {
9268    _data: [u8; 0],
9269    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9270}
9271
9272impl ::std::fmt::Debug for GtkTreeExpander {
9273    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9274        f.debug_struct(&format!("GtkTreeExpander @ {self:p}"))
9275            .finish()
9276    }
9277}
9278
9279#[repr(C)]
9280#[allow(dead_code)]
9281pub struct GtkTreeListModel {
9282    _data: [u8; 0],
9283    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9284}
9285
9286impl ::std::fmt::Debug for GtkTreeListModel {
9287    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9288        f.debug_struct(&format!("GtkTreeListModel @ {self:p}"))
9289            .finish()
9290    }
9291}
9292
9293#[repr(C)]
9294#[allow(dead_code)]
9295pub struct GtkTreeListRow {
9296    _data: [u8; 0],
9297    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9298}
9299
9300impl ::std::fmt::Debug for GtkTreeListRow {
9301    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9302        f.debug_struct(&format!("GtkTreeListRow @ {self:p}"))
9303            .finish()
9304    }
9305}
9306
9307#[repr(C)]
9308#[allow(dead_code)]
9309pub struct GtkTreeListRowSorter {
9310    _data: [u8; 0],
9311    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9312}
9313
9314impl ::std::fmt::Debug for GtkTreeListRowSorter {
9315    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9316        f.debug_struct(&format!("GtkTreeListRowSorter @ {self:p}"))
9317            .finish()
9318    }
9319}
9320
9321#[derive(Copy, Clone)]
9322#[repr(C)]
9323pub struct GtkTreeModelFilter {
9324    pub parent: gobject::GObject,
9325    pub priv_: *mut GtkTreeModelFilterPrivate,
9326}
9327
9328impl ::std::fmt::Debug for GtkTreeModelFilter {
9329    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9330        f.debug_struct(&format!("GtkTreeModelFilter @ {self:p}"))
9331            .field("parent", &self.parent)
9332            .finish()
9333    }
9334}
9335
9336#[derive(Copy, Clone)]
9337#[repr(C)]
9338pub struct GtkTreeModelSort {
9339    pub parent: gobject::GObject,
9340    pub priv_: *mut GtkTreeModelSortPrivate,
9341}
9342
9343impl ::std::fmt::Debug for GtkTreeModelSort {
9344    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9345        f.debug_struct(&format!("GtkTreeModelSort @ {self:p}"))
9346            .field("parent", &self.parent)
9347            .finish()
9348    }
9349}
9350
9351#[repr(C)]
9352#[allow(dead_code)]
9353pub struct GtkTreeSelection {
9354    _data: [u8; 0],
9355    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9356}
9357
9358impl ::std::fmt::Debug for GtkTreeSelection {
9359    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9360        f.debug_struct(&format!("GtkTreeSelection @ {self:p}"))
9361            .finish()
9362    }
9363}
9364
9365#[derive(Copy, Clone)]
9366#[repr(C)]
9367pub struct GtkTreeStore {
9368    pub parent: gobject::GObject,
9369    pub priv_: *mut GtkTreeStorePrivate,
9370}
9371
9372impl ::std::fmt::Debug for GtkTreeStore {
9373    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9374        f.debug_struct(&format!("GtkTreeStore @ {self:p}"))
9375            .field("parent", &self.parent)
9376            .field("priv_", &self.priv_)
9377            .finish()
9378    }
9379}
9380
9381#[derive(Copy, Clone)]
9382#[repr(C)]
9383pub struct GtkTreeView {
9384    pub parent_instance: GtkWidget,
9385}
9386
9387impl ::std::fmt::Debug for GtkTreeView {
9388    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9389        f.debug_struct(&format!("GtkTreeView @ {self:p}"))
9390            .field("parent_instance", &self.parent_instance)
9391            .finish()
9392    }
9393}
9394
9395#[repr(C)]
9396#[allow(dead_code)]
9397pub struct GtkTreeViewColumn {
9398    _data: [u8; 0],
9399    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9400}
9401
9402impl ::std::fmt::Debug for GtkTreeViewColumn {
9403    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9404        f.debug_struct(&format!("GtkTreeViewColumn @ {self:p}"))
9405            .finish()
9406    }
9407}
9408
9409#[repr(C)]
9410#[allow(dead_code)]
9411pub struct GtkUriLauncher {
9412    _data: [u8; 0],
9413    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9414}
9415
9416impl ::std::fmt::Debug for GtkUriLauncher {
9417    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9418        f.debug_struct(&format!("GtkUriLauncher @ {self:p}"))
9419            .finish()
9420    }
9421}
9422
9423#[repr(C)]
9424#[allow(dead_code)]
9425pub struct GtkVideo {
9426    _data: [u8; 0],
9427    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9428}
9429
9430impl ::std::fmt::Debug for GtkVideo {
9431    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9432        f.debug_struct(&format!("GtkVideo @ {self:p}")).finish()
9433    }
9434}
9435
9436#[repr(C)]
9437#[allow(dead_code)]
9438pub struct GtkViewport {
9439    _data: [u8; 0],
9440    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9441}
9442
9443impl ::std::fmt::Debug for GtkViewport {
9444    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9445        f.debug_struct(&format!("GtkViewport @ {self:p}")).finish()
9446    }
9447}
9448
9449#[derive(Copy, Clone)]
9450#[repr(C)]
9451pub struct GtkVolumeButton {
9452    pub parent: GtkScaleButton,
9453}
9454
9455impl ::std::fmt::Debug for GtkVolumeButton {
9456    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9457        f.debug_struct(&format!("GtkVolumeButton @ {self:p}"))
9458            .field("parent", &self.parent)
9459            .finish()
9460    }
9461}
9462
9463#[derive(Copy, Clone)]
9464#[repr(C)]
9465pub struct GtkWidget {
9466    pub parent_instance: gobject::GInitiallyUnowned,
9467    pub priv_: *mut GtkWidgetPrivate,
9468}
9469
9470impl ::std::fmt::Debug for GtkWidget {
9471    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9472        f.debug_struct(&format!("GtkWidget @ {self:p}"))
9473            .field("parent_instance", &self.parent_instance)
9474            .finish()
9475    }
9476}
9477
9478#[repr(C)]
9479#[allow(dead_code)]
9480pub struct GtkWidgetPaintable {
9481    _data: [u8; 0],
9482    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9483}
9484
9485impl ::std::fmt::Debug for GtkWidgetPaintable {
9486    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9487        f.debug_struct(&format!("GtkWidgetPaintable @ {self:p}"))
9488            .finish()
9489    }
9490}
9491
9492#[derive(Copy, Clone)]
9493#[repr(C)]
9494pub struct GtkWindow {
9495    pub parent_instance: GtkWidget,
9496}
9497
9498impl ::std::fmt::Debug for GtkWindow {
9499    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9500        f.debug_struct(&format!("GtkWindow @ {self:p}"))
9501            .field("parent_instance", &self.parent_instance)
9502            .finish()
9503    }
9504}
9505
9506#[repr(C)]
9507#[allow(dead_code)]
9508pub struct GtkWindowControls {
9509    _data: [u8; 0],
9510    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9511}
9512
9513impl ::std::fmt::Debug for GtkWindowControls {
9514    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9515        f.debug_struct(&format!("GtkWindowControls @ {self:p}"))
9516            .finish()
9517    }
9518}
9519
9520#[derive(Copy, Clone)]
9521#[repr(C)]
9522pub struct GtkWindowGroup {
9523    pub parent_instance: gobject::GObject,
9524    pub priv_: *mut GtkWindowGroupPrivate,
9525}
9526
9527impl ::std::fmt::Debug for GtkWindowGroup {
9528    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9529        f.debug_struct(&format!("GtkWindowGroup @ {self:p}"))
9530            .field("parent_instance", &self.parent_instance)
9531            .field("priv_", &self.priv_)
9532            .finish()
9533    }
9534}
9535
9536#[repr(C)]
9537#[allow(dead_code)]
9538pub struct GtkWindowHandle {
9539    _data: [u8; 0],
9540    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9541}
9542
9543impl ::std::fmt::Debug for GtkWindowHandle {
9544    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9545        f.debug_struct(&format!("GtkWindowHandle @ {self:p}"))
9546            .finish()
9547    }
9548}
9549
9550// Interfaces
9551#[repr(C)]
9552#[allow(dead_code)]
9553pub struct GtkAccessible {
9554    _data: [u8; 0],
9555    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9556}
9557
9558impl ::std::fmt::Debug for GtkAccessible {
9559    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9560        write!(f, "GtkAccessible @ {self:p}")
9561    }
9562}
9563
9564#[repr(C)]
9565#[allow(dead_code)]
9566pub struct GtkAccessibleRange {
9567    _data: [u8; 0],
9568    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9569}
9570
9571impl ::std::fmt::Debug for GtkAccessibleRange {
9572    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9573        write!(f, "GtkAccessibleRange @ {self:p}")
9574    }
9575}
9576
9577#[repr(C)]
9578#[allow(dead_code)]
9579pub struct GtkAccessibleText {
9580    _data: [u8; 0],
9581    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9582}
9583
9584impl ::std::fmt::Debug for GtkAccessibleText {
9585    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9586        write!(f, "GtkAccessibleText @ {self:p}")
9587    }
9588}
9589
9590#[repr(C)]
9591#[allow(dead_code)]
9592pub struct GtkActionable {
9593    _data: [u8; 0],
9594    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9595}
9596
9597impl ::std::fmt::Debug for GtkActionable {
9598    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9599        write!(f, "GtkActionable @ {self:p}")
9600    }
9601}
9602
9603#[repr(C)]
9604#[allow(dead_code)]
9605pub struct GtkAppChooser {
9606    _data: [u8; 0],
9607    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9608}
9609
9610impl ::std::fmt::Debug for GtkAppChooser {
9611    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9612        write!(f, "GtkAppChooser @ {self:p}")
9613    }
9614}
9615
9616#[repr(C)]
9617#[allow(dead_code)]
9618pub struct GtkBuildable {
9619    _data: [u8; 0],
9620    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9621}
9622
9623impl ::std::fmt::Debug for GtkBuildable {
9624    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9625        write!(f, "GtkBuildable @ {self:p}")
9626    }
9627}
9628
9629#[repr(C)]
9630#[allow(dead_code)]
9631pub struct GtkBuilderScope {
9632    _data: [u8; 0],
9633    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9634}
9635
9636impl ::std::fmt::Debug for GtkBuilderScope {
9637    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9638        write!(f, "GtkBuilderScope @ {self:p}")
9639    }
9640}
9641
9642#[repr(C)]
9643#[allow(dead_code)]
9644pub struct GtkCellEditable {
9645    _data: [u8; 0],
9646    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9647}
9648
9649impl ::std::fmt::Debug for GtkCellEditable {
9650    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9651        write!(f, "GtkCellEditable @ {self:p}")
9652    }
9653}
9654
9655#[repr(C)]
9656#[allow(dead_code)]
9657pub struct GtkCellLayout {
9658    _data: [u8; 0],
9659    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9660}
9661
9662impl ::std::fmt::Debug for GtkCellLayout {
9663    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9664        write!(f, "GtkCellLayout @ {self:p}")
9665    }
9666}
9667
9668#[repr(C)]
9669#[allow(dead_code)]
9670pub struct GtkColorChooser {
9671    _data: [u8; 0],
9672    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9673}
9674
9675impl ::std::fmt::Debug for GtkColorChooser {
9676    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9677        write!(f, "GtkColorChooser @ {self:p}")
9678    }
9679}
9680
9681#[repr(C)]
9682#[allow(dead_code)]
9683pub struct GtkConstraintTarget {
9684    _data: [u8; 0],
9685    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9686}
9687
9688impl ::std::fmt::Debug for GtkConstraintTarget {
9689    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9690        write!(f, "GtkConstraintTarget @ {self:p}")
9691    }
9692}
9693
9694#[repr(C)]
9695#[allow(dead_code)]
9696pub struct GtkEditable {
9697    _data: [u8; 0],
9698    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9699}
9700
9701impl ::std::fmt::Debug for GtkEditable {
9702    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9703        write!(f, "GtkEditable @ {self:p}")
9704    }
9705}
9706
9707#[repr(C)]
9708#[allow(dead_code)]
9709pub struct GtkFileChooser {
9710    _data: [u8; 0],
9711    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9712}
9713
9714impl ::std::fmt::Debug for GtkFileChooser {
9715    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9716        write!(f, "GtkFileChooser @ {self:p}")
9717    }
9718}
9719
9720#[repr(C)]
9721#[allow(dead_code)]
9722pub struct GtkFontChooser {
9723    _data: [u8; 0],
9724    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9725}
9726
9727impl ::std::fmt::Debug for GtkFontChooser {
9728    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9729        write!(f, "GtkFontChooser @ {self:p}")
9730    }
9731}
9732
9733#[repr(C)]
9734#[allow(dead_code)]
9735pub struct GtkNative {
9736    _data: [u8; 0],
9737    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9738}
9739
9740impl ::std::fmt::Debug for GtkNative {
9741    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9742        write!(f, "GtkNative @ {self:p}")
9743    }
9744}
9745
9746#[repr(C)]
9747#[allow(dead_code)]
9748pub struct GtkOrientable {
9749    _data: [u8; 0],
9750    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9751}
9752
9753impl ::std::fmt::Debug for GtkOrientable {
9754    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9755        write!(f, "GtkOrientable @ {self:p}")
9756    }
9757}
9758
9759#[repr(C)]
9760#[allow(dead_code)]
9761pub struct GtkPrintOperationPreview {
9762    _data: [u8; 0],
9763    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9764}
9765
9766impl ::std::fmt::Debug for GtkPrintOperationPreview {
9767    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9768        write!(f, "GtkPrintOperationPreview @ {self:p}")
9769    }
9770}
9771
9772#[repr(C)]
9773#[allow(dead_code)]
9774pub struct GtkRoot {
9775    _data: [u8; 0],
9776    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9777}
9778
9779impl ::std::fmt::Debug for GtkRoot {
9780    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9781        write!(f, "GtkRoot @ {self:p}")
9782    }
9783}
9784
9785#[repr(C)]
9786#[allow(dead_code)]
9787pub struct GtkScrollable {
9788    _data: [u8; 0],
9789    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9790}
9791
9792impl ::std::fmt::Debug for GtkScrollable {
9793    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9794        write!(f, "GtkScrollable @ {self:p}")
9795    }
9796}
9797
9798#[repr(C)]
9799#[allow(dead_code)]
9800pub struct GtkSectionModel {
9801    _data: [u8; 0],
9802    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9803}
9804
9805impl ::std::fmt::Debug for GtkSectionModel {
9806    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9807        write!(f, "GtkSectionModel @ {self:p}")
9808    }
9809}
9810
9811#[repr(C)]
9812#[allow(dead_code)]
9813pub struct GtkSelectionModel {
9814    _data: [u8; 0],
9815    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9816}
9817
9818impl ::std::fmt::Debug for GtkSelectionModel {
9819    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9820        write!(f, "GtkSelectionModel @ {self:p}")
9821    }
9822}
9823
9824#[repr(C)]
9825#[allow(dead_code)]
9826pub struct GtkShortcutManager {
9827    _data: [u8; 0],
9828    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9829}
9830
9831impl ::std::fmt::Debug for GtkShortcutManager {
9832    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9833        write!(f, "GtkShortcutManager @ {self:p}")
9834    }
9835}
9836
9837#[repr(C)]
9838#[allow(dead_code)]
9839pub struct GtkStyleProvider {
9840    _data: [u8; 0],
9841    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9842}
9843
9844impl ::std::fmt::Debug for GtkStyleProvider {
9845    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9846        write!(f, "GtkStyleProvider @ {self:p}")
9847    }
9848}
9849
9850#[repr(C)]
9851#[allow(dead_code)]
9852pub struct GtkSymbolicPaintable {
9853    _data: [u8; 0],
9854    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9855}
9856
9857impl ::std::fmt::Debug for GtkSymbolicPaintable {
9858    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9859        write!(f, "GtkSymbolicPaintable @ {self:p}")
9860    }
9861}
9862
9863#[repr(C)]
9864#[allow(dead_code)]
9865pub struct GtkTreeDragDest {
9866    _data: [u8; 0],
9867    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9868}
9869
9870impl ::std::fmt::Debug for GtkTreeDragDest {
9871    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9872        write!(f, "GtkTreeDragDest @ {self:p}")
9873    }
9874}
9875
9876#[repr(C)]
9877#[allow(dead_code)]
9878pub struct GtkTreeDragSource {
9879    _data: [u8; 0],
9880    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9881}
9882
9883impl ::std::fmt::Debug for GtkTreeDragSource {
9884    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9885        write!(f, "GtkTreeDragSource @ {self:p}")
9886    }
9887}
9888
9889#[repr(C)]
9890#[allow(dead_code)]
9891pub struct GtkTreeModel {
9892    _data: [u8; 0],
9893    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9894}
9895
9896impl ::std::fmt::Debug for GtkTreeModel {
9897    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9898        write!(f, "GtkTreeModel @ {self:p}")
9899    }
9900}
9901
9902#[repr(C)]
9903#[allow(dead_code)]
9904pub struct GtkTreeSortable {
9905    _data: [u8; 0],
9906    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9907}
9908
9909impl ::std::fmt::Debug for GtkTreeSortable {
9910    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9911        write!(f, "GtkTreeSortable @ {self:p}")
9912    }
9913}
9914
9915extern "C" {
9916
9917    //=========================================================================
9918    // GtkAccessibleAnnouncementPriority
9919    //=========================================================================
9920    #[cfg(feature = "v4_14")]
9921    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
9922    pub fn gtk_accessible_announcement_priority_get_type() -> GType;
9923
9924    //=========================================================================
9925    // GtkAccessibleAutocomplete
9926    //=========================================================================
9927    pub fn gtk_accessible_autocomplete_get_type() -> GType;
9928
9929    //=========================================================================
9930    // GtkAccessibleInvalidState
9931    //=========================================================================
9932    pub fn gtk_accessible_invalid_state_get_type() -> GType;
9933
9934    //=========================================================================
9935    // GtkAccessiblePlatformState
9936    //=========================================================================
9937    #[cfg(feature = "v4_10")]
9938    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
9939    pub fn gtk_accessible_platform_state_get_type() -> GType;
9940
9941    //=========================================================================
9942    // GtkAccessibleProperty
9943    //=========================================================================
9944    pub fn gtk_accessible_property_get_type() -> GType;
9945    pub fn gtk_accessible_property_init_value(
9946        property: GtkAccessibleProperty,
9947        value: *mut gobject::GValue,
9948    );
9949
9950    //=========================================================================
9951    // GtkAccessibleRelation
9952    //=========================================================================
9953    pub fn gtk_accessible_relation_get_type() -> GType;
9954    pub fn gtk_accessible_relation_init_value(
9955        relation: GtkAccessibleRelation,
9956        value: *mut gobject::GValue,
9957    );
9958
9959    //=========================================================================
9960    // GtkAccessibleRole
9961    //=========================================================================
9962    pub fn gtk_accessible_role_get_type() -> GType;
9963
9964    //=========================================================================
9965    // GtkAccessibleSort
9966    //=========================================================================
9967    pub fn gtk_accessible_sort_get_type() -> GType;
9968
9969    //=========================================================================
9970    // GtkAccessibleState
9971    //=========================================================================
9972    pub fn gtk_accessible_state_get_type() -> GType;
9973    pub fn gtk_accessible_state_init_value(state: GtkAccessibleState, value: *mut gobject::GValue);
9974
9975    //=========================================================================
9976    // GtkAccessibleTextContentChange
9977    //=========================================================================
9978    #[cfg(feature = "v4_14")]
9979    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
9980    pub fn gtk_accessible_text_content_change_get_type() -> GType;
9981
9982    //=========================================================================
9983    // GtkAccessibleTextGranularity
9984    //=========================================================================
9985    #[cfg(feature = "v4_14")]
9986    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
9987    pub fn gtk_accessible_text_granularity_get_type() -> GType;
9988
9989    //=========================================================================
9990    // GtkAccessibleTristate
9991    //=========================================================================
9992    pub fn gtk_accessible_tristate_get_type() -> GType;
9993
9994    //=========================================================================
9995    // GtkAlign
9996    //=========================================================================
9997    pub fn gtk_align_get_type() -> GType;
9998
9999    //=========================================================================
10000    // GtkArrowType
10001    //=========================================================================
10002    pub fn gtk_arrow_type_get_type() -> GType;
10003
10004    //=========================================================================
10005    // GtkAssistantPageType
10006    //=========================================================================
10007    pub fn gtk_assistant_page_type_get_type() -> GType;
10008
10009    //=========================================================================
10010    // GtkBaselinePosition
10011    //=========================================================================
10012    pub fn gtk_baseline_position_get_type() -> GType;
10013
10014    //=========================================================================
10015    // GtkBorderStyle
10016    //=========================================================================
10017    pub fn gtk_border_style_get_type() -> GType;
10018
10019    //=========================================================================
10020    // GtkBuilderError
10021    //=========================================================================
10022    pub fn gtk_builder_error_get_type() -> GType;
10023    pub fn gtk_builder_error_quark() -> glib::GQuark;
10024
10025    //=========================================================================
10026    // GtkButtonsType
10027    //=========================================================================
10028    pub fn gtk_buttons_type_get_type() -> GType;
10029
10030    //=========================================================================
10031    // GtkCellRendererAccelMode
10032    //=========================================================================
10033    pub fn gtk_cell_renderer_accel_mode_get_type() -> GType;
10034
10035    //=========================================================================
10036    // GtkCellRendererMode
10037    //=========================================================================
10038    pub fn gtk_cell_renderer_mode_get_type() -> GType;
10039
10040    //=========================================================================
10041    // GtkCollation
10042    //=========================================================================
10043    #[cfg(feature = "v4_10")]
10044    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10045    pub fn gtk_collation_get_type() -> GType;
10046
10047    //=========================================================================
10048    // GtkConstraintAttribute
10049    //=========================================================================
10050    pub fn gtk_constraint_attribute_get_type() -> GType;
10051
10052    //=========================================================================
10053    // GtkConstraintRelation
10054    //=========================================================================
10055    pub fn gtk_constraint_relation_get_type() -> GType;
10056
10057    //=========================================================================
10058    // GtkConstraintStrength
10059    //=========================================================================
10060    pub fn gtk_constraint_strength_get_type() -> GType;
10061
10062    //=========================================================================
10063    // GtkConstraintVflParserError
10064    //=========================================================================
10065    pub fn gtk_constraint_vfl_parser_error_get_type() -> GType;
10066    pub fn gtk_constraint_vfl_parser_error_quark() -> glib::GQuark;
10067
10068    //=========================================================================
10069    // GtkContentFit
10070    //=========================================================================
10071    #[cfg(feature = "v4_8")]
10072    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
10073    pub fn gtk_content_fit_get_type() -> GType;
10074
10075    //=========================================================================
10076    // GtkCornerType
10077    //=========================================================================
10078    pub fn gtk_corner_type_get_type() -> GType;
10079
10080    //=========================================================================
10081    // GtkDeleteType
10082    //=========================================================================
10083    pub fn gtk_delete_type_get_type() -> GType;
10084
10085    //=========================================================================
10086    // GtkDialogError
10087    //=========================================================================
10088    #[cfg(feature = "v4_10")]
10089    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10090    pub fn gtk_dialog_error_get_type() -> GType;
10091    #[cfg(feature = "v4_10")]
10092    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10093    pub fn gtk_dialog_error_quark() -> glib::GQuark;
10094
10095    //=========================================================================
10096    // GtkDirectionType
10097    //=========================================================================
10098    pub fn gtk_direction_type_get_type() -> GType;
10099
10100    //=========================================================================
10101    // GtkEditableProperties
10102    //=========================================================================
10103    pub fn gtk_editable_properties_get_type() -> GType;
10104
10105    //=========================================================================
10106    // GtkEntryIconPosition
10107    //=========================================================================
10108    pub fn gtk_entry_icon_position_get_type() -> GType;
10109
10110    //=========================================================================
10111    // GtkEventSequenceState
10112    //=========================================================================
10113    pub fn gtk_event_sequence_state_get_type() -> GType;
10114
10115    //=========================================================================
10116    // GtkFileChooserAction
10117    //=========================================================================
10118    pub fn gtk_file_chooser_action_get_type() -> GType;
10119
10120    //=========================================================================
10121    // GtkFileChooserError
10122    //=========================================================================
10123    pub fn gtk_file_chooser_error_get_type() -> GType;
10124    pub fn gtk_file_chooser_error_quark() -> glib::GQuark;
10125
10126    //=========================================================================
10127    // GtkFilterChange
10128    //=========================================================================
10129    pub fn gtk_filter_change_get_type() -> GType;
10130
10131    //=========================================================================
10132    // GtkFilterMatch
10133    //=========================================================================
10134    pub fn gtk_filter_match_get_type() -> GType;
10135
10136    //=========================================================================
10137    // GtkFontLevel
10138    //=========================================================================
10139    #[cfg(feature = "v4_10")]
10140    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10141    pub fn gtk_font_level_get_type() -> GType;
10142
10143    //=========================================================================
10144    // GtkFontRendering
10145    //=========================================================================
10146    #[cfg(feature = "v4_16")]
10147    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10148    pub fn gtk_font_rendering_get_type() -> GType;
10149
10150    //=========================================================================
10151    // GtkGraphicsOffloadEnabled
10152    //=========================================================================
10153    #[cfg(feature = "v4_14")]
10154    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10155    pub fn gtk_graphics_offload_enabled_get_type() -> GType;
10156
10157    //=========================================================================
10158    // GtkIconSize
10159    //=========================================================================
10160    pub fn gtk_icon_size_get_type() -> GType;
10161
10162    //=========================================================================
10163    // GtkIconThemeError
10164    //=========================================================================
10165    pub fn gtk_icon_theme_error_get_type() -> GType;
10166    pub fn gtk_icon_theme_error_quark() -> glib::GQuark;
10167
10168    //=========================================================================
10169    // GtkIconViewDropPosition
10170    //=========================================================================
10171    pub fn gtk_icon_view_drop_position_get_type() -> GType;
10172
10173    //=========================================================================
10174    // GtkImageType
10175    //=========================================================================
10176    pub fn gtk_image_type_get_type() -> GType;
10177
10178    //=========================================================================
10179    // GtkInputPurpose
10180    //=========================================================================
10181    pub fn gtk_input_purpose_get_type() -> GType;
10182
10183    //=========================================================================
10184    // GtkInscriptionOverflow
10185    //=========================================================================
10186    #[cfg(feature = "v4_8")]
10187    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
10188    pub fn gtk_inscription_overflow_get_type() -> GType;
10189
10190    //=========================================================================
10191    // GtkInterfaceColorScheme
10192    //=========================================================================
10193    #[cfg(feature = "v4_20")]
10194    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10195    pub fn gtk_interface_color_scheme_get_type() -> GType;
10196
10197    //=========================================================================
10198    // GtkInterfaceContrast
10199    //=========================================================================
10200    #[cfg(feature = "v4_20")]
10201    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10202    pub fn gtk_interface_contrast_get_type() -> GType;
10203
10204    //=========================================================================
10205    // GtkJustification
10206    //=========================================================================
10207    pub fn gtk_justification_get_type() -> GType;
10208
10209    //=========================================================================
10210    // GtkLevelBarMode
10211    //=========================================================================
10212    pub fn gtk_level_bar_mode_get_type() -> GType;
10213
10214    //=========================================================================
10215    // GtkLicense
10216    //=========================================================================
10217    pub fn gtk_license_get_type() -> GType;
10218
10219    //=========================================================================
10220    // GtkListTabBehavior
10221    //=========================================================================
10222    #[cfg(feature = "v4_12")]
10223    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10224    pub fn gtk_list_tab_behavior_get_type() -> GType;
10225
10226    //=========================================================================
10227    // GtkMessageType
10228    //=========================================================================
10229    pub fn gtk_message_type_get_type() -> GType;
10230
10231    //=========================================================================
10232    // GtkMovementStep
10233    //=========================================================================
10234    pub fn gtk_movement_step_get_type() -> GType;
10235
10236    //=========================================================================
10237    // GtkNaturalWrapMode
10238    //=========================================================================
10239    #[cfg(feature = "v4_6")]
10240    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
10241    pub fn gtk_natural_wrap_mode_get_type() -> GType;
10242
10243    //=========================================================================
10244    // GtkNotebookTab
10245    //=========================================================================
10246    pub fn gtk_notebook_tab_get_type() -> GType;
10247
10248    //=========================================================================
10249    // GtkNumberUpLayout
10250    //=========================================================================
10251    pub fn gtk_number_up_layout_get_type() -> GType;
10252
10253    //=========================================================================
10254    // GtkOrdering
10255    //=========================================================================
10256    pub fn gtk_ordering_get_type() -> GType;
10257    #[cfg(feature = "v4_2")]
10258    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
10259    pub fn gtk_ordering_from_cmpfunc(cmpfunc_result: c_int) -> GtkOrdering;
10260
10261    //=========================================================================
10262    // GtkOrientation
10263    //=========================================================================
10264    pub fn gtk_orientation_get_type() -> GType;
10265
10266    //=========================================================================
10267    // GtkOverflow
10268    //=========================================================================
10269    pub fn gtk_overflow_get_type() -> GType;
10270
10271    //=========================================================================
10272    // GtkPackType
10273    //=========================================================================
10274    pub fn gtk_pack_type_get_type() -> GType;
10275
10276    //=========================================================================
10277    // GtkPadActionType
10278    //=========================================================================
10279    pub fn gtk_pad_action_type_get_type() -> GType;
10280
10281    //=========================================================================
10282    // GtkPageOrientation
10283    //=========================================================================
10284    pub fn gtk_page_orientation_get_type() -> GType;
10285
10286    //=========================================================================
10287    // GtkPageSet
10288    //=========================================================================
10289    pub fn gtk_page_set_get_type() -> GType;
10290
10291    //=========================================================================
10292    // GtkPanDirection
10293    //=========================================================================
10294    pub fn gtk_pan_direction_get_type() -> GType;
10295
10296    //=========================================================================
10297    // GtkPolicyType
10298    //=========================================================================
10299    pub fn gtk_policy_type_get_type() -> GType;
10300
10301    //=========================================================================
10302    // GtkPositionType
10303    //=========================================================================
10304    pub fn gtk_position_type_get_type() -> GType;
10305
10306    //=========================================================================
10307    // GtkPrintDuplex
10308    //=========================================================================
10309    pub fn gtk_print_duplex_get_type() -> GType;
10310
10311    //=========================================================================
10312    // GtkPrintError
10313    //=========================================================================
10314    pub fn gtk_print_error_get_type() -> GType;
10315    pub fn gtk_print_error_quark() -> glib::GQuark;
10316
10317    //=========================================================================
10318    // GtkPrintOperationAction
10319    //=========================================================================
10320    pub fn gtk_print_operation_action_get_type() -> GType;
10321
10322    //=========================================================================
10323    // GtkPrintOperationResult
10324    //=========================================================================
10325    pub fn gtk_print_operation_result_get_type() -> GType;
10326
10327    //=========================================================================
10328    // GtkPrintPages
10329    //=========================================================================
10330    pub fn gtk_print_pages_get_type() -> GType;
10331
10332    //=========================================================================
10333    // GtkPrintQuality
10334    //=========================================================================
10335    pub fn gtk_print_quality_get_type() -> GType;
10336
10337    //=========================================================================
10338    // GtkPrintStatus
10339    //=========================================================================
10340    pub fn gtk_print_status_get_type() -> GType;
10341
10342    //=========================================================================
10343    // GtkPropagationLimit
10344    //=========================================================================
10345    pub fn gtk_propagation_limit_get_type() -> GType;
10346
10347    //=========================================================================
10348    // GtkPropagationPhase
10349    //=========================================================================
10350    pub fn gtk_propagation_phase_get_type() -> GType;
10351
10352    //=========================================================================
10353    // GtkRecentManagerError
10354    //=========================================================================
10355    pub fn gtk_recent_manager_error_get_type() -> GType;
10356    pub fn gtk_recent_manager_error_quark() -> glib::GQuark;
10357
10358    //=========================================================================
10359    // GtkResponseType
10360    //=========================================================================
10361    pub fn gtk_response_type_get_type() -> GType;
10362
10363    //=========================================================================
10364    // GtkRevealerTransitionType
10365    //=========================================================================
10366    pub fn gtk_revealer_transition_type_get_type() -> GType;
10367
10368    //=========================================================================
10369    // GtkScrollStep
10370    //=========================================================================
10371    pub fn gtk_scroll_step_get_type() -> GType;
10372
10373    //=========================================================================
10374    // GtkScrollType
10375    //=========================================================================
10376    pub fn gtk_scroll_type_get_type() -> GType;
10377
10378    //=========================================================================
10379    // GtkScrollablePolicy
10380    //=========================================================================
10381    pub fn gtk_scrollable_policy_get_type() -> GType;
10382
10383    //=========================================================================
10384    // GtkSelectionMode
10385    //=========================================================================
10386    pub fn gtk_selection_mode_get_type() -> GType;
10387
10388    //=========================================================================
10389    // GtkSensitivityType
10390    //=========================================================================
10391    pub fn gtk_sensitivity_type_get_type() -> GType;
10392
10393    //=========================================================================
10394    // GtkShortcutScope
10395    //=========================================================================
10396    pub fn gtk_shortcut_scope_get_type() -> GType;
10397
10398    //=========================================================================
10399    // GtkShortcutType
10400    //=========================================================================
10401    pub fn gtk_shortcut_type_get_type() -> GType;
10402
10403    //=========================================================================
10404    // GtkSizeGroupMode
10405    //=========================================================================
10406    pub fn gtk_size_group_mode_get_type() -> GType;
10407
10408    //=========================================================================
10409    // GtkSizeRequestMode
10410    //=========================================================================
10411    pub fn gtk_size_request_mode_get_type() -> GType;
10412
10413    //=========================================================================
10414    // GtkSortType
10415    //=========================================================================
10416    pub fn gtk_sort_type_get_type() -> GType;
10417
10418    //=========================================================================
10419    // GtkSorterChange
10420    //=========================================================================
10421    pub fn gtk_sorter_change_get_type() -> GType;
10422
10423    //=========================================================================
10424    // GtkSorterOrder
10425    //=========================================================================
10426    pub fn gtk_sorter_order_get_type() -> GType;
10427
10428    //=========================================================================
10429    // GtkSpinButtonUpdatePolicy
10430    //=========================================================================
10431    pub fn gtk_spin_button_update_policy_get_type() -> GType;
10432
10433    //=========================================================================
10434    // GtkSpinType
10435    //=========================================================================
10436    pub fn gtk_spin_type_get_type() -> GType;
10437
10438    //=========================================================================
10439    // GtkStackTransitionType
10440    //=========================================================================
10441    pub fn gtk_stack_transition_type_get_type() -> GType;
10442
10443    //=========================================================================
10444    // GtkStringFilterMatchMode
10445    //=========================================================================
10446    pub fn gtk_string_filter_match_mode_get_type() -> GType;
10447
10448    //=========================================================================
10449    // GtkSymbolicColor
10450    //=========================================================================
10451    #[cfg(feature = "v4_6")]
10452    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
10453    pub fn gtk_symbolic_color_get_type() -> GType;
10454
10455    //=========================================================================
10456    // GtkSystemSetting
10457    //=========================================================================
10458    pub fn gtk_system_setting_get_type() -> GType;
10459
10460    //=========================================================================
10461    // GtkTextDirection
10462    //=========================================================================
10463    pub fn gtk_text_direction_get_type() -> GType;
10464
10465    //=========================================================================
10466    // GtkTextExtendSelection
10467    //=========================================================================
10468    pub fn gtk_text_extend_selection_get_type() -> GType;
10469
10470    //=========================================================================
10471    // GtkTextViewLayer
10472    //=========================================================================
10473    pub fn gtk_text_view_layer_get_type() -> GType;
10474
10475    //=========================================================================
10476    // GtkTextWindowType
10477    //=========================================================================
10478    pub fn gtk_text_window_type_get_type() -> GType;
10479
10480    //=========================================================================
10481    // GtkTreeViewColumnSizing
10482    //=========================================================================
10483    pub fn gtk_tree_view_column_sizing_get_type() -> GType;
10484
10485    //=========================================================================
10486    // GtkTreeViewDropPosition
10487    //=========================================================================
10488    pub fn gtk_tree_view_drop_position_get_type() -> GType;
10489
10490    //=========================================================================
10491    // GtkTreeViewGridLines
10492    //=========================================================================
10493    pub fn gtk_tree_view_grid_lines_get_type() -> GType;
10494
10495    //=========================================================================
10496    // GtkUnit
10497    //=========================================================================
10498    pub fn gtk_unit_get_type() -> GType;
10499
10500    //=========================================================================
10501    // GtkWindowGravity
10502    //=========================================================================
10503    #[cfg(feature = "v4_20")]
10504    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10505    pub fn gtk_window_gravity_get_type() -> GType;
10506
10507    //=========================================================================
10508    // GtkWrapMode
10509    //=========================================================================
10510    pub fn gtk_wrap_mode_get_type() -> GType;
10511
10512    //=========================================================================
10513    // GtkApplicationInhibitFlags
10514    //=========================================================================
10515    pub fn gtk_application_inhibit_flags_get_type() -> GType;
10516
10517    //=========================================================================
10518    // GtkBuilderClosureFlags
10519    //=========================================================================
10520    pub fn gtk_builder_closure_flags_get_type() -> GType;
10521
10522    //=========================================================================
10523    // GtkCellRendererState
10524    //=========================================================================
10525    pub fn gtk_cell_renderer_state_get_type() -> GType;
10526
10527    //=========================================================================
10528    // GtkDebugFlags
10529    //=========================================================================
10530    pub fn gtk_debug_flags_get_type() -> GType;
10531
10532    //=========================================================================
10533    // GtkDialogFlags
10534    //=========================================================================
10535    pub fn gtk_dialog_flags_get_type() -> GType;
10536
10537    //=========================================================================
10538    // GtkEventControllerScrollFlags
10539    //=========================================================================
10540    pub fn gtk_event_controller_scroll_flags_get_type() -> GType;
10541
10542    //=========================================================================
10543    // GtkFontChooserLevel
10544    //=========================================================================
10545    pub fn gtk_font_chooser_level_get_type() -> GType;
10546
10547    //=========================================================================
10548    // GtkIconLookupFlags
10549    //=========================================================================
10550    pub fn gtk_icon_lookup_flags_get_type() -> GType;
10551
10552    //=========================================================================
10553    // GtkInputHints
10554    //=========================================================================
10555    pub fn gtk_input_hints_get_type() -> GType;
10556
10557    //=========================================================================
10558    // GtkListScrollFlags
10559    //=========================================================================
10560    #[cfg(feature = "v4_12")]
10561    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10562    pub fn gtk_list_scroll_flags_get_type() -> GType;
10563
10564    //=========================================================================
10565    // GtkPickFlags
10566    //=========================================================================
10567    pub fn gtk_pick_flags_get_type() -> GType;
10568
10569    //=========================================================================
10570    // GtkPopoverMenuFlags
10571    //=========================================================================
10572    pub fn gtk_popover_menu_flags_get_type() -> GType;
10573
10574    //=========================================================================
10575    // GtkPrintCapabilities
10576    //=========================================================================
10577    pub fn gtk_print_capabilities_get_type() -> GType;
10578
10579    //=========================================================================
10580    // GtkShortcutActionFlags
10581    //=========================================================================
10582    pub fn gtk_shortcut_action_flags_get_type() -> GType;
10583
10584    //=========================================================================
10585    // GtkStateFlags
10586    //=========================================================================
10587    pub fn gtk_state_flags_get_type() -> GType;
10588
10589    //=========================================================================
10590    // GtkStyleContextPrintFlags
10591    //=========================================================================
10592    pub fn gtk_style_context_print_flags_get_type() -> GType;
10593
10594    //=========================================================================
10595    // GtkTextBufferNotifyFlags
10596    //=========================================================================
10597    #[cfg(feature = "v4_16")]
10598    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10599    pub fn gtk_text_buffer_notify_flags_get_type() -> GType;
10600
10601    //=========================================================================
10602    // GtkTextSearchFlags
10603    //=========================================================================
10604    pub fn gtk_text_search_flags_get_type() -> GType;
10605
10606    //=========================================================================
10607    // GtkTreeModelFlags
10608    //=========================================================================
10609    pub fn gtk_tree_model_flags_get_type() -> GType;
10610
10611    //=========================================================================
10612    // GtkAccessibleList
10613    //=========================================================================
10614    #[cfg(feature = "v4_14")]
10615    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10616    pub fn gtk_accessible_list_get_type() -> GType;
10617    #[cfg(feature = "v4_14")]
10618    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10619    pub fn gtk_accessible_list_new_from_array(
10620        accessibles: *mut *mut GtkAccessible,
10621        n_accessibles: size_t,
10622    ) -> *mut GtkAccessibleList;
10623    #[cfg(feature = "v4_14")]
10624    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10625    pub fn gtk_accessible_list_new_from_list(list: *mut glib::GList) -> *mut GtkAccessibleList;
10626    #[cfg(feature = "v4_14")]
10627    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10628    pub fn gtk_accessible_list_get_objects(
10629        accessible_list: *mut GtkAccessibleList,
10630    ) -> *mut glib::GList;
10631
10632    //=========================================================================
10633    // GtkBitset
10634    //=========================================================================
10635    pub fn gtk_bitset_get_type() -> GType;
10636    pub fn gtk_bitset_new_empty() -> *mut GtkBitset;
10637    pub fn gtk_bitset_new_range(start: c_uint, n_items: c_uint) -> *mut GtkBitset;
10638    pub fn gtk_bitset_add(self_: *mut GtkBitset, value: c_uint) -> gboolean;
10639    pub fn gtk_bitset_add_range(self_: *mut GtkBitset, start: c_uint, n_items: c_uint);
10640    pub fn gtk_bitset_add_range_closed(self_: *mut GtkBitset, first: c_uint, last: c_uint);
10641    pub fn gtk_bitset_add_rectangle(
10642        self_: *mut GtkBitset,
10643        start: c_uint,
10644        width: c_uint,
10645        height: c_uint,
10646        stride: c_uint,
10647    );
10648    pub fn gtk_bitset_contains(self_: *const GtkBitset, value: c_uint) -> gboolean;
10649    pub fn gtk_bitset_copy(self_: *const GtkBitset) -> *mut GtkBitset;
10650    pub fn gtk_bitset_difference(self_: *mut GtkBitset, other: *const GtkBitset);
10651    pub fn gtk_bitset_equals(self_: *const GtkBitset, other: *const GtkBitset) -> gboolean;
10652    pub fn gtk_bitset_get_maximum(self_: *const GtkBitset) -> c_uint;
10653    pub fn gtk_bitset_get_minimum(self_: *const GtkBitset) -> c_uint;
10654    pub fn gtk_bitset_get_nth(self_: *const GtkBitset, nth: c_uint) -> c_uint;
10655    pub fn gtk_bitset_get_size(self_: *const GtkBitset) -> u64;
10656    pub fn gtk_bitset_get_size_in_range(
10657        self_: *const GtkBitset,
10658        first: c_uint,
10659        last: c_uint,
10660    ) -> u64;
10661    pub fn gtk_bitset_intersect(self_: *mut GtkBitset, other: *const GtkBitset);
10662    pub fn gtk_bitset_is_empty(self_: *const GtkBitset) -> gboolean;
10663    pub fn gtk_bitset_ref(self_: *mut GtkBitset) -> *mut GtkBitset;
10664    pub fn gtk_bitset_remove(self_: *mut GtkBitset, value: c_uint) -> gboolean;
10665    pub fn gtk_bitset_remove_all(self_: *mut GtkBitset);
10666    pub fn gtk_bitset_remove_range(self_: *mut GtkBitset, start: c_uint, n_items: c_uint);
10667    pub fn gtk_bitset_remove_range_closed(self_: *mut GtkBitset, first: c_uint, last: c_uint);
10668    pub fn gtk_bitset_remove_rectangle(
10669        self_: *mut GtkBitset,
10670        start: c_uint,
10671        width: c_uint,
10672        height: c_uint,
10673        stride: c_uint,
10674    );
10675    pub fn gtk_bitset_shift_left(self_: *mut GtkBitset, amount: c_uint);
10676    pub fn gtk_bitset_shift_right(self_: *mut GtkBitset, amount: c_uint);
10677    pub fn gtk_bitset_splice(
10678        self_: *mut GtkBitset,
10679        position: c_uint,
10680        removed: c_uint,
10681        added: c_uint,
10682    );
10683    pub fn gtk_bitset_subtract(self_: *mut GtkBitset, other: *const GtkBitset);
10684    pub fn gtk_bitset_union(self_: *mut GtkBitset, other: *const GtkBitset);
10685    pub fn gtk_bitset_unref(self_: *mut GtkBitset);
10686
10687    //=========================================================================
10688    // GtkBitsetIter
10689    //=========================================================================
10690    pub fn gtk_bitset_iter_get_type() -> GType;
10691    pub fn gtk_bitset_iter_get_value(iter: *const GtkBitsetIter) -> c_uint;
10692    pub fn gtk_bitset_iter_is_valid(iter: *const GtkBitsetIter) -> gboolean;
10693    pub fn gtk_bitset_iter_next(iter: *mut GtkBitsetIter, value: *mut c_uint) -> gboolean;
10694    pub fn gtk_bitset_iter_previous(iter: *mut GtkBitsetIter, value: *mut c_uint) -> gboolean;
10695    pub fn gtk_bitset_iter_init_at(
10696        iter: *mut GtkBitsetIter,
10697        set: *const GtkBitset,
10698        target: c_uint,
10699        value: *mut c_uint,
10700    ) -> gboolean;
10701    pub fn gtk_bitset_iter_init_first(
10702        iter: *mut GtkBitsetIter,
10703        set: *const GtkBitset,
10704        value: *mut c_uint,
10705    ) -> gboolean;
10706    pub fn gtk_bitset_iter_init_last(
10707        iter: *mut GtkBitsetIter,
10708        set: *const GtkBitset,
10709        value: *mut c_uint,
10710    ) -> gboolean;
10711
10712    //=========================================================================
10713    // GtkBorder
10714    //=========================================================================
10715    pub fn gtk_border_get_type() -> GType;
10716    pub fn gtk_border_new() -> *mut GtkBorder;
10717    pub fn gtk_border_copy(border_: *const GtkBorder) -> *mut GtkBorder;
10718    pub fn gtk_border_free(border_: *mut GtkBorder);
10719
10720    //=========================================================================
10721    // GtkBuildableParseContext
10722    //=========================================================================
10723    pub fn gtk_buildable_parse_context_get_element(
10724        context: *mut GtkBuildableParseContext,
10725    ) -> *const c_char;
10726    pub fn gtk_buildable_parse_context_get_element_stack(
10727        context: *mut GtkBuildableParseContext,
10728    ) -> *mut glib::GPtrArray;
10729    pub fn gtk_buildable_parse_context_get_position(
10730        context: *mut GtkBuildableParseContext,
10731        line_number: *mut c_int,
10732        char_number: *mut c_int,
10733    );
10734    pub fn gtk_buildable_parse_context_pop(context: *mut GtkBuildableParseContext) -> gpointer;
10735    pub fn gtk_buildable_parse_context_push(
10736        context: *mut GtkBuildableParseContext,
10737        parser: *const GtkBuildableParser,
10738        user_data: gpointer,
10739    );
10740
10741    //=========================================================================
10742    // GtkCellAreaClass
10743    //=========================================================================
10744    pub fn gtk_cell_area_class_find_cell_property(
10745        aclass: *mut GtkCellAreaClass,
10746        property_name: *const c_char,
10747    ) -> *mut gobject::GParamSpec;
10748    pub fn gtk_cell_area_class_install_cell_property(
10749        aclass: *mut GtkCellAreaClass,
10750        property_id: c_uint,
10751        pspec: *mut gobject::GParamSpec,
10752    );
10753    pub fn gtk_cell_area_class_list_cell_properties(
10754        aclass: *mut GtkCellAreaClass,
10755        n_properties: *mut c_uint,
10756    ) -> *mut *mut gobject::GParamSpec;
10757
10758    //=========================================================================
10759    // GtkCssSection
10760    //=========================================================================
10761    pub fn gtk_css_section_get_type() -> GType;
10762    pub fn gtk_css_section_new(
10763        file: *mut gio::GFile,
10764        start: *const GtkCssLocation,
10765        end: *const GtkCssLocation,
10766    ) -> *mut GtkCssSection;
10767    #[cfg(feature = "v4_16")]
10768    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10769    pub fn gtk_css_section_new_with_bytes(
10770        file: *mut gio::GFile,
10771        bytes: *mut glib::GBytes,
10772        start: *const GtkCssLocation,
10773        end: *const GtkCssLocation,
10774    ) -> *mut GtkCssSection;
10775    #[cfg(feature = "v4_16")]
10776    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10777    pub fn gtk_css_section_get_bytes(section: *const GtkCssSection) -> *mut glib::GBytes;
10778    pub fn gtk_css_section_get_end_location(section: *const GtkCssSection)
10779        -> *const GtkCssLocation;
10780    pub fn gtk_css_section_get_file(section: *const GtkCssSection) -> *mut gio::GFile;
10781    pub fn gtk_css_section_get_parent(section: *const GtkCssSection) -> *mut GtkCssSection;
10782    pub fn gtk_css_section_get_start_location(
10783        section: *const GtkCssSection,
10784    ) -> *const GtkCssLocation;
10785    pub fn gtk_css_section_print(section: *const GtkCssSection, string: *mut glib::GString);
10786    pub fn gtk_css_section_ref(section: *mut GtkCssSection) -> *mut GtkCssSection;
10787    pub fn gtk_css_section_to_string(section: *const GtkCssSection) -> *mut c_char;
10788    pub fn gtk_css_section_unref(section: *mut GtkCssSection);
10789
10790    //=========================================================================
10791    // GtkExpressionWatch
10792    //=========================================================================
10793    #[cfg(feature = "v4_2")]
10794    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
10795    pub fn gtk_expression_watch_get_type() -> GType;
10796    pub fn gtk_expression_watch_evaluate(
10797        watch: *mut GtkExpressionWatch,
10798        value: *mut gobject::GValue,
10799    ) -> gboolean;
10800    pub fn gtk_expression_watch_ref(watch: *mut GtkExpressionWatch) -> *mut GtkExpressionWatch;
10801    pub fn gtk_expression_watch_unref(watch: *mut GtkExpressionWatch);
10802    pub fn gtk_expression_watch_unwatch(watch: *mut GtkExpressionWatch);
10803
10804    //=========================================================================
10805    // GtkPaperSize
10806    //=========================================================================
10807    pub fn gtk_paper_size_get_type() -> GType;
10808    pub fn gtk_paper_size_new(name: *const c_char) -> *mut GtkPaperSize;
10809    pub fn gtk_paper_size_new_custom(
10810        name: *const c_char,
10811        display_name: *const c_char,
10812        width: c_double,
10813        height: c_double,
10814        unit: GtkUnit,
10815    ) -> *mut GtkPaperSize;
10816    pub fn gtk_paper_size_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPaperSize;
10817    pub fn gtk_paper_size_new_from_ipp(
10818        ipp_name: *const c_char,
10819        width: c_double,
10820        height: c_double,
10821    ) -> *mut GtkPaperSize;
10822    pub fn gtk_paper_size_new_from_key_file(
10823        key_file: *mut glib::GKeyFile,
10824        group_name: *const c_char,
10825        error: *mut *mut glib::GError,
10826    ) -> *mut GtkPaperSize;
10827    pub fn gtk_paper_size_new_from_ppd(
10828        ppd_name: *const c_char,
10829        ppd_display_name: *const c_char,
10830        width: c_double,
10831        height: c_double,
10832    ) -> *mut GtkPaperSize;
10833    pub fn gtk_paper_size_copy(other: *mut GtkPaperSize) -> *mut GtkPaperSize;
10834    pub fn gtk_paper_size_free(size: *mut GtkPaperSize);
10835    pub fn gtk_paper_size_get_default_bottom_margin(
10836        size: *mut GtkPaperSize,
10837        unit: GtkUnit,
10838    ) -> c_double;
10839    pub fn gtk_paper_size_get_default_left_margin(
10840        size: *mut GtkPaperSize,
10841        unit: GtkUnit,
10842    ) -> c_double;
10843    pub fn gtk_paper_size_get_default_right_margin(
10844        size: *mut GtkPaperSize,
10845        unit: GtkUnit,
10846    ) -> c_double;
10847    pub fn gtk_paper_size_get_default_top_margin(
10848        size: *mut GtkPaperSize,
10849        unit: GtkUnit,
10850    ) -> c_double;
10851    pub fn gtk_paper_size_get_display_name(size: *mut GtkPaperSize) -> *const c_char;
10852    pub fn gtk_paper_size_get_height(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
10853    pub fn gtk_paper_size_get_name(size: *mut GtkPaperSize) -> *const c_char;
10854    pub fn gtk_paper_size_get_ppd_name(size: *mut GtkPaperSize) -> *const c_char;
10855    pub fn gtk_paper_size_get_width(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
10856    pub fn gtk_paper_size_is_custom(size: *mut GtkPaperSize) -> gboolean;
10857    pub fn gtk_paper_size_is_equal(size1: *mut GtkPaperSize, size2: *mut GtkPaperSize) -> gboolean;
10858    pub fn gtk_paper_size_is_ipp(size: *mut GtkPaperSize) -> gboolean;
10859    pub fn gtk_paper_size_set_size(
10860        size: *mut GtkPaperSize,
10861        width: c_double,
10862        height: c_double,
10863        unit: GtkUnit,
10864    );
10865    pub fn gtk_paper_size_to_gvariant(paper_size: *mut GtkPaperSize) -> *mut glib::GVariant;
10866    pub fn gtk_paper_size_to_key_file(
10867        size: *mut GtkPaperSize,
10868        key_file: *mut glib::GKeyFile,
10869        group_name: *const c_char,
10870    );
10871    pub fn gtk_paper_size_get_default() -> *const c_char;
10872    pub fn gtk_paper_size_get_paper_sizes(include_custom: gboolean) -> *mut glib::GList;
10873
10874    //=========================================================================
10875    // GtkPrintSetup
10876    //=========================================================================
10877    #[cfg(feature = "v4_14")]
10878    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10879    pub fn gtk_print_setup_get_type() -> GType;
10880    #[cfg(feature = "v4_14")]
10881    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10882    pub fn gtk_print_setup_get_page_setup(setup: *mut GtkPrintSetup) -> *mut GtkPageSetup;
10883    #[cfg(feature = "v4_14")]
10884    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10885    pub fn gtk_print_setup_get_print_settings(setup: *mut GtkPrintSetup) -> *mut GtkPrintSettings;
10886    #[cfg(feature = "v4_14")]
10887    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10888    pub fn gtk_print_setup_ref(setup: *mut GtkPrintSetup) -> *mut GtkPrintSetup;
10889    #[cfg(feature = "v4_14")]
10890    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10891    pub fn gtk_print_setup_unref(setup: *mut GtkPrintSetup);
10892
10893    //=========================================================================
10894    // GtkRecentInfo
10895    //=========================================================================
10896    pub fn gtk_recent_info_get_type() -> GType;
10897    pub fn gtk_recent_info_create_app_info(
10898        info: *mut GtkRecentInfo,
10899        app_name: *const c_char,
10900        error: *mut *mut glib::GError,
10901    ) -> *mut gio::GAppInfo;
10902    pub fn gtk_recent_info_exists(info: *mut GtkRecentInfo) -> gboolean;
10903    pub fn gtk_recent_info_get_added(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
10904    pub fn gtk_recent_info_get_age(info: *mut GtkRecentInfo) -> c_int;
10905    pub fn gtk_recent_info_get_application_info(
10906        info: *mut GtkRecentInfo,
10907        app_name: *const c_char,
10908        app_exec: *mut *const c_char,
10909        count: *mut c_uint,
10910        stamp: *mut *mut glib::GDateTime,
10911    ) -> gboolean;
10912    pub fn gtk_recent_info_get_applications(
10913        info: *mut GtkRecentInfo,
10914        length: *mut size_t,
10915    ) -> *mut *mut c_char;
10916    pub fn gtk_recent_info_get_description(info: *mut GtkRecentInfo) -> *const c_char;
10917    pub fn gtk_recent_info_get_display_name(info: *mut GtkRecentInfo) -> *const c_char;
10918    pub fn gtk_recent_info_get_gicon(info: *mut GtkRecentInfo) -> *mut gio::GIcon;
10919    pub fn gtk_recent_info_get_groups(
10920        info: *mut GtkRecentInfo,
10921        length: *mut size_t,
10922    ) -> *mut *mut c_char;
10923    pub fn gtk_recent_info_get_mime_type(info: *mut GtkRecentInfo) -> *const c_char;
10924    pub fn gtk_recent_info_get_modified(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
10925    pub fn gtk_recent_info_get_private_hint(info: *mut GtkRecentInfo) -> gboolean;
10926    pub fn gtk_recent_info_get_short_name(info: *mut GtkRecentInfo) -> *mut c_char;
10927    pub fn gtk_recent_info_get_uri(info: *mut GtkRecentInfo) -> *const c_char;
10928    pub fn gtk_recent_info_get_uri_display(info: *mut GtkRecentInfo) -> *mut c_char;
10929    pub fn gtk_recent_info_get_visited(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
10930    pub fn gtk_recent_info_has_application(
10931        info: *mut GtkRecentInfo,
10932        app_name: *const c_char,
10933    ) -> gboolean;
10934    pub fn gtk_recent_info_has_group(
10935        info: *mut GtkRecentInfo,
10936        group_name: *const c_char,
10937    ) -> gboolean;
10938    pub fn gtk_recent_info_is_local(info: *mut GtkRecentInfo) -> gboolean;
10939    pub fn gtk_recent_info_last_application(info: *mut GtkRecentInfo) -> *mut c_char;
10940    pub fn gtk_recent_info_match(
10941        info_a: *mut GtkRecentInfo,
10942        info_b: *mut GtkRecentInfo,
10943    ) -> gboolean;
10944    pub fn gtk_recent_info_ref(info: *mut GtkRecentInfo) -> *mut GtkRecentInfo;
10945    pub fn gtk_recent_info_unref(info: *mut GtkRecentInfo);
10946
10947    //=========================================================================
10948    // GtkRequisition
10949    //=========================================================================
10950    pub fn gtk_requisition_get_type() -> GType;
10951    pub fn gtk_requisition_new() -> *mut GtkRequisition;
10952    pub fn gtk_requisition_copy(requisition: *const GtkRequisition) -> *mut GtkRequisition;
10953    pub fn gtk_requisition_free(requisition: *mut GtkRequisition);
10954
10955    //=========================================================================
10956    // GtkScrollInfo
10957    //=========================================================================
10958    #[cfg(feature = "v4_12")]
10959    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10960    pub fn gtk_scroll_info_get_type() -> GType;
10961    #[cfg(feature = "v4_12")]
10962    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10963    pub fn gtk_scroll_info_new() -> *mut GtkScrollInfo;
10964    #[cfg(feature = "v4_12")]
10965    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10966    pub fn gtk_scroll_info_get_enable_horizontal(self_: *mut GtkScrollInfo) -> gboolean;
10967    #[cfg(feature = "v4_12")]
10968    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10969    pub fn gtk_scroll_info_get_enable_vertical(self_: *mut GtkScrollInfo) -> gboolean;
10970    #[cfg(feature = "v4_12")]
10971    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10972    pub fn gtk_scroll_info_ref(self_: *mut GtkScrollInfo) -> *mut GtkScrollInfo;
10973    #[cfg(feature = "v4_12")]
10974    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10975    pub fn gtk_scroll_info_set_enable_horizontal(self_: *mut GtkScrollInfo, horizontal: gboolean);
10976    #[cfg(feature = "v4_12")]
10977    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10978    pub fn gtk_scroll_info_set_enable_vertical(self_: *mut GtkScrollInfo, vertical: gboolean);
10979    #[cfg(feature = "v4_12")]
10980    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10981    pub fn gtk_scroll_info_unref(self_: *mut GtkScrollInfo);
10982
10983    //=========================================================================
10984    // GtkTextIter
10985    //=========================================================================
10986    pub fn gtk_text_iter_get_type() -> GType;
10987    pub fn gtk_text_iter_assign(iter: *mut GtkTextIter, other: *const GtkTextIter);
10988    pub fn gtk_text_iter_backward_char(iter: *mut GtkTextIter) -> gboolean;
10989    pub fn gtk_text_iter_backward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
10990    pub fn gtk_text_iter_backward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
10991    pub fn gtk_text_iter_backward_cursor_positions(
10992        iter: *mut GtkTextIter,
10993        count: c_int,
10994    ) -> gboolean;
10995    pub fn gtk_text_iter_backward_find_char(
10996        iter: *mut GtkTextIter,
10997        pred: GtkTextCharPredicate,
10998        user_data: gpointer,
10999        limit: *const GtkTextIter,
11000    ) -> gboolean;
11001    pub fn gtk_text_iter_backward_line(iter: *mut GtkTextIter) -> gboolean;
11002    pub fn gtk_text_iter_backward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11003    pub fn gtk_text_iter_backward_search(
11004        iter: *const GtkTextIter,
11005        str: *const c_char,
11006        flags: GtkTextSearchFlags,
11007        match_start: *mut GtkTextIter,
11008        match_end: *mut GtkTextIter,
11009        limit: *const GtkTextIter,
11010    ) -> gboolean;
11011    pub fn gtk_text_iter_backward_sentence_start(iter: *mut GtkTextIter) -> gboolean;
11012    pub fn gtk_text_iter_backward_sentence_starts(iter: *mut GtkTextIter, count: c_int)
11013        -> gboolean;
11014    pub fn gtk_text_iter_backward_to_tag_toggle(
11015        iter: *mut GtkTextIter,
11016        tag: *mut GtkTextTag,
11017    ) -> gboolean;
11018    pub fn gtk_text_iter_backward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11019    pub fn gtk_text_iter_backward_visible_cursor_positions(
11020        iter: *mut GtkTextIter,
11021        count: c_int,
11022    ) -> gboolean;
11023    pub fn gtk_text_iter_backward_visible_line(iter: *mut GtkTextIter) -> gboolean;
11024    pub fn gtk_text_iter_backward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11025    pub fn gtk_text_iter_backward_visible_word_start(iter: *mut GtkTextIter) -> gboolean;
11026    pub fn gtk_text_iter_backward_visible_word_starts(
11027        iter: *mut GtkTextIter,
11028        count: c_int,
11029    ) -> gboolean;
11030    pub fn gtk_text_iter_backward_word_start(iter: *mut GtkTextIter) -> gboolean;
11031    pub fn gtk_text_iter_backward_word_starts(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11032    pub fn gtk_text_iter_can_insert(
11033        iter: *const GtkTextIter,
11034        default_editability: gboolean,
11035    ) -> gboolean;
11036    pub fn gtk_text_iter_compare(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> c_int;
11037    pub fn gtk_text_iter_copy(iter: *const GtkTextIter) -> *mut GtkTextIter;
11038    pub fn gtk_text_iter_editable(iter: *const GtkTextIter, default_setting: gboolean) -> gboolean;
11039    pub fn gtk_text_iter_ends_line(iter: *const GtkTextIter) -> gboolean;
11040    pub fn gtk_text_iter_ends_sentence(iter: *const GtkTextIter) -> gboolean;
11041    pub fn gtk_text_iter_ends_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11042    pub fn gtk_text_iter_ends_word(iter: *const GtkTextIter) -> gboolean;
11043    pub fn gtk_text_iter_equal(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> gboolean;
11044    pub fn gtk_text_iter_forward_char(iter: *mut GtkTextIter) -> gboolean;
11045    pub fn gtk_text_iter_forward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11046    pub fn gtk_text_iter_forward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11047    pub fn gtk_text_iter_forward_cursor_positions(iter: *mut GtkTextIter, count: c_int)
11048        -> gboolean;
11049    pub fn gtk_text_iter_forward_find_char(
11050        iter: *mut GtkTextIter,
11051        pred: GtkTextCharPredicate,
11052        user_data: gpointer,
11053        limit: *const GtkTextIter,
11054    ) -> gboolean;
11055    pub fn gtk_text_iter_forward_line(iter: *mut GtkTextIter) -> gboolean;
11056    pub fn gtk_text_iter_forward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11057    pub fn gtk_text_iter_forward_search(
11058        iter: *const GtkTextIter,
11059        str: *const c_char,
11060        flags: GtkTextSearchFlags,
11061        match_start: *mut GtkTextIter,
11062        match_end: *mut GtkTextIter,
11063        limit: *const GtkTextIter,
11064    ) -> gboolean;
11065    pub fn gtk_text_iter_forward_sentence_end(iter: *mut GtkTextIter) -> gboolean;
11066    pub fn gtk_text_iter_forward_sentence_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11067    pub fn gtk_text_iter_forward_to_end(iter: *mut GtkTextIter);
11068    pub fn gtk_text_iter_forward_to_line_end(iter: *mut GtkTextIter) -> gboolean;
11069    pub fn gtk_text_iter_forward_to_tag_toggle(
11070        iter: *mut GtkTextIter,
11071        tag: *mut GtkTextTag,
11072    ) -> gboolean;
11073    pub fn gtk_text_iter_forward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11074    pub fn gtk_text_iter_forward_visible_cursor_positions(
11075        iter: *mut GtkTextIter,
11076        count: c_int,
11077    ) -> gboolean;
11078    pub fn gtk_text_iter_forward_visible_line(iter: *mut GtkTextIter) -> gboolean;
11079    pub fn gtk_text_iter_forward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11080    pub fn gtk_text_iter_forward_visible_word_end(iter: *mut GtkTextIter) -> gboolean;
11081    pub fn gtk_text_iter_forward_visible_word_ends(
11082        iter: *mut GtkTextIter,
11083        count: c_int,
11084    ) -> gboolean;
11085    pub fn gtk_text_iter_forward_word_end(iter: *mut GtkTextIter) -> gboolean;
11086    pub fn gtk_text_iter_forward_word_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11087    pub fn gtk_text_iter_free(iter: *mut GtkTextIter);
11088    pub fn gtk_text_iter_get_buffer(iter: *const GtkTextIter) -> *mut GtkTextBuffer;
11089    pub fn gtk_text_iter_get_bytes_in_line(iter: *const GtkTextIter) -> c_int;
11090    pub fn gtk_text_iter_get_char(iter: *const GtkTextIter) -> u32;
11091    pub fn gtk_text_iter_get_chars_in_line(iter: *const GtkTextIter) -> c_int;
11092    pub fn gtk_text_iter_get_child_anchor(iter: *const GtkTextIter) -> *mut GtkTextChildAnchor;
11093    pub fn gtk_text_iter_get_language(iter: *const GtkTextIter) -> *mut pango::PangoLanguage;
11094    pub fn gtk_text_iter_get_line(iter: *const GtkTextIter) -> c_int;
11095    pub fn gtk_text_iter_get_line_index(iter: *const GtkTextIter) -> c_int;
11096    pub fn gtk_text_iter_get_line_offset(iter: *const GtkTextIter) -> c_int;
11097    pub fn gtk_text_iter_get_marks(iter: *const GtkTextIter) -> *mut glib::GSList;
11098    pub fn gtk_text_iter_get_offset(iter: *const GtkTextIter) -> c_int;
11099    pub fn gtk_text_iter_get_paintable(iter: *const GtkTextIter) -> *mut gdk::GdkPaintable;
11100    pub fn gtk_text_iter_get_slice(
11101        start: *const GtkTextIter,
11102        end: *const GtkTextIter,
11103    ) -> *mut c_char;
11104    pub fn gtk_text_iter_get_tags(iter: *const GtkTextIter) -> *mut glib::GSList;
11105    pub fn gtk_text_iter_get_text(
11106        start: *const GtkTextIter,
11107        end: *const GtkTextIter,
11108    ) -> *mut c_char;
11109    pub fn gtk_text_iter_get_toggled_tags(
11110        iter: *const GtkTextIter,
11111        toggled_on: gboolean,
11112    ) -> *mut glib::GSList;
11113    pub fn gtk_text_iter_get_visible_line_index(iter: *const GtkTextIter) -> c_int;
11114    pub fn gtk_text_iter_get_visible_line_offset(iter: *const GtkTextIter) -> c_int;
11115    pub fn gtk_text_iter_get_visible_slice(
11116        start: *const GtkTextIter,
11117        end: *const GtkTextIter,
11118    ) -> *mut c_char;
11119    pub fn gtk_text_iter_get_visible_text(
11120        start: *const GtkTextIter,
11121        end: *const GtkTextIter,
11122    ) -> *mut c_char;
11123    pub fn gtk_text_iter_has_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11124    pub fn gtk_text_iter_in_range(
11125        iter: *const GtkTextIter,
11126        start: *const GtkTextIter,
11127        end: *const GtkTextIter,
11128    ) -> gboolean;
11129    pub fn gtk_text_iter_inside_sentence(iter: *const GtkTextIter) -> gboolean;
11130    pub fn gtk_text_iter_inside_word(iter: *const GtkTextIter) -> gboolean;
11131    pub fn gtk_text_iter_is_cursor_position(iter: *const GtkTextIter) -> gboolean;
11132    pub fn gtk_text_iter_is_end(iter: *const GtkTextIter) -> gboolean;
11133    pub fn gtk_text_iter_is_start(iter: *const GtkTextIter) -> gboolean;
11134    pub fn gtk_text_iter_order(first: *mut GtkTextIter, second: *mut GtkTextIter);
11135    pub fn gtk_text_iter_set_line(iter: *mut GtkTextIter, line_number: c_int);
11136    pub fn gtk_text_iter_set_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
11137    pub fn gtk_text_iter_set_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
11138    pub fn gtk_text_iter_set_offset(iter: *mut GtkTextIter, char_offset: c_int);
11139    pub fn gtk_text_iter_set_visible_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
11140    pub fn gtk_text_iter_set_visible_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
11141    pub fn gtk_text_iter_starts_line(iter: *const GtkTextIter) -> gboolean;
11142    pub fn gtk_text_iter_starts_sentence(iter: *const GtkTextIter) -> gboolean;
11143    pub fn gtk_text_iter_starts_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11144    pub fn gtk_text_iter_starts_word(iter: *const GtkTextIter) -> gboolean;
11145    pub fn gtk_text_iter_toggles_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11146
11147    //=========================================================================
11148    // GtkTreeIter
11149    //=========================================================================
11150    pub fn gtk_tree_iter_get_type() -> GType;
11151    pub fn gtk_tree_iter_copy(iter: *mut GtkTreeIter) -> *mut GtkTreeIter;
11152    pub fn gtk_tree_iter_free(iter: *mut GtkTreeIter);
11153
11154    //=========================================================================
11155    // GtkTreePath
11156    //=========================================================================
11157    pub fn gtk_tree_path_get_type() -> GType;
11158    pub fn gtk_tree_path_new() -> *mut GtkTreePath;
11159    pub fn gtk_tree_path_new_first() -> *mut GtkTreePath;
11160    pub fn gtk_tree_path_new_from_indices(first_index: c_int, ...) -> *mut GtkTreePath;
11161    pub fn gtk_tree_path_new_from_indicesv(indices: *mut c_int, length: size_t)
11162        -> *mut GtkTreePath;
11163    pub fn gtk_tree_path_new_from_string(path: *const c_char) -> *mut GtkTreePath;
11164    pub fn gtk_tree_path_append_index(path: *mut GtkTreePath, index_: c_int);
11165    pub fn gtk_tree_path_compare(a: *const GtkTreePath, b: *const GtkTreePath) -> c_int;
11166    pub fn gtk_tree_path_copy(path: *const GtkTreePath) -> *mut GtkTreePath;
11167    pub fn gtk_tree_path_down(path: *mut GtkTreePath);
11168    pub fn gtk_tree_path_free(path: *mut GtkTreePath);
11169    pub fn gtk_tree_path_get_depth(path: *mut GtkTreePath) -> c_int;
11170    pub fn gtk_tree_path_get_indices(path: *mut GtkTreePath) -> *mut c_int;
11171    pub fn gtk_tree_path_get_indices_with_depth(
11172        path: *mut GtkTreePath,
11173        depth: *mut c_int,
11174    ) -> *mut c_int;
11175    pub fn gtk_tree_path_is_ancestor(
11176        path: *mut GtkTreePath,
11177        descendant: *mut GtkTreePath,
11178    ) -> gboolean;
11179    pub fn gtk_tree_path_is_descendant(
11180        path: *mut GtkTreePath,
11181        ancestor: *mut GtkTreePath,
11182    ) -> gboolean;
11183    pub fn gtk_tree_path_next(path: *mut GtkTreePath);
11184    pub fn gtk_tree_path_prepend_index(path: *mut GtkTreePath, index_: c_int);
11185    pub fn gtk_tree_path_prev(path: *mut GtkTreePath) -> gboolean;
11186    pub fn gtk_tree_path_to_string(path: *mut GtkTreePath) -> *mut c_char;
11187    pub fn gtk_tree_path_up(path: *mut GtkTreePath) -> gboolean;
11188
11189    //=========================================================================
11190    // GtkTreeRowReference
11191    //=========================================================================
11192    pub fn gtk_tree_row_reference_get_type() -> GType;
11193    pub fn gtk_tree_row_reference_new(
11194        model: *mut GtkTreeModel,
11195        path: *mut GtkTreePath,
11196    ) -> *mut GtkTreeRowReference;
11197    pub fn gtk_tree_row_reference_new_proxy(
11198        proxy: *mut gobject::GObject,
11199        model: *mut GtkTreeModel,
11200        path: *mut GtkTreePath,
11201    ) -> *mut GtkTreeRowReference;
11202    pub fn gtk_tree_row_reference_copy(
11203        reference: *mut GtkTreeRowReference,
11204    ) -> *mut GtkTreeRowReference;
11205    pub fn gtk_tree_row_reference_free(reference: *mut GtkTreeRowReference);
11206    pub fn gtk_tree_row_reference_get_model(
11207        reference: *mut GtkTreeRowReference,
11208    ) -> *mut GtkTreeModel;
11209    pub fn gtk_tree_row_reference_get_path(reference: *mut GtkTreeRowReference)
11210        -> *mut GtkTreePath;
11211    pub fn gtk_tree_row_reference_valid(reference: *mut GtkTreeRowReference) -> gboolean;
11212    pub fn gtk_tree_row_reference_deleted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
11213    pub fn gtk_tree_row_reference_inserted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
11214    pub fn gtk_tree_row_reference_reordered(
11215        proxy: *mut gobject::GObject,
11216        path: *mut GtkTreePath,
11217        iter: *mut GtkTreeIter,
11218        new_order: *mut c_int,
11219    );
11220
11221    //=========================================================================
11222    // GtkWidgetClass
11223    //=========================================================================
11224    pub fn gtk_widget_class_add_binding(
11225        widget_class: *mut GtkWidgetClass,
11226        keyval: c_uint,
11227        mods: gdk::GdkModifierType,
11228        callback: GtkShortcutFunc,
11229        format_string: *const c_char,
11230        ...
11231    );
11232    pub fn gtk_widget_class_add_binding_action(
11233        widget_class: *mut GtkWidgetClass,
11234        keyval: c_uint,
11235        mods: gdk::GdkModifierType,
11236        action_name: *const c_char,
11237        format_string: *const c_char,
11238        ...
11239    );
11240    pub fn gtk_widget_class_add_binding_signal(
11241        widget_class: *mut GtkWidgetClass,
11242        keyval: c_uint,
11243        mods: gdk::GdkModifierType,
11244        signal: *const c_char,
11245        format_string: *const c_char,
11246        ...
11247    );
11248    pub fn gtk_widget_class_add_shortcut(
11249        widget_class: *mut GtkWidgetClass,
11250        shortcut: *mut GtkShortcut,
11251    );
11252    pub fn gtk_widget_class_bind_template_callback_full(
11253        widget_class: *mut GtkWidgetClass,
11254        callback_name: *const c_char,
11255        callback_symbol: gobject::GCallback,
11256    );
11257    pub fn gtk_widget_class_bind_template_child_full(
11258        widget_class: *mut GtkWidgetClass,
11259        name: *const c_char,
11260        internal_child: gboolean,
11261        struct_offset: ssize_t,
11262    );
11263    pub fn gtk_widget_class_get_accessible_role(
11264        widget_class: *mut GtkWidgetClass,
11265    ) -> GtkAccessibleRole;
11266    pub fn gtk_widget_class_get_activate_signal(widget_class: *mut GtkWidgetClass) -> c_uint;
11267    pub fn gtk_widget_class_get_css_name(widget_class: *mut GtkWidgetClass) -> *const c_char;
11268    pub fn gtk_widget_class_get_layout_manager_type(widget_class: *mut GtkWidgetClass) -> GType;
11269    pub fn gtk_widget_class_install_action(
11270        widget_class: *mut GtkWidgetClass,
11271        action_name: *const c_char,
11272        parameter_type: *const c_char,
11273        activate: GtkWidgetActionActivateFunc,
11274    );
11275    pub fn gtk_widget_class_install_property_action(
11276        widget_class: *mut GtkWidgetClass,
11277        action_name: *const c_char,
11278        property_name: *const c_char,
11279    );
11280    pub fn gtk_widget_class_query_action(
11281        widget_class: *mut GtkWidgetClass,
11282        index_: c_uint,
11283        owner: *mut GType,
11284        action_name: *mut *const c_char,
11285        parameter_type: *mut *const glib::GVariantType,
11286        property_name: *mut *const c_char,
11287    ) -> gboolean;
11288    pub fn gtk_widget_class_set_accessible_role(
11289        widget_class: *mut GtkWidgetClass,
11290        accessible_role: GtkAccessibleRole,
11291    );
11292    pub fn gtk_widget_class_set_activate_signal(
11293        widget_class: *mut GtkWidgetClass,
11294        signal_id: c_uint,
11295    );
11296    pub fn gtk_widget_class_set_activate_signal_from_name(
11297        widget_class: *mut GtkWidgetClass,
11298        signal_name: *const c_char,
11299    );
11300    pub fn gtk_widget_class_set_css_name(widget_class: *mut GtkWidgetClass, name: *const c_char);
11301    pub fn gtk_widget_class_set_layout_manager_type(
11302        widget_class: *mut GtkWidgetClass,
11303        type_: GType,
11304    );
11305    pub fn gtk_widget_class_set_template(
11306        widget_class: *mut GtkWidgetClass,
11307        template_bytes: *mut glib::GBytes,
11308    );
11309    pub fn gtk_widget_class_set_template_from_resource(
11310        widget_class: *mut GtkWidgetClass,
11311        resource_name: *const c_char,
11312    );
11313    pub fn gtk_widget_class_set_template_scope(
11314        widget_class: *mut GtkWidgetClass,
11315        scope: *mut GtkBuilderScope,
11316    );
11317
11318    //=========================================================================
11319    // GtkATContext
11320    //=========================================================================
11321    pub fn gtk_at_context_get_type() -> GType;
11322    pub fn gtk_at_context_create(
11323        accessible_role: GtkAccessibleRole,
11324        accessible: *mut GtkAccessible,
11325        display: *mut gdk::GdkDisplay,
11326    ) -> *mut GtkATContext;
11327    pub fn gtk_at_context_get_accessible(self_: *mut GtkATContext) -> *mut GtkAccessible;
11328    pub fn gtk_at_context_get_accessible_role(self_: *mut GtkATContext) -> GtkAccessibleRole;
11329
11330    //=========================================================================
11331    // GtkAboutDialog
11332    //=========================================================================
11333    pub fn gtk_about_dialog_get_type() -> GType;
11334    pub fn gtk_about_dialog_new() -> *mut GtkWidget;
11335    pub fn gtk_about_dialog_add_credit_section(
11336        about: *mut GtkAboutDialog,
11337        section_name: *const c_char,
11338        people: *mut *const c_char,
11339    );
11340    pub fn gtk_about_dialog_get_artists(about: *mut GtkAboutDialog) -> *const *const c_char;
11341    pub fn gtk_about_dialog_get_authors(about: *mut GtkAboutDialog) -> *const *const c_char;
11342    pub fn gtk_about_dialog_get_comments(about: *mut GtkAboutDialog) -> *const c_char;
11343    pub fn gtk_about_dialog_get_copyright(about: *mut GtkAboutDialog) -> *const c_char;
11344    pub fn gtk_about_dialog_get_documenters(about: *mut GtkAboutDialog) -> *const *const c_char;
11345    pub fn gtk_about_dialog_get_license(about: *mut GtkAboutDialog) -> *const c_char;
11346    pub fn gtk_about_dialog_get_license_type(about: *mut GtkAboutDialog) -> GtkLicense;
11347    pub fn gtk_about_dialog_get_logo(about: *mut GtkAboutDialog) -> *mut gdk::GdkPaintable;
11348    pub fn gtk_about_dialog_get_logo_icon_name(about: *mut GtkAboutDialog) -> *const c_char;
11349    pub fn gtk_about_dialog_get_program_name(about: *mut GtkAboutDialog) -> *const c_char;
11350    pub fn gtk_about_dialog_get_system_information(about: *mut GtkAboutDialog) -> *const c_char;
11351    pub fn gtk_about_dialog_get_translator_credits(about: *mut GtkAboutDialog) -> *const c_char;
11352    pub fn gtk_about_dialog_get_version(about: *mut GtkAboutDialog) -> *const c_char;
11353    pub fn gtk_about_dialog_get_website(about: *mut GtkAboutDialog) -> *const c_char;
11354    pub fn gtk_about_dialog_get_website_label(about: *mut GtkAboutDialog) -> *const c_char;
11355    pub fn gtk_about_dialog_get_wrap_license(about: *mut GtkAboutDialog) -> gboolean;
11356    pub fn gtk_about_dialog_set_artists(about: *mut GtkAboutDialog, artists: *mut *const c_char);
11357    pub fn gtk_about_dialog_set_authors(about: *mut GtkAboutDialog, authors: *mut *const c_char);
11358    pub fn gtk_about_dialog_set_comments(about: *mut GtkAboutDialog, comments: *const c_char);
11359    pub fn gtk_about_dialog_set_copyright(about: *mut GtkAboutDialog, copyright: *const c_char);
11360    pub fn gtk_about_dialog_set_documenters(
11361        about: *mut GtkAboutDialog,
11362        documenters: *mut *const c_char,
11363    );
11364    pub fn gtk_about_dialog_set_license(about: *mut GtkAboutDialog, license: *const c_char);
11365    pub fn gtk_about_dialog_set_license_type(about: *mut GtkAboutDialog, license_type: GtkLicense);
11366    pub fn gtk_about_dialog_set_logo(about: *mut GtkAboutDialog, logo: *mut gdk::GdkPaintable);
11367    pub fn gtk_about_dialog_set_logo_icon_name(
11368        about: *mut GtkAboutDialog,
11369        icon_name: *const c_char,
11370    );
11371    pub fn gtk_about_dialog_set_program_name(about: *mut GtkAboutDialog, name: *const c_char);
11372    pub fn gtk_about_dialog_set_system_information(
11373        about: *mut GtkAboutDialog,
11374        system_information: *const c_char,
11375    );
11376    pub fn gtk_about_dialog_set_translator_credits(
11377        about: *mut GtkAboutDialog,
11378        translator_credits: *const c_char,
11379    );
11380    pub fn gtk_about_dialog_set_version(about: *mut GtkAboutDialog, version: *const c_char);
11381    pub fn gtk_about_dialog_set_website(about: *mut GtkAboutDialog, website: *const c_char);
11382    pub fn gtk_about_dialog_set_website_label(
11383        about: *mut GtkAboutDialog,
11384        website_label: *const c_char,
11385    );
11386    pub fn gtk_about_dialog_set_wrap_license(about: *mut GtkAboutDialog, wrap_license: gboolean);
11387
11388    //=========================================================================
11389    // GtkActionBar
11390    //=========================================================================
11391    pub fn gtk_action_bar_get_type() -> GType;
11392    pub fn gtk_action_bar_new() -> *mut GtkWidget;
11393    pub fn gtk_action_bar_get_center_widget(action_bar: *mut GtkActionBar) -> *mut GtkWidget;
11394    pub fn gtk_action_bar_get_revealed(action_bar: *mut GtkActionBar) -> gboolean;
11395    pub fn gtk_action_bar_pack_end(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11396    pub fn gtk_action_bar_pack_start(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11397    pub fn gtk_action_bar_remove(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11398    pub fn gtk_action_bar_set_center_widget(
11399        action_bar: *mut GtkActionBar,
11400        center_widget: *mut GtkWidget,
11401    );
11402    pub fn gtk_action_bar_set_revealed(action_bar: *mut GtkActionBar, revealed: gboolean);
11403
11404    //=========================================================================
11405    // GtkActivateAction
11406    //=========================================================================
11407    pub fn gtk_activate_action_get_type() -> GType;
11408    pub fn gtk_activate_action_get() -> *mut GtkActivateAction;
11409
11410    //=========================================================================
11411    // GtkAdjustment
11412    //=========================================================================
11413    pub fn gtk_adjustment_get_type() -> GType;
11414    pub fn gtk_adjustment_new(
11415        value: c_double,
11416        lower: c_double,
11417        upper: c_double,
11418        step_increment: c_double,
11419        page_increment: c_double,
11420        page_size: c_double,
11421    ) -> *mut GtkAdjustment;
11422    pub fn gtk_adjustment_clamp_page(
11423        adjustment: *mut GtkAdjustment,
11424        lower: c_double,
11425        upper: c_double,
11426    );
11427    pub fn gtk_adjustment_configure(
11428        adjustment: *mut GtkAdjustment,
11429        value: c_double,
11430        lower: c_double,
11431        upper: c_double,
11432        step_increment: c_double,
11433        page_increment: c_double,
11434        page_size: c_double,
11435    );
11436    pub fn gtk_adjustment_get_lower(adjustment: *mut GtkAdjustment) -> c_double;
11437    pub fn gtk_adjustment_get_minimum_increment(adjustment: *mut GtkAdjustment) -> c_double;
11438    pub fn gtk_adjustment_get_page_increment(adjustment: *mut GtkAdjustment) -> c_double;
11439    pub fn gtk_adjustment_get_page_size(adjustment: *mut GtkAdjustment) -> c_double;
11440    pub fn gtk_adjustment_get_step_increment(adjustment: *mut GtkAdjustment) -> c_double;
11441    pub fn gtk_adjustment_get_upper(adjustment: *mut GtkAdjustment) -> c_double;
11442    pub fn gtk_adjustment_get_value(adjustment: *mut GtkAdjustment) -> c_double;
11443    pub fn gtk_adjustment_set_lower(adjustment: *mut GtkAdjustment, lower: c_double);
11444    pub fn gtk_adjustment_set_page_increment(
11445        adjustment: *mut GtkAdjustment,
11446        page_increment: c_double,
11447    );
11448    pub fn gtk_adjustment_set_page_size(adjustment: *mut GtkAdjustment, page_size: c_double);
11449    pub fn gtk_adjustment_set_step_increment(
11450        adjustment: *mut GtkAdjustment,
11451        step_increment: c_double,
11452    );
11453    pub fn gtk_adjustment_set_upper(adjustment: *mut GtkAdjustment, upper: c_double);
11454    pub fn gtk_adjustment_set_value(adjustment: *mut GtkAdjustment, value: c_double);
11455
11456    //=========================================================================
11457    // GtkAlertDialog
11458    //=========================================================================
11459    #[cfg(feature = "v4_10")]
11460    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11461    pub fn gtk_alert_dialog_get_type() -> GType;
11462    #[cfg(feature = "v4_10")]
11463    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11464    pub fn gtk_alert_dialog_new(format: *const c_char, ...) -> *mut GtkAlertDialog;
11465    #[cfg(feature = "v4_10")]
11466    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11467    pub fn gtk_alert_dialog_choose(
11468        self_: *mut GtkAlertDialog,
11469        parent: *mut GtkWindow,
11470        cancellable: *mut gio::GCancellable,
11471        callback: gio::GAsyncReadyCallback,
11472        user_data: gpointer,
11473    );
11474    #[cfg(feature = "v4_10")]
11475    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11476    pub fn gtk_alert_dialog_choose_finish(
11477        self_: *mut GtkAlertDialog,
11478        result: *mut gio::GAsyncResult,
11479        error: *mut *mut glib::GError,
11480    ) -> c_int;
11481    #[cfg(feature = "v4_10")]
11482    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11483    pub fn gtk_alert_dialog_get_buttons(self_: *mut GtkAlertDialog) -> *const *const c_char;
11484    #[cfg(feature = "v4_10")]
11485    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11486    pub fn gtk_alert_dialog_get_cancel_button(self_: *mut GtkAlertDialog) -> c_int;
11487    #[cfg(feature = "v4_10")]
11488    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11489    pub fn gtk_alert_dialog_get_default_button(self_: *mut GtkAlertDialog) -> c_int;
11490    #[cfg(feature = "v4_10")]
11491    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11492    pub fn gtk_alert_dialog_get_detail(self_: *mut GtkAlertDialog) -> *const c_char;
11493    #[cfg(feature = "v4_10")]
11494    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11495    pub fn gtk_alert_dialog_get_message(self_: *mut GtkAlertDialog) -> *const c_char;
11496    #[cfg(feature = "v4_10")]
11497    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11498    pub fn gtk_alert_dialog_get_modal(self_: *mut GtkAlertDialog) -> gboolean;
11499    #[cfg(feature = "v4_10")]
11500    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11501    pub fn gtk_alert_dialog_set_buttons(self_: *mut GtkAlertDialog, labels: *const *const c_char);
11502    #[cfg(feature = "v4_10")]
11503    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11504    pub fn gtk_alert_dialog_set_cancel_button(self_: *mut GtkAlertDialog, button: c_int);
11505    #[cfg(feature = "v4_10")]
11506    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11507    pub fn gtk_alert_dialog_set_default_button(self_: *mut GtkAlertDialog, button: c_int);
11508    #[cfg(feature = "v4_10")]
11509    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11510    pub fn gtk_alert_dialog_set_detail(self_: *mut GtkAlertDialog, detail: *const c_char);
11511    #[cfg(feature = "v4_10")]
11512    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11513    pub fn gtk_alert_dialog_set_message(self_: *mut GtkAlertDialog, message: *const c_char);
11514    #[cfg(feature = "v4_10")]
11515    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11516    pub fn gtk_alert_dialog_set_modal(self_: *mut GtkAlertDialog, modal: gboolean);
11517    #[cfg(feature = "v4_10")]
11518    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11519    pub fn gtk_alert_dialog_show(self_: *mut GtkAlertDialog, parent: *mut GtkWindow);
11520
11521    //=========================================================================
11522    // GtkAlternativeTrigger
11523    //=========================================================================
11524    pub fn gtk_alternative_trigger_get_type() -> GType;
11525    pub fn gtk_alternative_trigger_new(
11526        first: *mut GtkShortcutTrigger,
11527        second: *mut GtkShortcutTrigger,
11528    ) -> *mut GtkShortcutTrigger;
11529    pub fn gtk_alternative_trigger_get_first(
11530        self_: *mut GtkAlternativeTrigger,
11531    ) -> *mut GtkShortcutTrigger;
11532    pub fn gtk_alternative_trigger_get_second(
11533        self_: *mut GtkAlternativeTrigger,
11534    ) -> *mut GtkShortcutTrigger;
11535
11536    //=========================================================================
11537    // GtkAnyFilter
11538    //=========================================================================
11539    pub fn gtk_any_filter_get_type() -> GType;
11540    pub fn gtk_any_filter_new() -> *mut GtkAnyFilter;
11541
11542    //=========================================================================
11543    // GtkAppChooserButton
11544    //=========================================================================
11545    pub fn gtk_app_chooser_button_get_type() -> GType;
11546    pub fn gtk_app_chooser_button_new(content_type: *const c_char) -> *mut GtkWidget;
11547    pub fn gtk_app_chooser_button_append_custom_item(
11548        self_: *mut GtkAppChooserButton,
11549        name: *const c_char,
11550        label: *const c_char,
11551        icon: *mut gio::GIcon,
11552    );
11553    pub fn gtk_app_chooser_button_append_separator(self_: *mut GtkAppChooserButton);
11554    pub fn gtk_app_chooser_button_get_heading(self_: *mut GtkAppChooserButton) -> *const c_char;
11555    pub fn gtk_app_chooser_button_get_modal(self_: *mut GtkAppChooserButton) -> gboolean;
11556    pub fn gtk_app_chooser_button_get_show_default_item(
11557        self_: *mut GtkAppChooserButton,
11558    ) -> gboolean;
11559    pub fn gtk_app_chooser_button_get_show_dialog_item(self_: *mut GtkAppChooserButton)
11560        -> gboolean;
11561    pub fn gtk_app_chooser_button_set_active_custom_item(
11562        self_: *mut GtkAppChooserButton,
11563        name: *const c_char,
11564    );
11565    pub fn gtk_app_chooser_button_set_heading(
11566        self_: *mut GtkAppChooserButton,
11567        heading: *const c_char,
11568    );
11569    pub fn gtk_app_chooser_button_set_modal(self_: *mut GtkAppChooserButton, modal: gboolean);
11570    pub fn gtk_app_chooser_button_set_show_default_item(
11571        self_: *mut GtkAppChooserButton,
11572        setting: gboolean,
11573    );
11574    pub fn gtk_app_chooser_button_set_show_dialog_item(
11575        self_: *mut GtkAppChooserButton,
11576        setting: gboolean,
11577    );
11578
11579    //=========================================================================
11580    // GtkAppChooserDialog
11581    //=========================================================================
11582    pub fn gtk_app_chooser_dialog_get_type() -> GType;
11583    pub fn gtk_app_chooser_dialog_new(
11584        parent: *mut GtkWindow,
11585        flags: GtkDialogFlags,
11586        file: *mut gio::GFile,
11587    ) -> *mut GtkWidget;
11588    pub fn gtk_app_chooser_dialog_new_for_content_type(
11589        parent: *mut GtkWindow,
11590        flags: GtkDialogFlags,
11591        content_type: *const c_char,
11592    ) -> *mut GtkWidget;
11593    pub fn gtk_app_chooser_dialog_get_heading(self_: *mut GtkAppChooserDialog) -> *const c_char;
11594    pub fn gtk_app_chooser_dialog_get_widget(self_: *mut GtkAppChooserDialog) -> *mut GtkWidget;
11595    pub fn gtk_app_chooser_dialog_set_heading(
11596        self_: *mut GtkAppChooserDialog,
11597        heading: *const c_char,
11598    );
11599
11600    //=========================================================================
11601    // GtkAppChooserWidget
11602    //=========================================================================
11603    pub fn gtk_app_chooser_widget_get_type() -> GType;
11604    pub fn gtk_app_chooser_widget_new(content_type: *const c_char) -> *mut GtkWidget;
11605    pub fn gtk_app_chooser_widget_get_default_text(
11606        self_: *mut GtkAppChooserWidget,
11607    ) -> *const c_char;
11608    pub fn gtk_app_chooser_widget_get_show_all(self_: *mut GtkAppChooserWidget) -> gboolean;
11609    pub fn gtk_app_chooser_widget_get_show_default(self_: *mut GtkAppChooserWidget) -> gboolean;
11610    pub fn gtk_app_chooser_widget_get_show_fallback(self_: *mut GtkAppChooserWidget) -> gboolean;
11611    pub fn gtk_app_chooser_widget_get_show_other(self_: *mut GtkAppChooserWidget) -> gboolean;
11612    pub fn gtk_app_chooser_widget_get_show_recommended(self_: *mut GtkAppChooserWidget)
11613        -> gboolean;
11614    pub fn gtk_app_chooser_widget_set_default_text(
11615        self_: *mut GtkAppChooserWidget,
11616        text: *const c_char,
11617    );
11618    pub fn gtk_app_chooser_widget_set_show_all(self_: *mut GtkAppChooserWidget, setting: gboolean);
11619    pub fn gtk_app_chooser_widget_set_show_default(
11620        self_: *mut GtkAppChooserWidget,
11621        setting: gboolean,
11622    );
11623    pub fn gtk_app_chooser_widget_set_show_fallback(
11624        self_: *mut GtkAppChooserWidget,
11625        setting: gboolean,
11626    );
11627    pub fn gtk_app_chooser_widget_set_show_other(
11628        self_: *mut GtkAppChooserWidget,
11629        setting: gboolean,
11630    );
11631    pub fn gtk_app_chooser_widget_set_show_recommended(
11632        self_: *mut GtkAppChooserWidget,
11633        setting: gboolean,
11634    );
11635
11636    //=========================================================================
11637    // GtkApplication
11638    //=========================================================================
11639    pub fn gtk_application_get_type() -> GType;
11640    pub fn gtk_application_new(
11641        application_id: *const c_char,
11642        flags: gio::GApplicationFlags,
11643    ) -> *mut GtkApplication;
11644    pub fn gtk_application_add_window(application: *mut GtkApplication, window: *mut GtkWindow);
11645    pub fn gtk_application_get_accels_for_action(
11646        application: *mut GtkApplication,
11647        detailed_action_name: *const c_char,
11648    ) -> *mut *mut c_char;
11649    pub fn gtk_application_get_actions_for_accel(
11650        application: *mut GtkApplication,
11651        accel: *const c_char,
11652    ) -> *mut *mut c_char;
11653    pub fn gtk_application_get_active_window(application: *mut GtkApplication) -> *mut GtkWindow;
11654    pub fn gtk_application_get_menu_by_id(
11655        application: *mut GtkApplication,
11656        id: *const c_char,
11657    ) -> *mut gio::GMenu;
11658    pub fn gtk_application_get_menubar(application: *mut GtkApplication) -> *mut gio::GMenuModel;
11659    pub fn gtk_application_get_window_by_id(
11660        application: *mut GtkApplication,
11661        id: c_uint,
11662    ) -> *mut GtkWindow;
11663    pub fn gtk_application_get_windows(application: *mut GtkApplication) -> *mut glib::GList;
11664    pub fn gtk_application_inhibit(
11665        application: *mut GtkApplication,
11666        window: *mut GtkWindow,
11667        flags: GtkApplicationInhibitFlags,
11668        reason: *const c_char,
11669    ) -> c_uint;
11670    pub fn gtk_application_list_action_descriptions(
11671        application: *mut GtkApplication,
11672    ) -> *mut *mut c_char;
11673    pub fn gtk_application_remove_window(application: *mut GtkApplication, window: *mut GtkWindow);
11674    pub fn gtk_application_set_accels_for_action(
11675        application: *mut GtkApplication,
11676        detailed_action_name: *const c_char,
11677        accels: *const *const c_char,
11678    );
11679    pub fn gtk_application_set_menubar(
11680        application: *mut GtkApplication,
11681        menubar: *mut gio::GMenuModel,
11682    );
11683    pub fn gtk_application_uninhibit(application: *mut GtkApplication, cookie: c_uint);
11684
11685    //=========================================================================
11686    // GtkApplicationWindow
11687    //=========================================================================
11688    pub fn gtk_application_window_get_type() -> GType;
11689    pub fn gtk_application_window_new(application: *mut GtkApplication) -> *mut GtkWidget;
11690    pub fn gtk_application_window_get_help_overlay(
11691        window: *mut GtkApplicationWindow,
11692    ) -> *mut GtkShortcutsWindow;
11693    pub fn gtk_application_window_get_id(window: *mut GtkApplicationWindow) -> c_uint;
11694    pub fn gtk_application_window_get_show_menubar(window: *mut GtkApplicationWindow) -> gboolean;
11695    pub fn gtk_application_window_set_help_overlay(
11696        window: *mut GtkApplicationWindow,
11697        help_overlay: *mut GtkShortcutsWindow,
11698    );
11699    pub fn gtk_application_window_set_show_menubar(
11700        window: *mut GtkApplicationWindow,
11701        show_menubar: gboolean,
11702    );
11703
11704    //=========================================================================
11705    // GtkAspectFrame
11706    //=========================================================================
11707    pub fn gtk_aspect_frame_get_type() -> GType;
11708    pub fn gtk_aspect_frame_new(
11709        xalign: c_float,
11710        yalign: c_float,
11711        ratio: c_float,
11712        obey_child: gboolean,
11713    ) -> *mut GtkWidget;
11714    pub fn gtk_aspect_frame_get_child(self_: *mut GtkAspectFrame) -> *mut GtkWidget;
11715    pub fn gtk_aspect_frame_get_obey_child(self_: *mut GtkAspectFrame) -> gboolean;
11716    pub fn gtk_aspect_frame_get_ratio(self_: *mut GtkAspectFrame) -> c_float;
11717    pub fn gtk_aspect_frame_get_xalign(self_: *mut GtkAspectFrame) -> c_float;
11718    pub fn gtk_aspect_frame_get_yalign(self_: *mut GtkAspectFrame) -> c_float;
11719    pub fn gtk_aspect_frame_set_child(self_: *mut GtkAspectFrame, child: *mut GtkWidget);
11720    pub fn gtk_aspect_frame_set_obey_child(self_: *mut GtkAspectFrame, obey_child: gboolean);
11721    pub fn gtk_aspect_frame_set_ratio(self_: *mut GtkAspectFrame, ratio: c_float);
11722    pub fn gtk_aspect_frame_set_xalign(self_: *mut GtkAspectFrame, xalign: c_float);
11723    pub fn gtk_aspect_frame_set_yalign(self_: *mut GtkAspectFrame, yalign: c_float);
11724
11725    //=========================================================================
11726    // GtkAssistant
11727    //=========================================================================
11728    pub fn gtk_assistant_get_type() -> GType;
11729    pub fn gtk_assistant_new() -> *mut GtkWidget;
11730    pub fn gtk_assistant_add_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
11731    pub fn gtk_assistant_append_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
11732    pub fn gtk_assistant_commit(assistant: *mut GtkAssistant);
11733    pub fn gtk_assistant_get_current_page(assistant: *mut GtkAssistant) -> c_int;
11734    pub fn gtk_assistant_get_n_pages(assistant: *mut GtkAssistant) -> c_int;
11735    pub fn gtk_assistant_get_nth_page(
11736        assistant: *mut GtkAssistant,
11737        page_num: c_int,
11738    ) -> *mut GtkWidget;
11739    pub fn gtk_assistant_get_page(
11740        assistant: *mut GtkAssistant,
11741        child: *mut GtkWidget,
11742    ) -> *mut GtkAssistantPage;
11743    pub fn gtk_assistant_get_page_complete(
11744        assistant: *mut GtkAssistant,
11745        page: *mut GtkWidget,
11746    ) -> gboolean;
11747    pub fn gtk_assistant_get_page_title(
11748        assistant: *mut GtkAssistant,
11749        page: *mut GtkWidget,
11750    ) -> *const c_char;
11751    pub fn gtk_assistant_get_page_type(
11752        assistant: *mut GtkAssistant,
11753        page: *mut GtkWidget,
11754    ) -> GtkAssistantPageType;
11755    pub fn gtk_assistant_get_pages(assistant: *mut GtkAssistant) -> *mut gio::GListModel;
11756    pub fn gtk_assistant_insert_page(
11757        assistant: *mut GtkAssistant,
11758        page: *mut GtkWidget,
11759        position: c_int,
11760    ) -> c_int;
11761    pub fn gtk_assistant_next_page(assistant: *mut GtkAssistant);
11762    pub fn gtk_assistant_prepend_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
11763    pub fn gtk_assistant_previous_page(assistant: *mut GtkAssistant);
11764    pub fn gtk_assistant_remove_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
11765    pub fn gtk_assistant_remove_page(assistant: *mut GtkAssistant, page_num: c_int);
11766    pub fn gtk_assistant_set_current_page(assistant: *mut GtkAssistant, page_num: c_int);
11767    pub fn gtk_assistant_set_forward_page_func(
11768        assistant: *mut GtkAssistant,
11769        page_func: GtkAssistantPageFunc,
11770        data: gpointer,
11771        destroy: glib::GDestroyNotify,
11772    );
11773    pub fn gtk_assistant_set_page_complete(
11774        assistant: *mut GtkAssistant,
11775        page: *mut GtkWidget,
11776        complete: gboolean,
11777    );
11778    pub fn gtk_assistant_set_page_title(
11779        assistant: *mut GtkAssistant,
11780        page: *mut GtkWidget,
11781        title: *const c_char,
11782    );
11783    pub fn gtk_assistant_set_page_type(
11784        assistant: *mut GtkAssistant,
11785        page: *mut GtkWidget,
11786        type_: GtkAssistantPageType,
11787    );
11788    pub fn gtk_assistant_update_buttons_state(assistant: *mut GtkAssistant);
11789
11790    //=========================================================================
11791    // GtkAssistantPage
11792    //=========================================================================
11793    pub fn gtk_assistant_page_get_type() -> GType;
11794    pub fn gtk_assistant_page_get_child(page: *mut GtkAssistantPage) -> *mut GtkWidget;
11795
11796    //=========================================================================
11797    // GtkBinLayout
11798    //=========================================================================
11799    pub fn gtk_bin_layout_get_type() -> GType;
11800    pub fn gtk_bin_layout_new() -> *mut GtkLayoutManager;
11801
11802    //=========================================================================
11803    // GtkBookmarkList
11804    //=========================================================================
11805    pub fn gtk_bookmark_list_get_type() -> GType;
11806    pub fn gtk_bookmark_list_new(
11807        filename: *const c_char,
11808        attributes: *const c_char,
11809    ) -> *mut GtkBookmarkList;
11810    pub fn gtk_bookmark_list_get_attributes(self_: *mut GtkBookmarkList) -> *const c_char;
11811    pub fn gtk_bookmark_list_get_filename(self_: *mut GtkBookmarkList) -> *const c_char;
11812    pub fn gtk_bookmark_list_get_io_priority(self_: *mut GtkBookmarkList) -> c_int;
11813    pub fn gtk_bookmark_list_is_loading(self_: *mut GtkBookmarkList) -> gboolean;
11814    pub fn gtk_bookmark_list_set_attributes(self_: *mut GtkBookmarkList, attributes: *const c_char);
11815    pub fn gtk_bookmark_list_set_io_priority(self_: *mut GtkBookmarkList, io_priority: c_int);
11816
11817    //=========================================================================
11818    // GtkBoolFilter
11819    //=========================================================================
11820    pub fn gtk_bool_filter_get_type() -> GType;
11821    pub fn gtk_bool_filter_new(expression: *mut GtkExpression) -> *mut GtkBoolFilter;
11822    pub fn gtk_bool_filter_get_expression(self_: *mut GtkBoolFilter) -> *mut GtkExpression;
11823    pub fn gtk_bool_filter_get_invert(self_: *mut GtkBoolFilter) -> gboolean;
11824    pub fn gtk_bool_filter_set_expression(
11825        self_: *mut GtkBoolFilter,
11826        expression: *mut GtkExpression,
11827    );
11828    pub fn gtk_bool_filter_set_invert(self_: *mut GtkBoolFilter, invert: gboolean);
11829
11830    //=========================================================================
11831    // GtkBox
11832    //=========================================================================
11833    pub fn gtk_box_get_type() -> GType;
11834    pub fn gtk_box_new(orientation: GtkOrientation, spacing: c_int) -> *mut GtkWidget;
11835    pub fn gtk_box_append(box_: *mut GtkBox, child: *mut GtkWidget);
11836    #[cfg(feature = "v4_12")]
11837    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11838    pub fn gtk_box_get_baseline_child(box_: *mut GtkBox) -> c_int;
11839    pub fn gtk_box_get_baseline_position(box_: *mut GtkBox) -> GtkBaselinePosition;
11840    pub fn gtk_box_get_homogeneous(box_: *mut GtkBox) -> gboolean;
11841    pub fn gtk_box_get_spacing(box_: *mut GtkBox) -> c_int;
11842    pub fn gtk_box_insert_child_after(
11843        box_: *mut GtkBox,
11844        child: *mut GtkWidget,
11845        sibling: *mut GtkWidget,
11846    );
11847    pub fn gtk_box_prepend(box_: *mut GtkBox, child: *mut GtkWidget);
11848    pub fn gtk_box_remove(box_: *mut GtkBox, child: *mut GtkWidget);
11849    pub fn gtk_box_reorder_child_after(
11850        box_: *mut GtkBox,
11851        child: *mut GtkWidget,
11852        sibling: *mut GtkWidget,
11853    );
11854    #[cfg(feature = "v4_12")]
11855    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11856    pub fn gtk_box_set_baseline_child(box_: *mut GtkBox, child: c_int);
11857    pub fn gtk_box_set_baseline_position(box_: *mut GtkBox, position: GtkBaselinePosition);
11858    pub fn gtk_box_set_homogeneous(box_: *mut GtkBox, homogeneous: gboolean);
11859    pub fn gtk_box_set_spacing(box_: *mut GtkBox, spacing: c_int);
11860
11861    //=========================================================================
11862    // GtkBoxLayout
11863    //=========================================================================
11864    pub fn gtk_box_layout_get_type() -> GType;
11865    pub fn gtk_box_layout_new(orientation: GtkOrientation) -> *mut GtkLayoutManager;
11866    #[cfg(feature = "v4_12")]
11867    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11868    pub fn gtk_box_layout_get_baseline_child(box_layout: *mut GtkBoxLayout) -> c_int;
11869    pub fn gtk_box_layout_get_baseline_position(
11870        box_layout: *mut GtkBoxLayout,
11871    ) -> GtkBaselinePosition;
11872    pub fn gtk_box_layout_get_homogeneous(box_layout: *mut GtkBoxLayout) -> gboolean;
11873    pub fn gtk_box_layout_get_spacing(box_layout: *mut GtkBoxLayout) -> c_uint;
11874    #[cfg(feature = "v4_12")]
11875    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11876    pub fn gtk_box_layout_set_baseline_child(box_layout: *mut GtkBoxLayout, child: c_int);
11877    pub fn gtk_box_layout_set_baseline_position(
11878        box_layout: *mut GtkBoxLayout,
11879        position: GtkBaselinePosition,
11880    );
11881    pub fn gtk_box_layout_set_homogeneous(box_layout: *mut GtkBoxLayout, homogeneous: gboolean);
11882    pub fn gtk_box_layout_set_spacing(box_layout: *mut GtkBoxLayout, spacing: c_uint);
11883
11884    //=========================================================================
11885    // GtkBuilder
11886    //=========================================================================
11887    pub fn gtk_builder_get_type() -> GType;
11888    pub fn gtk_builder_new() -> *mut GtkBuilder;
11889    pub fn gtk_builder_new_from_file(filename: *const c_char) -> *mut GtkBuilder;
11890    pub fn gtk_builder_new_from_resource(resource_path: *const c_char) -> *mut GtkBuilder;
11891    pub fn gtk_builder_new_from_string(string: *const c_char, length: ssize_t) -> *mut GtkBuilder;
11892    pub fn gtk_builder_add_from_file(
11893        builder: *mut GtkBuilder,
11894        filename: *const c_char,
11895        error: *mut *mut glib::GError,
11896    ) -> gboolean;
11897    pub fn gtk_builder_add_from_resource(
11898        builder: *mut GtkBuilder,
11899        resource_path: *const c_char,
11900        error: *mut *mut glib::GError,
11901    ) -> gboolean;
11902    pub fn gtk_builder_add_from_string(
11903        builder: *mut GtkBuilder,
11904        buffer: *const c_char,
11905        length: ssize_t,
11906        error: *mut *mut glib::GError,
11907    ) -> gboolean;
11908    pub fn gtk_builder_add_objects_from_file(
11909        builder: *mut GtkBuilder,
11910        filename: *const c_char,
11911        object_ids: *mut *const c_char,
11912        error: *mut *mut glib::GError,
11913    ) -> gboolean;
11914    pub fn gtk_builder_add_objects_from_resource(
11915        builder: *mut GtkBuilder,
11916        resource_path: *const c_char,
11917        object_ids: *mut *const c_char,
11918        error: *mut *mut glib::GError,
11919    ) -> gboolean;
11920    pub fn gtk_builder_add_objects_from_string(
11921        builder: *mut GtkBuilder,
11922        buffer: *const c_char,
11923        length: ssize_t,
11924        object_ids: *mut *const c_char,
11925        error: *mut *mut glib::GError,
11926    ) -> gboolean;
11927    pub fn gtk_builder_create_closure(
11928        builder: *mut GtkBuilder,
11929        function_name: *const c_char,
11930        flags: GtkBuilderClosureFlags,
11931        object: *mut gobject::GObject,
11932        error: *mut *mut glib::GError,
11933    ) -> *mut gobject::GClosure;
11934    pub fn gtk_builder_expose_object(
11935        builder: *mut GtkBuilder,
11936        name: *const c_char,
11937        object: *mut gobject::GObject,
11938    );
11939    pub fn gtk_builder_extend_with_template(
11940        builder: *mut GtkBuilder,
11941        object: *mut gobject::GObject,
11942        template_type: GType,
11943        buffer: *const c_char,
11944        length: ssize_t,
11945        error: *mut *mut glib::GError,
11946    ) -> gboolean;
11947    pub fn gtk_builder_get_current_object(builder: *mut GtkBuilder) -> *mut gobject::GObject;
11948    pub fn gtk_builder_get_object(
11949        builder: *mut GtkBuilder,
11950        name: *const c_char,
11951    ) -> *mut gobject::GObject;
11952    pub fn gtk_builder_get_objects(builder: *mut GtkBuilder) -> *mut glib::GSList;
11953    pub fn gtk_builder_get_scope(builder: *mut GtkBuilder) -> *mut GtkBuilderScope;
11954    pub fn gtk_builder_get_translation_domain(builder: *mut GtkBuilder) -> *const c_char;
11955    pub fn gtk_builder_get_type_from_name(
11956        builder: *mut GtkBuilder,
11957        type_name: *const c_char,
11958    ) -> GType;
11959    pub fn gtk_builder_set_current_object(
11960        builder: *mut GtkBuilder,
11961        current_object: *mut gobject::GObject,
11962    );
11963    pub fn gtk_builder_set_scope(builder: *mut GtkBuilder, scope: *mut GtkBuilderScope);
11964    pub fn gtk_builder_set_translation_domain(builder: *mut GtkBuilder, domain: *const c_char);
11965    pub fn gtk_builder_value_from_string(
11966        builder: *mut GtkBuilder,
11967        pspec: *mut gobject::GParamSpec,
11968        string: *const c_char,
11969        value: *mut gobject::GValue,
11970        error: *mut *mut glib::GError,
11971    ) -> gboolean;
11972    pub fn gtk_builder_value_from_string_type(
11973        builder: *mut GtkBuilder,
11974        type_: GType,
11975        string: *const c_char,
11976        value: *mut gobject::GValue,
11977        error: *mut *mut glib::GError,
11978    ) -> gboolean;
11979
11980    //=========================================================================
11981    // GtkBuilderCScope
11982    //=========================================================================
11983    pub fn gtk_builder_cscope_get_type() -> GType;
11984    pub fn gtk_builder_cscope_new() -> *mut GtkBuilderCScope;
11985    pub fn gtk_builder_cscope_add_callback_symbol(
11986        self_: *mut GtkBuilderCScope,
11987        callback_name: *const c_char,
11988        callback_symbol: gobject::GCallback,
11989    );
11990    pub fn gtk_builder_cscope_add_callback_symbols(
11991        self_: *mut GtkBuilderCScope,
11992        first_callback_name: *const c_char,
11993        first_callback_symbol: gobject::GCallback,
11994        ...
11995    );
11996    pub fn gtk_builder_cscope_lookup_callback_symbol(
11997        self_: *mut GtkBuilderCScope,
11998        callback_name: *const c_char,
11999    ) -> gobject::GCallback;
12000
12001    //=========================================================================
12002    // GtkBuilderListItemFactory
12003    //=========================================================================
12004    pub fn gtk_builder_list_item_factory_get_type() -> GType;
12005    pub fn gtk_builder_list_item_factory_new_from_bytes(
12006        scope: *mut GtkBuilderScope,
12007        bytes: *mut glib::GBytes,
12008    ) -> *mut GtkListItemFactory;
12009    pub fn gtk_builder_list_item_factory_new_from_resource(
12010        scope: *mut GtkBuilderScope,
12011        resource_path: *const c_char,
12012    ) -> *mut GtkListItemFactory;
12013    pub fn gtk_builder_list_item_factory_get_bytes(
12014        self_: *mut GtkBuilderListItemFactory,
12015    ) -> *mut glib::GBytes;
12016    pub fn gtk_builder_list_item_factory_get_resource(
12017        self_: *mut GtkBuilderListItemFactory,
12018    ) -> *const c_char;
12019    pub fn gtk_builder_list_item_factory_get_scope(
12020        self_: *mut GtkBuilderListItemFactory,
12021    ) -> *mut GtkBuilderScope;
12022
12023    //=========================================================================
12024    // GtkButton
12025    //=========================================================================
12026    pub fn gtk_button_get_type() -> GType;
12027    pub fn gtk_button_new() -> *mut GtkWidget;
12028    pub fn gtk_button_new_from_icon_name(icon_name: *const c_char) -> *mut GtkWidget;
12029    pub fn gtk_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
12030    pub fn gtk_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
12031    #[cfg(feature = "v4_12")]
12032    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12033    pub fn gtk_button_get_can_shrink(button: *mut GtkButton) -> gboolean;
12034    pub fn gtk_button_get_child(button: *mut GtkButton) -> *mut GtkWidget;
12035    pub fn gtk_button_get_has_frame(button: *mut GtkButton) -> gboolean;
12036    pub fn gtk_button_get_icon_name(button: *mut GtkButton) -> *const c_char;
12037    pub fn gtk_button_get_label(button: *mut GtkButton) -> *const c_char;
12038    pub fn gtk_button_get_use_underline(button: *mut GtkButton) -> gboolean;
12039    #[cfg(feature = "v4_12")]
12040    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12041    pub fn gtk_button_set_can_shrink(button: *mut GtkButton, can_shrink: gboolean);
12042    pub fn gtk_button_set_child(button: *mut GtkButton, child: *mut GtkWidget);
12043    pub fn gtk_button_set_has_frame(button: *mut GtkButton, has_frame: gboolean);
12044    pub fn gtk_button_set_icon_name(button: *mut GtkButton, icon_name: *const c_char);
12045    pub fn gtk_button_set_label(button: *mut GtkButton, label: *const c_char);
12046    pub fn gtk_button_set_use_underline(button: *mut GtkButton, use_underline: gboolean);
12047
12048    //=========================================================================
12049    // GtkCClosureExpression
12050    //=========================================================================
12051    pub fn gtk_cclosure_expression_get_type() -> GType;
12052    pub fn gtk_cclosure_expression_new(
12053        value_type: GType,
12054        marshal: gobject::GClosureMarshal,
12055        n_params: c_uint,
12056        params: *mut *mut GtkExpression,
12057        callback_func: gobject::GCallback,
12058        user_data: gpointer,
12059        user_destroy: gobject::GClosureNotify,
12060    ) -> *mut GtkCClosureExpression;
12061
12062    //=========================================================================
12063    // GtkCalendar
12064    //=========================================================================
12065    pub fn gtk_calendar_get_type() -> GType;
12066    pub fn gtk_calendar_new() -> *mut GtkWidget;
12067    pub fn gtk_calendar_clear_marks(calendar: *mut GtkCalendar);
12068    pub fn gtk_calendar_get_date(self_: *mut GtkCalendar) -> *mut glib::GDateTime;
12069    #[cfg(feature = "v4_14")]
12070    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12071    pub fn gtk_calendar_get_day(self_: *mut GtkCalendar) -> c_int;
12072    pub fn gtk_calendar_get_day_is_marked(calendar: *mut GtkCalendar, day: c_uint) -> gboolean;
12073    #[cfg(feature = "v4_14")]
12074    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12075    pub fn gtk_calendar_get_month(self_: *mut GtkCalendar) -> c_int;
12076    pub fn gtk_calendar_get_show_day_names(self_: *mut GtkCalendar) -> gboolean;
12077    pub fn gtk_calendar_get_show_heading(self_: *mut GtkCalendar) -> gboolean;
12078    pub fn gtk_calendar_get_show_week_numbers(self_: *mut GtkCalendar) -> gboolean;
12079    #[cfg(feature = "v4_14")]
12080    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12081    pub fn gtk_calendar_get_year(self_: *mut GtkCalendar) -> c_int;
12082    pub fn gtk_calendar_mark_day(calendar: *mut GtkCalendar, day: c_uint);
12083    pub fn gtk_calendar_select_day(self_: *mut GtkCalendar, date: *mut glib::GDateTime);
12084    #[cfg(feature = "v4_20")]
12085    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
12086    pub fn gtk_calendar_set_date(self_: *mut GtkCalendar, date: *mut glib::GDateTime);
12087    #[cfg(feature = "v4_14")]
12088    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12089    pub fn gtk_calendar_set_day(self_: *mut GtkCalendar, day: c_int);
12090    #[cfg(feature = "v4_14")]
12091    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12092    pub fn gtk_calendar_set_month(self_: *mut GtkCalendar, month: c_int);
12093    pub fn gtk_calendar_set_show_day_names(self_: *mut GtkCalendar, value: gboolean);
12094    pub fn gtk_calendar_set_show_heading(self_: *mut GtkCalendar, value: gboolean);
12095    pub fn gtk_calendar_set_show_week_numbers(self_: *mut GtkCalendar, value: gboolean);
12096    #[cfg(feature = "v4_14")]
12097    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12098    pub fn gtk_calendar_set_year(self_: *mut GtkCalendar, year: c_int);
12099    pub fn gtk_calendar_unmark_day(calendar: *mut GtkCalendar, day: c_uint);
12100
12101    //=========================================================================
12102    // GtkCallbackAction
12103    //=========================================================================
12104    pub fn gtk_callback_action_get_type() -> GType;
12105    pub fn gtk_callback_action_new(
12106        callback: GtkShortcutFunc,
12107        data: gpointer,
12108        destroy: glib::GDestroyNotify,
12109    ) -> *mut GtkCallbackAction;
12110
12111    //=========================================================================
12112    // GtkCellArea
12113    //=========================================================================
12114    pub fn gtk_cell_area_get_type() -> GType;
12115    pub fn gtk_cell_area_activate(
12116        area: *mut GtkCellArea,
12117        context: *mut GtkCellAreaContext,
12118        widget: *mut GtkWidget,
12119        cell_area: *const gdk::GdkRectangle,
12120        flags: GtkCellRendererState,
12121        edit_only: gboolean,
12122    ) -> gboolean;
12123    pub fn gtk_cell_area_activate_cell(
12124        area: *mut GtkCellArea,
12125        widget: *mut GtkWidget,
12126        renderer: *mut GtkCellRenderer,
12127        event: *mut gdk::GdkEvent,
12128        cell_area: *const gdk::GdkRectangle,
12129        flags: GtkCellRendererState,
12130    ) -> gboolean;
12131    pub fn gtk_cell_area_add(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12132    pub fn gtk_cell_area_add_focus_sibling(
12133        area: *mut GtkCellArea,
12134        renderer: *mut GtkCellRenderer,
12135        sibling: *mut GtkCellRenderer,
12136    );
12137    pub fn gtk_cell_area_add_with_properties(
12138        area: *mut GtkCellArea,
12139        renderer: *mut GtkCellRenderer,
12140        first_prop_name: *const c_char,
12141        ...
12142    );
12143    pub fn gtk_cell_area_apply_attributes(
12144        area: *mut GtkCellArea,
12145        tree_model: *mut GtkTreeModel,
12146        iter: *mut GtkTreeIter,
12147        is_expander: gboolean,
12148        is_expanded: gboolean,
12149    );
12150    pub fn gtk_cell_area_attribute_connect(
12151        area: *mut GtkCellArea,
12152        renderer: *mut GtkCellRenderer,
12153        attribute: *const c_char,
12154        column: c_int,
12155    );
12156    pub fn gtk_cell_area_attribute_disconnect(
12157        area: *mut GtkCellArea,
12158        renderer: *mut GtkCellRenderer,
12159        attribute: *const c_char,
12160    );
12161    pub fn gtk_cell_area_attribute_get_column(
12162        area: *mut GtkCellArea,
12163        renderer: *mut GtkCellRenderer,
12164        attribute: *const c_char,
12165    ) -> c_int;
12166    pub fn gtk_cell_area_cell_get(
12167        area: *mut GtkCellArea,
12168        renderer: *mut GtkCellRenderer,
12169        first_prop_name: *const c_char,
12170        ...
12171    );
12172    pub fn gtk_cell_area_cell_get_property(
12173        area: *mut GtkCellArea,
12174        renderer: *mut GtkCellRenderer,
12175        property_name: *const c_char,
12176        value: *mut gobject::GValue,
12177    );
12178    //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);
12179    pub fn gtk_cell_area_cell_set(
12180        area: *mut GtkCellArea,
12181        renderer: *mut GtkCellRenderer,
12182        first_prop_name: *const c_char,
12183        ...
12184    );
12185    pub fn gtk_cell_area_cell_set_property(
12186        area: *mut GtkCellArea,
12187        renderer: *mut GtkCellRenderer,
12188        property_name: *const c_char,
12189        value: *const gobject::GValue,
12190    );
12191    //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);
12192    pub fn gtk_cell_area_copy_context(
12193        area: *mut GtkCellArea,
12194        context: *mut GtkCellAreaContext,
12195    ) -> *mut GtkCellAreaContext;
12196    pub fn gtk_cell_area_create_context(area: *mut GtkCellArea) -> *mut GtkCellAreaContext;
12197    pub fn gtk_cell_area_event(
12198        area: *mut GtkCellArea,
12199        context: *mut GtkCellAreaContext,
12200        widget: *mut GtkWidget,
12201        event: *mut gdk::GdkEvent,
12202        cell_area: *const gdk::GdkRectangle,
12203        flags: GtkCellRendererState,
12204    ) -> c_int;
12205    pub fn gtk_cell_area_focus(area: *mut GtkCellArea, direction: GtkDirectionType) -> gboolean;
12206    pub fn gtk_cell_area_foreach(
12207        area: *mut GtkCellArea,
12208        callback: GtkCellCallback,
12209        callback_data: gpointer,
12210    );
12211    pub fn gtk_cell_area_foreach_alloc(
12212        area: *mut GtkCellArea,
12213        context: *mut GtkCellAreaContext,
12214        widget: *mut GtkWidget,
12215        cell_area: *const gdk::GdkRectangle,
12216        background_area: *const gdk::GdkRectangle,
12217        callback: GtkCellAllocCallback,
12218        callback_data: gpointer,
12219    );
12220    pub fn gtk_cell_area_get_cell_allocation(
12221        area: *mut GtkCellArea,
12222        context: *mut GtkCellAreaContext,
12223        widget: *mut GtkWidget,
12224        renderer: *mut GtkCellRenderer,
12225        cell_area: *const gdk::GdkRectangle,
12226        allocation: *mut gdk::GdkRectangle,
12227    );
12228    pub fn gtk_cell_area_get_cell_at_position(
12229        area: *mut GtkCellArea,
12230        context: *mut GtkCellAreaContext,
12231        widget: *mut GtkWidget,
12232        cell_area: *const gdk::GdkRectangle,
12233        x: c_int,
12234        y: c_int,
12235        alloc_area: *mut gdk::GdkRectangle,
12236    ) -> *mut GtkCellRenderer;
12237    pub fn gtk_cell_area_get_current_path_string(area: *mut GtkCellArea) -> *const c_char;
12238    pub fn gtk_cell_area_get_edit_widget(area: *mut GtkCellArea) -> *mut GtkCellEditable;
12239    pub fn gtk_cell_area_get_edited_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
12240    pub fn gtk_cell_area_get_focus_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
12241    pub fn gtk_cell_area_get_focus_from_sibling(
12242        area: *mut GtkCellArea,
12243        renderer: *mut GtkCellRenderer,
12244    ) -> *mut GtkCellRenderer;
12245    pub fn gtk_cell_area_get_focus_siblings(
12246        area: *mut GtkCellArea,
12247        renderer: *mut GtkCellRenderer,
12248    ) -> *const glib::GList;
12249    pub fn gtk_cell_area_get_preferred_height(
12250        area: *mut GtkCellArea,
12251        context: *mut GtkCellAreaContext,
12252        widget: *mut GtkWidget,
12253        minimum_height: *mut c_int,
12254        natural_height: *mut c_int,
12255    );
12256    pub fn gtk_cell_area_get_preferred_height_for_width(
12257        area: *mut GtkCellArea,
12258        context: *mut GtkCellAreaContext,
12259        widget: *mut GtkWidget,
12260        width: c_int,
12261        minimum_height: *mut c_int,
12262        natural_height: *mut c_int,
12263    );
12264    pub fn gtk_cell_area_get_preferred_width(
12265        area: *mut GtkCellArea,
12266        context: *mut GtkCellAreaContext,
12267        widget: *mut GtkWidget,
12268        minimum_width: *mut c_int,
12269        natural_width: *mut c_int,
12270    );
12271    pub fn gtk_cell_area_get_preferred_width_for_height(
12272        area: *mut GtkCellArea,
12273        context: *mut GtkCellAreaContext,
12274        widget: *mut GtkWidget,
12275        height: c_int,
12276        minimum_width: *mut c_int,
12277        natural_width: *mut c_int,
12278    );
12279    pub fn gtk_cell_area_get_request_mode(area: *mut GtkCellArea) -> GtkSizeRequestMode;
12280    pub fn gtk_cell_area_has_renderer(
12281        area: *mut GtkCellArea,
12282        renderer: *mut GtkCellRenderer,
12283    ) -> gboolean;
12284    pub fn gtk_cell_area_inner_cell_area(
12285        area: *mut GtkCellArea,
12286        widget: *mut GtkWidget,
12287        cell_area: *const gdk::GdkRectangle,
12288        inner_area: *mut gdk::GdkRectangle,
12289    );
12290    pub fn gtk_cell_area_is_activatable(area: *mut GtkCellArea) -> gboolean;
12291    pub fn gtk_cell_area_is_focus_sibling(
12292        area: *mut GtkCellArea,
12293        renderer: *mut GtkCellRenderer,
12294        sibling: *mut GtkCellRenderer,
12295    ) -> gboolean;
12296    pub fn gtk_cell_area_remove(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12297    pub fn gtk_cell_area_remove_focus_sibling(
12298        area: *mut GtkCellArea,
12299        renderer: *mut GtkCellRenderer,
12300        sibling: *mut GtkCellRenderer,
12301    );
12302    pub fn gtk_cell_area_request_renderer(
12303        area: *mut GtkCellArea,
12304        renderer: *mut GtkCellRenderer,
12305        orientation: GtkOrientation,
12306        widget: *mut GtkWidget,
12307        for_size: c_int,
12308        minimum_size: *mut c_int,
12309        natural_size: *mut c_int,
12310    );
12311    pub fn gtk_cell_area_set_focus_cell(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12312    pub fn gtk_cell_area_snapshot(
12313        area: *mut GtkCellArea,
12314        context: *mut GtkCellAreaContext,
12315        widget: *mut GtkWidget,
12316        snapshot: *mut GtkSnapshot,
12317        background_area: *const gdk::GdkRectangle,
12318        cell_area: *const gdk::GdkRectangle,
12319        flags: GtkCellRendererState,
12320        paint_focus: gboolean,
12321    );
12322    pub fn gtk_cell_area_stop_editing(area: *mut GtkCellArea, canceled: gboolean);
12323
12324    //=========================================================================
12325    // GtkCellAreaBox
12326    //=========================================================================
12327    pub fn gtk_cell_area_box_get_type() -> GType;
12328    pub fn gtk_cell_area_box_new() -> *mut GtkCellArea;
12329    pub fn gtk_cell_area_box_get_spacing(box_: *mut GtkCellAreaBox) -> c_int;
12330    pub fn gtk_cell_area_box_pack_end(
12331        box_: *mut GtkCellAreaBox,
12332        renderer: *mut GtkCellRenderer,
12333        expand: gboolean,
12334        align: gboolean,
12335        fixed: gboolean,
12336    );
12337    pub fn gtk_cell_area_box_pack_start(
12338        box_: *mut GtkCellAreaBox,
12339        renderer: *mut GtkCellRenderer,
12340        expand: gboolean,
12341        align: gboolean,
12342        fixed: gboolean,
12343    );
12344    pub fn gtk_cell_area_box_set_spacing(box_: *mut GtkCellAreaBox, spacing: c_int);
12345
12346    //=========================================================================
12347    // GtkCellAreaContext
12348    //=========================================================================
12349    pub fn gtk_cell_area_context_get_type() -> GType;
12350    pub fn gtk_cell_area_context_allocate(
12351        context: *mut GtkCellAreaContext,
12352        width: c_int,
12353        height: c_int,
12354    );
12355    pub fn gtk_cell_area_context_get_allocation(
12356        context: *mut GtkCellAreaContext,
12357        width: *mut c_int,
12358        height: *mut c_int,
12359    );
12360    pub fn gtk_cell_area_context_get_area(context: *mut GtkCellAreaContext) -> *mut GtkCellArea;
12361    pub fn gtk_cell_area_context_get_preferred_height(
12362        context: *mut GtkCellAreaContext,
12363        minimum_height: *mut c_int,
12364        natural_height: *mut c_int,
12365    );
12366    pub fn gtk_cell_area_context_get_preferred_height_for_width(
12367        context: *mut GtkCellAreaContext,
12368        width: c_int,
12369        minimum_height: *mut c_int,
12370        natural_height: *mut c_int,
12371    );
12372    pub fn gtk_cell_area_context_get_preferred_width(
12373        context: *mut GtkCellAreaContext,
12374        minimum_width: *mut c_int,
12375        natural_width: *mut c_int,
12376    );
12377    pub fn gtk_cell_area_context_get_preferred_width_for_height(
12378        context: *mut GtkCellAreaContext,
12379        height: c_int,
12380        minimum_width: *mut c_int,
12381        natural_width: *mut c_int,
12382    );
12383    pub fn gtk_cell_area_context_push_preferred_height(
12384        context: *mut GtkCellAreaContext,
12385        minimum_height: c_int,
12386        natural_height: c_int,
12387    );
12388    pub fn gtk_cell_area_context_push_preferred_width(
12389        context: *mut GtkCellAreaContext,
12390        minimum_width: c_int,
12391        natural_width: c_int,
12392    );
12393    pub fn gtk_cell_area_context_reset(context: *mut GtkCellAreaContext);
12394
12395    //=========================================================================
12396    // GtkCellRenderer
12397    //=========================================================================
12398    pub fn gtk_cell_renderer_get_type() -> GType;
12399    pub fn gtk_cell_renderer_activate(
12400        cell: *mut GtkCellRenderer,
12401        event: *mut gdk::GdkEvent,
12402        widget: *mut GtkWidget,
12403        path: *const c_char,
12404        background_area: *const gdk::GdkRectangle,
12405        cell_area: *const gdk::GdkRectangle,
12406        flags: GtkCellRendererState,
12407    ) -> gboolean;
12408    pub fn gtk_cell_renderer_get_aligned_area(
12409        cell: *mut GtkCellRenderer,
12410        widget: *mut GtkWidget,
12411        flags: GtkCellRendererState,
12412        cell_area: *const gdk::GdkRectangle,
12413        aligned_area: *mut gdk::GdkRectangle,
12414    );
12415    pub fn gtk_cell_renderer_get_alignment(
12416        cell: *mut GtkCellRenderer,
12417        xalign: *mut c_float,
12418        yalign: *mut c_float,
12419    );
12420    pub fn gtk_cell_renderer_get_fixed_size(
12421        cell: *mut GtkCellRenderer,
12422        width: *mut c_int,
12423        height: *mut c_int,
12424    );
12425    pub fn gtk_cell_renderer_get_is_expanded(cell: *mut GtkCellRenderer) -> gboolean;
12426    pub fn gtk_cell_renderer_get_is_expander(cell: *mut GtkCellRenderer) -> gboolean;
12427    pub fn gtk_cell_renderer_get_padding(
12428        cell: *mut GtkCellRenderer,
12429        xpad: *mut c_int,
12430        ypad: *mut c_int,
12431    );
12432    pub fn gtk_cell_renderer_get_preferred_height(
12433        cell: *mut GtkCellRenderer,
12434        widget: *mut GtkWidget,
12435        minimum_size: *mut c_int,
12436        natural_size: *mut c_int,
12437    );
12438    pub fn gtk_cell_renderer_get_preferred_height_for_width(
12439        cell: *mut GtkCellRenderer,
12440        widget: *mut GtkWidget,
12441        width: c_int,
12442        minimum_height: *mut c_int,
12443        natural_height: *mut c_int,
12444    );
12445    pub fn gtk_cell_renderer_get_preferred_size(
12446        cell: *mut GtkCellRenderer,
12447        widget: *mut GtkWidget,
12448        minimum_size: *mut GtkRequisition,
12449        natural_size: *mut GtkRequisition,
12450    );
12451    pub fn gtk_cell_renderer_get_preferred_width(
12452        cell: *mut GtkCellRenderer,
12453        widget: *mut GtkWidget,
12454        minimum_size: *mut c_int,
12455        natural_size: *mut c_int,
12456    );
12457    pub fn gtk_cell_renderer_get_preferred_width_for_height(
12458        cell: *mut GtkCellRenderer,
12459        widget: *mut GtkWidget,
12460        height: c_int,
12461        minimum_width: *mut c_int,
12462        natural_width: *mut c_int,
12463    );
12464    pub fn gtk_cell_renderer_get_request_mode(cell: *mut GtkCellRenderer) -> GtkSizeRequestMode;
12465    pub fn gtk_cell_renderer_get_sensitive(cell: *mut GtkCellRenderer) -> gboolean;
12466    pub fn gtk_cell_renderer_get_state(
12467        cell: *mut GtkCellRenderer,
12468        widget: *mut GtkWidget,
12469        cell_state: GtkCellRendererState,
12470    ) -> GtkStateFlags;
12471    pub fn gtk_cell_renderer_get_visible(cell: *mut GtkCellRenderer) -> gboolean;
12472    pub fn gtk_cell_renderer_is_activatable(cell: *mut GtkCellRenderer) -> gboolean;
12473    pub fn gtk_cell_renderer_set_alignment(
12474        cell: *mut GtkCellRenderer,
12475        xalign: c_float,
12476        yalign: c_float,
12477    );
12478    pub fn gtk_cell_renderer_set_fixed_size(
12479        cell: *mut GtkCellRenderer,
12480        width: c_int,
12481        height: c_int,
12482    );
12483    pub fn gtk_cell_renderer_set_is_expanded(cell: *mut GtkCellRenderer, is_expanded: gboolean);
12484    pub fn gtk_cell_renderer_set_is_expander(cell: *mut GtkCellRenderer, is_expander: gboolean);
12485    pub fn gtk_cell_renderer_set_padding(cell: *mut GtkCellRenderer, xpad: c_int, ypad: c_int);
12486    pub fn gtk_cell_renderer_set_sensitive(cell: *mut GtkCellRenderer, sensitive: gboolean);
12487    pub fn gtk_cell_renderer_set_visible(cell: *mut GtkCellRenderer, visible: gboolean);
12488    pub fn gtk_cell_renderer_snapshot(
12489        cell: *mut GtkCellRenderer,
12490        snapshot: *mut GtkSnapshot,
12491        widget: *mut GtkWidget,
12492        background_area: *const gdk::GdkRectangle,
12493        cell_area: *const gdk::GdkRectangle,
12494        flags: GtkCellRendererState,
12495    );
12496    pub fn gtk_cell_renderer_start_editing(
12497        cell: *mut GtkCellRenderer,
12498        event: *mut gdk::GdkEvent,
12499        widget: *mut GtkWidget,
12500        path: *const c_char,
12501        background_area: *const gdk::GdkRectangle,
12502        cell_area: *const gdk::GdkRectangle,
12503        flags: GtkCellRendererState,
12504    ) -> *mut GtkCellEditable;
12505    pub fn gtk_cell_renderer_stop_editing(cell: *mut GtkCellRenderer, canceled: gboolean);
12506
12507    //=========================================================================
12508    // GtkCellRendererAccel
12509    //=========================================================================
12510    pub fn gtk_cell_renderer_accel_get_type() -> GType;
12511    pub fn gtk_cell_renderer_accel_new() -> *mut GtkCellRenderer;
12512
12513    //=========================================================================
12514    // GtkCellRendererCombo
12515    //=========================================================================
12516    pub fn gtk_cell_renderer_combo_get_type() -> GType;
12517    pub fn gtk_cell_renderer_combo_new() -> *mut GtkCellRenderer;
12518
12519    //=========================================================================
12520    // GtkCellRendererPixbuf
12521    //=========================================================================
12522    pub fn gtk_cell_renderer_pixbuf_get_type() -> GType;
12523    pub fn gtk_cell_renderer_pixbuf_new() -> *mut GtkCellRenderer;
12524
12525    //=========================================================================
12526    // GtkCellRendererProgress
12527    //=========================================================================
12528    pub fn gtk_cell_renderer_progress_get_type() -> GType;
12529    pub fn gtk_cell_renderer_progress_new() -> *mut GtkCellRenderer;
12530
12531    //=========================================================================
12532    // GtkCellRendererSpin
12533    //=========================================================================
12534    pub fn gtk_cell_renderer_spin_get_type() -> GType;
12535    pub fn gtk_cell_renderer_spin_new() -> *mut GtkCellRenderer;
12536
12537    //=========================================================================
12538    // GtkCellRendererSpinner
12539    //=========================================================================
12540    pub fn gtk_cell_renderer_spinner_get_type() -> GType;
12541    pub fn gtk_cell_renderer_spinner_new() -> *mut GtkCellRenderer;
12542
12543    //=========================================================================
12544    // GtkCellRendererText
12545    //=========================================================================
12546    pub fn gtk_cell_renderer_text_get_type() -> GType;
12547    pub fn gtk_cell_renderer_text_new() -> *mut GtkCellRenderer;
12548    pub fn gtk_cell_renderer_text_set_fixed_height_from_font(
12549        renderer: *mut GtkCellRendererText,
12550        number_of_rows: c_int,
12551    );
12552
12553    //=========================================================================
12554    // GtkCellRendererToggle
12555    //=========================================================================
12556    pub fn gtk_cell_renderer_toggle_get_type() -> GType;
12557    pub fn gtk_cell_renderer_toggle_new() -> *mut GtkCellRenderer;
12558    pub fn gtk_cell_renderer_toggle_get_activatable(toggle: *mut GtkCellRendererToggle)
12559        -> gboolean;
12560    pub fn gtk_cell_renderer_toggle_get_active(toggle: *mut GtkCellRendererToggle) -> gboolean;
12561    pub fn gtk_cell_renderer_toggle_get_radio(toggle: *mut GtkCellRendererToggle) -> gboolean;
12562    pub fn gtk_cell_renderer_toggle_set_activatable(
12563        toggle: *mut GtkCellRendererToggle,
12564        setting: gboolean,
12565    );
12566    pub fn gtk_cell_renderer_toggle_set_active(
12567        toggle: *mut GtkCellRendererToggle,
12568        setting: gboolean,
12569    );
12570    pub fn gtk_cell_renderer_toggle_set_radio(toggle: *mut GtkCellRendererToggle, radio: gboolean);
12571
12572    //=========================================================================
12573    // GtkCellView
12574    //=========================================================================
12575    pub fn gtk_cell_view_get_type() -> GType;
12576    pub fn gtk_cell_view_new() -> *mut GtkWidget;
12577    pub fn gtk_cell_view_new_with_context(
12578        area: *mut GtkCellArea,
12579        context: *mut GtkCellAreaContext,
12580    ) -> *mut GtkWidget;
12581    pub fn gtk_cell_view_new_with_markup(markup: *const c_char) -> *mut GtkWidget;
12582    pub fn gtk_cell_view_new_with_text(text: *const c_char) -> *mut GtkWidget;
12583    pub fn gtk_cell_view_new_with_texture(texture: *mut gdk::GdkTexture) -> *mut GtkWidget;
12584    pub fn gtk_cell_view_get_displayed_row(cell_view: *mut GtkCellView) -> *mut GtkTreePath;
12585    pub fn gtk_cell_view_get_draw_sensitive(cell_view: *mut GtkCellView) -> gboolean;
12586    pub fn gtk_cell_view_get_fit_model(cell_view: *mut GtkCellView) -> gboolean;
12587    pub fn gtk_cell_view_get_model(cell_view: *mut GtkCellView) -> *mut GtkTreeModel;
12588    pub fn gtk_cell_view_set_displayed_row(cell_view: *mut GtkCellView, path: *mut GtkTreePath);
12589    pub fn gtk_cell_view_set_draw_sensitive(cell_view: *mut GtkCellView, draw_sensitive: gboolean);
12590    pub fn gtk_cell_view_set_fit_model(cell_view: *mut GtkCellView, fit_model: gboolean);
12591    pub fn gtk_cell_view_set_model(cell_view: *mut GtkCellView, model: *mut GtkTreeModel);
12592
12593    //=========================================================================
12594    // GtkCenterBox
12595    //=========================================================================
12596    pub fn gtk_center_box_get_type() -> GType;
12597    pub fn gtk_center_box_new() -> *mut GtkWidget;
12598    pub fn gtk_center_box_get_baseline_position(self_: *mut GtkCenterBox) -> GtkBaselinePosition;
12599    pub fn gtk_center_box_get_center_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12600    pub fn gtk_center_box_get_end_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12601    #[cfg(feature = "v4_12")]
12602    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12603    pub fn gtk_center_box_get_shrink_center_last(self_: *mut GtkCenterBox) -> gboolean;
12604    pub fn gtk_center_box_get_start_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12605    pub fn gtk_center_box_set_baseline_position(
12606        self_: *mut GtkCenterBox,
12607        position: GtkBaselinePosition,
12608    );
12609    pub fn gtk_center_box_set_center_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12610    pub fn gtk_center_box_set_end_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12611    #[cfg(feature = "v4_12")]
12612    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12613    pub fn gtk_center_box_set_shrink_center_last(
12614        self_: *mut GtkCenterBox,
12615        shrink_center_last: gboolean,
12616    );
12617    pub fn gtk_center_box_set_start_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12618
12619    //=========================================================================
12620    // GtkCenterLayout
12621    //=========================================================================
12622    pub fn gtk_center_layout_get_type() -> GType;
12623    pub fn gtk_center_layout_new() -> *mut GtkLayoutManager;
12624    pub fn gtk_center_layout_get_baseline_position(
12625        self_: *mut GtkCenterLayout,
12626    ) -> GtkBaselinePosition;
12627    pub fn gtk_center_layout_get_center_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12628    pub fn gtk_center_layout_get_end_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12629    pub fn gtk_center_layout_get_orientation(self_: *mut GtkCenterLayout) -> GtkOrientation;
12630    #[cfg(feature = "v4_12")]
12631    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12632    pub fn gtk_center_layout_get_shrink_center_last(self_: *mut GtkCenterLayout) -> gboolean;
12633    pub fn gtk_center_layout_get_start_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12634    pub fn gtk_center_layout_set_baseline_position(
12635        self_: *mut GtkCenterLayout,
12636        baseline_position: GtkBaselinePosition,
12637    );
12638    pub fn gtk_center_layout_set_center_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12639    pub fn gtk_center_layout_set_end_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12640    pub fn gtk_center_layout_set_orientation(
12641        self_: *mut GtkCenterLayout,
12642        orientation: GtkOrientation,
12643    );
12644    #[cfg(feature = "v4_12")]
12645    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12646    pub fn gtk_center_layout_set_shrink_center_last(
12647        self_: *mut GtkCenterLayout,
12648        shrink_center_last: gboolean,
12649    );
12650    pub fn gtk_center_layout_set_start_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12651
12652    //=========================================================================
12653    // GtkCheckButton
12654    //=========================================================================
12655    pub fn gtk_check_button_get_type() -> GType;
12656    pub fn gtk_check_button_new() -> *mut GtkWidget;
12657    pub fn gtk_check_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
12658    pub fn gtk_check_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
12659    pub fn gtk_check_button_get_active(self_: *mut GtkCheckButton) -> gboolean;
12660    #[cfg(feature = "v4_8")]
12661    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
12662    pub fn gtk_check_button_get_child(button: *mut GtkCheckButton) -> *mut GtkWidget;
12663    pub fn gtk_check_button_get_inconsistent(check_button: *mut GtkCheckButton) -> gboolean;
12664    pub fn gtk_check_button_get_label(self_: *mut GtkCheckButton) -> *const c_char;
12665    pub fn gtk_check_button_get_use_underline(self_: *mut GtkCheckButton) -> gboolean;
12666    pub fn gtk_check_button_set_active(self_: *mut GtkCheckButton, setting: gboolean);
12667    #[cfg(feature = "v4_8")]
12668    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
12669    pub fn gtk_check_button_set_child(button: *mut GtkCheckButton, child: *mut GtkWidget);
12670    pub fn gtk_check_button_set_group(self_: *mut GtkCheckButton, group: *mut GtkCheckButton);
12671    pub fn gtk_check_button_set_inconsistent(
12672        check_button: *mut GtkCheckButton,
12673        inconsistent: gboolean,
12674    );
12675    pub fn gtk_check_button_set_label(self_: *mut GtkCheckButton, label: *const c_char);
12676    pub fn gtk_check_button_set_use_underline(self_: *mut GtkCheckButton, setting: gboolean);
12677
12678    //=========================================================================
12679    // GtkClosureExpression
12680    //=========================================================================
12681    pub fn gtk_closure_expression_get_type() -> GType;
12682    pub fn gtk_closure_expression_new(
12683        value_type: GType,
12684        closure: *mut gobject::GClosure,
12685        n_params: c_uint,
12686        params: *mut *mut GtkExpression,
12687    ) -> *mut GtkClosureExpression;
12688
12689    //=========================================================================
12690    // GtkColorButton
12691    //=========================================================================
12692    pub fn gtk_color_button_get_type() -> GType;
12693    pub fn gtk_color_button_new() -> *mut GtkWidget;
12694    pub fn gtk_color_button_new_with_rgba(rgba: *const gdk::GdkRGBA) -> *mut GtkWidget;
12695    pub fn gtk_color_button_get_modal(button: *mut GtkColorButton) -> gboolean;
12696    pub fn gtk_color_button_get_title(button: *mut GtkColorButton) -> *const c_char;
12697    pub fn gtk_color_button_set_modal(button: *mut GtkColorButton, modal: gboolean);
12698    pub fn gtk_color_button_set_title(button: *mut GtkColorButton, title: *const c_char);
12699
12700    //=========================================================================
12701    // GtkColorChooserDialog
12702    //=========================================================================
12703    pub fn gtk_color_chooser_dialog_get_type() -> GType;
12704    pub fn gtk_color_chooser_dialog_new(
12705        title: *const c_char,
12706        parent: *mut GtkWindow,
12707    ) -> *mut GtkWidget;
12708
12709    //=========================================================================
12710    // GtkColorChooserWidget
12711    //=========================================================================
12712    pub fn gtk_color_chooser_widget_get_type() -> GType;
12713    pub fn gtk_color_chooser_widget_new() -> *mut GtkWidget;
12714
12715    //=========================================================================
12716    // GtkColorDialog
12717    //=========================================================================
12718    #[cfg(feature = "v4_10")]
12719    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12720    pub fn gtk_color_dialog_get_type() -> GType;
12721    #[cfg(feature = "v4_10")]
12722    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12723    pub fn gtk_color_dialog_new() -> *mut GtkColorDialog;
12724    #[cfg(feature = "v4_10")]
12725    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12726    pub fn gtk_color_dialog_choose_rgba(
12727        self_: *mut GtkColorDialog,
12728        parent: *mut GtkWindow,
12729        initial_color: *const gdk::GdkRGBA,
12730        cancellable: *mut gio::GCancellable,
12731        callback: gio::GAsyncReadyCallback,
12732        user_data: gpointer,
12733    );
12734    #[cfg(feature = "v4_10")]
12735    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12736    pub fn gtk_color_dialog_choose_rgba_finish(
12737        self_: *mut GtkColorDialog,
12738        result: *mut gio::GAsyncResult,
12739        error: *mut *mut glib::GError,
12740    ) -> *mut gdk::GdkRGBA;
12741    #[cfg(feature = "v4_10")]
12742    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12743    pub fn gtk_color_dialog_get_modal(self_: *mut GtkColorDialog) -> gboolean;
12744    #[cfg(feature = "v4_10")]
12745    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12746    pub fn gtk_color_dialog_get_title(self_: *mut GtkColorDialog) -> *const c_char;
12747    #[cfg(feature = "v4_10")]
12748    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12749    pub fn gtk_color_dialog_get_with_alpha(self_: *mut GtkColorDialog) -> gboolean;
12750    #[cfg(feature = "v4_10")]
12751    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12752    pub fn gtk_color_dialog_set_modal(self_: *mut GtkColorDialog, modal: gboolean);
12753    #[cfg(feature = "v4_10")]
12754    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12755    pub fn gtk_color_dialog_set_title(self_: *mut GtkColorDialog, title: *const c_char);
12756    #[cfg(feature = "v4_10")]
12757    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12758    pub fn gtk_color_dialog_set_with_alpha(self_: *mut GtkColorDialog, with_alpha: gboolean);
12759
12760    //=========================================================================
12761    // GtkColorDialogButton
12762    //=========================================================================
12763    #[cfg(feature = "v4_10")]
12764    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12765    pub fn gtk_color_dialog_button_get_type() -> GType;
12766    #[cfg(feature = "v4_10")]
12767    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12768    pub fn gtk_color_dialog_button_new(dialog: *mut GtkColorDialog) -> *mut GtkWidget;
12769    #[cfg(feature = "v4_10")]
12770    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12771    pub fn gtk_color_dialog_button_get_dialog(
12772        self_: *mut GtkColorDialogButton,
12773    ) -> *mut GtkColorDialog;
12774    #[cfg(feature = "v4_10")]
12775    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12776    pub fn gtk_color_dialog_button_get_rgba(
12777        self_: *mut GtkColorDialogButton,
12778    ) -> *const gdk::GdkRGBA;
12779    #[cfg(feature = "v4_10")]
12780    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12781    pub fn gtk_color_dialog_button_set_dialog(
12782        self_: *mut GtkColorDialogButton,
12783        dialog: *mut GtkColorDialog,
12784    );
12785    #[cfg(feature = "v4_10")]
12786    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12787    pub fn gtk_color_dialog_button_set_rgba(
12788        self_: *mut GtkColorDialogButton,
12789        color: *const gdk::GdkRGBA,
12790    );
12791
12792    //=========================================================================
12793    // GtkColumnView
12794    //=========================================================================
12795    pub fn gtk_column_view_get_type() -> GType;
12796    pub fn gtk_column_view_new(model: *mut GtkSelectionModel) -> *mut GtkWidget;
12797    pub fn gtk_column_view_append_column(
12798        self_: *mut GtkColumnView,
12799        column: *mut GtkColumnViewColumn,
12800    );
12801    pub fn gtk_column_view_get_columns(self_: *mut GtkColumnView) -> *mut gio::GListModel;
12802    pub fn gtk_column_view_get_enable_rubberband(self_: *mut GtkColumnView) -> gboolean;
12803    #[cfg(feature = "v4_12")]
12804    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12805    pub fn gtk_column_view_get_header_factory(self_: *mut GtkColumnView)
12806        -> *mut GtkListItemFactory;
12807    pub fn gtk_column_view_get_model(self_: *mut GtkColumnView) -> *mut GtkSelectionModel;
12808    pub fn gtk_column_view_get_reorderable(self_: *mut GtkColumnView) -> gboolean;
12809    #[cfg(feature = "v4_12")]
12810    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12811    pub fn gtk_column_view_get_row_factory(self_: *mut GtkColumnView) -> *mut GtkListItemFactory;
12812    pub fn gtk_column_view_get_show_column_separators(self_: *mut GtkColumnView) -> gboolean;
12813    pub fn gtk_column_view_get_show_row_separators(self_: *mut GtkColumnView) -> gboolean;
12814    pub fn gtk_column_view_get_single_click_activate(self_: *mut GtkColumnView) -> gboolean;
12815    pub fn gtk_column_view_get_sorter(self_: *mut GtkColumnView) -> *mut GtkSorter;
12816    #[cfg(feature = "v4_12")]
12817    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12818    pub fn gtk_column_view_get_tab_behavior(self_: *mut GtkColumnView) -> GtkListTabBehavior;
12819    pub fn gtk_column_view_insert_column(
12820        self_: *mut GtkColumnView,
12821        position: c_uint,
12822        column: *mut GtkColumnViewColumn,
12823    );
12824    pub fn gtk_column_view_remove_column(
12825        self_: *mut GtkColumnView,
12826        column: *mut GtkColumnViewColumn,
12827    );
12828    #[cfg(feature = "v4_12")]
12829    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12830    pub fn gtk_column_view_scroll_to(
12831        self_: *mut GtkColumnView,
12832        pos: c_uint,
12833        column: *mut GtkColumnViewColumn,
12834        flags: GtkListScrollFlags,
12835        scroll: *mut GtkScrollInfo,
12836    );
12837    pub fn gtk_column_view_set_enable_rubberband(
12838        self_: *mut GtkColumnView,
12839        enable_rubberband: gboolean,
12840    );
12841    #[cfg(feature = "v4_12")]
12842    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12843    pub fn gtk_column_view_set_header_factory(
12844        self_: *mut GtkColumnView,
12845        factory: *mut GtkListItemFactory,
12846    );
12847    pub fn gtk_column_view_set_model(self_: *mut GtkColumnView, model: *mut GtkSelectionModel);
12848    pub fn gtk_column_view_set_reorderable(self_: *mut GtkColumnView, reorderable: gboolean);
12849    #[cfg(feature = "v4_12")]
12850    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12851    pub fn gtk_column_view_set_row_factory(
12852        self_: *mut GtkColumnView,
12853        factory: *mut GtkListItemFactory,
12854    );
12855    pub fn gtk_column_view_set_show_column_separators(
12856        self_: *mut GtkColumnView,
12857        show_column_separators: gboolean,
12858    );
12859    pub fn gtk_column_view_set_show_row_separators(
12860        self_: *mut GtkColumnView,
12861        show_row_separators: gboolean,
12862    );
12863    pub fn gtk_column_view_set_single_click_activate(
12864        self_: *mut GtkColumnView,
12865        single_click_activate: gboolean,
12866    );
12867    #[cfg(feature = "v4_12")]
12868    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12869    pub fn gtk_column_view_set_tab_behavior(
12870        self_: *mut GtkColumnView,
12871        tab_behavior: GtkListTabBehavior,
12872    );
12873    pub fn gtk_column_view_sort_by_column(
12874        self_: *mut GtkColumnView,
12875        column: *mut GtkColumnViewColumn,
12876        direction: GtkSortType,
12877    );
12878
12879    //=========================================================================
12880    // GtkColumnViewCell
12881    //=========================================================================
12882    #[cfg(feature = "v4_12")]
12883    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12884    pub fn gtk_column_view_cell_get_type() -> GType;
12885    #[cfg(feature = "v4_12")]
12886    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12887    pub fn gtk_column_view_cell_get_child(self_: *mut GtkColumnViewCell) -> *mut GtkWidget;
12888    #[cfg(feature = "v4_12")]
12889    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12890    pub fn gtk_column_view_cell_get_focusable(self_: *mut GtkColumnViewCell) -> gboolean;
12891    #[cfg(feature = "v4_12")]
12892    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12893    pub fn gtk_column_view_cell_get_item(self_: *mut GtkColumnViewCell) -> *mut gobject::GObject;
12894    #[cfg(feature = "v4_12")]
12895    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12896    pub fn gtk_column_view_cell_get_position(self_: *mut GtkColumnViewCell) -> c_uint;
12897    #[cfg(feature = "v4_12")]
12898    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12899    pub fn gtk_column_view_cell_get_selected(self_: *mut GtkColumnViewCell) -> gboolean;
12900    #[cfg(feature = "v4_12")]
12901    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12902    pub fn gtk_column_view_cell_set_child(self_: *mut GtkColumnViewCell, child: *mut GtkWidget);
12903    #[cfg(feature = "v4_12")]
12904    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12905    pub fn gtk_column_view_cell_set_focusable(self_: *mut GtkColumnViewCell, focusable: gboolean);
12906
12907    //=========================================================================
12908    // GtkColumnViewColumn
12909    //=========================================================================
12910    pub fn gtk_column_view_column_get_type() -> GType;
12911    pub fn gtk_column_view_column_new(
12912        title: *const c_char,
12913        factory: *mut GtkListItemFactory,
12914    ) -> *mut GtkColumnViewColumn;
12915    pub fn gtk_column_view_column_get_column_view(
12916        self_: *mut GtkColumnViewColumn,
12917    ) -> *mut GtkColumnView;
12918    pub fn gtk_column_view_column_get_expand(self_: *mut GtkColumnViewColumn) -> gboolean;
12919    pub fn gtk_column_view_column_get_factory(
12920        self_: *mut GtkColumnViewColumn,
12921    ) -> *mut GtkListItemFactory;
12922    pub fn gtk_column_view_column_get_fixed_width(self_: *mut GtkColumnViewColumn) -> c_int;
12923    pub fn gtk_column_view_column_get_header_menu(
12924        self_: *mut GtkColumnViewColumn,
12925    ) -> *mut gio::GMenuModel;
12926    #[cfg(feature = "v4_10")]
12927    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12928    pub fn gtk_column_view_column_get_id(self_: *mut GtkColumnViewColumn) -> *const c_char;
12929    pub fn gtk_column_view_column_get_resizable(self_: *mut GtkColumnViewColumn) -> gboolean;
12930    pub fn gtk_column_view_column_get_sorter(self_: *mut GtkColumnViewColumn) -> *mut GtkSorter;
12931    pub fn gtk_column_view_column_get_title(self_: *mut GtkColumnViewColumn) -> *const c_char;
12932    pub fn gtk_column_view_column_get_visible(self_: *mut GtkColumnViewColumn) -> gboolean;
12933    pub fn gtk_column_view_column_set_expand(self_: *mut GtkColumnViewColumn, expand: gboolean);
12934    pub fn gtk_column_view_column_set_factory(
12935        self_: *mut GtkColumnViewColumn,
12936        factory: *mut GtkListItemFactory,
12937    );
12938    pub fn gtk_column_view_column_set_fixed_width(
12939        self_: *mut GtkColumnViewColumn,
12940        fixed_width: c_int,
12941    );
12942    pub fn gtk_column_view_column_set_header_menu(
12943        self_: *mut GtkColumnViewColumn,
12944        menu: *mut gio::GMenuModel,
12945    );
12946    #[cfg(feature = "v4_10")]
12947    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12948    pub fn gtk_column_view_column_set_id(self_: *mut GtkColumnViewColumn, id: *const c_char);
12949    pub fn gtk_column_view_column_set_resizable(
12950        self_: *mut GtkColumnViewColumn,
12951        resizable: gboolean,
12952    );
12953    pub fn gtk_column_view_column_set_sorter(
12954        self_: *mut GtkColumnViewColumn,
12955        sorter: *mut GtkSorter,
12956    );
12957    pub fn gtk_column_view_column_set_title(self_: *mut GtkColumnViewColumn, title: *const c_char);
12958    pub fn gtk_column_view_column_set_visible(self_: *mut GtkColumnViewColumn, visible: gboolean);
12959
12960    //=========================================================================
12961    // GtkColumnViewRow
12962    //=========================================================================
12963    #[cfg(feature = "v4_12")]
12964    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12965    pub fn gtk_column_view_row_get_type() -> GType;
12966    #[cfg(feature = "v4_12")]
12967    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12968    pub fn gtk_column_view_row_get_accessible_description(
12969        self_: *mut GtkColumnViewRow,
12970    ) -> *const c_char;
12971    #[cfg(feature = "v4_12")]
12972    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12973    pub fn gtk_column_view_row_get_accessible_label(self_: *mut GtkColumnViewRow) -> *const c_char;
12974    #[cfg(feature = "v4_12")]
12975    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12976    pub fn gtk_column_view_row_get_activatable(self_: *mut GtkColumnViewRow) -> gboolean;
12977    #[cfg(feature = "v4_12")]
12978    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12979    pub fn gtk_column_view_row_get_focusable(self_: *mut GtkColumnViewRow) -> gboolean;
12980    #[cfg(feature = "v4_12")]
12981    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12982    pub fn gtk_column_view_row_get_item(self_: *mut GtkColumnViewRow) -> *mut gobject::GObject;
12983    #[cfg(feature = "v4_12")]
12984    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12985    pub fn gtk_column_view_row_get_position(self_: *mut GtkColumnViewRow) -> c_uint;
12986    #[cfg(feature = "v4_12")]
12987    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12988    pub fn gtk_column_view_row_get_selectable(self_: *mut GtkColumnViewRow) -> gboolean;
12989    #[cfg(feature = "v4_12")]
12990    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12991    pub fn gtk_column_view_row_get_selected(self_: *mut GtkColumnViewRow) -> gboolean;
12992    #[cfg(feature = "v4_12")]
12993    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12994    pub fn gtk_column_view_row_set_accessible_description(
12995        self_: *mut GtkColumnViewRow,
12996        description: *const c_char,
12997    );
12998    #[cfg(feature = "v4_12")]
12999    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13000    pub fn gtk_column_view_row_set_accessible_label(
13001        self_: *mut GtkColumnViewRow,
13002        label: *const c_char,
13003    );
13004    #[cfg(feature = "v4_12")]
13005    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13006    pub fn gtk_column_view_row_set_activatable(self_: *mut GtkColumnViewRow, activatable: gboolean);
13007    #[cfg(feature = "v4_12")]
13008    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13009    pub fn gtk_column_view_row_set_focusable(self_: *mut GtkColumnViewRow, focusable: gboolean);
13010    #[cfg(feature = "v4_12")]
13011    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13012    pub fn gtk_column_view_row_set_selectable(self_: *mut GtkColumnViewRow, selectable: gboolean);
13013
13014    //=========================================================================
13015    // GtkColumnViewSorter
13016    //=========================================================================
13017    #[cfg(feature = "v4_10")]
13018    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13019    pub fn gtk_column_view_sorter_get_type() -> GType;
13020    #[cfg(feature = "v4_10")]
13021    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13022    pub fn gtk_column_view_sorter_get_n_sort_columns(self_: *mut GtkColumnViewSorter) -> c_uint;
13023    #[cfg(feature = "v4_10")]
13024    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13025    pub fn gtk_column_view_sorter_get_nth_sort_column(
13026        self_: *mut GtkColumnViewSorter,
13027        position: c_uint,
13028        sort_order: *mut GtkSortType,
13029    ) -> *mut GtkColumnViewColumn;
13030    #[cfg(feature = "v4_10")]
13031    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13032    pub fn gtk_column_view_sorter_get_primary_sort_column(
13033        self_: *mut GtkColumnViewSorter,
13034    ) -> *mut GtkColumnViewColumn;
13035    #[cfg(feature = "v4_10")]
13036    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13037    pub fn gtk_column_view_sorter_get_primary_sort_order(
13038        self_: *mut GtkColumnViewSorter,
13039    ) -> GtkSortType;
13040
13041    //=========================================================================
13042    // GtkComboBox
13043    //=========================================================================
13044    pub fn gtk_combo_box_get_type() -> GType;
13045    pub fn gtk_combo_box_new() -> *mut GtkWidget;
13046    pub fn gtk_combo_box_new_with_entry() -> *mut GtkWidget;
13047    pub fn gtk_combo_box_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
13048    pub fn gtk_combo_box_new_with_model_and_entry(model: *mut GtkTreeModel) -> *mut GtkWidget;
13049    pub fn gtk_combo_box_get_active(combo_box: *mut GtkComboBox) -> c_int;
13050    pub fn gtk_combo_box_get_active_id(combo_box: *mut GtkComboBox) -> *const c_char;
13051    pub fn gtk_combo_box_get_active_iter(
13052        combo_box: *mut GtkComboBox,
13053        iter: *mut GtkTreeIter,
13054    ) -> gboolean;
13055    pub fn gtk_combo_box_get_button_sensitivity(combo_box: *mut GtkComboBox) -> GtkSensitivityType;
13056    pub fn gtk_combo_box_get_child(combo_box: *mut GtkComboBox) -> *mut GtkWidget;
13057    pub fn gtk_combo_box_get_entry_text_column(combo_box: *mut GtkComboBox) -> c_int;
13058    pub fn gtk_combo_box_get_has_entry(combo_box: *mut GtkComboBox) -> gboolean;
13059    pub fn gtk_combo_box_get_id_column(combo_box: *mut GtkComboBox) -> c_int;
13060    pub fn gtk_combo_box_get_model(combo_box: *mut GtkComboBox) -> *mut GtkTreeModel;
13061    pub fn gtk_combo_box_get_popup_fixed_width(combo_box: *mut GtkComboBox) -> gboolean;
13062    pub fn gtk_combo_box_get_row_separator_func(
13063        combo_box: *mut GtkComboBox,
13064    ) -> GtkTreeViewRowSeparatorFunc;
13065    pub fn gtk_combo_box_popdown(combo_box: *mut GtkComboBox);
13066    pub fn gtk_combo_box_popup(combo_box: *mut GtkComboBox);
13067    pub fn gtk_combo_box_popup_for_device(combo_box: *mut GtkComboBox, device: *mut gdk::GdkDevice);
13068    pub fn gtk_combo_box_set_active(combo_box: *mut GtkComboBox, index_: c_int);
13069    pub fn gtk_combo_box_set_active_id(
13070        combo_box: *mut GtkComboBox,
13071        active_id: *const c_char,
13072    ) -> gboolean;
13073    pub fn gtk_combo_box_set_active_iter(combo_box: *mut GtkComboBox, iter: *mut GtkTreeIter);
13074    pub fn gtk_combo_box_set_button_sensitivity(
13075        combo_box: *mut GtkComboBox,
13076        sensitivity: GtkSensitivityType,
13077    );
13078    pub fn gtk_combo_box_set_child(combo_box: *mut GtkComboBox, child: *mut GtkWidget);
13079    pub fn gtk_combo_box_set_entry_text_column(combo_box: *mut GtkComboBox, text_column: c_int);
13080    pub fn gtk_combo_box_set_id_column(combo_box: *mut GtkComboBox, id_column: c_int);
13081    pub fn gtk_combo_box_set_model(combo_box: *mut GtkComboBox, model: *mut GtkTreeModel);
13082    pub fn gtk_combo_box_set_popup_fixed_width(combo_box: *mut GtkComboBox, fixed: gboolean);
13083    pub fn gtk_combo_box_set_row_separator_func(
13084        combo_box: *mut GtkComboBox,
13085        func: GtkTreeViewRowSeparatorFunc,
13086        data: gpointer,
13087        destroy: glib::GDestroyNotify,
13088    );
13089
13090    //=========================================================================
13091    // GtkComboBoxText
13092    //=========================================================================
13093    pub fn gtk_combo_box_text_get_type() -> GType;
13094    pub fn gtk_combo_box_text_new() -> *mut GtkWidget;
13095    pub fn gtk_combo_box_text_new_with_entry() -> *mut GtkWidget;
13096    pub fn gtk_combo_box_text_append(
13097        combo_box: *mut GtkComboBoxText,
13098        id: *const c_char,
13099        text: *const c_char,
13100    );
13101    pub fn gtk_combo_box_text_append_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
13102    pub fn gtk_combo_box_text_get_active_text(combo_box: *mut GtkComboBoxText) -> *mut c_char;
13103    pub fn gtk_combo_box_text_insert(
13104        combo_box: *mut GtkComboBoxText,
13105        position: c_int,
13106        id: *const c_char,
13107        text: *const c_char,
13108    );
13109    pub fn gtk_combo_box_text_insert_text(
13110        combo_box: *mut GtkComboBoxText,
13111        position: c_int,
13112        text: *const c_char,
13113    );
13114    pub fn gtk_combo_box_text_prepend(
13115        combo_box: *mut GtkComboBoxText,
13116        id: *const c_char,
13117        text: *const c_char,
13118    );
13119    pub fn gtk_combo_box_text_prepend_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
13120    pub fn gtk_combo_box_text_remove(combo_box: *mut GtkComboBoxText, position: c_int);
13121    pub fn gtk_combo_box_text_remove_all(combo_box: *mut GtkComboBoxText);
13122
13123    //=========================================================================
13124    // GtkConstantExpression
13125    //=========================================================================
13126    pub fn gtk_constant_expression_get_type() -> GType;
13127    pub fn gtk_constant_expression_new(value_type: GType, ...) -> *mut GtkConstantExpression;
13128    pub fn gtk_constant_expression_new_for_value(
13129        value: *const gobject::GValue,
13130    ) -> *mut GtkConstantExpression;
13131    pub fn gtk_constant_expression_get_value(
13132        expression: *mut GtkConstantExpression,
13133    ) -> *const gobject::GValue;
13134
13135    //=========================================================================
13136    // GtkConstraint
13137    //=========================================================================
13138    pub fn gtk_constraint_get_type() -> GType;
13139    pub fn gtk_constraint_new(
13140        target: *mut GtkConstraintTarget,
13141        target_attribute: GtkConstraintAttribute,
13142        relation: GtkConstraintRelation,
13143        source: *mut GtkConstraintTarget,
13144        source_attribute: GtkConstraintAttribute,
13145        multiplier: c_double,
13146        constant: c_double,
13147        strength: c_int,
13148    ) -> *mut GtkConstraint;
13149    pub fn gtk_constraint_new_constant(
13150        target: *mut GtkConstraintTarget,
13151        target_attribute: GtkConstraintAttribute,
13152        relation: GtkConstraintRelation,
13153        constant: c_double,
13154        strength: c_int,
13155    ) -> *mut GtkConstraint;
13156    pub fn gtk_constraint_get_constant(constraint: *mut GtkConstraint) -> c_double;
13157    pub fn gtk_constraint_get_multiplier(constraint: *mut GtkConstraint) -> c_double;
13158    pub fn gtk_constraint_get_relation(constraint: *mut GtkConstraint) -> GtkConstraintRelation;
13159    pub fn gtk_constraint_get_source(constraint: *mut GtkConstraint) -> *mut GtkConstraintTarget;
13160    pub fn gtk_constraint_get_source_attribute(
13161        constraint: *mut GtkConstraint,
13162    ) -> GtkConstraintAttribute;
13163    pub fn gtk_constraint_get_strength(constraint: *mut GtkConstraint) -> c_int;
13164    pub fn gtk_constraint_get_target(constraint: *mut GtkConstraint) -> *mut GtkConstraintTarget;
13165    pub fn gtk_constraint_get_target_attribute(
13166        constraint: *mut GtkConstraint,
13167    ) -> GtkConstraintAttribute;
13168    pub fn gtk_constraint_is_attached(constraint: *mut GtkConstraint) -> gboolean;
13169    pub fn gtk_constraint_is_constant(constraint: *mut GtkConstraint) -> gboolean;
13170    pub fn gtk_constraint_is_required(constraint: *mut GtkConstraint) -> gboolean;
13171
13172    //=========================================================================
13173    // GtkConstraintGuide
13174    //=========================================================================
13175    pub fn gtk_constraint_guide_get_type() -> GType;
13176    pub fn gtk_constraint_guide_new() -> *mut GtkConstraintGuide;
13177    pub fn gtk_constraint_guide_get_max_size(
13178        guide: *mut GtkConstraintGuide,
13179        width: *mut c_int,
13180        height: *mut c_int,
13181    );
13182    pub fn gtk_constraint_guide_get_min_size(
13183        guide: *mut GtkConstraintGuide,
13184        width: *mut c_int,
13185        height: *mut c_int,
13186    );
13187    pub fn gtk_constraint_guide_get_name(guide: *mut GtkConstraintGuide) -> *const c_char;
13188    pub fn gtk_constraint_guide_get_nat_size(
13189        guide: *mut GtkConstraintGuide,
13190        width: *mut c_int,
13191        height: *mut c_int,
13192    );
13193    pub fn gtk_constraint_guide_get_strength(
13194        guide: *mut GtkConstraintGuide,
13195    ) -> GtkConstraintStrength;
13196    pub fn gtk_constraint_guide_set_max_size(
13197        guide: *mut GtkConstraintGuide,
13198        width: c_int,
13199        height: c_int,
13200    );
13201    pub fn gtk_constraint_guide_set_min_size(
13202        guide: *mut GtkConstraintGuide,
13203        width: c_int,
13204        height: c_int,
13205    );
13206    pub fn gtk_constraint_guide_set_name(guide: *mut GtkConstraintGuide, name: *const c_char);
13207    pub fn gtk_constraint_guide_set_nat_size(
13208        guide: *mut GtkConstraintGuide,
13209        width: c_int,
13210        height: c_int,
13211    );
13212    pub fn gtk_constraint_guide_set_strength(
13213        guide: *mut GtkConstraintGuide,
13214        strength: GtkConstraintStrength,
13215    );
13216
13217    //=========================================================================
13218    // GtkConstraintLayout
13219    //=========================================================================
13220    pub fn gtk_constraint_layout_get_type() -> GType;
13221    pub fn gtk_constraint_layout_new() -> *mut GtkLayoutManager;
13222    pub fn gtk_constraint_layout_add_constraint(
13223        layout: *mut GtkConstraintLayout,
13224        constraint: *mut GtkConstraint,
13225    );
13226    pub fn gtk_constraint_layout_add_constraints_from_description(
13227        layout: *mut GtkConstraintLayout,
13228        lines: *const *const c_char,
13229        n_lines: size_t,
13230        hspacing: c_int,
13231        vspacing: c_int,
13232        error: *mut *mut glib::GError,
13233        first_view: *const c_char,
13234        ...
13235    ) -> *mut glib::GList;
13236    pub fn gtk_constraint_layout_add_constraints_from_descriptionv(
13237        layout: *mut GtkConstraintLayout,
13238        lines: *const *const c_char,
13239        n_lines: size_t,
13240        hspacing: c_int,
13241        vspacing: c_int,
13242        views: *mut glib::GHashTable,
13243        error: *mut *mut glib::GError,
13244    ) -> *mut glib::GList;
13245    pub fn gtk_constraint_layout_add_guide(
13246        layout: *mut GtkConstraintLayout,
13247        guide: *mut GtkConstraintGuide,
13248    );
13249    pub fn gtk_constraint_layout_observe_constraints(
13250        layout: *mut GtkConstraintLayout,
13251    ) -> *mut gio::GListModel;
13252    pub fn gtk_constraint_layout_observe_guides(
13253        layout: *mut GtkConstraintLayout,
13254    ) -> *mut gio::GListModel;
13255    pub fn gtk_constraint_layout_remove_all_constraints(layout: *mut GtkConstraintLayout);
13256    pub fn gtk_constraint_layout_remove_constraint(
13257        layout: *mut GtkConstraintLayout,
13258        constraint: *mut GtkConstraint,
13259    );
13260    pub fn gtk_constraint_layout_remove_guide(
13261        layout: *mut GtkConstraintLayout,
13262        guide: *mut GtkConstraintGuide,
13263    );
13264
13265    //=========================================================================
13266    // GtkConstraintLayoutChild
13267    //=========================================================================
13268    pub fn gtk_constraint_layout_child_get_type() -> GType;
13269
13270    //=========================================================================
13271    // GtkCssProvider
13272    //=========================================================================
13273    pub fn gtk_css_provider_get_type() -> GType;
13274    pub fn gtk_css_provider_new() -> *mut GtkCssProvider;
13275    #[cfg(feature = "v4_12")]
13276    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13277    pub fn gtk_css_provider_load_from_bytes(
13278        css_provider: *mut GtkCssProvider,
13279        data: *mut glib::GBytes,
13280    );
13281    pub fn gtk_css_provider_load_from_data(
13282        css_provider: *mut GtkCssProvider,
13283        data: *const c_char,
13284        length: ssize_t,
13285    );
13286    pub fn gtk_css_provider_load_from_file(
13287        css_provider: *mut GtkCssProvider,
13288        file: *mut gio::GFile,
13289    );
13290    pub fn gtk_css_provider_load_from_path(css_provider: *mut GtkCssProvider, path: *const c_char);
13291    pub fn gtk_css_provider_load_from_resource(
13292        css_provider: *mut GtkCssProvider,
13293        resource_path: *const c_char,
13294    );
13295    #[cfg(feature = "v4_12")]
13296    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13297    pub fn gtk_css_provider_load_from_string(
13298        css_provider: *mut GtkCssProvider,
13299        string: *const c_char,
13300    );
13301    pub fn gtk_css_provider_load_named(
13302        provider: *mut GtkCssProvider,
13303        name: *const c_char,
13304        variant: *const c_char,
13305    );
13306    pub fn gtk_css_provider_to_string(provider: *mut GtkCssProvider) -> *mut c_char;
13307
13308    //=========================================================================
13309    // GtkCustomFilter
13310    //=========================================================================
13311    pub fn gtk_custom_filter_get_type() -> GType;
13312    pub fn gtk_custom_filter_new(
13313        match_func: GtkCustomFilterFunc,
13314        user_data: gpointer,
13315        user_destroy: glib::GDestroyNotify,
13316    ) -> *mut GtkCustomFilter;
13317    pub fn gtk_custom_filter_set_filter_func(
13318        self_: *mut GtkCustomFilter,
13319        match_func: GtkCustomFilterFunc,
13320        user_data: gpointer,
13321        user_destroy: glib::GDestroyNotify,
13322    );
13323
13324    //=========================================================================
13325    // GtkCustomLayout
13326    //=========================================================================
13327    pub fn gtk_custom_layout_get_type() -> GType;
13328    pub fn gtk_custom_layout_new(
13329        request_mode: GtkCustomRequestModeFunc,
13330        measure: GtkCustomMeasureFunc,
13331        allocate: GtkCustomAllocateFunc,
13332    ) -> *mut GtkLayoutManager;
13333
13334    //=========================================================================
13335    // GtkCustomSorter
13336    //=========================================================================
13337    pub fn gtk_custom_sorter_get_type() -> GType;
13338    pub fn gtk_custom_sorter_new(
13339        sort_func: glib::GCompareDataFunc,
13340        user_data: gpointer,
13341        user_destroy: glib::GDestroyNotify,
13342    ) -> *mut GtkCustomSorter;
13343    pub fn gtk_custom_sorter_set_sort_func(
13344        self_: *mut GtkCustomSorter,
13345        sort_func: glib::GCompareDataFunc,
13346        user_data: gpointer,
13347        user_destroy: glib::GDestroyNotify,
13348    );
13349
13350    //=========================================================================
13351    // GtkDialog
13352    //=========================================================================
13353    pub fn gtk_dialog_get_type() -> GType;
13354    pub fn gtk_dialog_new() -> *mut GtkWidget;
13355    pub fn gtk_dialog_new_with_buttons(
13356        title: *const c_char,
13357        parent: *mut GtkWindow,
13358        flags: GtkDialogFlags,
13359        first_button_text: *const c_char,
13360        ...
13361    ) -> *mut GtkWidget;
13362    pub fn gtk_dialog_add_action_widget(
13363        dialog: *mut GtkDialog,
13364        child: *mut GtkWidget,
13365        response_id: GtkResponseType,
13366    );
13367    pub fn gtk_dialog_add_button(
13368        dialog: *mut GtkDialog,
13369        button_text: *const c_char,
13370        response_id: GtkResponseType,
13371    ) -> *mut GtkWidget;
13372    pub fn gtk_dialog_add_buttons(dialog: *mut GtkDialog, first_button_text: *const c_char, ...);
13373    pub fn gtk_dialog_get_content_area(dialog: *mut GtkDialog) -> *mut GtkBox;
13374    pub fn gtk_dialog_get_header_bar(dialog: *mut GtkDialog) -> *mut GtkHeaderBar;
13375    pub fn gtk_dialog_get_response_for_widget(
13376        dialog: *mut GtkDialog,
13377        widget: *mut GtkWidget,
13378    ) -> c_int;
13379    pub fn gtk_dialog_get_widget_for_response(
13380        dialog: *mut GtkDialog,
13381        response_id: GtkResponseType,
13382    ) -> *mut GtkWidget;
13383    pub fn gtk_dialog_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
13384    pub fn gtk_dialog_set_default_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
13385    pub fn gtk_dialog_set_response_sensitive(
13386        dialog: *mut GtkDialog,
13387        response_id: GtkResponseType,
13388        setting: gboolean,
13389    );
13390
13391    //=========================================================================
13392    // GtkDirectoryList
13393    //=========================================================================
13394    pub fn gtk_directory_list_get_type() -> GType;
13395    pub fn gtk_directory_list_new(
13396        attributes: *const c_char,
13397        file: *mut gio::GFile,
13398    ) -> *mut GtkDirectoryList;
13399    pub fn gtk_directory_list_get_attributes(self_: *mut GtkDirectoryList) -> *const c_char;
13400    pub fn gtk_directory_list_get_error(self_: *mut GtkDirectoryList) -> *const glib::GError;
13401    pub fn gtk_directory_list_get_file(self_: *mut GtkDirectoryList) -> *mut gio::GFile;
13402    pub fn gtk_directory_list_get_io_priority(self_: *mut GtkDirectoryList) -> c_int;
13403    pub fn gtk_directory_list_get_monitored(self_: *mut GtkDirectoryList) -> gboolean;
13404    pub fn gtk_directory_list_is_loading(self_: *mut GtkDirectoryList) -> gboolean;
13405    pub fn gtk_directory_list_set_attributes(
13406        self_: *mut GtkDirectoryList,
13407        attributes: *const c_char,
13408    );
13409    pub fn gtk_directory_list_set_file(self_: *mut GtkDirectoryList, file: *mut gio::GFile);
13410    pub fn gtk_directory_list_set_io_priority(self_: *mut GtkDirectoryList, io_priority: c_int);
13411    pub fn gtk_directory_list_set_monitored(self_: *mut GtkDirectoryList, monitored: gboolean);
13412
13413    //=========================================================================
13414    // GtkDragIcon
13415    //=========================================================================
13416    pub fn gtk_drag_icon_get_type() -> GType;
13417    pub fn gtk_drag_icon_get_for_drag(drag: *mut gdk::GdkDrag) -> *mut GtkWidget;
13418    pub fn gtk_drag_icon_create_widget_for_value(value: *const gobject::GValue) -> *mut GtkWidget;
13419    pub fn gtk_drag_icon_set_from_paintable(
13420        drag: *mut gdk::GdkDrag,
13421        paintable: *mut gdk::GdkPaintable,
13422        hot_x: c_int,
13423        hot_y: c_int,
13424    );
13425    pub fn gtk_drag_icon_get_child(self_: *mut GtkDragIcon) -> *mut GtkWidget;
13426    pub fn gtk_drag_icon_set_child(self_: *mut GtkDragIcon, child: *mut GtkWidget);
13427
13428    //=========================================================================
13429    // GtkDragSource
13430    //=========================================================================
13431    pub fn gtk_drag_source_get_type() -> GType;
13432    pub fn gtk_drag_source_new() -> *mut GtkDragSource;
13433    pub fn gtk_drag_source_drag_cancel(source: *mut GtkDragSource);
13434    pub fn gtk_drag_source_get_actions(source: *mut GtkDragSource) -> gdk::GdkDragAction;
13435    pub fn gtk_drag_source_get_content(source: *mut GtkDragSource) -> *mut gdk::GdkContentProvider;
13436    pub fn gtk_drag_source_get_drag(source: *mut GtkDragSource) -> *mut gdk::GdkDrag;
13437    pub fn gtk_drag_source_set_actions(source: *mut GtkDragSource, actions: gdk::GdkDragAction);
13438    pub fn gtk_drag_source_set_content(
13439        source: *mut GtkDragSource,
13440        content: *mut gdk::GdkContentProvider,
13441    );
13442    pub fn gtk_drag_source_set_icon(
13443        source: *mut GtkDragSource,
13444        paintable: *mut gdk::GdkPaintable,
13445        hot_x: c_int,
13446        hot_y: c_int,
13447    );
13448
13449    //=========================================================================
13450    // GtkDrawingArea
13451    //=========================================================================
13452    pub fn gtk_drawing_area_get_type() -> GType;
13453    pub fn gtk_drawing_area_new() -> *mut GtkWidget;
13454    pub fn gtk_drawing_area_get_content_height(self_: *mut GtkDrawingArea) -> c_int;
13455    pub fn gtk_drawing_area_get_content_width(self_: *mut GtkDrawingArea) -> c_int;
13456    pub fn gtk_drawing_area_set_content_height(self_: *mut GtkDrawingArea, height: c_int);
13457    pub fn gtk_drawing_area_set_content_width(self_: *mut GtkDrawingArea, width: c_int);
13458    pub fn gtk_drawing_area_set_draw_func(
13459        self_: *mut GtkDrawingArea,
13460        draw_func: GtkDrawingAreaDrawFunc,
13461        user_data: gpointer,
13462        destroy: glib::GDestroyNotify,
13463    );
13464
13465    //=========================================================================
13466    // GtkDropControllerMotion
13467    //=========================================================================
13468    pub fn gtk_drop_controller_motion_get_type() -> GType;
13469    pub fn gtk_drop_controller_motion_new() -> *mut GtkEventController;
13470    pub fn gtk_drop_controller_motion_contains_pointer(
13471        self_: *mut GtkDropControllerMotion,
13472    ) -> gboolean;
13473    pub fn gtk_drop_controller_motion_get_drop(
13474        self_: *mut GtkDropControllerMotion,
13475    ) -> *mut gdk::GdkDrop;
13476    pub fn gtk_drop_controller_motion_is_pointer(self_: *mut GtkDropControllerMotion) -> gboolean;
13477
13478    //=========================================================================
13479    // GtkDropDown
13480    //=========================================================================
13481    pub fn gtk_drop_down_get_type() -> GType;
13482    pub fn gtk_drop_down_new(
13483        model: *mut gio::GListModel,
13484        expression: *mut GtkExpression,
13485    ) -> *mut GtkWidget;
13486    pub fn gtk_drop_down_new_from_strings(strings: *const *const c_char) -> *mut GtkWidget;
13487    pub fn gtk_drop_down_get_enable_search(self_: *mut GtkDropDown) -> gboolean;
13488    pub fn gtk_drop_down_get_expression(self_: *mut GtkDropDown) -> *mut GtkExpression;
13489    pub fn gtk_drop_down_get_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13490    #[cfg(feature = "v4_12")]
13491    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13492    pub fn gtk_drop_down_get_header_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13493    pub fn gtk_drop_down_get_list_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13494    pub fn gtk_drop_down_get_model(self_: *mut GtkDropDown) -> *mut gio::GListModel;
13495    #[cfg(feature = "v4_12")]
13496    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13497    pub fn gtk_drop_down_get_search_match_mode(self_: *mut GtkDropDown)
13498        -> GtkStringFilterMatchMode;
13499    pub fn gtk_drop_down_get_selected(self_: *mut GtkDropDown) -> c_uint;
13500    pub fn gtk_drop_down_get_selected_item(self_: *mut GtkDropDown) -> *mut gobject::GObject;
13501    #[cfg(feature = "v4_6")]
13502    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13503    pub fn gtk_drop_down_get_show_arrow(self_: *mut GtkDropDown) -> gboolean;
13504    pub fn gtk_drop_down_set_enable_search(self_: *mut GtkDropDown, enable_search: gboolean);
13505    pub fn gtk_drop_down_set_expression(self_: *mut GtkDropDown, expression: *mut GtkExpression);
13506    pub fn gtk_drop_down_set_factory(self_: *mut GtkDropDown, factory: *mut GtkListItemFactory);
13507    #[cfg(feature = "v4_12")]
13508    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13509    pub fn gtk_drop_down_set_header_factory(
13510        self_: *mut GtkDropDown,
13511        factory: *mut GtkListItemFactory,
13512    );
13513    pub fn gtk_drop_down_set_list_factory(
13514        self_: *mut GtkDropDown,
13515        factory: *mut GtkListItemFactory,
13516    );
13517    pub fn gtk_drop_down_set_model(self_: *mut GtkDropDown, model: *mut gio::GListModel);
13518    #[cfg(feature = "v4_12")]
13519    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13520    pub fn gtk_drop_down_set_search_match_mode(
13521        self_: *mut GtkDropDown,
13522        search_match_mode: GtkStringFilterMatchMode,
13523    );
13524    pub fn gtk_drop_down_set_selected(self_: *mut GtkDropDown, position: c_uint);
13525    #[cfg(feature = "v4_6")]
13526    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13527    pub fn gtk_drop_down_set_show_arrow(self_: *mut GtkDropDown, show_arrow: gboolean);
13528
13529    //=========================================================================
13530    // GtkDropTarget
13531    //=========================================================================
13532    pub fn gtk_drop_target_get_type() -> GType;
13533    pub fn gtk_drop_target_new(type_: GType, actions: gdk::GdkDragAction) -> *mut GtkDropTarget;
13534    pub fn gtk_drop_target_get_actions(self_: *mut GtkDropTarget) -> gdk::GdkDragAction;
13535    #[cfg(feature = "v4_4")]
13536    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
13537    pub fn gtk_drop_target_get_current_drop(self_: *mut GtkDropTarget) -> *mut gdk::GdkDrop;
13538    pub fn gtk_drop_target_get_drop(self_: *mut GtkDropTarget) -> *mut gdk::GdkDrop;
13539    pub fn gtk_drop_target_get_formats(self_: *mut GtkDropTarget) -> *mut gdk::GdkContentFormats;
13540    pub fn gtk_drop_target_get_gtypes(
13541        self_: *mut GtkDropTarget,
13542        n_types: *mut size_t,
13543    ) -> *const GType;
13544    pub fn gtk_drop_target_get_preload(self_: *mut GtkDropTarget) -> gboolean;
13545    pub fn gtk_drop_target_get_value(self_: *mut GtkDropTarget) -> *const gobject::GValue;
13546    pub fn gtk_drop_target_reject(self_: *mut GtkDropTarget);
13547    pub fn gtk_drop_target_set_actions(self_: *mut GtkDropTarget, actions: gdk::GdkDragAction);
13548    pub fn gtk_drop_target_set_gtypes(
13549        self_: *mut GtkDropTarget,
13550        types: *mut GType,
13551        n_types: size_t,
13552    );
13553    pub fn gtk_drop_target_set_preload(self_: *mut GtkDropTarget, preload: gboolean);
13554
13555    //=========================================================================
13556    // GtkDropTargetAsync
13557    //=========================================================================
13558    pub fn gtk_drop_target_async_get_type() -> GType;
13559    pub fn gtk_drop_target_async_new(
13560        formats: *mut gdk::GdkContentFormats,
13561        actions: gdk::GdkDragAction,
13562    ) -> *mut GtkDropTargetAsync;
13563    pub fn gtk_drop_target_async_get_actions(self_: *mut GtkDropTargetAsync) -> gdk::GdkDragAction;
13564    pub fn gtk_drop_target_async_get_formats(
13565        self_: *mut GtkDropTargetAsync,
13566    ) -> *mut gdk::GdkContentFormats;
13567    pub fn gtk_drop_target_async_reject_drop(
13568        self_: *mut GtkDropTargetAsync,
13569        drop: *mut gdk::GdkDrop,
13570    );
13571    pub fn gtk_drop_target_async_set_actions(
13572        self_: *mut GtkDropTargetAsync,
13573        actions: gdk::GdkDragAction,
13574    );
13575    pub fn gtk_drop_target_async_set_formats(
13576        self_: *mut GtkDropTargetAsync,
13577        formats: *mut gdk::GdkContentFormats,
13578    );
13579
13580    //=========================================================================
13581    // GtkEditableLabel
13582    //=========================================================================
13583    pub fn gtk_editable_label_get_type() -> GType;
13584    pub fn gtk_editable_label_new(str: *const c_char) -> *mut GtkWidget;
13585    pub fn gtk_editable_label_get_editing(self_: *mut GtkEditableLabel) -> gboolean;
13586    pub fn gtk_editable_label_start_editing(self_: *mut GtkEditableLabel);
13587    pub fn gtk_editable_label_stop_editing(self_: *mut GtkEditableLabel, commit: gboolean);
13588
13589    //=========================================================================
13590    // GtkEmojiChooser
13591    //=========================================================================
13592    pub fn gtk_emoji_chooser_get_type() -> GType;
13593    pub fn gtk_emoji_chooser_new() -> *mut GtkWidget;
13594
13595    //=========================================================================
13596    // GtkEntry
13597    //=========================================================================
13598    pub fn gtk_entry_get_type() -> GType;
13599    pub fn gtk_entry_new() -> *mut GtkWidget;
13600    pub fn gtk_entry_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
13601    pub fn gtk_entry_get_activates_default(entry: *mut GtkEntry) -> gboolean;
13602    pub fn gtk_entry_get_alignment(entry: *mut GtkEntry) -> c_float;
13603    pub fn gtk_entry_get_attributes(entry: *mut GtkEntry) -> *mut pango::PangoAttrList;
13604    pub fn gtk_entry_get_buffer(entry: *mut GtkEntry) -> *mut GtkEntryBuffer;
13605    pub fn gtk_entry_get_completion(entry: *mut GtkEntry) -> *mut GtkEntryCompletion;
13606    pub fn gtk_entry_get_current_icon_drag_source(entry: *mut GtkEntry) -> c_int;
13607    pub fn gtk_entry_get_extra_menu(entry: *mut GtkEntry) -> *mut gio::GMenuModel;
13608    pub fn gtk_entry_get_has_frame(entry: *mut GtkEntry) -> gboolean;
13609    pub fn gtk_entry_get_icon_activatable(
13610        entry: *mut GtkEntry,
13611        icon_pos: GtkEntryIconPosition,
13612    ) -> gboolean;
13613    pub fn gtk_entry_get_icon_area(
13614        entry: *mut GtkEntry,
13615        icon_pos: GtkEntryIconPosition,
13616        icon_area: *mut gdk::GdkRectangle,
13617    );
13618    pub fn gtk_entry_get_icon_at_pos(entry: *mut GtkEntry, x: c_int, y: c_int) -> c_int;
13619    pub fn gtk_entry_get_icon_gicon(
13620        entry: *mut GtkEntry,
13621        icon_pos: GtkEntryIconPosition,
13622    ) -> *mut gio::GIcon;
13623    pub fn gtk_entry_get_icon_name(
13624        entry: *mut GtkEntry,
13625        icon_pos: GtkEntryIconPosition,
13626    ) -> *const c_char;
13627    pub fn gtk_entry_get_icon_paintable(
13628        entry: *mut GtkEntry,
13629        icon_pos: GtkEntryIconPosition,
13630    ) -> *mut gdk::GdkPaintable;
13631    pub fn gtk_entry_get_icon_sensitive(
13632        entry: *mut GtkEntry,
13633        icon_pos: GtkEntryIconPosition,
13634    ) -> gboolean;
13635    pub fn gtk_entry_get_icon_storage_type(
13636        entry: *mut GtkEntry,
13637        icon_pos: GtkEntryIconPosition,
13638    ) -> GtkImageType;
13639    pub fn gtk_entry_get_icon_tooltip_markup(
13640        entry: *mut GtkEntry,
13641        icon_pos: GtkEntryIconPosition,
13642    ) -> *mut c_char;
13643    pub fn gtk_entry_get_icon_tooltip_text(
13644        entry: *mut GtkEntry,
13645        icon_pos: GtkEntryIconPosition,
13646    ) -> *mut c_char;
13647    pub fn gtk_entry_get_input_hints(entry: *mut GtkEntry) -> GtkInputHints;
13648    pub fn gtk_entry_get_input_purpose(entry: *mut GtkEntry) -> GtkInputPurpose;
13649    pub fn gtk_entry_get_invisible_char(entry: *mut GtkEntry) -> u32;
13650    pub fn gtk_entry_get_max_length(entry: *mut GtkEntry) -> c_int;
13651    #[cfg(feature = "v4_20")]
13652    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
13653    pub fn gtk_entry_get_menu_entry_icon_text(
13654        entry: *mut GtkEntry,
13655        icon_pos: GtkEntryIconPosition,
13656    ) -> *const c_char;
13657    pub fn gtk_entry_get_overwrite_mode(entry: *mut GtkEntry) -> gboolean;
13658    pub fn gtk_entry_get_placeholder_text(entry: *mut GtkEntry) -> *const c_char;
13659    pub fn gtk_entry_get_progress_fraction(entry: *mut GtkEntry) -> c_double;
13660    pub fn gtk_entry_get_progress_pulse_step(entry: *mut GtkEntry) -> c_double;
13661    pub fn gtk_entry_get_tabs(entry: *mut GtkEntry) -> *mut pango::PangoTabArray;
13662    pub fn gtk_entry_get_text_length(entry: *mut GtkEntry) -> u16;
13663    pub fn gtk_entry_get_visibility(entry: *mut GtkEntry) -> gboolean;
13664    pub fn gtk_entry_grab_focus_without_selecting(entry: *mut GtkEntry) -> gboolean;
13665    pub fn gtk_entry_progress_pulse(entry: *mut GtkEntry);
13666    pub fn gtk_entry_reset_im_context(entry: *mut GtkEntry);
13667    pub fn gtk_entry_set_activates_default(entry: *mut GtkEntry, setting: gboolean);
13668    pub fn gtk_entry_set_alignment(entry: *mut GtkEntry, xalign: c_float);
13669    pub fn gtk_entry_set_attributes(entry: *mut GtkEntry, attrs: *mut pango::PangoAttrList);
13670    pub fn gtk_entry_set_buffer(entry: *mut GtkEntry, buffer: *mut GtkEntryBuffer);
13671    pub fn gtk_entry_set_completion(entry: *mut GtkEntry, completion: *mut GtkEntryCompletion);
13672    pub fn gtk_entry_set_extra_menu(entry: *mut GtkEntry, model: *mut gio::GMenuModel);
13673    pub fn gtk_entry_set_has_frame(entry: *mut GtkEntry, setting: gboolean);
13674    pub fn gtk_entry_set_icon_activatable(
13675        entry: *mut GtkEntry,
13676        icon_pos: GtkEntryIconPosition,
13677        activatable: gboolean,
13678    );
13679    pub fn gtk_entry_set_icon_drag_source(
13680        entry: *mut GtkEntry,
13681        icon_pos: GtkEntryIconPosition,
13682        provider: *mut gdk::GdkContentProvider,
13683        actions: gdk::GdkDragAction,
13684    );
13685    pub fn gtk_entry_set_icon_from_gicon(
13686        entry: *mut GtkEntry,
13687        icon_pos: GtkEntryIconPosition,
13688        icon: *mut gio::GIcon,
13689    );
13690    pub fn gtk_entry_set_icon_from_icon_name(
13691        entry: *mut GtkEntry,
13692        icon_pos: GtkEntryIconPosition,
13693        icon_name: *const c_char,
13694    );
13695    pub fn gtk_entry_set_icon_from_paintable(
13696        entry: *mut GtkEntry,
13697        icon_pos: GtkEntryIconPosition,
13698        paintable: *mut gdk::GdkPaintable,
13699    );
13700    pub fn gtk_entry_set_icon_sensitive(
13701        entry: *mut GtkEntry,
13702        icon_pos: GtkEntryIconPosition,
13703        sensitive: gboolean,
13704    );
13705    pub fn gtk_entry_set_icon_tooltip_markup(
13706        entry: *mut GtkEntry,
13707        icon_pos: GtkEntryIconPosition,
13708        tooltip: *const c_char,
13709    );
13710    pub fn gtk_entry_set_icon_tooltip_text(
13711        entry: *mut GtkEntry,
13712        icon_pos: GtkEntryIconPosition,
13713        tooltip: *const c_char,
13714    );
13715    pub fn gtk_entry_set_input_hints(entry: *mut GtkEntry, hints: GtkInputHints);
13716    pub fn gtk_entry_set_input_purpose(entry: *mut GtkEntry, purpose: GtkInputPurpose);
13717    pub fn gtk_entry_set_invisible_char(entry: *mut GtkEntry, ch: u32);
13718    pub fn gtk_entry_set_max_length(entry: *mut GtkEntry, max: c_int);
13719    #[cfg(feature = "v4_20")]
13720    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
13721    pub fn gtk_entry_set_menu_entry_icon_text(
13722        entry: *mut GtkEntry,
13723        icon_pos: GtkEntryIconPosition,
13724        text: *const c_char,
13725    );
13726    pub fn gtk_entry_set_overwrite_mode(entry: *mut GtkEntry, overwrite: gboolean);
13727    pub fn gtk_entry_set_placeholder_text(entry: *mut GtkEntry, text: *const c_char);
13728    pub fn gtk_entry_set_progress_fraction(entry: *mut GtkEntry, fraction: c_double);
13729    pub fn gtk_entry_set_progress_pulse_step(entry: *mut GtkEntry, fraction: c_double);
13730    pub fn gtk_entry_set_tabs(entry: *mut GtkEntry, tabs: *mut pango::PangoTabArray);
13731    pub fn gtk_entry_set_visibility(entry: *mut GtkEntry, visible: gboolean);
13732    pub fn gtk_entry_unset_invisible_char(entry: *mut GtkEntry);
13733
13734    //=========================================================================
13735    // GtkEntryBuffer
13736    //=========================================================================
13737    pub fn gtk_entry_buffer_get_type() -> GType;
13738    pub fn gtk_entry_buffer_new(
13739        initial_chars: *const c_char,
13740        n_initial_chars: c_int,
13741    ) -> *mut GtkEntryBuffer;
13742    pub fn gtk_entry_buffer_delete_text(
13743        buffer: *mut GtkEntryBuffer,
13744        position: c_uint,
13745        n_chars: c_int,
13746    ) -> c_uint;
13747    pub fn gtk_entry_buffer_emit_deleted_text(
13748        buffer: *mut GtkEntryBuffer,
13749        position: c_uint,
13750        n_chars: c_uint,
13751    );
13752    pub fn gtk_entry_buffer_emit_inserted_text(
13753        buffer: *mut GtkEntryBuffer,
13754        position: c_uint,
13755        chars: *const c_char,
13756        n_chars: c_uint,
13757    );
13758    pub fn gtk_entry_buffer_get_bytes(buffer: *mut GtkEntryBuffer) -> size_t;
13759    pub fn gtk_entry_buffer_get_length(buffer: *mut GtkEntryBuffer) -> c_uint;
13760    pub fn gtk_entry_buffer_get_max_length(buffer: *mut GtkEntryBuffer) -> c_int;
13761    pub fn gtk_entry_buffer_get_text(buffer: *mut GtkEntryBuffer) -> *const c_char;
13762    pub fn gtk_entry_buffer_insert_text(
13763        buffer: *mut GtkEntryBuffer,
13764        position: c_uint,
13765        chars: *const c_char,
13766        n_chars: c_int,
13767    ) -> c_uint;
13768    pub fn gtk_entry_buffer_set_max_length(buffer: *mut GtkEntryBuffer, max_length: c_int);
13769    pub fn gtk_entry_buffer_set_text(
13770        buffer: *mut GtkEntryBuffer,
13771        chars: *const c_char,
13772        n_chars: c_int,
13773    );
13774
13775    //=========================================================================
13776    // GtkEntryCompletion
13777    //=========================================================================
13778    pub fn gtk_entry_completion_get_type() -> GType;
13779    pub fn gtk_entry_completion_new() -> *mut GtkEntryCompletion;
13780    pub fn gtk_entry_completion_new_with_area(area: *mut GtkCellArea) -> *mut GtkEntryCompletion;
13781    pub fn gtk_entry_completion_complete(completion: *mut GtkEntryCompletion);
13782    pub fn gtk_entry_completion_compute_prefix(
13783        completion: *mut GtkEntryCompletion,
13784        key: *const c_char,
13785    ) -> *mut c_char;
13786    pub fn gtk_entry_completion_get_completion_prefix(
13787        completion: *mut GtkEntryCompletion,
13788    ) -> *const c_char;
13789    pub fn gtk_entry_completion_get_entry(completion: *mut GtkEntryCompletion) -> *mut GtkWidget;
13790    pub fn gtk_entry_completion_get_inline_completion(
13791        completion: *mut GtkEntryCompletion,
13792    ) -> gboolean;
13793    pub fn gtk_entry_completion_get_inline_selection(
13794        completion: *mut GtkEntryCompletion,
13795    ) -> gboolean;
13796    pub fn gtk_entry_completion_get_minimum_key_length(
13797        completion: *mut GtkEntryCompletion,
13798    ) -> c_int;
13799    pub fn gtk_entry_completion_get_model(completion: *mut GtkEntryCompletion)
13800        -> *mut GtkTreeModel;
13801    pub fn gtk_entry_completion_get_popup_completion(
13802        completion: *mut GtkEntryCompletion,
13803    ) -> gboolean;
13804    pub fn gtk_entry_completion_get_popup_set_width(
13805        completion: *mut GtkEntryCompletion,
13806    ) -> gboolean;
13807    pub fn gtk_entry_completion_get_popup_single_match(
13808        completion: *mut GtkEntryCompletion,
13809    ) -> gboolean;
13810    pub fn gtk_entry_completion_get_text_column(completion: *mut GtkEntryCompletion) -> c_int;
13811    pub fn gtk_entry_completion_insert_prefix(completion: *mut GtkEntryCompletion);
13812    pub fn gtk_entry_completion_set_inline_completion(
13813        completion: *mut GtkEntryCompletion,
13814        inline_completion: gboolean,
13815    );
13816    pub fn gtk_entry_completion_set_inline_selection(
13817        completion: *mut GtkEntryCompletion,
13818        inline_selection: gboolean,
13819    );
13820    pub fn gtk_entry_completion_set_match_func(
13821        completion: *mut GtkEntryCompletion,
13822        func: GtkEntryCompletionMatchFunc,
13823        func_data: gpointer,
13824        func_notify: glib::GDestroyNotify,
13825    );
13826    pub fn gtk_entry_completion_set_minimum_key_length(
13827        completion: *mut GtkEntryCompletion,
13828        length: c_int,
13829    );
13830    pub fn gtk_entry_completion_set_model(
13831        completion: *mut GtkEntryCompletion,
13832        model: *mut GtkTreeModel,
13833    );
13834    pub fn gtk_entry_completion_set_popup_completion(
13835        completion: *mut GtkEntryCompletion,
13836        popup_completion: gboolean,
13837    );
13838    pub fn gtk_entry_completion_set_popup_set_width(
13839        completion: *mut GtkEntryCompletion,
13840        popup_set_width: gboolean,
13841    );
13842    pub fn gtk_entry_completion_set_popup_single_match(
13843        completion: *mut GtkEntryCompletion,
13844        popup_single_match: gboolean,
13845    );
13846    pub fn gtk_entry_completion_set_text_column(completion: *mut GtkEntryCompletion, column: c_int);
13847
13848    //=========================================================================
13849    // GtkEventController
13850    //=========================================================================
13851    pub fn gtk_event_controller_get_type() -> GType;
13852    pub fn gtk_event_controller_get_current_event(
13853        controller: *mut GtkEventController,
13854    ) -> *mut gdk::GdkEvent;
13855    pub fn gtk_event_controller_get_current_event_device(
13856        controller: *mut GtkEventController,
13857    ) -> *mut gdk::GdkDevice;
13858    pub fn gtk_event_controller_get_current_event_state(
13859        controller: *mut GtkEventController,
13860    ) -> gdk::GdkModifierType;
13861    pub fn gtk_event_controller_get_current_event_time(controller: *mut GtkEventController) -> u32;
13862    pub fn gtk_event_controller_get_name(controller: *mut GtkEventController) -> *const c_char;
13863    pub fn gtk_event_controller_get_propagation_limit(
13864        controller: *mut GtkEventController,
13865    ) -> GtkPropagationLimit;
13866    pub fn gtk_event_controller_get_propagation_phase(
13867        controller: *mut GtkEventController,
13868    ) -> GtkPropagationPhase;
13869    pub fn gtk_event_controller_get_widget(controller: *mut GtkEventController) -> *mut GtkWidget;
13870    pub fn gtk_event_controller_reset(controller: *mut GtkEventController);
13871    pub fn gtk_event_controller_set_name(controller: *mut GtkEventController, name: *const c_char);
13872    pub fn gtk_event_controller_set_propagation_limit(
13873        controller: *mut GtkEventController,
13874        limit: GtkPropagationLimit,
13875    );
13876    pub fn gtk_event_controller_set_propagation_phase(
13877        controller: *mut GtkEventController,
13878        phase: GtkPropagationPhase,
13879    );
13880    #[cfg(feature = "v4_8")]
13881    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
13882    pub fn gtk_event_controller_set_static_name(
13883        controller: *mut GtkEventController,
13884        name: *const c_char,
13885    );
13886
13887    //=========================================================================
13888    // GtkEventControllerFocus
13889    //=========================================================================
13890    pub fn gtk_event_controller_focus_get_type() -> GType;
13891    pub fn gtk_event_controller_focus_new() -> *mut GtkEventController;
13892    pub fn gtk_event_controller_focus_contains_focus(
13893        self_: *mut GtkEventControllerFocus,
13894    ) -> gboolean;
13895    pub fn gtk_event_controller_focus_is_focus(self_: *mut GtkEventControllerFocus) -> gboolean;
13896
13897    //=========================================================================
13898    // GtkEventControllerKey
13899    //=========================================================================
13900    pub fn gtk_event_controller_key_get_type() -> GType;
13901    pub fn gtk_event_controller_key_new() -> *mut GtkEventController;
13902    pub fn gtk_event_controller_key_forward(
13903        controller: *mut GtkEventControllerKey,
13904        widget: *mut GtkWidget,
13905    ) -> gboolean;
13906    pub fn gtk_event_controller_key_get_group(controller: *mut GtkEventControllerKey) -> c_uint;
13907    pub fn gtk_event_controller_key_get_im_context(
13908        controller: *mut GtkEventControllerKey,
13909    ) -> *mut GtkIMContext;
13910    pub fn gtk_event_controller_key_set_im_context(
13911        controller: *mut GtkEventControllerKey,
13912        im_context: *mut GtkIMContext,
13913    );
13914
13915    //=========================================================================
13916    // GtkEventControllerLegacy
13917    //=========================================================================
13918    pub fn gtk_event_controller_legacy_get_type() -> GType;
13919    pub fn gtk_event_controller_legacy_new() -> *mut GtkEventController;
13920
13921    //=========================================================================
13922    // GtkEventControllerMotion
13923    //=========================================================================
13924    pub fn gtk_event_controller_motion_get_type() -> GType;
13925    pub fn gtk_event_controller_motion_new() -> *mut GtkEventController;
13926    pub fn gtk_event_controller_motion_contains_pointer(
13927        self_: *mut GtkEventControllerMotion,
13928    ) -> gboolean;
13929    pub fn gtk_event_controller_motion_is_pointer(self_: *mut GtkEventControllerMotion)
13930        -> gboolean;
13931
13932    //=========================================================================
13933    // GtkEventControllerScroll
13934    //=========================================================================
13935    pub fn gtk_event_controller_scroll_get_type() -> GType;
13936    pub fn gtk_event_controller_scroll_new(
13937        flags: GtkEventControllerScrollFlags,
13938    ) -> *mut GtkEventController;
13939    pub fn gtk_event_controller_scroll_get_flags(
13940        scroll: *mut GtkEventControllerScroll,
13941    ) -> GtkEventControllerScrollFlags;
13942    #[cfg(feature = "v4_8")]
13943    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
13944    pub fn gtk_event_controller_scroll_get_unit(
13945        scroll: *mut GtkEventControllerScroll,
13946    ) -> gdk::GdkScrollUnit;
13947    pub fn gtk_event_controller_scroll_set_flags(
13948        scroll: *mut GtkEventControllerScroll,
13949        flags: GtkEventControllerScrollFlags,
13950    );
13951
13952    //=========================================================================
13953    // GtkEveryFilter
13954    //=========================================================================
13955    pub fn gtk_every_filter_get_type() -> GType;
13956    pub fn gtk_every_filter_new() -> *mut GtkEveryFilter;
13957
13958    //=========================================================================
13959    // GtkExpander
13960    //=========================================================================
13961    pub fn gtk_expander_get_type() -> GType;
13962    pub fn gtk_expander_new(label: *const c_char) -> *mut GtkWidget;
13963    pub fn gtk_expander_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
13964    pub fn gtk_expander_get_child(expander: *mut GtkExpander) -> *mut GtkWidget;
13965    pub fn gtk_expander_get_expanded(expander: *mut GtkExpander) -> gboolean;
13966    pub fn gtk_expander_get_label(expander: *mut GtkExpander) -> *const c_char;
13967    pub fn gtk_expander_get_label_widget(expander: *mut GtkExpander) -> *mut GtkWidget;
13968    pub fn gtk_expander_get_resize_toplevel(expander: *mut GtkExpander) -> gboolean;
13969    pub fn gtk_expander_get_use_markup(expander: *mut GtkExpander) -> gboolean;
13970    pub fn gtk_expander_get_use_underline(expander: *mut GtkExpander) -> gboolean;
13971    pub fn gtk_expander_set_child(expander: *mut GtkExpander, child: *mut GtkWidget);
13972    pub fn gtk_expander_set_expanded(expander: *mut GtkExpander, expanded: gboolean);
13973    pub fn gtk_expander_set_label(expander: *mut GtkExpander, label: *const c_char);
13974    pub fn gtk_expander_set_label_widget(expander: *mut GtkExpander, label_widget: *mut GtkWidget);
13975    pub fn gtk_expander_set_resize_toplevel(expander: *mut GtkExpander, resize_toplevel: gboolean);
13976    pub fn gtk_expander_set_use_markup(expander: *mut GtkExpander, use_markup: gboolean);
13977    pub fn gtk_expander_set_use_underline(expander: *mut GtkExpander, use_underline: gboolean);
13978
13979    //=========================================================================
13980    // GtkExpression
13981    //=========================================================================
13982    pub fn gtk_expression_get_type() -> GType;
13983    pub fn gtk_expression_bind(
13984        self_: *mut GtkExpression,
13985        target: *mut gobject::GObject,
13986        property: *const c_char,
13987        this_: *mut gobject::GObject,
13988    ) -> *mut GtkExpressionWatch;
13989    pub fn gtk_expression_evaluate(
13990        self_: *mut GtkExpression,
13991        this_: *mut gobject::GObject,
13992        value: *mut gobject::GValue,
13993    ) -> gboolean;
13994    pub fn gtk_expression_get_value_type(self_: *mut GtkExpression) -> GType;
13995    pub fn gtk_expression_is_static(self_: *mut GtkExpression) -> gboolean;
13996    pub fn gtk_expression_ref(self_: *mut GtkExpression) -> *mut GtkExpression;
13997    pub fn gtk_expression_unref(self_: *mut GtkExpression);
13998    pub fn gtk_expression_watch(
13999        self_: *mut GtkExpression,
14000        this_: *mut gobject::GObject,
14001        notify: GtkExpressionNotify,
14002        user_data: gpointer,
14003        user_destroy: glib::GDestroyNotify,
14004    ) -> *mut GtkExpressionWatch;
14005
14006    //=========================================================================
14007    // GtkFileChooserDialog
14008    //=========================================================================
14009    pub fn gtk_file_chooser_dialog_get_type() -> GType;
14010    pub fn gtk_file_chooser_dialog_new(
14011        title: *const c_char,
14012        parent: *mut GtkWindow,
14013        action: GtkFileChooserAction,
14014        first_button_text: *const c_char,
14015        ...
14016    ) -> *mut GtkWidget;
14017
14018    //=========================================================================
14019    // GtkFileChooserNative
14020    //=========================================================================
14021    pub fn gtk_file_chooser_native_get_type() -> GType;
14022    pub fn gtk_file_chooser_native_new(
14023        title: *const c_char,
14024        parent: *mut GtkWindow,
14025        action: GtkFileChooserAction,
14026        accept_label: *const c_char,
14027        cancel_label: *const c_char,
14028    ) -> *mut GtkFileChooserNative;
14029    pub fn gtk_file_chooser_native_get_accept_label(
14030        self_: *mut GtkFileChooserNative,
14031    ) -> *const c_char;
14032    pub fn gtk_file_chooser_native_get_cancel_label(
14033        self_: *mut GtkFileChooserNative,
14034    ) -> *const c_char;
14035    pub fn gtk_file_chooser_native_set_accept_label(
14036        self_: *mut GtkFileChooserNative,
14037        accept_label: *const c_char,
14038    );
14039    pub fn gtk_file_chooser_native_set_cancel_label(
14040        self_: *mut GtkFileChooserNative,
14041        cancel_label: *const c_char,
14042    );
14043
14044    //=========================================================================
14045    // GtkFileChooserWidget
14046    //=========================================================================
14047    pub fn gtk_file_chooser_widget_get_type() -> GType;
14048    pub fn gtk_file_chooser_widget_new(action: GtkFileChooserAction) -> *mut GtkWidget;
14049
14050    //=========================================================================
14051    // GtkFileDialog
14052    //=========================================================================
14053    #[cfg(feature = "v4_10")]
14054    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14055    pub fn gtk_file_dialog_get_type() -> GType;
14056    #[cfg(feature = "v4_10")]
14057    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14058    pub fn gtk_file_dialog_new() -> *mut GtkFileDialog;
14059    #[cfg(feature = "v4_10")]
14060    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14061    pub fn gtk_file_dialog_get_accept_label(self_: *mut GtkFileDialog) -> *const c_char;
14062    #[cfg(feature = "v4_10")]
14063    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14064    pub fn gtk_file_dialog_get_default_filter(self_: *mut GtkFileDialog) -> *mut GtkFileFilter;
14065    #[cfg(feature = "v4_10")]
14066    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14067    pub fn gtk_file_dialog_get_filters(self_: *mut GtkFileDialog) -> *mut gio::GListModel;
14068    #[cfg(feature = "v4_10")]
14069    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14070    pub fn gtk_file_dialog_get_initial_file(self_: *mut GtkFileDialog) -> *mut gio::GFile;
14071    #[cfg(feature = "v4_10")]
14072    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14073    pub fn gtk_file_dialog_get_initial_folder(self_: *mut GtkFileDialog) -> *mut gio::GFile;
14074    #[cfg(feature = "v4_10")]
14075    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14076    pub fn gtk_file_dialog_get_initial_name(self_: *mut GtkFileDialog) -> *const c_char;
14077    #[cfg(feature = "v4_10")]
14078    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14079    pub fn gtk_file_dialog_get_modal(self_: *mut GtkFileDialog) -> gboolean;
14080    #[cfg(feature = "v4_10")]
14081    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14082    pub fn gtk_file_dialog_get_title(self_: *mut GtkFileDialog) -> *const c_char;
14083    #[cfg(feature = "v4_10")]
14084    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14085    pub fn gtk_file_dialog_open(
14086        self_: *mut GtkFileDialog,
14087        parent: *mut GtkWindow,
14088        cancellable: *mut gio::GCancellable,
14089        callback: gio::GAsyncReadyCallback,
14090        user_data: gpointer,
14091    );
14092    #[cfg(feature = "v4_10")]
14093    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14094    pub fn gtk_file_dialog_open_finish(
14095        self_: *mut GtkFileDialog,
14096        result: *mut gio::GAsyncResult,
14097        error: *mut *mut glib::GError,
14098    ) -> *mut gio::GFile;
14099    #[cfg(feature = "v4_10")]
14100    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14101    pub fn gtk_file_dialog_open_multiple(
14102        self_: *mut GtkFileDialog,
14103        parent: *mut GtkWindow,
14104        cancellable: *mut gio::GCancellable,
14105        callback: gio::GAsyncReadyCallback,
14106        user_data: gpointer,
14107    );
14108    #[cfg(feature = "v4_10")]
14109    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14110    pub fn gtk_file_dialog_open_multiple_finish(
14111        self_: *mut GtkFileDialog,
14112        result: *mut gio::GAsyncResult,
14113        error: *mut *mut glib::GError,
14114    ) -> *mut gio::GListModel;
14115    #[cfg(feature = "v4_18")]
14116    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14117    pub fn gtk_file_dialog_open_multiple_text_files(
14118        self_: *mut GtkFileDialog,
14119        parent: *mut GtkWindow,
14120        cancellable: *mut gio::GCancellable,
14121        callback: gio::GAsyncReadyCallback,
14122        user_data: gpointer,
14123    );
14124    #[cfg(feature = "v4_18")]
14125    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14126    pub fn gtk_file_dialog_open_multiple_text_files_finish(
14127        self_: *mut GtkFileDialog,
14128        result: *mut gio::GAsyncResult,
14129        encoding: *mut *const c_char,
14130        error: *mut *mut glib::GError,
14131    ) -> *mut gio::GListModel;
14132    #[cfg(feature = "v4_18")]
14133    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14134    pub fn gtk_file_dialog_open_text_file(
14135        self_: *mut GtkFileDialog,
14136        parent: *mut GtkWindow,
14137        cancellable: *mut gio::GCancellable,
14138        callback: gio::GAsyncReadyCallback,
14139        user_data: gpointer,
14140    );
14141    #[cfg(feature = "v4_18")]
14142    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14143    pub fn gtk_file_dialog_open_text_file_finish(
14144        self_: *mut GtkFileDialog,
14145        result: *mut gio::GAsyncResult,
14146        encoding: *mut *const c_char,
14147        error: *mut *mut glib::GError,
14148    ) -> *mut gio::GFile;
14149    #[cfg(feature = "v4_10")]
14150    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14151    pub fn gtk_file_dialog_save(
14152        self_: *mut GtkFileDialog,
14153        parent: *mut GtkWindow,
14154        cancellable: *mut gio::GCancellable,
14155        callback: gio::GAsyncReadyCallback,
14156        user_data: gpointer,
14157    );
14158    #[cfg(feature = "v4_10")]
14159    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14160    pub fn gtk_file_dialog_save_finish(
14161        self_: *mut GtkFileDialog,
14162        result: *mut gio::GAsyncResult,
14163        error: *mut *mut glib::GError,
14164    ) -> *mut gio::GFile;
14165    #[cfg(feature = "v4_18")]
14166    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14167    pub fn gtk_file_dialog_save_text_file(
14168        self_: *mut GtkFileDialog,
14169        parent: *mut GtkWindow,
14170        cancellable: *mut gio::GCancellable,
14171        callback: gio::GAsyncReadyCallback,
14172        user_data: gpointer,
14173    );
14174    #[cfg(feature = "v4_18")]
14175    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14176    pub fn gtk_file_dialog_save_text_file_finish(
14177        self_: *mut GtkFileDialog,
14178        result: *mut gio::GAsyncResult,
14179        encoding: *mut *const c_char,
14180        line_ending: *mut *const c_char,
14181        error: *mut *mut glib::GError,
14182    ) -> *mut gio::GFile;
14183    #[cfg(feature = "v4_10")]
14184    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14185    pub fn gtk_file_dialog_select_folder(
14186        self_: *mut GtkFileDialog,
14187        parent: *mut GtkWindow,
14188        cancellable: *mut gio::GCancellable,
14189        callback: gio::GAsyncReadyCallback,
14190        user_data: gpointer,
14191    );
14192    #[cfg(feature = "v4_10")]
14193    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14194    pub fn gtk_file_dialog_select_folder_finish(
14195        self_: *mut GtkFileDialog,
14196        result: *mut gio::GAsyncResult,
14197        error: *mut *mut glib::GError,
14198    ) -> *mut gio::GFile;
14199    #[cfg(feature = "v4_10")]
14200    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14201    pub fn gtk_file_dialog_select_multiple_folders(
14202        self_: *mut GtkFileDialog,
14203        parent: *mut GtkWindow,
14204        cancellable: *mut gio::GCancellable,
14205        callback: gio::GAsyncReadyCallback,
14206        user_data: gpointer,
14207    );
14208    #[cfg(feature = "v4_10")]
14209    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14210    pub fn gtk_file_dialog_select_multiple_folders_finish(
14211        self_: *mut GtkFileDialog,
14212        result: *mut gio::GAsyncResult,
14213        error: *mut *mut glib::GError,
14214    ) -> *mut gio::GListModel;
14215    #[cfg(feature = "v4_10")]
14216    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14217    pub fn gtk_file_dialog_set_accept_label(self_: *mut GtkFileDialog, accept_label: *const c_char);
14218    #[cfg(feature = "v4_10")]
14219    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14220    pub fn gtk_file_dialog_set_default_filter(
14221        self_: *mut GtkFileDialog,
14222        filter: *mut GtkFileFilter,
14223    );
14224    #[cfg(feature = "v4_10")]
14225    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14226    pub fn gtk_file_dialog_set_filters(self_: *mut GtkFileDialog, filters: *mut gio::GListModel);
14227    #[cfg(feature = "v4_10")]
14228    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14229    pub fn gtk_file_dialog_set_initial_file(self_: *mut GtkFileDialog, file: *mut gio::GFile);
14230    #[cfg(feature = "v4_10")]
14231    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14232    pub fn gtk_file_dialog_set_initial_folder(self_: *mut GtkFileDialog, folder: *mut gio::GFile);
14233    #[cfg(feature = "v4_10")]
14234    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14235    pub fn gtk_file_dialog_set_initial_name(self_: *mut GtkFileDialog, name: *const c_char);
14236    #[cfg(feature = "v4_10")]
14237    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14238    pub fn gtk_file_dialog_set_modal(self_: *mut GtkFileDialog, modal: gboolean);
14239    #[cfg(feature = "v4_10")]
14240    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14241    pub fn gtk_file_dialog_set_title(self_: *mut GtkFileDialog, title: *const c_char);
14242
14243    //=========================================================================
14244    // GtkFileFilter
14245    //=========================================================================
14246    pub fn gtk_file_filter_get_type() -> GType;
14247    pub fn gtk_file_filter_new() -> *mut GtkFileFilter;
14248    pub fn gtk_file_filter_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkFileFilter;
14249    pub fn gtk_file_filter_add_mime_type(filter: *mut GtkFileFilter, mime_type: *const c_char);
14250    pub fn gtk_file_filter_add_pattern(filter: *mut GtkFileFilter, pattern: *const c_char);
14251    pub fn gtk_file_filter_add_pixbuf_formats(filter: *mut GtkFileFilter);
14252    #[cfg(feature = "v4_4")]
14253    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
14254    pub fn gtk_file_filter_add_suffix(filter: *mut GtkFileFilter, suffix: *const c_char);
14255    pub fn gtk_file_filter_get_attributes(filter: *mut GtkFileFilter) -> *mut *const c_char;
14256    pub fn gtk_file_filter_get_name(filter: *mut GtkFileFilter) -> *const c_char;
14257    pub fn gtk_file_filter_set_name(filter: *mut GtkFileFilter, name: *const c_char);
14258    pub fn gtk_file_filter_to_gvariant(filter: *mut GtkFileFilter) -> *mut glib::GVariant;
14259
14260    //=========================================================================
14261    // GtkFileLauncher
14262    //=========================================================================
14263    #[cfg(feature = "v4_10")]
14264    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14265    pub fn gtk_file_launcher_get_type() -> GType;
14266    #[cfg(feature = "v4_10")]
14267    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14268    pub fn gtk_file_launcher_new(file: *mut gio::GFile) -> *mut GtkFileLauncher;
14269    #[cfg(feature = "v4_12")]
14270    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14271    pub fn gtk_file_launcher_get_always_ask(self_: *mut GtkFileLauncher) -> gboolean;
14272    #[cfg(feature = "v4_10")]
14273    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14274    pub fn gtk_file_launcher_get_file(self_: *mut GtkFileLauncher) -> *mut gio::GFile;
14275    #[cfg(feature = "v4_14")]
14276    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14277    pub fn gtk_file_launcher_get_writable(self_: *mut GtkFileLauncher) -> gboolean;
14278    #[cfg(feature = "v4_10")]
14279    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14280    pub fn gtk_file_launcher_launch(
14281        self_: *mut GtkFileLauncher,
14282        parent: *mut GtkWindow,
14283        cancellable: *mut gio::GCancellable,
14284        callback: gio::GAsyncReadyCallback,
14285        user_data: gpointer,
14286    );
14287    #[cfg(feature = "v4_10")]
14288    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14289    pub fn gtk_file_launcher_launch_finish(
14290        self_: *mut GtkFileLauncher,
14291        result: *mut gio::GAsyncResult,
14292        error: *mut *mut glib::GError,
14293    ) -> gboolean;
14294    #[cfg(feature = "v4_10")]
14295    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14296    pub fn gtk_file_launcher_open_containing_folder(
14297        self_: *mut GtkFileLauncher,
14298        parent: *mut GtkWindow,
14299        cancellable: *mut gio::GCancellable,
14300        callback: gio::GAsyncReadyCallback,
14301        user_data: gpointer,
14302    );
14303    #[cfg(feature = "v4_10")]
14304    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14305    pub fn gtk_file_launcher_open_containing_folder_finish(
14306        self_: *mut GtkFileLauncher,
14307        result: *mut gio::GAsyncResult,
14308        error: *mut *mut glib::GError,
14309    ) -> gboolean;
14310    #[cfg(feature = "v4_12")]
14311    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14312    pub fn gtk_file_launcher_set_always_ask(self_: *mut GtkFileLauncher, always_ask: gboolean);
14313    #[cfg(feature = "v4_10")]
14314    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14315    pub fn gtk_file_launcher_set_file(self_: *mut GtkFileLauncher, file: *mut gio::GFile);
14316    #[cfg(feature = "v4_14")]
14317    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14318    pub fn gtk_file_launcher_set_writable(self_: *mut GtkFileLauncher, writable: gboolean);
14319
14320    //=========================================================================
14321    // GtkFilter
14322    //=========================================================================
14323    pub fn gtk_filter_get_type() -> GType;
14324    pub fn gtk_filter_changed(self_: *mut GtkFilter, change: GtkFilterChange);
14325    pub fn gtk_filter_get_strictness(self_: *mut GtkFilter) -> GtkFilterMatch;
14326    pub fn gtk_filter_match(self_: *mut GtkFilter, item: *mut gobject::GObject) -> gboolean;
14327
14328    //=========================================================================
14329    // GtkFilterListModel
14330    //=========================================================================
14331    pub fn gtk_filter_list_model_get_type() -> GType;
14332    pub fn gtk_filter_list_model_new(
14333        model: *mut gio::GListModel,
14334        filter: *mut GtkFilter,
14335    ) -> *mut GtkFilterListModel;
14336    pub fn gtk_filter_list_model_get_filter(self_: *mut GtkFilterListModel) -> *mut GtkFilter;
14337    pub fn gtk_filter_list_model_get_incremental(self_: *mut GtkFilterListModel) -> gboolean;
14338    pub fn gtk_filter_list_model_get_model(self_: *mut GtkFilterListModel) -> *mut gio::GListModel;
14339    pub fn gtk_filter_list_model_get_pending(self_: *mut GtkFilterListModel) -> c_uint;
14340    #[cfg(feature = "v4_20")]
14341    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14342    pub fn gtk_filter_list_model_get_watch_items(self_: *mut GtkFilterListModel) -> gboolean;
14343    pub fn gtk_filter_list_model_set_filter(self_: *mut GtkFilterListModel, filter: *mut GtkFilter);
14344    pub fn gtk_filter_list_model_set_incremental(
14345        self_: *mut GtkFilterListModel,
14346        incremental: gboolean,
14347    );
14348    pub fn gtk_filter_list_model_set_model(
14349        self_: *mut GtkFilterListModel,
14350        model: *mut gio::GListModel,
14351    );
14352    #[cfg(feature = "v4_20")]
14353    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14354    pub fn gtk_filter_list_model_set_watch_items(
14355        self_: *mut GtkFilterListModel,
14356        watch_items: gboolean,
14357    );
14358
14359    //=========================================================================
14360    // GtkFixed
14361    //=========================================================================
14362    pub fn gtk_fixed_get_type() -> GType;
14363    pub fn gtk_fixed_new() -> *mut GtkWidget;
14364    pub fn gtk_fixed_get_child_position(
14365        fixed: *mut GtkFixed,
14366        widget: *mut GtkWidget,
14367        x: *mut c_double,
14368        y: *mut c_double,
14369    );
14370    pub fn gtk_fixed_get_child_transform(
14371        fixed: *mut GtkFixed,
14372        widget: *mut GtkWidget,
14373    ) -> *mut gsk::GskTransform;
14374    pub fn gtk_fixed_move(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_double, y: c_double);
14375    pub fn gtk_fixed_put(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_double, y: c_double);
14376    pub fn gtk_fixed_remove(fixed: *mut GtkFixed, widget: *mut GtkWidget);
14377    pub fn gtk_fixed_set_child_transform(
14378        fixed: *mut GtkFixed,
14379        widget: *mut GtkWidget,
14380        transform: *mut gsk::GskTransform,
14381    );
14382
14383    //=========================================================================
14384    // GtkFixedLayout
14385    //=========================================================================
14386    pub fn gtk_fixed_layout_get_type() -> GType;
14387    pub fn gtk_fixed_layout_new() -> *mut GtkLayoutManager;
14388
14389    //=========================================================================
14390    // GtkFixedLayoutChild
14391    //=========================================================================
14392    pub fn gtk_fixed_layout_child_get_type() -> GType;
14393    pub fn gtk_fixed_layout_child_get_transform(
14394        child: *mut GtkFixedLayoutChild,
14395    ) -> *mut gsk::GskTransform;
14396    pub fn gtk_fixed_layout_child_set_transform(
14397        child: *mut GtkFixedLayoutChild,
14398        transform: *mut gsk::GskTransform,
14399    );
14400
14401    //=========================================================================
14402    // GtkFlattenListModel
14403    //=========================================================================
14404    pub fn gtk_flatten_list_model_get_type() -> GType;
14405    pub fn gtk_flatten_list_model_new(model: *mut gio::GListModel) -> *mut GtkFlattenListModel;
14406    pub fn gtk_flatten_list_model_get_model(
14407        self_: *mut GtkFlattenListModel,
14408    ) -> *mut gio::GListModel;
14409    pub fn gtk_flatten_list_model_get_model_for_item(
14410        self_: *mut GtkFlattenListModel,
14411        position: c_uint,
14412    ) -> *mut gio::GListModel;
14413    pub fn gtk_flatten_list_model_set_model(
14414        self_: *mut GtkFlattenListModel,
14415        model: *mut gio::GListModel,
14416    );
14417
14418    //=========================================================================
14419    // GtkFlowBox
14420    //=========================================================================
14421    pub fn gtk_flow_box_get_type() -> GType;
14422    pub fn gtk_flow_box_new() -> *mut GtkWidget;
14423    #[cfg(feature = "v4_6")]
14424    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
14425    pub fn gtk_flow_box_append(self_: *mut GtkFlowBox, child: *mut GtkWidget);
14426    pub fn gtk_flow_box_bind_model(
14427        box_: *mut GtkFlowBox,
14428        model: *mut gio::GListModel,
14429        create_widget_func: GtkFlowBoxCreateWidgetFunc,
14430        user_data: gpointer,
14431        user_data_free_func: glib::GDestroyNotify,
14432    );
14433    pub fn gtk_flow_box_get_activate_on_single_click(box_: *mut GtkFlowBox) -> gboolean;
14434    pub fn gtk_flow_box_get_child_at_index(
14435        box_: *mut GtkFlowBox,
14436        idx: c_int,
14437    ) -> *mut GtkFlowBoxChild;
14438    pub fn gtk_flow_box_get_child_at_pos(
14439        box_: *mut GtkFlowBox,
14440        x: c_int,
14441        y: c_int,
14442    ) -> *mut GtkFlowBoxChild;
14443    pub fn gtk_flow_box_get_column_spacing(box_: *mut GtkFlowBox) -> c_uint;
14444    pub fn gtk_flow_box_get_homogeneous(box_: *mut GtkFlowBox) -> gboolean;
14445    pub fn gtk_flow_box_get_max_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
14446    pub fn gtk_flow_box_get_min_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
14447    pub fn gtk_flow_box_get_row_spacing(box_: *mut GtkFlowBox) -> c_uint;
14448    pub fn gtk_flow_box_get_selected_children(box_: *mut GtkFlowBox) -> *mut glib::GList;
14449    pub fn gtk_flow_box_get_selection_mode(box_: *mut GtkFlowBox) -> GtkSelectionMode;
14450    pub fn gtk_flow_box_insert(box_: *mut GtkFlowBox, widget: *mut GtkWidget, position: c_int);
14451    pub fn gtk_flow_box_invalidate_filter(box_: *mut GtkFlowBox);
14452    pub fn gtk_flow_box_invalidate_sort(box_: *mut GtkFlowBox);
14453    #[cfg(feature = "v4_6")]
14454    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
14455    pub fn gtk_flow_box_prepend(self_: *mut GtkFlowBox, child: *mut GtkWidget);
14456    pub fn gtk_flow_box_remove(box_: *mut GtkFlowBox, widget: *mut GtkWidget);
14457    #[cfg(feature = "v4_12")]
14458    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14459    pub fn gtk_flow_box_remove_all(box_: *mut GtkFlowBox);
14460    pub fn gtk_flow_box_select_all(box_: *mut GtkFlowBox);
14461    pub fn gtk_flow_box_select_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
14462    pub fn gtk_flow_box_selected_foreach(
14463        box_: *mut GtkFlowBox,
14464        func: GtkFlowBoxForeachFunc,
14465        data: gpointer,
14466    );
14467    pub fn gtk_flow_box_set_activate_on_single_click(box_: *mut GtkFlowBox, single: gboolean);
14468    pub fn gtk_flow_box_set_column_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
14469    pub fn gtk_flow_box_set_filter_func(
14470        box_: *mut GtkFlowBox,
14471        filter_func: GtkFlowBoxFilterFunc,
14472        user_data: gpointer,
14473        destroy: glib::GDestroyNotify,
14474    );
14475    pub fn gtk_flow_box_set_hadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
14476    pub fn gtk_flow_box_set_homogeneous(box_: *mut GtkFlowBox, homogeneous: gboolean);
14477    pub fn gtk_flow_box_set_max_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
14478    pub fn gtk_flow_box_set_min_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
14479    pub fn gtk_flow_box_set_row_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
14480    pub fn gtk_flow_box_set_selection_mode(box_: *mut GtkFlowBox, mode: GtkSelectionMode);
14481    pub fn gtk_flow_box_set_sort_func(
14482        box_: *mut GtkFlowBox,
14483        sort_func: GtkFlowBoxSortFunc,
14484        user_data: gpointer,
14485        destroy: glib::GDestroyNotify,
14486    );
14487    pub fn gtk_flow_box_set_vadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
14488    pub fn gtk_flow_box_unselect_all(box_: *mut GtkFlowBox);
14489    pub fn gtk_flow_box_unselect_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
14490
14491    //=========================================================================
14492    // GtkFlowBoxChild
14493    //=========================================================================
14494    pub fn gtk_flow_box_child_get_type() -> GType;
14495    pub fn gtk_flow_box_child_new() -> *mut GtkWidget;
14496    pub fn gtk_flow_box_child_changed(child: *mut GtkFlowBoxChild);
14497    pub fn gtk_flow_box_child_get_child(self_: *mut GtkFlowBoxChild) -> *mut GtkWidget;
14498    pub fn gtk_flow_box_child_get_index(child: *mut GtkFlowBoxChild) -> c_int;
14499    pub fn gtk_flow_box_child_is_selected(child: *mut GtkFlowBoxChild) -> gboolean;
14500    pub fn gtk_flow_box_child_set_child(self_: *mut GtkFlowBoxChild, child: *mut GtkWidget);
14501
14502    //=========================================================================
14503    // GtkFontButton
14504    //=========================================================================
14505    pub fn gtk_font_button_get_type() -> GType;
14506    pub fn gtk_font_button_new() -> *mut GtkWidget;
14507    pub fn gtk_font_button_new_with_font(fontname: *const c_char) -> *mut GtkWidget;
14508    pub fn gtk_font_button_get_modal(font_button: *mut GtkFontButton) -> gboolean;
14509    pub fn gtk_font_button_get_title(font_button: *mut GtkFontButton) -> *const c_char;
14510    pub fn gtk_font_button_get_use_font(font_button: *mut GtkFontButton) -> gboolean;
14511    pub fn gtk_font_button_get_use_size(font_button: *mut GtkFontButton) -> gboolean;
14512    pub fn gtk_font_button_set_modal(font_button: *mut GtkFontButton, modal: gboolean);
14513    pub fn gtk_font_button_set_title(font_button: *mut GtkFontButton, title: *const c_char);
14514    pub fn gtk_font_button_set_use_font(font_button: *mut GtkFontButton, use_font: gboolean);
14515    pub fn gtk_font_button_set_use_size(font_button: *mut GtkFontButton, use_size: gboolean);
14516
14517    //=========================================================================
14518    // GtkFontChooserDialog
14519    //=========================================================================
14520    pub fn gtk_font_chooser_dialog_get_type() -> GType;
14521    pub fn gtk_font_chooser_dialog_new(
14522        title: *const c_char,
14523        parent: *mut GtkWindow,
14524    ) -> *mut GtkWidget;
14525
14526    //=========================================================================
14527    // GtkFontChooserWidget
14528    //=========================================================================
14529    pub fn gtk_font_chooser_widget_get_type() -> GType;
14530    pub fn gtk_font_chooser_widget_new() -> *mut GtkWidget;
14531
14532    //=========================================================================
14533    // GtkFontDialog
14534    //=========================================================================
14535    #[cfg(feature = "v4_10")]
14536    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14537    pub fn gtk_font_dialog_get_type() -> GType;
14538    #[cfg(feature = "v4_10")]
14539    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14540    pub fn gtk_font_dialog_new() -> *mut GtkFontDialog;
14541    #[cfg(feature = "v4_10")]
14542    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14543    pub fn gtk_font_dialog_choose_face(
14544        self_: *mut GtkFontDialog,
14545        parent: *mut GtkWindow,
14546        initial_value: *mut pango::PangoFontFace,
14547        cancellable: *mut gio::GCancellable,
14548        callback: gio::GAsyncReadyCallback,
14549        user_data: gpointer,
14550    );
14551    #[cfg(feature = "v4_10")]
14552    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14553    pub fn gtk_font_dialog_choose_face_finish(
14554        self_: *mut GtkFontDialog,
14555        result: *mut gio::GAsyncResult,
14556        error: *mut *mut glib::GError,
14557    ) -> *mut pango::PangoFontFace;
14558    #[cfg(feature = "v4_10")]
14559    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14560    pub fn gtk_font_dialog_choose_family(
14561        self_: *mut GtkFontDialog,
14562        parent: *mut GtkWindow,
14563        initial_value: *mut pango::PangoFontFamily,
14564        cancellable: *mut gio::GCancellable,
14565        callback: gio::GAsyncReadyCallback,
14566        user_data: gpointer,
14567    );
14568    #[cfg(feature = "v4_10")]
14569    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14570    pub fn gtk_font_dialog_choose_family_finish(
14571        self_: *mut GtkFontDialog,
14572        result: *mut gio::GAsyncResult,
14573        error: *mut *mut glib::GError,
14574    ) -> *mut pango::PangoFontFamily;
14575    #[cfg(feature = "v4_10")]
14576    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14577    pub fn gtk_font_dialog_choose_font(
14578        self_: *mut GtkFontDialog,
14579        parent: *mut GtkWindow,
14580        initial_value: *mut pango::PangoFontDescription,
14581        cancellable: *mut gio::GCancellable,
14582        callback: gio::GAsyncReadyCallback,
14583        user_data: gpointer,
14584    );
14585    #[cfg(feature = "v4_10")]
14586    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14587    pub fn gtk_font_dialog_choose_font_and_features(
14588        self_: *mut GtkFontDialog,
14589        parent: *mut GtkWindow,
14590        initial_value: *mut pango::PangoFontDescription,
14591        cancellable: *mut gio::GCancellable,
14592        callback: gio::GAsyncReadyCallback,
14593        user_data: gpointer,
14594    );
14595    #[cfg(feature = "v4_10")]
14596    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14597    pub fn gtk_font_dialog_choose_font_and_features_finish(
14598        self_: *mut GtkFontDialog,
14599        result: *mut gio::GAsyncResult,
14600        font_desc: *mut *mut pango::PangoFontDescription,
14601        font_features: *mut *mut c_char,
14602        language: *mut *mut pango::PangoLanguage,
14603        error: *mut *mut glib::GError,
14604    ) -> gboolean;
14605    #[cfg(feature = "v4_10")]
14606    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14607    pub fn gtk_font_dialog_choose_font_finish(
14608        self_: *mut GtkFontDialog,
14609        result: *mut gio::GAsyncResult,
14610        error: *mut *mut glib::GError,
14611    ) -> *mut pango::PangoFontDescription;
14612    #[cfg(feature = "v4_10")]
14613    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14614    pub fn gtk_font_dialog_get_filter(self_: *mut GtkFontDialog) -> *mut GtkFilter;
14615    #[cfg(feature = "v4_10")]
14616    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14617    pub fn gtk_font_dialog_get_font_map(self_: *mut GtkFontDialog) -> *mut pango::PangoFontMap;
14618    #[cfg(feature = "v4_10")]
14619    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14620    pub fn gtk_font_dialog_get_language(self_: *mut GtkFontDialog) -> *mut pango::PangoLanguage;
14621    #[cfg(feature = "v4_10")]
14622    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14623    pub fn gtk_font_dialog_get_modal(self_: *mut GtkFontDialog) -> gboolean;
14624    #[cfg(feature = "v4_10")]
14625    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14626    pub fn gtk_font_dialog_get_title(self_: *mut GtkFontDialog) -> *const c_char;
14627    #[cfg(feature = "v4_10")]
14628    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14629    pub fn gtk_font_dialog_set_filter(self_: *mut GtkFontDialog, filter: *mut GtkFilter);
14630    #[cfg(feature = "v4_10")]
14631    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14632    pub fn gtk_font_dialog_set_font_map(
14633        self_: *mut GtkFontDialog,
14634        fontmap: *mut pango::PangoFontMap,
14635    );
14636    #[cfg(feature = "v4_10")]
14637    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14638    pub fn gtk_font_dialog_set_language(
14639        self_: *mut GtkFontDialog,
14640        language: *mut pango::PangoLanguage,
14641    );
14642    #[cfg(feature = "v4_10")]
14643    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14644    pub fn gtk_font_dialog_set_modal(self_: *mut GtkFontDialog, modal: gboolean);
14645    #[cfg(feature = "v4_10")]
14646    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14647    pub fn gtk_font_dialog_set_title(self_: *mut GtkFontDialog, title: *const c_char);
14648
14649    //=========================================================================
14650    // GtkFontDialogButton
14651    //=========================================================================
14652    #[cfg(feature = "v4_10")]
14653    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14654    pub fn gtk_font_dialog_button_get_type() -> GType;
14655    #[cfg(feature = "v4_10")]
14656    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14657    pub fn gtk_font_dialog_button_new(dialog: *mut GtkFontDialog) -> *mut GtkWidget;
14658    #[cfg(feature = "v4_10")]
14659    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14660    pub fn gtk_font_dialog_button_get_dialog(self_: *mut GtkFontDialogButton)
14661        -> *mut GtkFontDialog;
14662    #[cfg(feature = "v4_10")]
14663    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14664    pub fn gtk_font_dialog_button_get_font_desc(
14665        self_: *mut GtkFontDialogButton,
14666    ) -> *mut pango::PangoFontDescription;
14667    #[cfg(feature = "v4_10")]
14668    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14669    pub fn gtk_font_dialog_button_get_font_features(
14670        self_: *mut GtkFontDialogButton,
14671    ) -> *const c_char;
14672    #[cfg(feature = "v4_10")]
14673    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14674    pub fn gtk_font_dialog_button_get_language(
14675        self_: *mut GtkFontDialogButton,
14676    ) -> *mut pango::PangoLanguage;
14677    #[cfg(feature = "v4_10")]
14678    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14679    pub fn gtk_font_dialog_button_get_level(self_: *mut GtkFontDialogButton) -> GtkFontLevel;
14680    #[cfg(feature = "v4_10")]
14681    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14682    pub fn gtk_font_dialog_button_get_use_font(self_: *mut GtkFontDialogButton) -> gboolean;
14683    #[cfg(feature = "v4_10")]
14684    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14685    pub fn gtk_font_dialog_button_get_use_size(self_: *mut GtkFontDialogButton) -> gboolean;
14686    #[cfg(feature = "v4_10")]
14687    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14688    pub fn gtk_font_dialog_button_set_dialog(
14689        self_: *mut GtkFontDialogButton,
14690        dialog: *mut GtkFontDialog,
14691    );
14692    #[cfg(feature = "v4_10")]
14693    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14694    pub fn gtk_font_dialog_button_set_font_desc(
14695        self_: *mut GtkFontDialogButton,
14696        font_desc: *const pango::PangoFontDescription,
14697    );
14698    #[cfg(feature = "v4_10")]
14699    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14700    pub fn gtk_font_dialog_button_set_font_features(
14701        self_: *mut GtkFontDialogButton,
14702        font_features: *const c_char,
14703    );
14704    #[cfg(feature = "v4_10")]
14705    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14706    pub fn gtk_font_dialog_button_set_language(
14707        self_: *mut GtkFontDialogButton,
14708        language: *mut pango::PangoLanguage,
14709    );
14710    #[cfg(feature = "v4_10")]
14711    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14712    pub fn gtk_font_dialog_button_set_level(self_: *mut GtkFontDialogButton, level: GtkFontLevel);
14713    #[cfg(feature = "v4_10")]
14714    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14715    pub fn gtk_font_dialog_button_set_use_font(self_: *mut GtkFontDialogButton, use_font: gboolean);
14716    #[cfg(feature = "v4_10")]
14717    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14718    pub fn gtk_font_dialog_button_set_use_size(self_: *mut GtkFontDialogButton, use_size: gboolean);
14719
14720    //=========================================================================
14721    // GtkFrame
14722    //=========================================================================
14723    pub fn gtk_frame_get_type() -> GType;
14724    pub fn gtk_frame_new(label: *const c_char) -> *mut GtkWidget;
14725    pub fn gtk_frame_get_child(frame: *mut GtkFrame) -> *mut GtkWidget;
14726    pub fn gtk_frame_get_label(frame: *mut GtkFrame) -> *const c_char;
14727    pub fn gtk_frame_get_label_align(frame: *mut GtkFrame) -> c_float;
14728    pub fn gtk_frame_get_label_widget(frame: *mut GtkFrame) -> *mut GtkWidget;
14729    pub fn gtk_frame_set_child(frame: *mut GtkFrame, child: *mut GtkWidget);
14730    pub fn gtk_frame_set_label(frame: *mut GtkFrame, label: *const c_char);
14731    pub fn gtk_frame_set_label_align(frame: *mut GtkFrame, xalign: c_float);
14732    pub fn gtk_frame_set_label_widget(frame: *mut GtkFrame, label_widget: *mut GtkWidget);
14733
14734    //=========================================================================
14735    // GtkGLArea
14736    //=========================================================================
14737    pub fn gtk_gl_area_get_type() -> GType;
14738    pub fn gtk_gl_area_new() -> *mut GtkWidget;
14739    pub fn gtk_gl_area_attach_buffers(area: *mut GtkGLArea);
14740    #[cfg(feature = "v4_12")]
14741    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14742    pub fn gtk_gl_area_get_allowed_apis(area: *mut GtkGLArea) -> gdk::GdkGLAPI;
14743    #[cfg(feature = "v4_12")]
14744    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14745    pub fn gtk_gl_area_get_api(area: *mut GtkGLArea) -> gdk::GdkGLAPI;
14746    pub fn gtk_gl_area_get_auto_render(area: *mut GtkGLArea) -> gboolean;
14747    pub fn gtk_gl_area_get_context(area: *mut GtkGLArea) -> *mut gdk::GdkGLContext;
14748    pub fn gtk_gl_area_get_error(area: *mut GtkGLArea) -> *mut glib::GError;
14749    pub fn gtk_gl_area_get_has_depth_buffer(area: *mut GtkGLArea) -> gboolean;
14750    pub fn gtk_gl_area_get_has_stencil_buffer(area: *mut GtkGLArea) -> gboolean;
14751    pub fn gtk_gl_area_get_required_version(
14752        area: *mut GtkGLArea,
14753        major: *mut c_int,
14754        minor: *mut c_int,
14755    );
14756    pub fn gtk_gl_area_get_use_es(area: *mut GtkGLArea) -> gboolean;
14757    pub fn gtk_gl_area_make_current(area: *mut GtkGLArea);
14758    pub fn gtk_gl_area_queue_render(area: *mut GtkGLArea);
14759    #[cfg(feature = "v4_12")]
14760    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14761    pub fn gtk_gl_area_set_allowed_apis(area: *mut GtkGLArea, apis: gdk::GdkGLAPI);
14762    pub fn gtk_gl_area_set_auto_render(area: *mut GtkGLArea, auto_render: gboolean);
14763    pub fn gtk_gl_area_set_error(area: *mut GtkGLArea, error: *const glib::GError);
14764    pub fn gtk_gl_area_set_has_depth_buffer(area: *mut GtkGLArea, has_depth_buffer: gboolean);
14765    pub fn gtk_gl_area_set_has_stencil_buffer(area: *mut GtkGLArea, has_stencil_buffer: gboolean);
14766    pub fn gtk_gl_area_set_required_version(area: *mut GtkGLArea, major: c_int, minor: c_int);
14767    pub fn gtk_gl_area_set_use_es(area: *mut GtkGLArea, use_es: gboolean);
14768
14769    //=========================================================================
14770    // GtkGesture
14771    //=========================================================================
14772    pub fn gtk_gesture_get_type() -> GType;
14773    pub fn gtk_gesture_get_bounding_box(
14774        gesture: *mut GtkGesture,
14775        rect: *mut gdk::GdkRectangle,
14776    ) -> gboolean;
14777    pub fn gtk_gesture_get_bounding_box_center(
14778        gesture: *mut GtkGesture,
14779        x: *mut c_double,
14780        y: *mut c_double,
14781    ) -> gboolean;
14782    pub fn gtk_gesture_get_device(gesture: *mut GtkGesture) -> *mut gdk::GdkDevice;
14783    pub fn gtk_gesture_get_group(gesture: *mut GtkGesture) -> *mut glib::GList;
14784    pub fn gtk_gesture_get_last_event(
14785        gesture: *mut GtkGesture,
14786        sequence: *mut gdk::GdkEventSequence,
14787    ) -> *mut gdk::GdkEvent;
14788    pub fn gtk_gesture_get_last_updated_sequence(
14789        gesture: *mut GtkGesture,
14790    ) -> *mut gdk::GdkEventSequence;
14791    pub fn gtk_gesture_get_point(
14792        gesture: *mut GtkGesture,
14793        sequence: *mut gdk::GdkEventSequence,
14794        x: *mut c_double,
14795        y: *mut c_double,
14796    ) -> gboolean;
14797    pub fn gtk_gesture_get_sequence_state(
14798        gesture: *mut GtkGesture,
14799        sequence: *mut gdk::GdkEventSequence,
14800    ) -> GtkEventSequenceState;
14801    pub fn gtk_gesture_get_sequences(gesture: *mut GtkGesture) -> *mut glib::GList;
14802    pub fn gtk_gesture_group(group_gesture: *mut GtkGesture, gesture: *mut GtkGesture);
14803    pub fn gtk_gesture_handles_sequence(
14804        gesture: *mut GtkGesture,
14805        sequence: *mut gdk::GdkEventSequence,
14806    ) -> gboolean;
14807    pub fn gtk_gesture_is_active(gesture: *mut GtkGesture) -> gboolean;
14808    pub fn gtk_gesture_is_grouped_with(
14809        gesture: *mut GtkGesture,
14810        other: *mut GtkGesture,
14811    ) -> gboolean;
14812    pub fn gtk_gesture_is_recognized(gesture: *mut GtkGesture) -> gboolean;
14813    pub fn gtk_gesture_set_sequence_state(
14814        gesture: *mut GtkGesture,
14815        sequence: *mut gdk::GdkEventSequence,
14816        state: GtkEventSequenceState,
14817    ) -> gboolean;
14818    pub fn gtk_gesture_set_state(
14819        gesture: *mut GtkGesture,
14820        state: GtkEventSequenceState,
14821    ) -> gboolean;
14822    pub fn gtk_gesture_ungroup(gesture: *mut GtkGesture);
14823
14824    //=========================================================================
14825    // GtkGestureClick
14826    //=========================================================================
14827    pub fn gtk_gesture_click_get_type() -> GType;
14828    pub fn gtk_gesture_click_new() -> *mut GtkGesture;
14829
14830    //=========================================================================
14831    // GtkGestureDrag
14832    //=========================================================================
14833    pub fn gtk_gesture_drag_get_type() -> GType;
14834    pub fn gtk_gesture_drag_new() -> *mut GtkGesture;
14835    pub fn gtk_gesture_drag_get_offset(
14836        gesture: *mut GtkGestureDrag,
14837        x: *mut c_double,
14838        y: *mut c_double,
14839    ) -> gboolean;
14840    pub fn gtk_gesture_drag_get_start_point(
14841        gesture: *mut GtkGestureDrag,
14842        x: *mut c_double,
14843        y: *mut c_double,
14844    ) -> gboolean;
14845
14846    //=========================================================================
14847    // GtkGestureLongPress
14848    //=========================================================================
14849    pub fn gtk_gesture_long_press_get_type() -> GType;
14850    pub fn gtk_gesture_long_press_new() -> *mut GtkGesture;
14851    pub fn gtk_gesture_long_press_get_delay_factor(gesture: *mut GtkGestureLongPress) -> c_double;
14852    pub fn gtk_gesture_long_press_set_delay_factor(
14853        gesture: *mut GtkGestureLongPress,
14854        delay_factor: c_double,
14855    );
14856
14857    //=========================================================================
14858    // GtkGesturePan
14859    //=========================================================================
14860    pub fn gtk_gesture_pan_get_type() -> GType;
14861    pub fn gtk_gesture_pan_new(orientation: GtkOrientation) -> *mut GtkGesture;
14862    pub fn gtk_gesture_pan_get_orientation(gesture: *mut GtkGesturePan) -> GtkOrientation;
14863    pub fn gtk_gesture_pan_set_orientation(
14864        gesture: *mut GtkGesturePan,
14865        orientation: GtkOrientation,
14866    );
14867
14868    //=========================================================================
14869    // GtkGestureRotate
14870    //=========================================================================
14871    pub fn gtk_gesture_rotate_get_type() -> GType;
14872    pub fn gtk_gesture_rotate_new() -> *mut GtkGesture;
14873    pub fn gtk_gesture_rotate_get_angle_delta(gesture: *mut GtkGestureRotate) -> c_double;
14874
14875    //=========================================================================
14876    // GtkGestureSingle
14877    //=========================================================================
14878    pub fn gtk_gesture_single_get_type() -> GType;
14879    pub fn gtk_gesture_single_get_button(gesture: *mut GtkGestureSingle) -> c_uint;
14880    pub fn gtk_gesture_single_get_current_button(gesture: *mut GtkGestureSingle) -> c_uint;
14881    pub fn gtk_gesture_single_get_current_sequence(
14882        gesture: *mut GtkGestureSingle,
14883    ) -> *mut gdk::GdkEventSequence;
14884    pub fn gtk_gesture_single_get_exclusive(gesture: *mut GtkGestureSingle) -> gboolean;
14885    pub fn gtk_gesture_single_get_touch_only(gesture: *mut GtkGestureSingle) -> gboolean;
14886    pub fn gtk_gesture_single_set_button(gesture: *mut GtkGestureSingle, button: c_uint);
14887    pub fn gtk_gesture_single_set_exclusive(gesture: *mut GtkGestureSingle, exclusive: gboolean);
14888    pub fn gtk_gesture_single_set_touch_only(gesture: *mut GtkGestureSingle, touch_only: gboolean);
14889
14890    //=========================================================================
14891    // GtkGestureStylus
14892    //=========================================================================
14893    pub fn gtk_gesture_stylus_get_type() -> GType;
14894    pub fn gtk_gesture_stylus_new() -> *mut GtkGesture;
14895    pub fn gtk_gesture_stylus_get_axes(
14896        gesture: *mut GtkGestureStylus,
14897        axes: *mut gdk::GdkAxisUse,
14898        values: *mut *mut c_double,
14899    ) -> gboolean;
14900    pub fn gtk_gesture_stylus_get_axis(
14901        gesture: *mut GtkGestureStylus,
14902        axis: gdk::GdkAxisUse,
14903        value: *mut c_double,
14904    ) -> gboolean;
14905    pub fn gtk_gesture_stylus_get_backlog(
14906        gesture: *mut GtkGestureStylus,
14907        backlog: *mut *mut gdk::GdkTimeCoord,
14908        n_elems: *mut c_uint,
14909    ) -> gboolean;
14910    pub fn gtk_gesture_stylus_get_device_tool(
14911        gesture: *mut GtkGestureStylus,
14912    ) -> *mut gdk::GdkDeviceTool;
14913    #[cfg(feature = "v4_10")]
14914    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14915    pub fn gtk_gesture_stylus_get_stylus_only(gesture: *mut GtkGestureStylus) -> gboolean;
14916    #[cfg(feature = "v4_10")]
14917    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14918    pub fn gtk_gesture_stylus_set_stylus_only(
14919        gesture: *mut GtkGestureStylus,
14920        stylus_only: gboolean,
14921    );
14922
14923    //=========================================================================
14924    // GtkGestureSwipe
14925    //=========================================================================
14926    pub fn gtk_gesture_swipe_get_type() -> GType;
14927    pub fn gtk_gesture_swipe_new() -> *mut GtkGesture;
14928    pub fn gtk_gesture_swipe_get_velocity(
14929        gesture: *mut GtkGestureSwipe,
14930        velocity_x: *mut c_double,
14931        velocity_y: *mut c_double,
14932    ) -> gboolean;
14933
14934    //=========================================================================
14935    // GtkGestureZoom
14936    //=========================================================================
14937    pub fn gtk_gesture_zoom_get_type() -> GType;
14938    pub fn gtk_gesture_zoom_new() -> *mut GtkGesture;
14939    pub fn gtk_gesture_zoom_get_scale_delta(gesture: *mut GtkGestureZoom) -> c_double;
14940
14941    //=========================================================================
14942    // GtkGraphicsOffload
14943    //=========================================================================
14944    #[cfg(feature = "v4_14")]
14945    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14946    pub fn gtk_graphics_offload_get_type() -> GType;
14947    #[cfg(feature = "v4_14")]
14948    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14949    pub fn gtk_graphics_offload_new(child: *mut GtkWidget) -> *mut GtkWidget;
14950    #[cfg(feature = "v4_16")]
14951    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
14952    pub fn gtk_graphics_offload_get_black_background(self_: *mut GtkGraphicsOffload) -> gboolean;
14953    #[cfg(feature = "v4_14")]
14954    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14955    pub fn gtk_graphics_offload_get_child(self_: *mut GtkGraphicsOffload) -> *mut GtkWidget;
14956    #[cfg(feature = "v4_14")]
14957    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14958    pub fn gtk_graphics_offload_get_enabled(
14959        self_: *mut GtkGraphicsOffload,
14960    ) -> GtkGraphicsOffloadEnabled;
14961    #[cfg(feature = "v4_16")]
14962    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
14963    pub fn gtk_graphics_offload_set_black_background(
14964        self_: *mut GtkGraphicsOffload,
14965        value: gboolean,
14966    );
14967    #[cfg(feature = "v4_14")]
14968    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14969    pub fn gtk_graphics_offload_set_child(self_: *mut GtkGraphicsOffload, child: *mut GtkWidget);
14970    #[cfg(feature = "v4_14")]
14971    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14972    pub fn gtk_graphics_offload_set_enabled(
14973        self_: *mut GtkGraphicsOffload,
14974        enabled: GtkGraphicsOffloadEnabled,
14975    );
14976
14977    //=========================================================================
14978    // GtkGrid
14979    //=========================================================================
14980    pub fn gtk_grid_get_type() -> GType;
14981    pub fn gtk_grid_new() -> *mut GtkWidget;
14982    pub fn gtk_grid_attach(
14983        grid: *mut GtkGrid,
14984        child: *mut GtkWidget,
14985        column: c_int,
14986        row: c_int,
14987        width: c_int,
14988        height: c_int,
14989    );
14990    pub fn gtk_grid_attach_next_to(
14991        grid: *mut GtkGrid,
14992        child: *mut GtkWidget,
14993        sibling: *mut GtkWidget,
14994        side: GtkPositionType,
14995        width: c_int,
14996        height: c_int,
14997    );
14998    pub fn gtk_grid_get_baseline_row(grid: *mut GtkGrid) -> c_int;
14999    pub fn gtk_grid_get_child_at(grid: *mut GtkGrid, column: c_int, row: c_int) -> *mut GtkWidget;
15000    pub fn gtk_grid_get_column_homogeneous(grid: *mut GtkGrid) -> gboolean;
15001    pub fn gtk_grid_get_column_spacing(grid: *mut GtkGrid) -> c_uint;
15002    pub fn gtk_grid_get_row_baseline_position(
15003        grid: *mut GtkGrid,
15004        row: c_int,
15005    ) -> GtkBaselinePosition;
15006    pub fn gtk_grid_get_row_homogeneous(grid: *mut GtkGrid) -> gboolean;
15007    pub fn gtk_grid_get_row_spacing(grid: *mut GtkGrid) -> c_uint;
15008    pub fn gtk_grid_insert_column(grid: *mut GtkGrid, position: c_int);
15009    pub fn gtk_grid_insert_next_to(
15010        grid: *mut GtkGrid,
15011        sibling: *mut GtkWidget,
15012        side: GtkPositionType,
15013    );
15014    pub fn gtk_grid_insert_row(grid: *mut GtkGrid, position: c_int);
15015    pub fn gtk_grid_query_child(
15016        grid: *mut GtkGrid,
15017        child: *mut GtkWidget,
15018        column: *mut c_int,
15019        row: *mut c_int,
15020        width: *mut c_int,
15021        height: *mut c_int,
15022    );
15023    pub fn gtk_grid_remove(grid: *mut GtkGrid, child: *mut GtkWidget);
15024    pub fn gtk_grid_remove_column(grid: *mut GtkGrid, position: c_int);
15025    pub fn gtk_grid_remove_row(grid: *mut GtkGrid, position: c_int);
15026    pub fn gtk_grid_set_baseline_row(grid: *mut GtkGrid, row: c_int);
15027    pub fn gtk_grid_set_column_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
15028    pub fn gtk_grid_set_column_spacing(grid: *mut GtkGrid, spacing: c_uint);
15029    pub fn gtk_grid_set_row_baseline_position(
15030        grid: *mut GtkGrid,
15031        row: c_int,
15032        pos: GtkBaselinePosition,
15033    );
15034    pub fn gtk_grid_set_row_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
15035    pub fn gtk_grid_set_row_spacing(grid: *mut GtkGrid, spacing: c_uint);
15036
15037    //=========================================================================
15038    // GtkGridLayout
15039    //=========================================================================
15040    pub fn gtk_grid_layout_get_type() -> GType;
15041    pub fn gtk_grid_layout_new() -> *mut GtkLayoutManager;
15042    pub fn gtk_grid_layout_get_baseline_row(grid: *mut GtkGridLayout) -> c_int;
15043    pub fn gtk_grid_layout_get_column_homogeneous(grid: *mut GtkGridLayout) -> gboolean;
15044    pub fn gtk_grid_layout_get_column_spacing(grid: *mut GtkGridLayout) -> c_uint;
15045    pub fn gtk_grid_layout_get_row_baseline_position(
15046        grid: *mut GtkGridLayout,
15047        row: c_int,
15048    ) -> GtkBaselinePosition;
15049    pub fn gtk_grid_layout_get_row_homogeneous(grid: *mut GtkGridLayout) -> gboolean;
15050    pub fn gtk_grid_layout_get_row_spacing(grid: *mut GtkGridLayout) -> c_uint;
15051    pub fn gtk_grid_layout_set_baseline_row(grid: *mut GtkGridLayout, row: c_int);
15052    pub fn gtk_grid_layout_set_column_homogeneous(grid: *mut GtkGridLayout, homogeneous: gboolean);
15053    pub fn gtk_grid_layout_set_column_spacing(grid: *mut GtkGridLayout, spacing: c_uint);
15054    pub fn gtk_grid_layout_set_row_baseline_position(
15055        grid: *mut GtkGridLayout,
15056        row: c_int,
15057        pos: GtkBaselinePosition,
15058    );
15059    pub fn gtk_grid_layout_set_row_homogeneous(grid: *mut GtkGridLayout, homogeneous: gboolean);
15060    pub fn gtk_grid_layout_set_row_spacing(grid: *mut GtkGridLayout, spacing: c_uint);
15061
15062    //=========================================================================
15063    // GtkGridLayoutChild
15064    //=========================================================================
15065    pub fn gtk_grid_layout_child_get_type() -> GType;
15066    pub fn gtk_grid_layout_child_get_column(child: *mut GtkGridLayoutChild) -> c_int;
15067    pub fn gtk_grid_layout_child_get_column_span(child: *mut GtkGridLayoutChild) -> c_int;
15068    pub fn gtk_grid_layout_child_get_row(child: *mut GtkGridLayoutChild) -> c_int;
15069    pub fn gtk_grid_layout_child_get_row_span(child: *mut GtkGridLayoutChild) -> c_int;
15070    pub fn gtk_grid_layout_child_set_column(child: *mut GtkGridLayoutChild, column: c_int);
15071    pub fn gtk_grid_layout_child_set_column_span(child: *mut GtkGridLayoutChild, span: c_int);
15072    pub fn gtk_grid_layout_child_set_row(child: *mut GtkGridLayoutChild, row: c_int);
15073    pub fn gtk_grid_layout_child_set_row_span(child: *mut GtkGridLayoutChild, span: c_int);
15074
15075    //=========================================================================
15076    // GtkGridView
15077    //=========================================================================
15078    pub fn gtk_grid_view_get_type() -> GType;
15079    pub fn gtk_grid_view_new(
15080        model: *mut GtkSelectionModel,
15081        factory: *mut GtkListItemFactory,
15082    ) -> *mut GtkWidget;
15083    pub fn gtk_grid_view_get_enable_rubberband(self_: *mut GtkGridView) -> gboolean;
15084    pub fn gtk_grid_view_get_factory(self_: *mut GtkGridView) -> *mut GtkListItemFactory;
15085    pub fn gtk_grid_view_get_max_columns(self_: *mut GtkGridView) -> c_uint;
15086    pub fn gtk_grid_view_get_min_columns(self_: *mut GtkGridView) -> c_uint;
15087    pub fn gtk_grid_view_get_model(self_: *mut GtkGridView) -> *mut GtkSelectionModel;
15088    pub fn gtk_grid_view_get_single_click_activate(self_: *mut GtkGridView) -> gboolean;
15089    #[cfg(feature = "v4_12")]
15090    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15091    pub fn gtk_grid_view_get_tab_behavior(self_: *mut GtkGridView) -> GtkListTabBehavior;
15092    #[cfg(feature = "v4_12")]
15093    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15094    pub fn gtk_grid_view_scroll_to(
15095        self_: *mut GtkGridView,
15096        pos: c_uint,
15097        flags: GtkListScrollFlags,
15098        scroll: *mut GtkScrollInfo,
15099    );
15100    pub fn gtk_grid_view_set_enable_rubberband(
15101        self_: *mut GtkGridView,
15102        enable_rubberband: gboolean,
15103    );
15104    pub fn gtk_grid_view_set_factory(self_: *mut GtkGridView, factory: *mut GtkListItemFactory);
15105    pub fn gtk_grid_view_set_max_columns(self_: *mut GtkGridView, max_columns: c_uint);
15106    pub fn gtk_grid_view_set_min_columns(self_: *mut GtkGridView, min_columns: c_uint);
15107    pub fn gtk_grid_view_set_model(self_: *mut GtkGridView, model: *mut GtkSelectionModel);
15108    pub fn gtk_grid_view_set_single_click_activate(
15109        self_: *mut GtkGridView,
15110        single_click_activate: gboolean,
15111    );
15112    #[cfg(feature = "v4_12")]
15113    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15114    pub fn gtk_grid_view_set_tab_behavior(
15115        self_: *mut GtkGridView,
15116        tab_behavior: GtkListTabBehavior,
15117    );
15118
15119    //=========================================================================
15120    // GtkHeaderBar
15121    //=========================================================================
15122    pub fn gtk_header_bar_get_type() -> GType;
15123    pub fn gtk_header_bar_new() -> *mut GtkWidget;
15124    pub fn gtk_header_bar_get_decoration_layout(bar: *mut GtkHeaderBar) -> *const c_char;
15125    pub fn gtk_header_bar_get_show_title_buttons(bar: *mut GtkHeaderBar) -> gboolean;
15126    pub fn gtk_header_bar_get_title_widget(bar: *mut GtkHeaderBar) -> *mut GtkWidget;
15127    #[cfg(feature = "v4_18")]
15128    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15129    pub fn gtk_header_bar_get_use_native_controls(bar: *mut GtkHeaderBar) -> gboolean;
15130    pub fn gtk_header_bar_pack_end(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15131    pub fn gtk_header_bar_pack_start(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15132    pub fn gtk_header_bar_remove(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15133    pub fn gtk_header_bar_set_decoration_layout(bar: *mut GtkHeaderBar, layout: *const c_char);
15134    pub fn gtk_header_bar_set_show_title_buttons(bar: *mut GtkHeaderBar, setting: gboolean);
15135    pub fn gtk_header_bar_set_title_widget(bar: *mut GtkHeaderBar, title_widget: *mut GtkWidget);
15136    #[cfg(feature = "v4_18")]
15137    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15138    pub fn gtk_header_bar_set_use_native_controls(bar: *mut GtkHeaderBar, setting: gboolean);
15139
15140    //=========================================================================
15141    // GtkIMContext
15142    //=========================================================================
15143    pub fn gtk_im_context_get_type() -> GType;
15144    #[cfg(feature = "v4_14")]
15145    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15146    pub fn gtk_im_context_activate_osk(
15147        context: *mut GtkIMContext,
15148        event: *mut gdk::GdkEvent,
15149    ) -> gboolean;
15150    pub fn gtk_im_context_delete_surrounding(
15151        context: *mut GtkIMContext,
15152        offset: c_int,
15153        n_chars: c_int,
15154    ) -> gboolean;
15155    pub fn gtk_im_context_filter_key(
15156        context: *mut GtkIMContext,
15157        press: gboolean,
15158        surface: *mut gdk::GdkSurface,
15159        device: *mut gdk::GdkDevice,
15160        time: u32,
15161        keycode: c_uint,
15162        state: gdk::GdkModifierType,
15163        group: c_int,
15164    ) -> gboolean;
15165    pub fn gtk_im_context_filter_keypress(
15166        context: *mut GtkIMContext,
15167        event: *mut gdk::GdkEvent,
15168    ) -> gboolean;
15169    pub fn gtk_im_context_focus_in(context: *mut GtkIMContext);
15170    pub fn gtk_im_context_focus_out(context: *mut GtkIMContext);
15171    pub fn gtk_im_context_get_preedit_string(
15172        context: *mut GtkIMContext,
15173        str: *mut *mut c_char,
15174        attrs: *mut *mut pango::PangoAttrList,
15175        cursor_pos: *mut c_int,
15176    );
15177    pub fn gtk_im_context_get_surrounding(
15178        context: *mut GtkIMContext,
15179        text: *mut *mut c_char,
15180        cursor_index: *mut c_int,
15181    ) -> gboolean;
15182    #[cfg(feature = "v4_2")]
15183    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15184    pub fn gtk_im_context_get_surrounding_with_selection(
15185        context: *mut GtkIMContext,
15186        text: *mut *mut c_char,
15187        cursor_index: *mut c_int,
15188        anchor_index: *mut c_int,
15189    ) -> gboolean;
15190    pub fn gtk_im_context_reset(context: *mut GtkIMContext);
15191    pub fn gtk_im_context_set_client_widget(context: *mut GtkIMContext, widget: *mut GtkWidget);
15192    pub fn gtk_im_context_set_cursor_location(
15193        context: *mut GtkIMContext,
15194        area: *const gdk::GdkRectangle,
15195    );
15196    pub fn gtk_im_context_set_surrounding(
15197        context: *mut GtkIMContext,
15198        text: *const c_char,
15199        len: c_int,
15200        cursor_index: c_int,
15201    );
15202    #[cfg(feature = "v4_2")]
15203    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15204    pub fn gtk_im_context_set_surrounding_with_selection(
15205        context: *mut GtkIMContext,
15206        text: *const c_char,
15207        len: c_int,
15208        cursor_index: c_int,
15209        anchor_index: c_int,
15210    );
15211    pub fn gtk_im_context_set_use_preedit(context: *mut GtkIMContext, use_preedit: gboolean);
15212
15213    //=========================================================================
15214    // GtkIMContextSimple
15215    //=========================================================================
15216    pub fn gtk_im_context_simple_get_type() -> GType;
15217    pub fn gtk_im_context_simple_new() -> *mut GtkIMContext;
15218    pub fn gtk_im_context_simple_add_compose_file(
15219        context_simple: *mut GtkIMContextSimple,
15220        compose_file: *const c_char,
15221    );
15222    pub fn gtk_im_context_simple_add_table(
15223        context_simple: *mut GtkIMContextSimple,
15224        data: *mut u16,
15225        max_seq_len: c_int,
15226        n_seqs: c_int,
15227    );
15228
15229    //=========================================================================
15230    // GtkIMMulticontext
15231    //=========================================================================
15232    pub fn gtk_im_multicontext_get_type() -> GType;
15233    pub fn gtk_im_multicontext_new() -> *mut GtkIMContext;
15234    pub fn gtk_im_multicontext_get_context_id(context: *mut GtkIMMulticontext) -> *const c_char;
15235    pub fn gtk_im_multicontext_set_context_id(
15236        context: *mut GtkIMMulticontext,
15237        context_id: *const c_char,
15238    );
15239
15240    //=========================================================================
15241    // GtkIconPaintable
15242    //=========================================================================
15243    pub fn gtk_icon_paintable_get_type() -> GType;
15244    pub fn gtk_icon_paintable_new_for_file(
15245        file: *mut gio::GFile,
15246        size: c_int,
15247        scale: c_int,
15248    ) -> *mut GtkIconPaintable;
15249    pub fn gtk_icon_paintable_get_file(self_: *mut GtkIconPaintable) -> *mut gio::GFile;
15250    pub fn gtk_icon_paintable_get_icon_name(self_: *mut GtkIconPaintable) -> *const c_char;
15251    pub fn gtk_icon_paintable_is_symbolic(self_: *mut GtkIconPaintable) -> gboolean;
15252
15253    //=========================================================================
15254    // GtkIconTheme
15255    //=========================================================================
15256    pub fn gtk_icon_theme_get_type() -> GType;
15257    pub fn gtk_icon_theme_new() -> *mut GtkIconTheme;
15258    pub fn gtk_icon_theme_get_for_display(display: *mut gdk::GdkDisplay) -> *mut GtkIconTheme;
15259    pub fn gtk_icon_theme_add_resource_path(self_: *mut GtkIconTheme, path: *const c_char);
15260    pub fn gtk_icon_theme_add_search_path(self_: *mut GtkIconTheme, path: *const c_char);
15261    pub fn gtk_icon_theme_get_display(self_: *mut GtkIconTheme) -> *mut gdk::GdkDisplay;
15262    pub fn gtk_icon_theme_get_icon_names(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15263    pub fn gtk_icon_theme_get_icon_sizes(
15264        self_: *mut GtkIconTheme,
15265        icon_name: *const c_char,
15266    ) -> *mut c_int;
15267    pub fn gtk_icon_theme_get_resource_path(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15268    pub fn gtk_icon_theme_get_search_path(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15269    pub fn gtk_icon_theme_get_theme_name(self_: *mut GtkIconTheme) -> *mut c_char;
15270    #[cfg(feature = "v4_2")]
15271    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15272    pub fn gtk_icon_theme_has_gicon(self_: *mut GtkIconTheme, gicon: *mut gio::GIcon) -> gboolean;
15273    pub fn gtk_icon_theme_has_icon(self_: *mut GtkIconTheme, icon_name: *const c_char) -> gboolean;
15274    pub fn gtk_icon_theme_lookup_by_gicon(
15275        self_: *mut GtkIconTheme,
15276        icon: *mut gio::GIcon,
15277        size: c_int,
15278        scale: c_int,
15279        direction: GtkTextDirection,
15280        flags: GtkIconLookupFlags,
15281    ) -> *mut GtkIconPaintable;
15282    pub fn gtk_icon_theme_lookup_icon(
15283        self_: *mut GtkIconTheme,
15284        icon_name: *const c_char,
15285        fallbacks: *mut *const c_char,
15286        size: c_int,
15287        scale: c_int,
15288        direction: GtkTextDirection,
15289        flags: GtkIconLookupFlags,
15290    ) -> *mut GtkIconPaintable;
15291    pub fn gtk_icon_theme_set_resource_path(self_: *mut GtkIconTheme, path: *const *const c_char);
15292    pub fn gtk_icon_theme_set_search_path(self_: *mut GtkIconTheme, path: *const *const c_char);
15293    pub fn gtk_icon_theme_set_theme_name(self_: *mut GtkIconTheme, theme_name: *const c_char);
15294
15295    //=========================================================================
15296    // GtkIconView
15297    //=========================================================================
15298    pub fn gtk_icon_view_get_type() -> GType;
15299    pub fn gtk_icon_view_new() -> *mut GtkWidget;
15300    pub fn gtk_icon_view_new_with_area(area: *mut GtkCellArea) -> *mut GtkWidget;
15301    pub fn gtk_icon_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
15302    pub fn gtk_icon_view_create_drag_icon(
15303        icon_view: *mut GtkIconView,
15304        path: *mut GtkTreePath,
15305    ) -> *mut gdk::GdkPaintable;
15306    pub fn gtk_icon_view_enable_model_drag_dest(
15307        icon_view: *mut GtkIconView,
15308        formats: *mut gdk::GdkContentFormats,
15309        actions: gdk::GdkDragAction,
15310    );
15311    pub fn gtk_icon_view_enable_model_drag_source(
15312        icon_view: *mut GtkIconView,
15313        start_button_mask: gdk::GdkModifierType,
15314        formats: *mut gdk::GdkContentFormats,
15315        actions: gdk::GdkDragAction,
15316    );
15317    pub fn gtk_icon_view_get_activate_on_single_click(icon_view: *mut GtkIconView) -> gboolean;
15318    pub fn gtk_icon_view_get_cell_rect(
15319        icon_view: *mut GtkIconView,
15320        path: *mut GtkTreePath,
15321        cell: *mut GtkCellRenderer,
15322        rect: *mut gdk::GdkRectangle,
15323    ) -> gboolean;
15324    pub fn gtk_icon_view_get_column_spacing(icon_view: *mut GtkIconView) -> c_int;
15325    pub fn gtk_icon_view_get_columns(icon_view: *mut GtkIconView) -> c_int;
15326    pub fn gtk_icon_view_get_cursor(
15327        icon_view: *mut GtkIconView,
15328        path: *mut *mut GtkTreePath,
15329        cell: *mut *mut GtkCellRenderer,
15330    ) -> gboolean;
15331    pub fn gtk_icon_view_get_dest_item_at_pos(
15332        icon_view: *mut GtkIconView,
15333        drag_x: c_int,
15334        drag_y: c_int,
15335        path: *mut *mut GtkTreePath,
15336        pos: *mut GtkIconViewDropPosition,
15337    ) -> gboolean;
15338    pub fn gtk_icon_view_get_drag_dest_item(
15339        icon_view: *mut GtkIconView,
15340        path: *mut *mut GtkTreePath,
15341        pos: *mut GtkIconViewDropPosition,
15342    );
15343    pub fn gtk_icon_view_get_item_at_pos(
15344        icon_view: *mut GtkIconView,
15345        x: c_int,
15346        y: c_int,
15347        path: *mut *mut GtkTreePath,
15348        cell: *mut *mut GtkCellRenderer,
15349    ) -> gboolean;
15350    pub fn gtk_icon_view_get_item_column(
15351        icon_view: *mut GtkIconView,
15352        path: *mut GtkTreePath,
15353    ) -> c_int;
15354    pub fn gtk_icon_view_get_item_orientation(icon_view: *mut GtkIconView) -> GtkOrientation;
15355    pub fn gtk_icon_view_get_item_padding(icon_view: *mut GtkIconView) -> c_int;
15356    pub fn gtk_icon_view_get_item_row(icon_view: *mut GtkIconView, path: *mut GtkTreePath)
15357        -> c_int;
15358    pub fn gtk_icon_view_get_item_width(icon_view: *mut GtkIconView) -> c_int;
15359    pub fn gtk_icon_view_get_margin(icon_view: *mut GtkIconView) -> c_int;
15360    pub fn gtk_icon_view_get_markup_column(icon_view: *mut GtkIconView) -> c_int;
15361    pub fn gtk_icon_view_get_model(icon_view: *mut GtkIconView) -> *mut GtkTreeModel;
15362    pub fn gtk_icon_view_get_path_at_pos(
15363        icon_view: *mut GtkIconView,
15364        x: c_int,
15365        y: c_int,
15366    ) -> *mut GtkTreePath;
15367    pub fn gtk_icon_view_get_pixbuf_column(icon_view: *mut GtkIconView) -> c_int;
15368    pub fn gtk_icon_view_get_reorderable(icon_view: *mut GtkIconView) -> gboolean;
15369    pub fn gtk_icon_view_get_row_spacing(icon_view: *mut GtkIconView) -> c_int;
15370    pub fn gtk_icon_view_get_selected_items(icon_view: *mut GtkIconView) -> *mut glib::GList;
15371    pub fn gtk_icon_view_get_selection_mode(icon_view: *mut GtkIconView) -> GtkSelectionMode;
15372    pub fn gtk_icon_view_get_spacing(icon_view: *mut GtkIconView) -> c_int;
15373    pub fn gtk_icon_view_get_text_column(icon_view: *mut GtkIconView) -> c_int;
15374    pub fn gtk_icon_view_get_tooltip_column(icon_view: *mut GtkIconView) -> c_int;
15375    pub fn gtk_icon_view_get_tooltip_context(
15376        icon_view: *mut GtkIconView,
15377        x: c_int,
15378        y: c_int,
15379        keyboard_tip: gboolean,
15380        model: *mut *mut GtkTreeModel,
15381        path: *mut *mut GtkTreePath,
15382        iter: *mut GtkTreeIter,
15383    ) -> gboolean;
15384    pub fn gtk_icon_view_get_visible_range(
15385        icon_view: *mut GtkIconView,
15386        start_path: *mut *mut GtkTreePath,
15387        end_path: *mut *mut GtkTreePath,
15388    ) -> gboolean;
15389    pub fn gtk_icon_view_item_activated(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15390    pub fn gtk_icon_view_path_is_selected(
15391        icon_view: *mut GtkIconView,
15392        path: *mut GtkTreePath,
15393    ) -> gboolean;
15394    pub fn gtk_icon_view_scroll_to_path(
15395        icon_view: *mut GtkIconView,
15396        path: *mut GtkTreePath,
15397        use_align: gboolean,
15398        row_align: c_float,
15399        col_align: c_float,
15400    );
15401    pub fn gtk_icon_view_select_all(icon_view: *mut GtkIconView);
15402    pub fn gtk_icon_view_select_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15403    pub fn gtk_icon_view_selected_foreach(
15404        icon_view: *mut GtkIconView,
15405        func: GtkIconViewForeachFunc,
15406        data: gpointer,
15407    );
15408    pub fn gtk_icon_view_set_activate_on_single_click(
15409        icon_view: *mut GtkIconView,
15410        single: gboolean,
15411    );
15412    pub fn gtk_icon_view_set_column_spacing(icon_view: *mut GtkIconView, column_spacing: c_int);
15413    pub fn gtk_icon_view_set_columns(icon_view: *mut GtkIconView, columns: c_int);
15414    pub fn gtk_icon_view_set_cursor(
15415        icon_view: *mut GtkIconView,
15416        path: *mut GtkTreePath,
15417        cell: *mut GtkCellRenderer,
15418        start_editing: gboolean,
15419    );
15420    pub fn gtk_icon_view_set_drag_dest_item(
15421        icon_view: *mut GtkIconView,
15422        path: *mut GtkTreePath,
15423        pos: GtkIconViewDropPosition,
15424    );
15425    pub fn gtk_icon_view_set_item_orientation(
15426        icon_view: *mut GtkIconView,
15427        orientation: GtkOrientation,
15428    );
15429    pub fn gtk_icon_view_set_item_padding(icon_view: *mut GtkIconView, item_padding: c_int);
15430    pub fn gtk_icon_view_set_item_width(icon_view: *mut GtkIconView, item_width: c_int);
15431    pub fn gtk_icon_view_set_margin(icon_view: *mut GtkIconView, margin: c_int);
15432    pub fn gtk_icon_view_set_markup_column(icon_view: *mut GtkIconView, column: c_int);
15433    pub fn gtk_icon_view_set_model(icon_view: *mut GtkIconView, model: *mut GtkTreeModel);
15434    pub fn gtk_icon_view_set_pixbuf_column(icon_view: *mut GtkIconView, column: c_int);
15435    pub fn gtk_icon_view_set_reorderable(icon_view: *mut GtkIconView, reorderable: gboolean);
15436    pub fn gtk_icon_view_set_row_spacing(icon_view: *mut GtkIconView, row_spacing: c_int);
15437    pub fn gtk_icon_view_set_selection_mode(icon_view: *mut GtkIconView, mode: GtkSelectionMode);
15438    pub fn gtk_icon_view_set_spacing(icon_view: *mut GtkIconView, spacing: c_int);
15439    pub fn gtk_icon_view_set_text_column(icon_view: *mut GtkIconView, column: c_int);
15440    pub fn gtk_icon_view_set_tooltip_cell(
15441        icon_view: *mut GtkIconView,
15442        tooltip: *mut GtkTooltip,
15443        path: *mut GtkTreePath,
15444        cell: *mut GtkCellRenderer,
15445    );
15446    pub fn gtk_icon_view_set_tooltip_column(icon_view: *mut GtkIconView, column: c_int);
15447    pub fn gtk_icon_view_set_tooltip_item(
15448        icon_view: *mut GtkIconView,
15449        tooltip: *mut GtkTooltip,
15450        path: *mut GtkTreePath,
15451    );
15452    pub fn gtk_icon_view_unselect_all(icon_view: *mut GtkIconView);
15453    pub fn gtk_icon_view_unselect_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15454    pub fn gtk_icon_view_unset_model_drag_dest(icon_view: *mut GtkIconView);
15455    pub fn gtk_icon_view_unset_model_drag_source(icon_view: *mut GtkIconView);
15456
15457    //=========================================================================
15458    // GtkImage
15459    //=========================================================================
15460    pub fn gtk_image_get_type() -> GType;
15461    pub fn gtk_image_new() -> *mut GtkWidget;
15462    pub fn gtk_image_new_from_file(filename: *const c_char) -> *mut GtkWidget;
15463    pub fn gtk_image_new_from_gicon(icon: *mut gio::GIcon) -> *mut GtkWidget;
15464    pub fn gtk_image_new_from_icon_name(icon_name: *const c_char) -> *mut GtkWidget;
15465    pub fn gtk_image_new_from_paintable(paintable: *mut gdk::GdkPaintable) -> *mut GtkWidget;
15466    pub fn gtk_image_new_from_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
15467    pub fn gtk_image_new_from_resource(resource_path: *const c_char) -> *mut GtkWidget;
15468    pub fn gtk_image_clear(image: *mut GtkImage);
15469    pub fn gtk_image_get_gicon(image: *mut GtkImage) -> *mut gio::GIcon;
15470    pub fn gtk_image_get_icon_name(image: *mut GtkImage) -> *const c_char;
15471    pub fn gtk_image_get_icon_size(image: *mut GtkImage) -> GtkIconSize;
15472    pub fn gtk_image_get_paintable(image: *mut GtkImage) -> *mut gdk::GdkPaintable;
15473    pub fn gtk_image_get_pixel_size(image: *mut GtkImage) -> c_int;
15474    pub fn gtk_image_get_storage_type(image: *mut GtkImage) -> GtkImageType;
15475    pub fn gtk_image_set_from_file(image: *mut GtkImage, filename: *const c_char);
15476    pub fn gtk_image_set_from_gicon(image: *mut GtkImage, icon: *mut gio::GIcon);
15477    pub fn gtk_image_set_from_icon_name(image: *mut GtkImage, icon_name: *const c_char);
15478    pub fn gtk_image_set_from_paintable(image: *mut GtkImage, paintable: *mut gdk::GdkPaintable);
15479    pub fn gtk_image_set_from_pixbuf(image: *mut GtkImage, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
15480    pub fn gtk_image_set_from_resource(image: *mut GtkImage, resource_path: *const c_char);
15481    pub fn gtk_image_set_icon_size(image: *mut GtkImage, icon_size: GtkIconSize);
15482    pub fn gtk_image_set_pixel_size(image: *mut GtkImage, pixel_size: c_int);
15483
15484    //=========================================================================
15485    // GtkInfoBar
15486    //=========================================================================
15487    pub fn gtk_info_bar_get_type() -> GType;
15488    pub fn gtk_info_bar_new() -> *mut GtkWidget;
15489    pub fn gtk_info_bar_new_with_buttons(first_button_text: *const c_char, ...) -> *mut GtkWidget;
15490    pub fn gtk_info_bar_add_action_widget(
15491        info_bar: *mut GtkInfoBar,
15492        child: *mut GtkWidget,
15493        response_id: GtkResponseType,
15494    );
15495    pub fn gtk_info_bar_add_button(
15496        info_bar: *mut GtkInfoBar,
15497        button_text: *const c_char,
15498        response_id: GtkResponseType,
15499    ) -> *mut GtkButton;
15500    pub fn gtk_info_bar_add_buttons(
15501        info_bar: *mut GtkInfoBar,
15502        first_button_text: *const c_char,
15503        ...
15504    );
15505    pub fn gtk_info_bar_add_child(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15506    pub fn gtk_info_bar_get_message_type(info_bar: *mut GtkInfoBar) -> GtkMessageType;
15507    pub fn gtk_info_bar_get_revealed(info_bar: *mut GtkInfoBar) -> gboolean;
15508    pub fn gtk_info_bar_get_show_close_button(info_bar: *mut GtkInfoBar) -> gboolean;
15509    pub fn gtk_info_bar_remove_action_widget(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15510    pub fn gtk_info_bar_remove_child(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15511    pub fn gtk_info_bar_response(info_bar: *mut GtkInfoBar, response_id: GtkResponseType);
15512    pub fn gtk_info_bar_set_default_response(
15513        info_bar: *mut GtkInfoBar,
15514        response_id: GtkResponseType,
15515    );
15516    pub fn gtk_info_bar_set_message_type(info_bar: *mut GtkInfoBar, message_type: GtkMessageType);
15517    pub fn gtk_info_bar_set_response_sensitive(
15518        info_bar: *mut GtkInfoBar,
15519        response_id: GtkResponseType,
15520        setting: gboolean,
15521    );
15522    pub fn gtk_info_bar_set_revealed(info_bar: *mut GtkInfoBar, revealed: gboolean);
15523    pub fn gtk_info_bar_set_show_close_button(info_bar: *mut GtkInfoBar, setting: gboolean);
15524
15525    //=========================================================================
15526    // GtkInscription
15527    //=========================================================================
15528    #[cfg(feature = "v4_8")]
15529    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15530    pub fn gtk_inscription_get_type() -> GType;
15531    #[cfg(feature = "v4_8")]
15532    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15533    pub fn gtk_inscription_new(text: *const c_char) -> *mut GtkWidget;
15534    #[cfg(feature = "v4_8")]
15535    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15536    pub fn gtk_inscription_get_attributes(self_: *mut GtkInscription) -> *mut pango::PangoAttrList;
15537    #[cfg(feature = "v4_8")]
15538    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15539    pub fn gtk_inscription_get_min_chars(self_: *mut GtkInscription) -> c_uint;
15540    #[cfg(feature = "v4_8")]
15541    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15542    pub fn gtk_inscription_get_min_lines(self_: *mut GtkInscription) -> c_uint;
15543    #[cfg(feature = "v4_8")]
15544    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15545    pub fn gtk_inscription_get_nat_chars(self_: *mut GtkInscription) -> c_uint;
15546    #[cfg(feature = "v4_8")]
15547    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15548    pub fn gtk_inscription_get_nat_lines(self_: *mut GtkInscription) -> c_uint;
15549    #[cfg(feature = "v4_8")]
15550    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15551    pub fn gtk_inscription_get_text(self_: *mut GtkInscription) -> *const c_char;
15552    #[cfg(feature = "v4_8")]
15553    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15554    pub fn gtk_inscription_get_text_overflow(self_: *mut GtkInscription) -> GtkInscriptionOverflow;
15555    #[cfg(feature = "v4_8")]
15556    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15557    pub fn gtk_inscription_get_wrap_mode(self_: *mut GtkInscription) -> pango::PangoWrapMode;
15558    #[cfg(feature = "v4_8")]
15559    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15560    pub fn gtk_inscription_get_xalign(self_: *mut GtkInscription) -> c_float;
15561    #[cfg(feature = "v4_8")]
15562    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15563    pub fn gtk_inscription_get_yalign(self_: *mut GtkInscription) -> c_float;
15564    #[cfg(feature = "v4_8")]
15565    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15566    pub fn gtk_inscription_set_attributes(
15567        self_: *mut GtkInscription,
15568        attrs: *mut pango::PangoAttrList,
15569    );
15570    #[cfg(feature = "v4_8")]
15571    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15572    pub fn gtk_inscription_set_markup(self_: *mut GtkInscription, markup: *const c_char);
15573    #[cfg(feature = "v4_8")]
15574    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15575    pub fn gtk_inscription_set_min_chars(self_: *mut GtkInscription, min_chars: c_uint);
15576    #[cfg(feature = "v4_8")]
15577    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15578    pub fn gtk_inscription_set_min_lines(self_: *mut GtkInscription, min_lines: c_uint);
15579    #[cfg(feature = "v4_8")]
15580    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15581    pub fn gtk_inscription_set_nat_chars(self_: *mut GtkInscription, nat_chars: c_uint);
15582    #[cfg(feature = "v4_8")]
15583    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15584    pub fn gtk_inscription_set_nat_lines(self_: *mut GtkInscription, nat_lines: c_uint);
15585    #[cfg(feature = "v4_8")]
15586    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15587    pub fn gtk_inscription_set_text(self_: *mut GtkInscription, text: *const c_char);
15588    #[cfg(feature = "v4_8")]
15589    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15590    pub fn gtk_inscription_set_text_overflow(
15591        self_: *mut GtkInscription,
15592        overflow: GtkInscriptionOverflow,
15593    );
15594    #[cfg(feature = "v4_8")]
15595    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15596    pub fn gtk_inscription_set_wrap_mode(
15597        self_: *mut GtkInscription,
15598        wrap_mode: pango::PangoWrapMode,
15599    );
15600    #[cfg(feature = "v4_8")]
15601    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15602    pub fn gtk_inscription_set_xalign(self_: *mut GtkInscription, xalign: c_float);
15603    #[cfg(feature = "v4_8")]
15604    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15605    pub fn gtk_inscription_set_yalign(self_: *mut GtkInscription, yalign: c_float);
15606
15607    //=========================================================================
15608    // GtkKeyvalTrigger
15609    //=========================================================================
15610    pub fn gtk_keyval_trigger_get_type() -> GType;
15611    pub fn gtk_keyval_trigger_new(
15612        keyval: c_uint,
15613        modifiers: gdk::GdkModifierType,
15614    ) -> *mut GtkShortcutTrigger;
15615    pub fn gtk_keyval_trigger_get_keyval(self_: *mut GtkKeyvalTrigger) -> c_uint;
15616    pub fn gtk_keyval_trigger_get_modifiers(self_: *mut GtkKeyvalTrigger) -> gdk::GdkModifierType;
15617
15618    //=========================================================================
15619    // GtkLabel
15620    //=========================================================================
15621    pub fn gtk_label_get_type() -> GType;
15622    pub fn gtk_label_new(str: *const c_char) -> *mut GtkWidget;
15623    pub fn gtk_label_new_with_mnemonic(str: *const c_char) -> *mut GtkWidget;
15624    pub fn gtk_label_get_attributes(self_: *mut GtkLabel) -> *mut pango::PangoAttrList;
15625    pub fn gtk_label_get_current_uri(self_: *mut GtkLabel) -> *const c_char;
15626    pub fn gtk_label_get_ellipsize(self_: *mut GtkLabel) -> pango::PangoEllipsizeMode;
15627    pub fn gtk_label_get_extra_menu(self_: *mut GtkLabel) -> *mut gio::GMenuModel;
15628    pub fn gtk_label_get_justify(self_: *mut GtkLabel) -> GtkJustification;
15629    pub fn gtk_label_get_label(self_: *mut GtkLabel) -> *const c_char;
15630    pub fn gtk_label_get_layout(self_: *mut GtkLabel) -> *mut pango::PangoLayout;
15631    pub fn gtk_label_get_layout_offsets(self_: *mut GtkLabel, x: *mut c_int, y: *mut c_int);
15632    pub fn gtk_label_get_lines(self_: *mut GtkLabel) -> c_int;
15633    pub fn gtk_label_get_max_width_chars(self_: *mut GtkLabel) -> c_int;
15634    pub fn gtk_label_get_mnemonic_keyval(self_: *mut GtkLabel) -> c_uint;
15635    pub fn gtk_label_get_mnemonic_widget(self_: *mut GtkLabel) -> *mut GtkWidget;
15636    #[cfg(feature = "v4_6")]
15637    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
15638    pub fn gtk_label_get_natural_wrap_mode(self_: *mut GtkLabel) -> GtkNaturalWrapMode;
15639    pub fn gtk_label_get_selectable(self_: *mut GtkLabel) -> gboolean;
15640    pub fn gtk_label_get_selection_bounds(
15641        self_: *mut GtkLabel,
15642        start: *mut c_int,
15643        end: *mut c_int,
15644    ) -> gboolean;
15645    pub fn gtk_label_get_single_line_mode(self_: *mut GtkLabel) -> gboolean;
15646    #[cfg(feature = "v4_8")]
15647    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15648    pub fn gtk_label_get_tabs(self_: *mut GtkLabel) -> *mut pango::PangoTabArray;
15649    pub fn gtk_label_get_text(self_: *mut GtkLabel) -> *const c_char;
15650    pub fn gtk_label_get_use_markup(self_: *mut GtkLabel) -> gboolean;
15651    pub fn gtk_label_get_use_underline(self_: *mut GtkLabel) -> gboolean;
15652    pub fn gtk_label_get_width_chars(self_: *mut GtkLabel) -> c_int;
15653    pub fn gtk_label_get_wrap(self_: *mut GtkLabel) -> gboolean;
15654    pub fn gtk_label_get_wrap_mode(self_: *mut GtkLabel) -> pango::PangoWrapMode;
15655    pub fn gtk_label_get_xalign(self_: *mut GtkLabel) -> c_float;
15656    pub fn gtk_label_get_yalign(self_: *mut GtkLabel) -> c_float;
15657    pub fn gtk_label_select_region(self_: *mut GtkLabel, start_offset: c_int, end_offset: c_int);
15658    pub fn gtk_label_set_attributes(self_: *mut GtkLabel, attrs: *mut pango::PangoAttrList);
15659    pub fn gtk_label_set_ellipsize(self_: *mut GtkLabel, mode: pango::PangoEllipsizeMode);
15660    pub fn gtk_label_set_extra_menu(self_: *mut GtkLabel, model: *mut gio::GMenuModel);
15661    pub fn gtk_label_set_justify(self_: *mut GtkLabel, jtype: GtkJustification);
15662    pub fn gtk_label_set_label(self_: *mut GtkLabel, str: *const c_char);
15663    pub fn gtk_label_set_lines(self_: *mut GtkLabel, lines: c_int);
15664    pub fn gtk_label_set_markup(self_: *mut GtkLabel, str: *const c_char);
15665    pub fn gtk_label_set_markup_with_mnemonic(self_: *mut GtkLabel, str: *const c_char);
15666    pub fn gtk_label_set_max_width_chars(self_: *mut GtkLabel, n_chars: c_int);
15667    pub fn gtk_label_set_mnemonic_widget(self_: *mut GtkLabel, widget: *mut GtkWidget);
15668    #[cfg(feature = "v4_6")]
15669    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
15670    pub fn gtk_label_set_natural_wrap_mode(self_: *mut GtkLabel, wrap_mode: GtkNaturalWrapMode);
15671    pub fn gtk_label_set_selectable(self_: *mut GtkLabel, setting: gboolean);
15672    pub fn gtk_label_set_single_line_mode(self_: *mut GtkLabel, single_line_mode: gboolean);
15673    #[cfg(feature = "v4_8")]
15674    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15675    pub fn gtk_label_set_tabs(self_: *mut GtkLabel, tabs: *mut pango::PangoTabArray);
15676    pub fn gtk_label_set_text(self_: *mut GtkLabel, str: *const c_char);
15677    pub fn gtk_label_set_text_with_mnemonic(self_: *mut GtkLabel, str: *const c_char);
15678    pub fn gtk_label_set_use_markup(self_: *mut GtkLabel, setting: gboolean);
15679    pub fn gtk_label_set_use_underline(self_: *mut GtkLabel, setting: gboolean);
15680    pub fn gtk_label_set_width_chars(self_: *mut GtkLabel, n_chars: c_int);
15681    pub fn gtk_label_set_wrap(self_: *mut GtkLabel, wrap: gboolean);
15682    pub fn gtk_label_set_wrap_mode(self_: *mut GtkLabel, wrap_mode: pango::PangoWrapMode);
15683    pub fn gtk_label_set_xalign(self_: *mut GtkLabel, xalign: c_float);
15684    pub fn gtk_label_set_yalign(self_: *mut GtkLabel, yalign: c_float);
15685
15686    //=========================================================================
15687    // GtkLayoutChild
15688    //=========================================================================
15689    pub fn gtk_layout_child_get_type() -> GType;
15690    pub fn gtk_layout_child_get_child_widget(layout_child: *mut GtkLayoutChild) -> *mut GtkWidget;
15691    pub fn gtk_layout_child_get_layout_manager(
15692        layout_child: *mut GtkLayoutChild,
15693    ) -> *mut GtkLayoutManager;
15694
15695    //=========================================================================
15696    // GtkLayoutManager
15697    //=========================================================================
15698    pub fn gtk_layout_manager_get_type() -> GType;
15699    pub fn gtk_layout_manager_allocate(
15700        manager: *mut GtkLayoutManager,
15701        widget: *mut GtkWidget,
15702        width: c_int,
15703        height: c_int,
15704        baseline: c_int,
15705    );
15706    pub fn gtk_layout_manager_get_layout_child(
15707        manager: *mut GtkLayoutManager,
15708        child: *mut GtkWidget,
15709    ) -> *mut GtkLayoutChild;
15710    pub fn gtk_layout_manager_get_request_mode(
15711        manager: *mut GtkLayoutManager,
15712    ) -> GtkSizeRequestMode;
15713    pub fn gtk_layout_manager_get_widget(manager: *mut GtkLayoutManager) -> *mut GtkWidget;
15714    pub fn gtk_layout_manager_layout_changed(manager: *mut GtkLayoutManager);
15715    pub fn gtk_layout_manager_measure(
15716        manager: *mut GtkLayoutManager,
15717        widget: *mut GtkWidget,
15718        orientation: GtkOrientation,
15719        for_size: c_int,
15720        minimum: *mut c_int,
15721        natural: *mut c_int,
15722        minimum_baseline: *mut c_int,
15723        natural_baseline: *mut c_int,
15724    );
15725
15726    //=========================================================================
15727    // GtkLevelBar
15728    //=========================================================================
15729    pub fn gtk_level_bar_get_type() -> GType;
15730    pub fn gtk_level_bar_new() -> *mut GtkWidget;
15731    pub fn gtk_level_bar_new_for_interval(
15732        min_value: c_double,
15733        max_value: c_double,
15734    ) -> *mut GtkWidget;
15735    pub fn gtk_level_bar_add_offset_value(
15736        self_: *mut GtkLevelBar,
15737        name: *const c_char,
15738        value: c_double,
15739    );
15740    pub fn gtk_level_bar_get_inverted(self_: *mut GtkLevelBar) -> gboolean;
15741    pub fn gtk_level_bar_get_max_value(self_: *mut GtkLevelBar) -> c_double;
15742    pub fn gtk_level_bar_get_min_value(self_: *mut GtkLevelBar) -> c_double;
15743    pub fn gtk_level_bar_get_mode(self_: *mut GtkLevelBar) -> GtkLevelBarMode;
15744    pub fn gtk_level_bar_get_offset_value(
15745        self_: *mut GtkLevelBar,
15746        name: *const c_char,
15747        value: *mut c_double,
15748    ) -> gboolean;
15749    pub fn gtk_level_bar_get_value(self_: *mut GtkLevelBar) -> c_double;
15750    pub fn gtk_level_bar_remove_offset_value(self_: *mut GtkLevelBar, name: *const c_char);
15751    pub fn gtk_level_bar_set_inverted(self_: *mut GtkLevelBar, inverted: gboolean);
15752    pub fn gtk_level_bar_set_max_value(self_: *mut GtkLevelBar, value: c_double);
15753    pub fn gtk_level_bar_set_min_value(self_: *mut GtkLevelBar, value: c_double);
15754    pub fn gtk_level_bar_set_mode(self_: *mut GtkLevelBar, mode: GtkLevelBarMode);
15755    pub fn gtk_level_bar_set_value(self_: *mut GtkLevelBar, value: c_double);
15756
15757    //=========================================================================
15758    // GtkLinkButton
15759    //=========================================================================
15760    pub fn gtk_link_button_get_type() -> GType;
15761    pub fn gtk_link_button_new(uri: *const c_char) -> *mut GtkWidget;
15762    pub fn gtk_link_button_new_with_label(
15763        uri: *const c_char,
15764        label: *const c_char,
15765    ) -> *mut GtkWidget;
15766    pub fn gtk_link_button_get_uri(link_button: *mut GtkLinkButton) -> *const c_char;
15767    pub fn gtk_link_button_get_visited(link_button: *mut GtkLinkButton) -> gboolean;
15768    pub fn gtk_link_button_set_uri(link_button: *mut GtkLinkButton, uri: *const c_char);
15769    pub fn gtk_link_button_set_visited(link_button: *mut GtkLinkButton, visited: gboolean);
15770
15771    //=========================================================================
15772    // GtkListBase
15773    //=========================================================================
15774    pub fn gtk_list_base_get_type() -> GType;
15775
15776    //=========================================================================
15777    // GtkListBox
15778    //=========================================================================
15779    pub fn gtk_list_box_get_type() -> GType;
15780    pub fn gtk_list_box_new() -> *mut GtkWidget;
15781    pub fn gtk_list_box_append(box_: *mut GtkListBox, child: *mut GtkWidget);
15782    pub fn gtk_list_box_bind_model(
15783        box_: *mut GtkListBox,
15784        model: *mut gio::GListModel,
15785        create_widget_func: GtkListBoxCreateWidgetFunc,
15786        user_data: gpointer,
15787        user_data_free_func: glib::GDestroyNotify,
15788    );
15789    pub fn gtk_list_box_drag_highlight_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
15790    pub fn gtk_list_box_drag_unhighlight_row(box_: *mut GtkListBox);
15791    pub fn gtk_list_box_get_activate_on_single_click(box_: *mut GtkListBox) -> gboolean;
15792    pub fn gtk_list_box_get_adjustment(box_: *mut GtkListBox) -> *mut GtkAdjustment;
15793    pub fn gtk_list_box_get_row_at_index(
15794        box_: *mut GtkListBox,
15795        index_: c_int,
15796    ) -> *mut GtkListBoxRow;
15797    pub fn gtk_list_box_get_row_at_y(box_: *mut GtkListBox, y: c_int) -> *mut GtkListBoxRow;
15798    pub fn gtk_list_box_get_selected_row(box_: *mut GtkListBox) -> *mut GtkListBoxRow;
15799    pub fn gtk_list_box_get_selected_rows(box_: *mut GtkListBox) -> *mut glib::GList;
15800    pub fn gtk_list_box_get_selection_mode(box_: *mut GtkListBox) -> GtkSelectionMode;
15801    pub fn gtk_list_box_get_show_separators(box_: *mut GtkListBox) -> gboolean;
15802    #[cfg(feature = "v4_18")]
15803    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15804    pub fn gtk_list_box_get_tab_behavior(box_: *mut GtkListBox) -> GtkListTabBehavior;
15805    pub fn gtk_list_box_insert(box_: *mut GtkListBox, child: *mut GtkWidget, position: c_int);
15806    pub fn gtk_list_box_invalidate_filter(box_: *mut GtkListBox);
15807    pub fn gtk_list_box_invalidate_headers(box_: *mut GtkListBox);
15808    pub fn gtk_list_box_invalidate_sort(box_: *mut GtkListBox);
15809    pub fn gtk_list_box_prepend(box_: *mut GtkListBox, child: *mut GtkWidget);
15810    pub fn gtk_list_box_remove(box_: *mut GtkListBox, child: *mut GtkWidget);
15811    #[cfg(feature = "v4_12")]
15812    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15813    pub fn gtk_list_box_remove_all(box_: *mut GtkListBox);
15814    pub fn gtk_list_box_select_all(box_: *mut GtkListBox);
15815    pub fn gtk_list_box_select_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
15816    pub fn gtk_list_box_selected_foreach(
15817        box_: *mut GtkListBox,
15818        func: GtkListBoxForeachFunc,
15819        data: gpointer,
15820    );
15821    pub fn gtk_list_box_set_activate_on_single_click(box_: *mut GtkListBox, single: gboolean);
15822    pub fn gtk_list_box_set_adjustment(box_: *mut GtkListBox, adjustment: *mut GtkAdjustment);
15823    pub fn gtk_list_box_set_filter_func(
15824        box_: *mut GtkListBox,
15825        filter_func: GtkListBoxFilterFunc,
15826        user_data: gpointer,
15827        destroy: glib::GDestroyNotify,
15828    );
15829    pub fn gtk_list_box_set_header_func(
15830        box_: *mut GtkListBox,
15831        update_header: GtkListBoxUpdateHeaderFunc,
15832        user_data: gpointer,
15833        destroy: glib::GDestroyNotify,
15834    );
15835    pub fn gtk_list_box_set_placeholder(box_: *mut GtkListBox, placeholder: *mut GtkWidget);
15836    pub fn gtk_list_box_set_selection_mode(box_: *mut GtkListBox, mode: GtkSelectionMode);
15837    pub fn gtk_list_box_set_show_separators(box_: *mut GtkListBox, show_separators: gboolean);
15838    pub fn gtk_list_box_set_sort_func(
15839        box_: *mut GtkListBox,
15840        sort_func: GtkListBoxSortFunc,
15841        user_data: gpointer,
15842        destroy: glib::GDestroyNotify,
15843    );
15844    #[cfg(feature = "v4_18")]
15845    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15846    pub fn gtk_list_box_set_tab_behavior(box_: *mut GtkListBox, behavior: GtkListTabBehavior);
15847    pub fn gtk_list_box_unselect_all(box_: *mut GtkListBox);
15848    pub fn gtk_list_box_unselect_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
15849
15850    //=========================================================================
15851    // GtkListBoxRow
15852    //=========================================================================
15853    pub fn gtk_list_box_row_get_type() -> GType;
15854    pub fn gtk_list_box_row_new() -> *mut GtkWidget;
15855    pub fn gtk_list_box_row_changed(row: *mut GtkListBoxRow);
15856    pub fn gtk_list_box_row_get_activatable(row: *mut GtkListBoxRow) -> gboolean;
15857    pub fn gtk_list_box_row_get_child(row: *mut GtkListBoxRow) -> *mut GtkWidget;
15858    pub fn gtk_list_box_row_get_header(row: *mut GtkListBoxRow) -> *mut GtkWidget;
15859    pub fn gtk_list_box_row_get_index(row: *mut GtkListBoxRow) -> c_int;
15860    pub fn gtk_list_box_row_get_selectable(row: *mut GtkListBoxRow) -> gboolean;
15861    pub fn gtk_list_box_row_is_selected(row: *mut GtkListBoxRow) -> gboolean;
15862    pub fn gtk_list_box_row_set_activatable(row: *mut GtkListBoxRow, activatable: gboolean);
15863    pub fn gtk_list_box_row_set_child(row: *mut GtkListBoxRow, child: *mut GtkWidget);
15864    pub fn gtk_list_box_row_set_header(row: *mut GtkListBoxRow, header: *mut GtkWidget);
15865    pub fn gtk_list_box_row_set_selectable(row: *mut GtkListBoxRow, selectable: gboolean);
15866
15867    //=========================================================================
15868    // GtkListHeader
15869    //=========================================================================
15870    #[cfg(feature = "v4_12")]
15871    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15872    pub fn gtk_list_header_get_type() -> GType;
15873    #[cfg(feature = "v4_12")]
15874    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15875    pub fn gtk_list_header_get_child(self_: *mut GtkListHeader) -> *mut GtkWidget;
15876    #[cfg(feature = "v4_12")]
15877    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15878    pub fn gtk_list_header_get_end(self_: *mut GtkListHeader) -> c_uint;
15879    #[cfg(feature = "v4_12")]
15880    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15881    pub fn gtk_list_header_get_item(self_: *mut GtkListHeader) -> *mut gobject::GObject;
15882    #[cfg(feature = "v4_12")]
15883    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15884    pub fn gtk_list_header_get_n_items(self_: *mut GtkListHeader) -> c_uint;
15885    #[cfg(feature = "v4_12")]
15886    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15887    pub fn gtk_list_header_get_start(self_: *mut GtkListHeader) -> c_uint;
15888    #[cfg(feature = "v4_12")]
15889    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15890    pub fn gtk_list_header_set_child(self_: *mut GtkListHeader, child: *mut GtkWidget);
15891
15892    //=========================================================================
15893    // GtkListItem
15894    //=========================================================================
15895    pub fn gtk_list_item_get_type() -> GType;
15896    #[cfg(feature = "v4_12")]
15897    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15898    pub fn gtk_list_item_get_accessible_description(self_: *mut GtkListItem) -> *const c_char;
15899    #[cfg(feature = "v4_12")]
15900    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15901    pub fn gtk_list_item_get_accessible_label(self_: *mut GtkListItem) -> *const c_char;
15902    pub fn gtk_list_item_get_activatable(self_: *mut GtkListItem) -> gboolean;
15903    pub fn gtk_list_item_get_child(self_: *mut GtkListItem) -> *mut GtkWidget;
15904    #[cfg(feature = "v4_12")]
15905    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15906    pub fn gtk_list_item_get_focusable(self_: *mut GtkListItem) -> gboolean;
15907    pub fn gtk_list_item_get_item(self_: *mut GtkListItem) -> *mut gobject::GObject;
15908    pub fn gtk_list_item_get_position(self_: *mut GtkListItem) -> c_uint;
15909    pub fn gtk_list_item_get_selectable(self_: *mut GtkListItem) -> gboolean;
15910    pub fn gtk_list_item_get_selected(self_: *mut GtkListItem) -> gboolean;
15911    #[cfg(feature = "v4_12")]
15912    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15913    pub fn gtk_list_item_set_accessible_description(
15914        self_: *mut GtkListItem,
15915        description: *const c_char,
15916    );
15917    #[cfg(feature = "v4_12")]
15918    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15919    pub fn gtk_list_item_set_accessible_label(self_: *mut GtkListItem, label: *const c_char);
15920    pub fn gtk_list_item_set_activatable(self_: *mut GtkListItem, activatable: gboolean);
15921    pub fn gtk_list_item_set_child(self_: *mut GtkListItem, child: *mut GtkWidget);
15922    #[cfg(feature = "v4_12")]
15923    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15924    pub fn gtk_list_item_set_focusable(self_: *mut GtkListItem, focusable: gboolean);
15925    pub fn gtk_list_item_set_selectable(self_: *mut GtkListItem, selectable: gboolean);
15926
15927    //=========================================================================
15928    // GtkListItemFactory
15929    //=========================================================================
15930    pub fn gtk_list_item_factory_get_type() -> GType;
15931
15932    //=========================================================================
15933    // GtkListStore
15934    //=========================================================================
15935    pub fn gtk_list_store_get_type() -> GType;
15936    pub fn gtk_list_store_new(n_columns: c_int, ...) -> *mut GtkListStore;
15937    pub fn gtk_list_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkListStore;
15938    pub fn gtk_list_store_append(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
15939    pub fn gtk_list_store_clear(list_store: *mut GtkListStore);
15940    pub fn gtk_list_store_insert(
15941        list_store: *mut GtkListStore,
15942        iter: *mut GtkTreeIter,
15943        position: c_int,
15944    );
15945    pub fn gtk_list_store_insert_after(
15946        list_store: *mut GtkListStore,
15947        iter: *mut GtkTreeIter,
15948        sibling: *mut GtkTreeIter,
15949    );
15950    pub fn gtk_list_store_insert_before(
15951        list_store: *mut GtkListStore,
15952        iter: *mut GtkTreeIter,
15953        sibling: *mut GtkTreeIter,
15954    );
15955    pub fn gtk_list_store_insert_with_values(
15956        list_store: *mut GtkListStore,
15957        iter: *mut GtkTreeIter,
15958        position: c_int,
15959        ...
15960    );
15961    pub fn gtk_list_store_insert_with_valuesv(
15962        list_store: *mut GtkListStore,
15963        iter: *mut GtkTreeIter,
15964        position: c_int,
15965        columns: *mut c_int,
15966        values: *mut gobject::GValue,
15967        n_values: c_int,
15968    );
15969    pub fn gtk_list_store_iter_is_valid(
15970        list_store: *mut GtkListStore,
15971        iter: *mut GtkTreeIter,
15972    ) -> gboolean;
15973    pub fn gtk_list_store_move_after(
15974        store: *mut GtkListStore,
15975        iter: *mut GtkTreeIter,
15976        position: *mut GtkTreeIter,
15977    );
15978    pub fn gtk_list_store_move_before(
15979        store: *mut GtkListStore,
15980        iter: *mut GtkTreeIter,
15981        position: *mut GtkTreeIter,
15982    );
15983    pub fn gtk_list_store_prepend(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
15984    pub fn gtk_list_store_remove(list_store: *mut GtkListStore, iter: *mut GtkTreeIter)
15985        -> gboolean;
15986    pub fn gtk_list_store_reorder(store: *mut GtkListStore, new_order: *mut c_int);
15987    pub fn gtk_list_store_set(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, ...);
15988    pub fn gtk_list_store_set_column_types(
15989        list_store: *mut GtkListStore,
15990        n_columns: c_int,
15991        types: *mut GType,
15992    );
15993    //pub fn gtk_list_store_set_valist(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
15994    pub fn gtk_list_store_set_value(
15995        list_store: *mut GtkListStore,
15996        iter: *mut GtkTreeIter,
15997        column: c_int,
15998        value: *mut gobject::GValue,
15999    );
16000    pub fn gtk_list_store_set_valuesv(
16001        list_store: *mut GtkListStore,
16002        iter: *mut GtkTreeIter,
16003        columns: *mut c_int,
16004        values: *mut gobject::GValue,
16005        n_values: c_int,
16006    );
16007    pub fn gtk_list_store_swap(store: *mut GtkListStore, a: *mut GtkTreeIter, b: *mut GtkTreeIter);
16008
16009    //=========================================================================
16010    // GtkListView
16011    //=========================================================================
16012    pub fn gtk_list_view_get_type() -> GType;
16013    pub fn gtk_list_view_new(
16014        model: *mut GtkSelectionModel,
16015        factory: *mut GtkListItemFactory,
16016    ) -> *mut GtkWidget;
16017    pub fn gtk_list_view_get_enable_rubberband(self_: *mut GtkListView) -> gboolean;
16018    pub fn gtk_list_view_get_factory(self_: *mut GtkListView) -> *mut GtkListItemFactory;
16019    #[cfg(feature = "v4_12")]
16020    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16021    pub fn gtk_list_view_get_header_factory(self_: *mut GtkListView) -> *mut GtkListItemFactory;
16022    pub fn gtk_list_view_get_model(self_: *mut GtkListView) -> *mut GtkSelectionModel;
16023    pub fn gtk_list_view_get_show_separators(self_: *mut GtkListView) -> gboolean;
16024    pub fn gtk_list_view_get_single_click_activate(self_: *mut GtkListView) -> gboolean;
16025    #[cfg(feature = "v4_12")]
16026    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16027    pub fn gtk_list_view_get_tab_behavior(self_: *mut GtkListView) -> GtkListTabBehavior;
16028    #[cfg(feature = "v4_12")]
16029    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16030    pub fn gtk_list_view_scroll_to(
16031        self_: *mut GtkListView,
16032        pos: c_uint,
16033        flags: GtkListScrollFlags,
16034        scroll: *mut GtkScrollInfo,
16035    );
16036    pub fn gtk_list_view_set_enable_rubberband(
16037        self_: *mut GtkListView,
16038        enable_rubberband: gboolean,
16039    );
16040    pub fn gtk_list_view_set_factory(self_: *mut GtkListView, factory: *mut GtkListItemFactory);
16041    #[cfg(feature = "v4_12")]
16042    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16043    pub fn gtk_list_view_set_header_factory(
16044        self_: *mut GtkListView,
16045        factory: *mut GtkListItemFactory,
16046    );
16047    pub fn gtk_list_view_set_model(self_: *mut GtkListView, model: *mut GtkSelectionModel);
16048    pub fn gtk_list_view_set_show_separators(self_: *mut GtkListView, show_separators: gboolean);
16049    pub fn gtk_list_view_set_single_click_activate(
16050        self_: *mut GtkListView,
16051        single_click_activate: gboolean,
16052    );
16053    #[cfg(feature = "v4_12")]
16054    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16055    pub fn gtk_list_view_set_tab_behavior(
16056        self_: *mut GtkListView,
16057        tab_behavior: GtkListTabBehavior,
16058    );
16059
16060    //=========================================================================
16061    // GtkLockButton
16062    //=========================================================================
16063    pub fn gtk_lock_button_get_type() -> GType;
16064    pub fn gtk_lock_button_new(permission: *mut gio::GPermission) -> *mut GtkWidget;
16065    pub fn gtk_lock_button_get_permission(button: *mut GtkLockButton) -> *mut gio::GPermission;
16066    pub fn gtk_lock_button_set_permission(
16067        button: *mut GtkLockButton,
16068        permission: *mut gio::GPermission,
16069    );
16070
16071    //=========================================================================
16072    // GtkMapListModel
16073    //=========================================================================
16074    pub fn gtk_map_list_model_get_type() -> GType;
16075    pub fn gtk_map_list_model_new(
16076        model: *mut gio::GListModel,
16077        map_func: GtkMapListModelMapFunc,
16078        user_data: gpointer,
16079        user_destroy: glib::GDestroyNotify,
16080    ) -> *mut GtkMapListModel;
16081    pub fn gtk_map_list_model_get_model(self_: *mut GtkMapListModel) -> *mut gio::GListModel;
16082    pub fn gtk_map_list_model_has_map(self_: *mut GtkMapListModel) -> gboolean;
16083    pub fn gtk_map_list_model_set_map_func(
16084        self_: *mut GtkMapListModel,
16085        map_func: GtkMapListModelMapFunc,
16086        user_data: gpointer,
16087        user_destroy: glib::GDestroyNotify,
16088    );
16089    pub fn gtk_map_list_model_set_model(self_: *mut GtkMapListModel, model: *mut gio::GListModel);
16090
16091    //=========================================================================
16092    // GtkMediaControls
16093    //=========================================================================
16094    pub fn gtk_media_controls_get_type() -> GType;
16095    pub fn gtk_media_controls_new(stream: *mut GtkMediaStream) -> *mut GtkWidget;
16096    pub fn gtk_media_controls_get_media_stream(
16097        controls: *mut GtkMediaControls,
16098    ) -> *mut GtkMediaStream;
16099    pub fn gtk_media_controls_set_media_stream(
16100        controls: *mut GtkMediaControls,
16101        stream: *mut GtkMediaStream,
16102    );
16103
16104    //=========================================================================
16105    // GtkMediaFile
16106    //=========================================================================
16107    pub fn gtk_media_file_get_type() -> GType;
16108    pub fn gtk_media_file_new() -> *mut GtkMediaFile;
16109    pub fn gtk_media_file_new_for_file(file: *mut gio::GFile) -> *mut GtkMediaFile;
16110    pub fn gtk_media_file_new_for_filename(filename: *const c_char) -> *mut GtkMediaFile;
16111    pub fn gtk_media_file_new_for_input_stream(stream: *mut gio::GInputStream)
16112        -> *mut GtkMediaFile;
16113    pub fn gtk_media_file_new_for_resource(resource_path: *const c_char) -> *mut GtkMediaFile;
16114    pub fn gtk_media_file_clear(self_: *mut GtkMediaFile);
16115    pub fn gtk_media_file_get_file(self_: *mut GtkMediaFile) -> *mut gio::GFile;
16116    pub fn gtk_media_file_get_input_stream(self_: *mut GtkMediaFile) -> *mut gio::GInputStream;
16117    pub fn gtk_media_file_set_file(self_: *mut GtkMediaFile, file: *mut gio::GFile);
16118    pub fn gtk_media_file_set_filename(self_: *mut GtkMediaFile, filename: *const c_char);
16119    pub fn gtk_media_file_set_input_stream(
16120        self_: *mut GtkMediaFile,
16121        stream: *mut gio::GInputStream,
16122    );
16123    pub fn gtk_media_file_set_resource(self_: *mut GtkMediaFile, resource_path: *const c_char);
16124
16125    //=========================================================================
16126    // GtkMediaStream
16127    //=========================================================================
16128    pub fn gtk_media_stream_get_type() -> GType;
16129    pub fn gtk_media_stream_ended(self_: *mut GtkMediaStream);
16130    pub fn gtk_media_stream_error(
16131        self_: *mut GtkMediaStream,
16132        domain: glib::GQuark,
16133        code: c_int,
16134        format: *const c_char,
16135        ...
16136    );
16137    //pub fn gtk_media_stream_error_valist(self_: *mut GtkMediaStream, domain: glib::GQuark, code: c_int, format: *const c_char, args: /*Unimplemented*/va_list);
16138    pub fn gtk_media_stream_gerror(self_: *mut GtkMediaStream, error: *mut glib::GError);
16139    pub fn gtk_media_stream_get_duration(self_: *mut GtkMediaStream) -> i64;
16140    pub fn gtk_media_stream_get_ended(self_: *mut GtkMediaStream) -> gboolean;
16141    pub fn gtk_media_stream_get_error(self_: *mut GtkMediaStream) -> *const glib::GError;
16142    pub fn gtk_media_stream_get_loop(self_: *mut GtkMediaStream) -> gboolean;
16143    pub fn gtk_media_stream_get_muted(self_: *mut GtkMediaStream) -> gboolean;
16144    pub fn gtk_media_stream_get_playing(self_: *mut GtkMediaStream) -> gboolean;
16145    pub fn gtk_media_stream_get_timestamp(self_: *mut GtkMediaStream) -> i64;
16146    pub fn gtk_media_stream_get_volume(self_: *mut GtkMediaStream) -> c_double;
16147    pub fn gtk_media_stream_has_audio(self_: *mut GtkMediaStream) -> gboolean;
16148    pub fn gtk_media_stream_has_video(self_: *mut GtkMediaStream) -> gboolean;
16149    pub fn gtk_media_stream_is_prepared(self_: *mut GtkMediaStream) -> gboolean;
16150    pub fn gtk_media_stream_is_seekable(self_: *mut GtkMediaStream) -> gboolean;
16151    pub fn gtk_media_stream_is_seeking(self_: *mut GtkMediaStream) -> gboolean;
16152    pub fn gtk_media_stream_pause(self_: *mut GtkMediaStream);
16153    pub fn gtk_media_stream_play(self_: *mut GtkMediaStream);
16154    pub fn gtk_media_stream_prepared(
16155        self_: *mut GtkMediaStream,
16156        has_audio: gboolean,
16157        has_video: gboolean,
16158        seekable: gboolean,
16159        duration: i64,
16160    );
16161    pub fn gtk_media_stream_realize(self_: *mut GtkMediaStream, surface: *mut gdk::GdkSurface);
16162    pub fn gtk_media_stream_seek(self_: *mut GtkMediaStream, timestamp: i64);
16163    pub fn gtk_media_stream_seek_failed(self_: *mut GtkMediaStream);
16164    pub fn gtk_media_stream_seek_success(self_: *mut GtkMediaStream);
16165    pub fn gtk_media_stream_set_loop(self_: *mut GtkMediaStream, loop_: gboolean);
16166    pub fn gtk_media_stream_set_muted(self_: *mut GtkMediaStream, muted: gboolean);
16167    pub fn gtk_media_stream_set_playing(self_: *mut GtkMediaStream, playing: gboolean);
16168    pub fn gtk_media_stream_set_volume(self_: *mut GtkMediaStream, volume: c_double);
16169    #[cfg(feature = "v4_4")]
16170    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16171    pub fn gtk_media_stream_stream_ended(self_: *mut GtkMediaStream);
16172    #[cfg(feature = "v4_4")]
16173    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16174    pub fn gtk_media_stream_stream_prepared(
16175        self_: *mut GtkMediaStream,
16176        has_audio: gboolean,
16177        has_video: gboolean,
16178        seekable: gboolean,
16179        duration: i64,
16180    );
16181    #[cfg(feature = "v4_4")]
16182    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16183    pub fn gtk_media_stream_stream_unprepared(self_: *mut GtkMediaStream);
16184    pub fn gtk_media_stream_unprepared(self_: *mut GtkMediaStream);
16185    pub fn gtk_media_stream_unrealize(self_: *mut GtkMediaStream, surface: *mut gdk::GdkSurface);
16186    pub fn gtk_media_stream_update(self_: *mut GtkMediaStream, timestamp: i64);
16187
16188    //=========================================================================
16189    // GtkMenuButton
16190    //=========================================================================
16191    pub fn gtk_menu_button_get_type() -> GType;
16192    pub fn gtk_menu_button_new() -> *mut GtkWidget;
16193    #[cfg(feature = "v4_10")]
16194    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
16195    pub fn gtk_menu_button_get_active(menu_button: *mut GtkMenuButton) -> gboolean;
16196    #[cfg(feature = "v4_4")]
16197    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16198    pub fn gtk_menu_button_get_always_show_arrow(menu_button: *mut GtkMenuButton) -> gboolean;
16199    #[cfg(feature = "v4_12")]
16200    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16201    pub fn gtk_menu_button_get_can_shrink(menu_button: *mut GtkMenuButton) -> gboolean;
16202    #[cfg(feature = "v4_6")]
16203    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
16204    pub fn gtk_menu_button_get_child(menu_button: *mut GtkMenuButton) -> *mut GtkWidget;
16205    pub fn gtk_menu_button_get_direction(menu_button: *mut GtkMenuButton) -> GtkArrowType;
16206    pub fn gtk_menu_button_get_has_frame(menu_button: *mut GtkMenuButton) -> gboolean;
16207    pub fn gtk_menu_button_get_icon_name(menu_button: *mut GtkMenuButton) -> *const c_char;
16208    pub fn gtk_menu_button_get_label(menu_button: *mut GtkMenuButton) -> *const c_char;
16209    pub fn gtk_menu_button_get_menu_model(menu_button: *mut GtkMenuButton) -> *mut gio::GMenuModel;
16210    pub fn gtk_menu_button_get_popover(menu_button: *mut GtkMenuButton) -> *mut GtkPopover;
16211    #[cfg(feature = "v4_4")]
16212    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16213    pub fn gtk_menu_button_get_primary(menu_button: *mut GtkMenuButton) -> gboolean;
16214    pub fn gtk_menu_button_get_use_underline(menu_button: *mut GtkMenuButton) -> gboolean;
16215    pub fn gtk_menu_button_popdown(menu_button: *mut GtkMenuButton);
16216    pub fn gtk_menu_button_popup(menu_button: *mut GtkMenuButton);
16217    #[cfg(feature = "v4_10")]
16218    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
16219    pub fn gtk_menu_button_set_active(menu_button: *mut GtkMenuButton, active: gboolean);
16220    #[cfg(feature = "v4_4")]
16221    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16222    pub fn gtk_menu_button_set_always_show_arrow(
16223        menu_button: *mut GtkMenuButton,
16224        always_show_arrow: gboolean,
16225    );
16226    #[cfg(feature = "v4_12")]
16227    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16228    pub fn gtk_menu_button_set_can_shrink(menu_button: *mut GtkMenuButton, can_shrink: gboolean);
16229    #[cfg(feature = "v4_6")]
16230    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
16231    pub fn gtk_menu_button_set_child(menu_button: *mut GtkMenuButton, child: *mut GtkWidget);
16232    pub fn gtk_menu_button_set_create_popup_func(
16233        menu_button: *mut GtkMenuButton,
16234        func: GtkMenuButtonCreatePopupFunc,
16235        user_data: gpointer,
16236        destroy_notify: glib::GDestroyNotify,
16237    );
16238    pub fn gtk_menu_button_set_direction(menu_button: *mut GtkMenuButton, direction: GtkArrowType);
16239    pub fn gtk_menu_button_set_has_frame(menu_button: *mut GtkMenuButton, has_frame: gboolean);
16240    pub fn gtk_menu_button_set_icon_name(menu_button: *mut GtkMenuButton, icon_name: *const c_char);
16241    pub fn gtk_menu_button_set_label(menu_button: *mut GtkMenuButton, label: *const c_char);
16242    pub fn gtk_menu_button_set_menu_model(
16243        menu_button: *mut GtkMenuButton,
16244        menu_model: *mut gio::GMenuModel,
16245    );
16246    pub fn gtk_menu_button_set_popover(menu_button: *mut GtkMenuButton, popover: *mut GtkPopover);
16247    #[cfg(feature = "v4_4")]
16248    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16249    pub fn gtk_menu_button_set_primary(menu_button: *mut GtkMenuButton, primary: gboolean);
16250    pub fn gtk_menu_button_set_use_underline(
16251        menu_button: *mut GtkMenuButton,
16252        use_underline: gboolean,
16253    );
16254
16255    //=========================================================================
16256    // GtkMessageDialog
16257    //=========================================================================
16258    pub fn gtk_message_dialog_get_type() -> GType;
16259    pub fn gtk_message_dialog_new(
16260        parent: *mut GtkWindow,
16261        flags: GtkDialogFlags,
16262        type_: GtkMessageType,
16263        buttons: GtkButtonsType,
16264        message_format: *const c_char,
16265        ...
16266    ) -> *mut GtkWidget;
16267    pub fn gtk_message_dialog_new_with_markup(
16268        parent: *mut GtkWindow,
16269        flags: GtkDialogFlags,
16270        type_: GtkMessageType,
16271        buttons: GtkButtonsType,
16272        message_format: *const c_char,
16273        ...
16274    ) -> *mut GtkWidget;
16275    pub fn gtk_message_dialog_format_secondary_markup(
16276        message_dialog: *mut GtkMessageDialog,
16277        message_format: *const c_char,
16278        ...
16279    );
16280    pub fn gtk_message_dialog_format_secondary_text(
16281        message_dialog: *mut GtkMessageDialog,
16282        message_format: *const c_char,
16283        ...
16284    );
16285    pub fn gtk_message_dialog_get_message_area(
16286        message_dialog: *mut GtkMessageDialog,
16287    ) -> *mut GtkWidget;
16288    pub fn gtk_message_dialog_set_markup(message_dialog: *mut GtkMessageDialog, str: *const c_char);
16289
16290    //=========================================================================
16291    // GtkMnemonicAction
16292    //=========================================================================
16293    pub fn gtk_mnemonic_action_get_type() -> GType;
16294    pub fn gtk_mnemonic_action_get() -> *mut GtkMnemonicAction;
16295
16296    //=========================================================================
16297    // GtkMnemonicTrigger
16298    //=========================================================================
16299    pub fn gtk_mnemonic_trigger_get_type() -> GType;
16300    pub fn gtk_mnemonic_trigger_new(keyval: c_uint) -> *mut GtkMnemonicTrigger;
16301    pub fn gtk_mnemonic_trigger_get_keyval(self_: *mut GtkMnemonicTrigger) -> c_uint;
16302
16303    //=========================================================================
16304    // GtkMountOperation
16305    //=========================================================================
16306    pub fn gtk_mount_operation_get_type() -> GType;
16307    pub fn gtk_mount_operation_new(parent: *mut GtkWindow) -> *mut gio::GMountOperation;
16308    pub fn gtk_mount_operation_get_display(op: *mut GtkMountOperation) -> *mut gdk::GdkDisplay;
16309    pub fn gtk_mount_operation_get_parent(op: *mut GtkMountOperation) -> *mut GtkWindow;
16310    pub fn gtk_mount_operation_is_showing(op: *mut GtkMountOperation) -> gboolean;
16311    pub fn gtk_mount_operation_set_display(
16312        op: *mut GtkMountOperation,
16313        display: *mut gdk::GdkDisplay,
16314    );
16315    pub fn gtk_mount_operation_set_parent(op: *mut GtkMountOperation, parent: *mut GtkWindow);
16316
16317    //=========================================================================
16318    // GtkMultiFilter
16319    //=========================================================================
16320    pub fn gtk_multi_filter_get_type() -> GType;
16321    pub fn gtk_multi_filter_append(self_: *mut GtkMultiFilter, filter: *mut GtkFilter);
16322    pub fn gtk_multi_filter_remove(self_: *mut GtkMultiFilter, position: c_uint);
16323
16324    //=========================================================================
16325    // GtkMultiSelection
16326    //=========================================================================
16327    pub fn gtk_multi_selection_get_type() -> GType;
16328    pub fn gtk_multi_selection_new(model: *mut gio::GListModel) -> *mut GtkMultiSelection;
16329    pub fn gtk_multi_selection_get_model(self_: *mut GtkMultiSelection) -> *mut gio::GListModel;
16330    pub fn gtk_multi_selection_set_model(
16331        self_: *mut GtkMultiSelection,
16332        model: *mut gio::GListModel,
16333    );
16334
16335    //=========================================================================
16336    // GtkMultiSorter
16337    //=========================================================================
16338    pub fn gtk_multi_sorter_get_type() -> GType;
16339    pub fn gtk_multi_sorter_new() -> *mut GtkMultiSorter;
16340    pub fn gtk_multi_sorter_append(self_: *mut GtkMultiSorter, sorter: *mut GtkSorter);
16341    pub fn gtk_multi_sorter_remove(self_: *mut GtkMultiSorter, position: c_uint);
16342
16343    //=========================================================================
16344    // GtkNamedAction
16345    //=========================================================================
16346    pub fn gtk_named_action_get_type() -> GType;
16347    pub fn gtk_named_action_new(name: *const c_char) -> *mut GtkNamedAction;
16348    pub fn gtk_named_action_get_action_name(self_: *mut GtkNamedAction) -> *const c_char;
16349
16350    //=========================================================================
16351    // GtkNativeDialog
16352    //=========================================================================
16353    pub fn gtk_native_dialog_get_type() -> GType;
16354    pub fn gtk_native_dialog_destroy(self_: *mut GtkNativeDialog);
16355    pub fn gtk_native_dialog_get_modal(self_: *mut GtkNativeDialog) -> gboolean;
16356    pub fn gtk_native_dialog_get_title(self_: *mut GtkNativeDialog) -> *const c_char;
16357    pub fn gtk_native_dialog_get_transient_for(self_: *mut GtkNativeDialog) -> *mut GtkWindow;
16358    pub fn gtk_native_dialog_get_visible(self_: *mut GtkNativeDialog) -> gboolean;
16359    pub fn gtk_native_dialog_hide(self_: *mut GtkNativeDialog);
16360    pub fn gtk_native_dialog_set_modal(self_: *mut GtkNativeDialog, modal: gboolean);
16361    pub fn gtk_native_dialog_set_title(self_: *mut GtkNativeDialog, title: *const c_char);
16362    pub fn gtk_native_dialog_set_transient_for(self_: *mut GtkNativeDialog, parent: *mut GtkWindow);
16363    pub fn gtk_native_dialog_show(self_: *mut GtkNativeDialog);
16364
16365    //=========================================================================
16366    // GtkNeverTrigger
16367    //=========================================================================
16368    pub fn gtk_never_trigger_get_type() -> GType;
16369    pub fn gtk_never_trigger_get() -> *mut GtkNeverTrigger;
16370
16371    //=========================================================================
16372    // GtkNoSelection
16373    //=========================================================================
16374    pub fn gtk_no_selection_get_type() -> GType;
16375    pub fn gtk_no_selection_new(model: *mut gio::GListModel) -> *mut GtkNoSelection;
16376    pub fn gtk_no_selection_get_model(self_: *mut GtkNoSelection) -> *mut gio::GListModel;
16377    pub fn gtk_no_selection_set_model(self_: *mut GtkNoSelection, model: *mut gio::GListModel);
16378
16379    //=========================================================================
16380    // GtkNotebook
16381    //=========================================================================
16382    pub fn gtk_notebook_get_type() -> GType;
16383    pub fn gtk_notebook_new() -> *mut GtkWidget;
16384    pub fn gtk_notebook_append_page(
16385        notebook: *mut GtkNotebook,
16386        child: *mut GtkWidget,
16387        tab_label: *mut GtkWidget,
16388    ) -> c_int;
16389    pub fn gtk_notebook_append_page_menu(
16390        notebook: *mut GtkNotebook,
16391        child: *mut GtkWidget,
16392        tab_label: *mut GtkWidget,
16393        menu_label: *mut GtkWidget,
16394    ) -> c_int;
16395    pub fn gtk_notebook_detach_tab(notebook: *mut GtkNotebook, child: *mut GtkWidget);
16396    pub fn gtk_notebook_get_action_widget(
16397        notebook: *mut GtkNotebook,
16398        pack_type: GtkPackType,
16399    ) -> *mut GtkWidget;
16400    pub fn gtk_notebook_get_current_page(notebook: *mut GtkNotebook) -> c_int;
16401    pub fn gtk_notebook_get_group_name(notebook: *mut GtkNotebook) -> *const c_char;
16402    pub fn gtk_notebook_get_menu_label(
16403        notebook: *mut GtkNotebook,
16404        child: *mut GtkWidget,
16405    ) -> *mut GtkWidget;
16406    pub fn gtk_notebook_get_menu_label_text(
16407        notebook: *mut GtkNotebook,
16408        child: *mut GtkWidget,
16409    ) -> *const c_char;
16410    pub fn gtk_notebook_get_n_pages(notebook: *mut GtkNotebook) -> c_int;
16411    pub fn gtk_notebook_get_nth_page(notebook: *mut GtkNotebook, page_num: c_int)
16412        -> *mut GtkWidget;
16413    pub fn gtk_notebook_get_page(
16414        notebook: *mut GtkNotebook,
16415        child: *mut GtkWidget,
16416    ) -> *mut GtkNotebookPage;
16417    pub fn gtk_notebook_get_pages(notebook: *mut GtkNotebook) -> *mut gio::GListModel;
16418    pub fn gtk_notebook_get_scrollable(notebook: *mut GtkNotebook) -> gboolean;
16419    pub fn gtk_notebook_get_show_border(notebook: *mut GtkNotebook) -> gboolean;
16420    pub fn gtk_notebook_get_show_tabs(notebook: *mut GtkNotebook) -> gboolean;
16421    pub fn gtk_notebook_get_tab_detachable(
16422        notebook: *mut GtkNotebook,
16423        child: *mut GtkWidget,
16424    ) -> gboolean;
16425    pub fn gtk_notebook_get_tab_label(
16426        notebook: *mut GtkNotebook,
16427        child: *mut GtkWidget,
16428    ) -> *mut GtkWidget;
16429    pub fn gtk_notebook_get_tab_label_text(
16430        notebook: *mut GtkNotebook,
16431        child: *mut GtkWidget,
16432    ) -> *const c_char;
16433    pub fn gtk_notebook_get_tab_pos(notebook: *mut GtkNotebook) -> GtkPositionType;
16434    pub fn gtk_notebook_get_tab_reorderable(
16435        notebook: *mut GtkNotebook,
16436        child: *mut GtkWidget,
16437    ) -> gboolean;
16438    pub fn gtk_notebook_insert_page(
16439        notebook: *mut GtkNotebook,
16440        child: *mut GtkWidget,
16441        tab_label: *mut GtkWidget,
16442        position: c_int,
16443    ) -> c_int;
16444    pub fn gtk_notebook_insert_page_menu(
16445        notebook: *mut GtkNotebook,
16446        child: *mut GtkWidget,
16447        tab_label: *mut GtkWidget,
16448        menu_label: *mut GtkWidget,
16449        position: c_int,
16450    ) -> c_int;
16451    pub fn gtk_notebook_next_page(notebook: *mut GtkNotebook);
16452    pub fn gtk_notebook_page_num(notebook: *mut GtkNotebook, child: *mut GtkWidget) -> c_int;
16453    pub fn gtk_notebook_popup_disable(notebook: *mut GtkNotebook);
16454    pub fn gtk_notebook_popup_enable(notebook: *mut GtkNotebook);
16455    pub fn gtk_notebook_prepend_page(
16456        notebook: *mut GtkNotebook,
16457        child: *mut GtkWidget,
16458        tab_label: *mut GtkWidget,
16459    ) -> c_int;
16460    pub fn gtk_notebook_prepend_page_menu(
16461        notebook: *mut GtkNotebook,
16462        child: *mut GtkWidget,
16463        tab_label: *mut GtkWidget,
16464        menu_label: *mut GtkWidget,
16465    ) -> c_int;
16466    pub fn gtk_notebook_prev_page(notebook: *mut GtkNotebook);
16467    pub fn gtk_notebook_remove_page(notebook: *mut GtkNotebook, page_num: c_int);
16468    pub fn gtk_notebook_reorder_child(
16469        notebook: *mut GtkNotebook,
16470        child: *mut GtkWidget,
16471        position: c_int,
16472    );
16473    pub fn gtk_notebook_set_action_widget(
16474        notebook: *mut GtkNotebook,
16475        widget: *mut GtkWidget,
16476        pack_type: GtkPackType,
16477    );
16478    pub fn gtk_notebook_set_current_page(notebook: *mut GtkNotebook, page_num: c_int);
16479    pub fn gtk_notebook_set_group_name(notebook: *mut GtkNotebook, group_name: *const c_char);
16480    pub fn gtk_notebook_set_menu_label(
16481        notebook: *mut GtkNotebook,
16482        child: *mut GtkWidget,
16483        menu_label: *mut GtkWidget,
16484    );
16485    pub fn gtk_notebook_set_menu_label_text(
16486        notebook: *mut GtkNotebook,
16487        child: *mut GtkWidget,
16488        menu_text: *const c_char,
16489    );
16490    pub fn gtk_notebook_set_scrollable(notebook: *mut GtkNotebook, scrollable: gboolean);
16491    pub fn gtk_notebook_set_show_border(notebook: *mut GtkNotebook, show_border: gboolean);
16492    pub fn gtk_notebook_set_show_tabs(notebook: *mut GtkNotebook, show_tabs: gboolean);
16493    pub fn gtk_notebook_set_tab_detachable(
16494        notebook: *mut GtkNotebook,
16495        child: *mut GtkWidget,
16496        detachable: gboolean,
16497    );
16498    pub fn gtk_notebook_set_tab_label(
16499        notebook: *mut GtkNotebook,
16500        child: *mut GtkWidget,
16501        tab_label: *mut GtkWidget,
16502    );
16503    pub fn gtk_notebook_set_tab_label_text(
16504        notebook: *mut GtkNotebook,
16505        child: *mut GtkWidget,
16506        tab_text: *const c_char,
16507    );
16508    pub fn gtk_notebook_set_tab_pos(notebook: *mut GtkNotebook, pos: GtkPositionType);
16509    pub fn gtk_notebook_set_tab_reorderable(
16510        notebook: *mut GtkNotebook,
16511        child: *mut GtkWidget,
16512        reorderable: gboolean,
16513    );
16514
16515    //=========================================================================
16516    // GtkNotebookPage
16517    //=========================================================================
16518    pub fn gtk_notebook_page_get_type() -> GType;
16519    pub fn gtk_notebook_page_get_child(page: *mut GtkNotebookPage) -> *mut GtkWidget;
16520
16521    //=========================================================================
16522    // GtkNothingAction
16523    //=========================================================================
16524    pub fn gtk_nothing_action_get_type() -> GType;
16525    pub fn gtk_nothing_action_get() -> *mut GtkNothingAction;
16526
16527    //=========================================================================
16528    // GtkNumericSorter
16529    //=========================================================================
16530    pub fn gtk_numeric_sorter_get_type() -> GType;
16531    pub fn gtk_numeric_sorter_new(expression: *mut GtkExpression) -> *mut GtkNumericSorter;
16532    pub fn gtk_numeric_sorter_get_expression(self_: *mut GtkNumericSorter) -> *mut GtkExpression;
16533    pub fn gtk_numeric_sorter_get_sort_order(self_: *mut GtkNumericSorter) -> GtkSortType;
16534    pub fn gtk_numeric_sorter_set_expression(
16535        self_: *mut GtkNumericSorter,
16536        expression: *mut GtkExpression,
16537    );
16538    pub fn gtk_numeric_sorter_set_sort_order(self_: *mut GtkNumericSorter, sort_order: GtkSortType);
16539
16540    //=========================================================================
16541    // GtkObjectExpression
16542    //=========================================================================
16543    pub fn gtk_object_expression_get_type() -> GType;
16544    pub fn gtk_object_expression_new(object: *mut gobject::GObject) -> *mut GtkObjectExpression;
16545    pub fn gtk_object_expression_get_object(
16546        expression: *mut GtkObjectExpression,
16547    ) -> *mut gobject::GObject;
16548
16549    //=========================================================================
16550    // GtkOverlay
16551    //=========================================================================
16552    pub fn gtk_overlay_get_type() -> GType;
16553    pub fn gtk_overlay_new() -> *mut GtkWidget;
16554    pub fn gtk_overlay_add_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
16555    pub fn gtk_overlay_get_child(overlay: *mut GtkOverlay) -> *mut GtkWidget;
16556    pub fn gtk_overlay_get_clip_overlay(
16557        overlay: *mut GtkOverlay,
16558        widget: *mut GtkWidget,
16559    ) -> gboolean;
16560    pub fn gtk_overlay_get_measure_overlay(
16561        overlay: *mut GtkOverlay,
16562        widget: *mut GtkWidget,
16563    ) -> gboolean;
16564    pub fn gtk_overlay_remove_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
16565    pub fn gtk_overlay_set_child(overlay: *mut GtkOverlay, child: *mut GtkWidget);
16566    pub fn gtk_overlay_set_clip_overlay(
16567        overlay: *mut GtkOverlay,
16568        widget: *mut GtkWidget,
16569        clip_overlay: gboolean,
16570    );
16571    pub fn gtk_overlay_set_measure_overlay(
16572        overlay: *mut GtkOverlay,
16573        widget: *mut GtkWidget,
16574        measure: gboolean,
16575    );
16576
16577    //=========================================================================
16578    // GtkOverlayLayout
16579    //=========================================================================
16580    pub fn gtk_overlay_layout_get_type() -> GType;
16581    pub fn gtk_overlay_layout_new() -> *mut GtkLayoutManager;
16582
16583    //=========================================================================
16584    // GtkOverlayLayoutChild
16585    //=========================================================================
16586    pub fn gtk_overlay_layout_child_get_type() -> GType;
16587    pub fn gtk_overlay_layout_child_get_clip_overlay(child: *mut GtkOverlayLayoutChild)
16588        -> gboolean;
16589    pub fn gtk_overlay_layout_child_get_measure(child: *mut GtkOverlayLayoutChild) -> gboolean;
16590    pub fn gtk_overlay_layout_child_set_clip_overlay(
16591        child: *mut GtkOverlayLayoutChild,
16592        clip_overlay: gboolean,
16593    );
16594    pub fn gtk_overlay_layout_child_set_measure(
16595        child: *mut GtkOverlayLayoutChild,
16596        measure: gboolean,
16597    );
16598
16599    //=========================================================================
16600    // GtkPadController
16601    //=========================================================================
16602    pub fn gtk_pad_controller_get_type() -> GType;
16603    pub fn gtk_pad_controller_new(
16604        group: *mut gio::GActionGroup,
16605        pad: *mut gdk::GdkDevice,
16606    ) -> *mut GtkPadController;
16607    pub fn gtk_pad_controller_set_action(
16608        controller: *mut GtkPadController,
16609        type_: GtkPadActionType,
16610        index: c_int,
16611        mode: c_int,
16612        label: *const c_char,
16613        action_name: *const c_char,
16614    );
16615    pub fn gtk_pad_controller_set_action_entries(
16616        controller: *mut GtkPadController,
16617        entries: *const GtkPadActionEntry,
16618        n_entries: c_int,
16619    );
16620
16621    //=========================================================================
16622    // GtkPageSetup
16623    //=========================================================================
16624    pub fn gtk_page_setup_get_type() -> GType;
16625    pub fn gtk_page_setup_new() -> *mut GtkPageSetup;
16626    pub fn gtk_page_setup_new_from_file(
16627        file_name: *const c_char,
16628        error: *mut *mut glib::GError,
16629    ) -> *mut GtkPageSetup;
16630    pub fn gtk_page_setup_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPageSetup;
16631    pub fn gtk_page_setup_new_from_key_file(
16632        key_file: *mut glib::GKeyFile,
16633        group_name: *const c_char,
16634        error: *mut *mut glib::GError,
16635    ) -> *mut GtkPageSetup;
16636    pub fn gtk_page_setup_copy(other: *mut GtkPageSetup) -> *mut GtkPageSetup;
16637    pub fn gtk_page_setup_get_bottom_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16638    pub fn gtk_page_setup_get_left_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16639    pub fn gtk_page_setup_get_orientation(setup: *mut GtkPageSetup) -> GtkPageOrientation;
16640    pub fn gtk_page_setup_get_page_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16641    pub fn gtk_page_setup_get_page_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16642    pub fn gtk_page_setup_get_paper_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16643    pub fn gtk_page_setup_get_paper_size(setup: *mut GtkPageSetup) -> *mut GtkPaperSize;
16644    pub fn gtk_page_setup_get_paper_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16645    pub fn gtk_page_setup_get_right_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16646    pub fn gtk_page_setup_get_top_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16647    pub fn gtk_page_setup_load_file(
16648        setup: *mut GtkPageSetup,
16649        file_name: *const c_char,
16650        error: *mut *mut glib::GError,
16651    ) -> gboolean;
16652    pub fn gtk_page_setup_load_key_file(
16653        setup: *mut GtkPageSetup,
16654        key_file: *mut glib::GKeyFile,
16655        group_name: *const c_char,
16656        error: *mut *mut glib::GError,
16657    ) -> gboolean;
16658    pub fn gtk_page_setup_set_bottom_margin(
16659        setup: *mut GtkPageSetup,
16660        margin: c_double,
16661        unit: GtkUnit,
16662    );
16663    pub fn gtk_page_setup_set_left_margin(
16664        setup: *mut GtkPageSetup,
16665        margin: c_double,
16666        unit: GtkUnit,
16667    );
16668    pub fn gtk_page_setup_set_orientation(
16669        setup: *mut GtkPageSetup,
16670        orientation: GtkPageOrientation,
16671    );
16672    pub fn gtk_page_setup_set_paper_size(setup: *mut GtkPageSetup, size: *mut GtkPaperSize);
16673    pub fn gtk_page_setup_set_paper_size_and_default_margins(
16674        setup: *mut GtkPageSetup,
16675        size: *mut GtkPaperSize,
16676    );
16677    pub fn gtk_page_setup_set_right_margin(
16678        setup: *mut GtkPageSetup,
16679        margin: c_double,
16680        unit: GtkUnit,
16681    );
16682    pub fn gtk_page_setup_set_top_margin(setup: *mut GtkPageSetup, margin: c_double, unit: GtkUnit);
16683    pub fn gtk_page_setup_to_file(
16684        setup: *mut GtkPageSetup,
16685        file_name: *const c_char,
16686        error: *mut *mut glib::GError,
16687    ) -> gboolean;
16688    pub fn gtk_page_setup_to_gvariant(setup: *mut GtkPageSetup) -> *mut glib::GVariant;
16689    pub fn gtk_page_setup_to_key_file(
16690        setup: *mut GtkPageSetup,
16691        key_file: *mut glib::GKeyFile,
16692        group_name: *const c_char,
16693    );
16694
16695    //=========================================================================
16696    // GtkPageSetupUnixDialog
16697    //=========================================================================
16698    pub fn gtk_page_setup_unix_dialog_get_type() -> GType;
16699    pub fn gtk_page_setup_unix_dialog_new(
16700        title: *const c_char,
16701        parent: *mut GtkWindow,
16702    ) -> *mut GtkWidget;
16703    pub fn gtk_page_setup_unix_dialog_get_page_setup(
16704        dialog: *mut GtkPageSetupUnixDialog,
16705    ) -> *mut GtkPageSetup;
16706    pub fn gtk_page_setup_unix_dialog_get_print_settings(
16707        dialog: *mut GtkPageSetupUnixDialog,
16708    ) -> *mut GtkPrintSettings;
16709    pub fn gtk_page_setup_unix_dialog_set_page_setup(
16710        dialog: *mut GtkPageSetupUnixDialog,
16711        page_setup: *mut GtkPageSetup,
16712    );
16713    pub fn gtk_page_setup_unix_dialog_set_print_settings(
16714        dialog: *mut GtkPageSetupUnixDialog,
16715        print_settings: *mut GtkPrintSettings,
16716    );
16717
16718    //=========================================================================
16719    // GtkPaned
16720    //=========================================================================
16721    pub fn gtk_paned_get_type() -> GType;
16722    pub fn gtk_paned_new(orientation: GtkOrientation) -> *mut GtkWidget;
16723    pub fn gtk_paned_get_end_child(paned: *mut GtkPaned) -> *mut GtkWidget;
16724    pub fn gtk_paned_get_position(paned: *mut GtkPaned) -> c_int;
16725    pub fn gtk_paned_get_resize_end_child(paned: *mut GtkPaned) -> gboolean;
16726    pub fn gtk_paned_get_resize_start_child(paned: *mut GtkPaned) -> gboolean;
16727    pub fn gtk_paned_get_shrink_end_child(paned: *mut GtkPaned) -> gboolean;
16728    pub fn gtk_paned_get_shrink_start_child(paned: *mut GtkPaned) -> gboolean;
16729    pub fn gtk_paned_get_start_child(paned: *mut GtkPaned) -> *mut GtkWidget;
16730    pub fn gtk_paned_get_wide_handle(paned: *mut GtkPaned) -> gboolean;
16731    pub fn gtk_paned_set_end_child(paned: *mut GtkPaned, child: *mut GtkWidget);
16732    pub fn gtk_paned_set_position(paned: *mut GtkPaned, position: c_int);
16733    pub fn gtk_paned_set_resize_end_child(paned: *mut GtkPaned, resize: gboolean);
16734    pub fn gtk_paned_set_resize_start_child(paned: *mut GtkPaned, resize: gboolean);
16735    pub fn gtk_paned_set_shrink_end_child(paned: *mut GtkPaned, resize: gboolean);
16736    pub fn gtk_paned_set_shrink_start_child(paned: *mut GtkPaned, resize: gboolean);
16737    pub fn gtk_paned_set_start_child(paned: *mut GtkPaned, child: *mut GtkWidget);
16738    pub fn gtk_paned_set_wide_handle(paned: *mut GtkPaned, wide: gboolean);
16739
16740    //=========================================================================
16741    // GtkParamSpecExpression
16742    //=========================================================================
16743    pub fn gtk_param_expression_get_type() -> GType;
16744
16745    //=========================================================================
16746    // GtkPasswordEntry
16747    //=========================================================================
16748    pub fn gtk_password_entry_get_type() -> GType;
16749    pub fn gtk_password_entry_new() -> *mut GtkWidget;
16750    pub fn gtk_password_entry_get_extra_menu(entry: *mut GtkPasswordEntry) -> *mut gio::GMenuModel;
16751    pub fn gtk_password_entry_get_show_peek_icon(entry: *mut GtkPasswordEntry) -> gboolean;
16752    pub fn gtk_password_entry_set_extra_menu(
16753        entry: *mut GtkPasswordEntry,
16754        model: *mut gio::GMenuModel,
16755    );
16756    pub fn gtk_password_entry_set_show_peek_icon(
16757        entry: *mut GtkPasswordEntry,
16758        show_peek_icon: gboolean,
16759    );
16760
16761    //=========================================================================
16762    // GtkPasswordEntryBuffer
16763    //=========================================================================
16764    #[cfg(feature = "v4_4")]
16765    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16766    pub fn gtk_password_entry_buffer_get_type() -> GType;
16767    #[cfg(feature = "v4_4")]
16768    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16769    pub fn gtk_password_entry_buffer_new() -> *mut GtkEntryBuffer;
16770
16771    //=========================================================================
16772    // GtkPicture
16773    //=========================================================================
16774    pub fn gtk_picture_get_type() -> GType;
16775    pub fn gtk_picture_new() -> *mut GtkWidget;
16776    pub fn gtk_picture_new_for_file(file: *mut gio::GFile) -> *mut GtkWidget;
16777    pub fn gtk_picture_new_for_filename(filename: *const c_char) -> *mut GtkWidget;
16778    pub fn gtk_picture_new_for_paintable(paintable: *mut gdk::GdkPaintable) -> *mut GtkWidget;
16779    pub fn gtk_picture_new_for_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
16780    pub fn gtk_picture_new_for_resource(resource_path: *const c_char) -> *mut GtkWidget;
16781    pub fn gtk_picture_get_alternative_text(self_: *mut GtkPicture) -> *const c_char;
16782    pub fn gtk_picture_get_can_shrink(self_: *mut GtkPicture) -> gboolean;
16783    #[cfg(feature = "v4_8")]
16784    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
16785    pub fn gtk_picture_get_content_fit(self_: *mut GtkPicture) -> GtkContentFit;
16786    pub fn gtk_picture_get_file(self_: *mut GtkPicture) -> *mut gio::GFile;
16787    pub fn gtk_picture_get_keep_aspect_ratio(self_: *mut GtkPicture) -> gboolean;
16788    pub fn gtk_picture_get_paintable(self_: *mut GtkPicture) -> *mut gdk::GdkPaintable;
16789    pub fn gtk_picture_set_alternative_text(
16790        self_: *mut GtkPicture,
16791        alternative_text: *const c_char,
16792    );
16793    pub fn gtk_picture_set_can_shrink(self_: *mut GtkPicture, can_shrink: gboolean);
16794    #[cfg(feature = "v4_8")]
16795    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
16796    pub fn gtk_picture_set_content_fit(self_: *mut GtkPicture, content_fit: GtkContentFit);
16797    pub fn gtk_picture_set_file(self_: *mut GtkPicture, file: *mut gio::GFile);
16798    pub fn gtk_picture_set_filename(self_: *mut GtkPicture, filename: *const c_char);
16799    pub fn gtk_picture_set_keep_aspect_ratio(self_: *mut GtkPicture, keep_aspect_ratio: gboolean);
16800    pub fn gtk_picture_set_paintable(self_: *mut GtkPicture, paintable: *mut gdk::GdkPaintable);
16801    pub fn gtk_picture_set_pixbuf(self_: *mut GtkPicture, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
16802    pub fn gtk_picture_set_resource(self_: *mut GtkPicture, resource_path: *const c_char);
16803
16804    //=========================================================================
16805    // GtkPopover
16806    //=========================================================================
16807    pub fn gtk_popover_get_type() -> GType;
16808    pub fn gtk_popover_new() -> *mut GtkWidget;
16809    pub fn gtk_popover_get_autohide(popover: *mut GtkPopover) -> gboolean;
16810    pub fn gtk_popover_get_cascade_popdown(popover: *mut GtkPopover) -> gboolean;
16811    pub fn gtk_popover_get_child(popover: *mut GtkPopover) -> *mut GtkWidget;
16812    pub fn gtk_popover_get_has_arrow(popover: *mut GtkPopover) -> gboolean;
16813    pub fn gtk_popover_get_mnemonics_visible(popover: *mut GtkPopover) -> gboolean;
16814    pub fn gtk_popover_get_offset(
16815        popover: *mut GtkPopover,
16816        x_offset: *mut c_int,
16817        y_offset: *mut c_int,
16818    );
16819    pub fn gtk_popover_get_pointing_to(
16820        popover: *mut GtkPopover,
16821        rect: *mut gdk::GdkRectangle,
16822    ) -> gboolean;
16823    pub fn gtk_popover_get_position(popover: *mut GtkPopover) -> GtkPositionType;
16824    pub fn gtk_popover_popdown(popover: *mut GtkPopover);
16825    pub fn gtk_popover_popup(popover: *mut GtkPopover);
16826    pub fn gtk_popover_present(popover: *mut GtkPopover);
16827    pub fn gtk_popover_set_autohide(popover: *mut GtkPopover, autohide: gboolean);
16828    pub fn gtk_popover_set_cascade_popdown(popover: *mut GtkPopover, cascade_popdown: gboolean);
16829    pub fn gtk_popover_set_child(popover: *mut GtkPopover, child: *mut GtkWidget);
16830    pub fn gtk_popover_set_default_widget(popover: *mut GtkPopover, widget: *mut GtkWidget);
16831    pub fn gtk_popover_set_has_arrow(popover: *mut GtkPopover, has_arrow: gboolean);
16832    pub fn gtk_popover_set_mnemonics_visible(popover: *mut GtkPopover, mnemonics_visible: gboolean);
16833    pub fn gtk_popover_set_offset(popover: *mut GtkPopover, x_offset: c_int, y_offset: c_int);
16834    pub fn gtk_popover_set_pointing_to(popover: *mut GtkPopover, rect: *const gdk::GdkRectangle);
16835    pub fn gtk_popover_set_position(popover: *mut GtkPopover, position: GtkPositionType);
16836
16837    //=========================================================================
16838    // GtkPopoverMenu
16839    //=========================================================================
16840    pub fn gtk_popover_menu_get_type() -> GType;
16841    pub fn gtk_popover_menu_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
16842    pub fn gtk_popover_menu_new_from_model_full(
16843        model: *mut gio::GMenuModel,
16844        flags: GtkPopoverMenuFlags,
16845    ) -> *mut GtkWidget;
16846    pub fn gtk_popover_menu_add_child(
16847        popover: *mut GtkPopoverMenu,
16848        child: *mut GtkWidget,
16849        id: *const c_char,
16850    ) -> gboolean;
16851    #[cfg(feature = "v4_14")]
16852    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16853    pub fn gtk_popover_menu_get_flags(popover: *mut GtkPopoverMenu) -> GtkPopoverMenuFlags;
16854    pub fn gtk_popover_menu_get_menu_model(popover: *mut GtkPopoverMenu) -> *mut gio::GMenuModel;
16855    pub fn gtk_popover_menu_remove_child(
16856        popover: *mut GtkPopoverMenu,
16857        child: *mut GtkWidget,
16858    ) -> gboolean;
16859    #[cfg(feature = "v4_14")]
16860    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16861    pub fn gtk_popover_menu_set_flags(popover: *mut GtkPopoverMenu, flags: GtkPopoverMenuFlags);
16862    pub fn gtk_popover_menu_set_menu_model(
16863        popover: *mut GtkPopoverMenu,
16864        model: *mut gio::GMenuModel,
16865    );
16866
16867    //=========================================================================
16868    // GtkPopoverMenuBar
16869    //=========================================================================
16870    pub fn gtk_popover_menu_bar_get_type() -> GType;
16871    pub fn gtk_popover_menu_bar_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
16872    pub fn gtk_popover_menu_bar_add_child(
16873        bar: *mut GtkPopoverMenuBar,
16874        child: *mut GtkWidget,
16875        id: *const c_char,
16876    ) -> gboolean;
16877    pub fn gtk_popover_menu_bar_get_menu_model(bar: *mut GtkPopoverMenuBar)
16878        -> *mut gio::GMenuModel;
16879    pub fn gtk_popover_menu_bar_remove_child(
16880        bar: *mut GtkPopoverMenuBar,
16881        child: *mut GtkWidget,
16882    ) -> gboolean;
16883    pub fn gtk_popover_menu_bar_set_menu_model(
16884        bar: *mut GtkPopoverMenuBar,
16885        model: *mut gio::GMenuModel,
16886    );
16887
16888    //=========================================================================
16889    // GtkPrintContext
16890    //=========================================================================
16891    pub fn gtk_print_context_get_type() -> GType;
16892    pub fn gtk_print_context_create_pango_context(
16893        context: *mut GtkPrintContext,
16894    ) -> *mut pango::PangoContext;
16895    pub fn gtk_print_context_create_pango_layout(
16896        context: *mut GtkPrintContext,
16897    ) -> *mut pango::PangoLayout;
16898    pub fn gtk_print_context_get_cairo_context(
16899        context: *mut GtkPrintContext,
16900    ) -> *mut cairo::cairo_t;
16901    pub fn gtk_print_context_get_dpi_x(context: *mut GtkPrintContext) -> c_double;
16902    pub fn gtk_print_context_get_dpi_y(context: *mut GtkPrintContext) -> c_double;
16903    pub fn gtk_print_context_get_hard_margins(
16904        context: *mut GtkPrintContext,
16905        top: *mut c_double,
16906        bottom: *mut c_double,
16907        left: *mut c_double,
16908        right: *mut c_double,
16909    ) -> gboolean;
16910    pub fn gtk_print_context_get_height(context: *mut GtkPrintContext) -> c_double;
16911    pub fn gtk_print_context_get_page_setup(context: *mut GtkPrintContext) -> *mut GtkPageSetup;
16912    pub fn gtk_print_context_get_pango_fontmap(
16913        context: *mut GtkPrintContext,
16914    ) -> *mut pango::PangoFontMap;
16915    pub fn gtk_print_context_get_width(context: *mut GtkPrintContext) -> c_double;
16916    pub fn gtk_print_context_set_cairo_context(
16917        context: *mut GtkPrintContext,
16918        cr: *mut cairo::cairo_t,
16919        dpi_x: c_double,
16920        dpi_y: c_double,
16921    );
16922
16923    //=========================================================================
16924    // GtkPrintDialog
16925    //=========================================================================
16926    #[cfg(feature = "v4_14")]
16927    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16928    pub fn gtk_print_dialog_get_type() -> GType;
16929    #[cfg(feature = "v4_14")]
16930    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16931    pub fn gtk_print_dialog_new() -> *mut GtkPrintDialog;
16932    #[cfg(feature = "v4_14")]
16933    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16934    pub fn gtk_print_dialog_get_accept_label(self_: *mut GtkPrintDialog) -> *const c_char;
16935    #[cfg(feature = "v4_14")]
16936    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16937    pub fn gtk_print_dialog_get_modal(self_: *mut GtkPrintDialog) -> gboolean;
16938    #[cfg(feature = "v4_14")]
16939    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16940    pub fn gtk_print_dialog_get_page_setup(self_: *mut GtkPrintDialog) -> *mut GtkPageSetup;
16941    #[cfg(feature = "v4_14")]
16942    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16943    pub fn gtk_print_dialog_get_print_settings(self_: *mut GtkPrintDialog)
16944        -> *mut GtkPrintSettings;
16945    #[cfg(feature = "v4_14")]
16946    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16947    pub fn gtk_print_dialog_get_title(self_: *mut GtkPrintDialog) -> *const c_char;
16948    #[cfg(feature = "v4_14")]
16949    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16950    pub fn gtk_print_dialog_print(
16951        self_: *mut GtkPrintDialog,
16952        parent: *mut GtkWindow,
16953        setup: *mut GtkPrintSetup,
16954        cancellable: *mut gio::GCancellable,
16955        callback: gio::GAsyncReadyCallback,
16956        user_data: gpointer,
16957    );
16958    #[cfg(feature = "v4_14")]
16959    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16960    pub fn gtk_print_dialog_print_file(
16961        self_: *mut GtkPrintDialog,
16962        parent: *mut GtkWindow,
16963        setup: *mut GtkPrintSetup,
16964        file: *mut gio::GFile,
16965        cancellable: *mut gio::GCancellable,
16966        callback: gio::GAsyncReadyCallback,
16967        user_data: gpointer,
16968    );
16969    #[cfg(feature = "v4_14")]
16970    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16971    pub fn gtk_print_dialog_print_file_finish(
16972        self_: *mut GtkPrintDialog,
16973        result: *mut gio::GAsyncResult,
16974        error: *mut *mut glib::GError,
16975    ) -> gboolean;
16976    #[cfg(feature = "v4_14")]
16977    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16978    pub fn gtk_print_dialog_print_finish(
16979        self_: *mut GtkPrintDialog,
16980        result: *mut gio::GAsyncResult,
16981        error: *mut *mut glib::GError,
16982    ) -> *mut gio::GOutputStream;
16983    #[cfg(feature = "v4_14")]
16984    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16985    pub fn gtk_print_dialog_set_accept_label(
16986        self_: *mut GtkPrintDialog,
16987        accept_label: *const c_char,
16988    );
16989    #[cfg(feature = "v4_14")]
16990    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16991    pub fn gtk_print_dialog_set_modal(self_: *mut GtkPrintDialog, modal: gboolean);
16992    #[cfg(feature = "v4_14")]
16993    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16994    pub fn gtk_print_dialog_set_page_setup(
16995        self_: *mut GtkPrintDialog,
16996        page_setup: *mut GtkPageSetup,
16997    );
16998    #[cfg(feature = "v4_14")]
16999    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17000    pub fn gtk_print_dialog_set_print_settings(
17001        self_: *mut GtkPrintDialog,
17002        print_settings: *mut GtkPrintSettings,
17003    );
17004    #[cfg(feature = "v4_14")]
17005    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17006    pub fn gtk_print_dialog_set_title(self_: *mut GtkPrintDialog, title: *const c_char);
17007    #[cfg(feature = "v4_14")]
17008    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17009    pub fn gtk_print_dialog_setup(
17010        self_: *mut GtkPrintDialog,
17011        parent: *mut GtkWindow,
17012        cancellable: *mut gio::GCancellable,
17013        callback: gio::GAsyncReadyCallback,
17014        user_data: gpointer,
17015    );
17016    #[cfg(feature = "v4_14")]
17017    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17018    pub fn gtk_print_dialog_setup_finish(
17019        self_: *mut GtkPrintDialog,
17020        result: *mut gio::GAsyncResult,
17021        error: *mut *mut glib::GError,
17022    ) -> *mut GtkPrintSetup;
17023
17024    //=========================================================================
17025    // GtkPrintJob
17026    //=========================================================================
17027    pub fn gtk_print_job_get_type() -> GType;
17028    pub fn gtk_print_job_new(
17029        title: *const c_char,
17030        printer: *mut GtkPrinter,
17031        settings: *mut GtkPrintSettings,
17032        page_setup: *mut GtkPageSetup,
17033    ) -> *mut GtkPrintJob;
17034    pub fn gtk_print_job_get_collate(job: *mut GtkPrintJob) -> gboolean;
17035    pub fn gtk_print_job_get_n_up(job: *mut GtkPrintJob) -> c_uint;
17036    pub fn gtk_print_job_get_n_up_layout(job: *mut GtkPrintJob) -> GtkNumberUpLayout;
17037    pub fn gtk_print_job_get_num_copies(job: *mut GtkPrintJob) -> c_int;
17038    pub fn gtk_print_job_get_page_ranges(
17039        job: *mut GtkPrintJob,
17040        n_ranges: *mut c_int,
17041    ) -> *mut GtkPageRange;
17042    pub fn gtk_print_job_get_page_set(job: *mut GtkPrintJob) -> GtkPageSet;
17043    pub fn gtk_print_job_get_pages(job: *mut GtkPrintJob) -> GtkPrintPages;
17044    pub fn gtk_print_job_get_printer(job: *mut GtkPrintJob) -> *mut GtkPrinter;
17045    pub fn gtk_print_job_get_reverse(job: *mut GtkPrintJob) -> gboolean;
17046    pub fn gtk_print_job_get_rotate(job: *mut GtkPrintJob) -> gboolean;
17047    pub fn gtk_print_job_get_scale(job: *mut GtkPrintJob) -> c_double;
17048    pub fn gtk_print_job_get_settings(job: *mut GtkPrintJob) -> *mut GtkPrintSettings;
17049    pub fn gtk_print_job_get_status(job: *mut GtkPrintJob) -> GtkPrintStatus;
17050    pub fn gtk_print_job_get_surface(
17051        job: *mut GtkPrintJob,
17052        error: *mut *mut glib::GError,
17053    ) -> *mut cairo::cairo_surface_t;
17054    pub fn gtk_print_job_get_title(job: *mut GtkPrintJob) -> *const c_char;
17055    pub fn gtk_print_job_get_track_print_status(job: *mut GtkPrintJob) -> gboolean;
17056    pub fn gtk_print_job_send(
17057        job: *mut GtkPrintJob,
17058        callback: GtkPrintJobCompleteFunc,
17059        user_data: gpointer,
17060        dnotify: glib::GDestroyNotify,
17061    );
17062    pub fn gtk_print_job_set_collate(job: *mut GtkPrintJob, collate: gboolean);
17063    pub fn gtk_print_job_set_n_up(job: *mut GtkPrintJob, n_up: c_uint);
17064    pub fn gtk_print_job_set_n_up_layout(job: *mut GtkPrintJob, layout: GtkNumberUpLayout);
17065    pub fn gtk_print_job_set_num_copies(job: *mut GtkPrintJob, num_copies: c_int);
17066    pub fn gtk_print_job_set_page_ranges(
17067        job: *mut GtkPrintJob,
17068        ranges: *mut GtkPageRange,
17069        n_ranges: c_int,
17070    );
17071    pub fn gtk_print_job_set_page_set(job: *mut GtkPrintJob, page_set: GtkPageSet);
17072    pub fn gtk_print_job_set_pages(job: *mut GtkPrintJob, pages: GtkPrintPages);
17073    pub fn gtk_print_job_set_reverse(job: *mut GtkPrintJob, reverse: gboolean);
17074    pub fn gtk_print_job_set_rotate(job: *mut GtkPrintJob, rotate: gboolean);
17075    pub fn gtk_print_job_set_scale(job: *mut GtkPrintJob, scale: c_double);
17076    pub fn gtk_print_job_set_source_fd(
17077        job: *mut GtkPrintJob,
17078        fd: c_int,
17079        error: *mut *mut glib::GError,
17080    ) -> gboolean;
17081    pub fn gtk_print_job_set_source_file(
17082        job: *mut GtkPrintJob,
17083        filename: *const c_char,
17084        error: *mut *mut glib::GError,
17085    ) -> gboolean;
17086    pub fn gtk_print_job_set_track_print_status(job: *mut GtkPrintJob, track_status: gboolean);
17087
17088    //=========================================================================
17089    // GtkPrintOperation
17090    //=========================================================================
17091    pub fn gtk_print_operation_get_type() -> GType;
17092    pub fn gtk_print_operation_new() -> *mut GtkPrintOperation;
17093    pub fn gtk_print_operation_cancel(op: *mut GtkPrintOperation);
17094    pub fn gtk_print_operation_draw_page_finish(op: *mut GtkPrintOperation);
17095    pub fn gtk_print_operation_get_default_page_setup(
17096        op: *mut GtkPrintOperation,
17097    ) -> *mut GtkPageSetup;
17098    pub fn gtk_print_operation_get_embed_page_setup(op: *mut GtkPrintOperation) -> gboolean;
17099    pub fn gtk_print_operation_get_error(op: *mut GtkPrintOperation, error: *mut *mut glib::GError);
17100    pub fn gtk_print_operation_get_has_selection(op: *mut GtkPrintOperation) -> gboolean;
17101    pub fn gtk_print_operation_get_n_pages_to_print(op: *mut GtkPrintOperation) -> c_int;
17102    pub fn gtk_print_operation_get_print_settings(
17103        op: *mut GtkPrintOperation,
17104    ) -> *mut GtkPrintSettings;
17105    pub fn gtk_print_operation_get_status(op: *mut GtkPrintOperation) -> GtkPrintStatus;
17106    pub fn gtk_print_operation_get_status_string(op: *mut GtkPrintOperation) -> *const c_char;
17107    pub fn gtk_print_operation_get_support_selection(op: *mut GtkPrintOperation) -> gboolean;
17108    pub fn gtk_print_operation_is_finished(op: *mut GtkPrintOperation) -> gboolean;
17109    pub fn gtk_print_operation_run(
17110        op: *mut GtkPrintOperation,
17111        action: GtkPrintOperationAction,
17112        parent: *mut GtkWindow,
17113        error: *mut *mut glib::GError,
17114    ) -> GtkPrintOperationResult;
17115    pub fn gtk_print_operation_set_allow_async(op: *mut GtkPrintOperation, allow_async: gboolean);
17116    pub fn gtk_print_operation_set_current_page(op: *mut GtkPrintOperation, current_page: c_int);
17117    pub fn gtk_print_operation_set_custom_tab_label(
17118        op: *mut GtkPrintOperation,
17119        label: *const c_char,
17120    );
17121    pub fn gtk_print_operation_set_default_page_setup(
17122        op: *mut GtkPrintOperation,
17123        default_page_setup: *mut GtkPageSetup,
17124    );
17125    pub fn gtk_print_operation_set_defer_drawing(op: *mut GtkPrintOperation);
17126    pub fn gtk_print_operation_set_embed_page_setup(op: *mut GtkPrintOperation, embed: gboolean);
17127    pub fn gtk_print_operation_set_export_filename(
17128        op: *mut GtkPrintOperation,
17129        filename: *const c_char,
17130    );
17131    pub fn gtk_print_operation_set_has_selection(
17132        op: *mut GtkPrintOperation,
17133        has_selection: gboolean,
17134    );
17135    pub fn gtk_print_operation_set_job_name(op: *mut GtkPrintOperation, job_name: *const c_char);
17136    pub fn gtk_print_operation_set_n_pages(op: *mut GtkPrintOperation, n_pages: c_int);
17137    pub fn gtk_print_operation_set_print_settings(
17138        op: *mut GtkPrintOperation,
17139        print_settings: *mut GtkPrintSettings,
17140    );
17141    pub fn gtk_print_operation_set_show_progress(
17142        op: *mut GtkPrintOperation,
17143        show_progress: gboolean,
17144    );
17145    pub fn gtk_print_operation_set_support_selection(
17146        op: *mut GtkPrintOperation,
17147        support_selection: gboolean,
17148    );
17149    pub fn gtk_print_operation_set_track_print_status(
17150        op: *mut GtkPrintOperation,
17151        track_status: gboolean,
17152    );
17153    pub fn gtk_print_operation_set_unit(op: *mut GtkPrintOperation, unit: GtkUnit);
17154    pub fn gtk_print_operation_set_use_full_page(op: *mut GtkPrintOperation, full_page: gboolean);
17155
17156    //=========================================================================
17157    // GtkPrintSettings
17158    //=========================================================================
17159    pub fn gtk_print_settings_get_type() -> GType;
17160    pub fn gtk_print_settings_new() -> *mut GtkPrintSettings;
17161    pub fn gtk_print_settings_new_from_file(
17162        file_name: *const c_char,
17163        error: *mut *mut glib::GError,
17164    ) -> *mut GtkPrintSettings;
17165    pub fn gtk_print_settings_new_from_gvariant(
17166        variant: *mut glib::GVariant,
17167    ) -> *mut GtkPrintSettings;
17168    pub fn gtk_print_settings_new_from_key_file(
17169        key_file: *mut glib::GKeyFile,
17170        group_name: *const c_char,
17171        error: *mut *mut glib::GError,
17172    ) -> *mut GtkPrintSettings;
17173    pub fn gtk_print_settings_copy(other: *mut GtkPrintSettings) -> *mut GtkPrintSettings;
17174    pub fn gtk_print_settings_foreach(
17175        settings: *mut GtkPrintSettings,
17176        func: GtkPrintSettingsFunc,
17177        user_data: gpointer,
17178    );
17179    pub fn gtk_print_settings_get(
17180        settings: *mut GtkPrintSettings,
17181        key: *const c_char,
17182    ) -> *const c_char;
17183    pub fn gtk_print_settings_get_bool(
17184        settings: *mut GtkPrintSettings,
17185        key: *const c_char,
17186    ) -> gboolean;
17187    pub fn gtk_print_settings_get_collate(settings: *mut GtkPrintSettings) -> gboolean;
17188    pub fn gtk_print_settings_get_default_source(settings: *mut GtkPrintSettings) -> *const c_char;
17189    pub fn gtk_print_settings_get_dither(settings: *mut GtkPrintSettings) -> *const c_char;
17190    pub fn gtk_print_settings_get_double(
17191        settings: *mut GtkPrintSettings,
17192        key: *const c_char,
17193    ) -> c_double;
17194    pub fn gtk_print_settings_get_double_with_default(
17195        settings: *mut GtkPrintSettings,
17196        key: *const c_char,
17197        def: c_double,
17198    ) -> c_double;
17199    pub fn gtk_print_settings_get_duplex(settings: *mut GtkPrintSettings) -> GtkPrintDuplex;
17200    pub fn gtk_print_settings_get_finishings(settings: *mut GtkPrintSettings) -> *const c_char;
17201    pub fn gtk_print_settings_get_int(settings: *mut GtkPrintSettings, key: *const c_char)
17202        -> c_int;
17203    pub fn gtk_print_settings_get_int_with_default(
17204        settings: *mut GtkPrintSettings,
17205        key: *const c_char,
17206        def: c_int,
17207    ) -> c_int;
17208    pub fn gtk_print_settings_get_length(
17209        settings: *mut GtkPrintSettings,
17210        key: *const c_char,
17211        unit: GtkUnit,
17212    ) -> c_double;
17213    pub fn gtk_print_settings_get_media_type(settings: *mut GtkPrintSettings) -> *const c_char;
17214    pub fn gtk_print_settings_get_n_copies(settings: *mut GtkPrintSettings) -> c_int;
17215    pub fn gtk_print_settings_get_number_up(settings: *mut GtkPrintSettings) -> c_int;
17216    pub fn gtk_print_settings_get_number_up_layout(
17217        settings: *mut GtkPrintSettings,
17218    ) -> GtkNumberUpLayout;
17219    pub fn gtk_print_settings_get_orientation(
17220        settings: *mut GtkPrintSettings,
17221    ) -> GtkPageOrientation;
17222    pub fn gtk_print_settings_get_output_bin(settings: *mut GtkPrintSettings) -> *const c_char;
17223    pub fn gtk_print_settings_get_page_ranges(
17224        settings: *mut GtkPrintSettings,
17225        num_ranges: *mut c_int,
17226    ) -> *mut GtkPageRange;
17227    pub fn gtk_print_settings_get_page_set(settings: *mut GtkPrintSettings) -> GtkPageSet;
17228    pub fn gtk_print_settings_get_paper_height(
17229        settings: *mut GtkPrintSettings,
17230        unit: GtkUnit,
17231    ) -> c_double;
17232    pub fn gtk_print_settings_get_paper_size(settings: *mut GtkPrintSettings) -> *mut GtkPaperSize;
17233    pub fn gtk_print_settings_get_paper_width(
17234        settings: *mut GtkPrintSettings,
17235        unit: GtkUnit,
17236    ) -> c_double;
17237    pub fn gtk_print_settings_get_print_pages(settings: *mut GtkPrintSettings) -> GtkPrintPages;
17238    pub fn gtk_print_settings_get_printer(settings: *mut GtkPrintSettings) -> *const c_char;
17239    pub fn gtk_print_settings_get_printer_lpi(settings: *mut GtkPrintSettings) -> c_double;
17240    pub fn gtk_print_settings_get_quality(settings: *mut GtkPrintSettings) -> GtkPrintQuality;
17241    pub fn gtk_print_settings_get_resolution(settings: *mut GtkPrintSettings) -> c_int;
17242    pub fn gtk_print_settings_get_resolution_x(settings: *mut GtkPrintSettings) -> c_int;
17243    pub fn gtk_print_settings_get_resolution_y(settings: *mut GtkPrintSettings) -> c_int;
17244    pub fn gtk_print_settings_get_reverse(settings: *mut GtkPrintSettings) -> gboolean;
17245    pub fn gtk_print_settings_get_scale(settings: *mut GtkPrintSettings) -> c_double;
17246    pub fn gtk_print_settings_get_use_color(settings: *mut GtkPrintSettings) -> gboolean;
17247    pub fn gtk_print_settings_has_key(
17248        settings: *mut GtkPrintSettings,
17249        key: *const c_char,
17250    ) -> gboolean;
17251    pub fn gtk_print_settings_load_file(
17252        settings: *mut GtkPrintSettings,
17253        file_name: *const c_char,
17254        error: *mut *mut glib::GError,
17255    ) -> gboolean;
17256    pub fn gtk_print_settings_load_key_file(
17257        settings: *mut GtkPrintSettings,
17258        key_file: *mut glib::GKeyFile,
17259        group_name: *const c_char,
17260        error: *mut *mut glib::GError,
17261    ) -> gboolean;
17262    pub fn gtk_print_settings_set(
17263        settings: *mut GtkPrintSettings,
17264        key: *const c_char,
17265        value: *const c_char,
17266    );
17267    pub fn gtk_print_settings_set_bool(
17268        settings: *mut GtkPrintSettings,
17269        key: *const c_char,
17270        value: gboolean,
17271    );
17272    pub fn gtk_print_settings_set_collate(settings: *mut GtkPrintSettings, collate: gboolean);
17273    pub fn gtk_print_settings_set_default_source(
17274        settings: *mut GtkPrintSettings,
17275        default_source: *const c_char,
17276    );
17277    pub fn gtk_print_settings_set_dither(settings: *mut GtkPrintSettings, dither: *const c_char);
17278    pub fn gtk_print_settings_set_double(
17279        settings: *mut GtkPrintSettings,
17280        key: *const c_char,
17281        value: c_double,
17282    );
17283    pub fn gtk_print_settings_set_duplex(settings: *mut GtkPrintSettings, duplex: GtkPrintDuplex);
17284    pub fn gtk_print_settings_set_finishings(
17285        settings: *mut GtkPrintSettings,
17286        finishings: *const c_char,
17287    );
17288    pub fn gtk_print_settings_set_int(
17289        settings: *mut GtkPrintSettings,
17290        key: *const c_char,
17291        value: c_int,
17292    );
17293    pub fn gtk_print_settings_set_length(
17294        settings: *mut GtkPrintSettings,
17295        key: *const c_char,
17296        value: c_double,
17297        unit: GtkUnit,
17298    );
17299    pub fn gtk_print_settings_set_media_type(
17300        settings: *mut GtkPrintSettings,
17301        media_type: *const c_char,
17302    );
17303    pub fn gtk_print_settings_set_n_copies(settings: *mut GtkPrintSettings, num_copies: c_int);
17304    pub fn gtk_print_settings_set_number_up(settings: *mut GtkPrintSettings, number_up: c_int);
17305    pub fn gtk_print_settings_set_number_up_layout(
17306        settings: *mut GtkPrintSettings,
17307        number_up_layout: GtkNumberUpLayout,
17308    );
17309    pub fn gtk_print_settings_set_orientation(
17310        settings: *mut GtkPrintSettings,
17311        orientation: GtkPageOrientation,
17312    );
17313    pub fn gtk_print_settings_set_output_bin(
17314        settings: *mut GtkPrintSettings,
17315        output_bin: *const c_char,
17316    );
17317    pub fn gtk_print_settings_set_page_ranges(
17318        settings: *mut GtkPrintSettings,
17319        page_ranges: *mut GtkPageRange,
17320        num_ranges: c_int,
17321    );
17322    pub fn gtk_print_settings_set_page_set(settings: *mut GtkPrintSettings, page_set: GtkPageSet);
17323    pub fn gtk_print_settings_set_paper_height(
17324        settings: *mut GtkPrintSettings,
17325        height: c_double,
17326        unit: GtkUnit,
17327    );
17328    pub fn gtk_print_settings_set_paper_size(
17329        settings: *mut GtkPrintSettings,
17330        paper_size: *mut GtkPaperSize,
17331    );
17332    pub fn gtk_print_settings_set_paper_width(
17333        settings: *mut GtkPrintSettings,
17334        width: c_double,
17335        unit: GtkUnit,
17336    );
17337    pub fn gtk_print_settings_set_print_pages(
17338        settings: *mut GtkPrintSettings,
17339        pages: GtkPrintPages,
17340    );
17341    pub fn gtk_print_settings_set_printer(settings: *mut GtkPrintSettings, printer: *const c_char);
17342    pub fn gtk_print_settings_set_printer_lpi(settings: *mut GtkPrintSettings, lpi: c_double);
17343    pub fn gtk_print_settings_set_quality(
17344        settings: *mut GtkPrintSettings,
17345        quality: GtkPrintQuality,
17346    );
17347    pub fn gtk_print_settings_set_resolution(settings: *mut GtkPrintSettings, resolution: c_int);
17348    pub fn gtk_print_settings_set_resolution_xy(
17349        settings: *mut GtkPrintSettings,
17350        resolution_x: c_int,
17351        resolution_y: c_int,
17352    );
17353    pub fn gtk_print_settings_set_reverse(settings: *mut GtkPrintSettings, reverse: gboolean);
17354    pub fn gtk_print_settings_set_scale(settings: *mut GtkPrintSettings, scale: c_double);
17355    pub fn gtk_print_settings_set_use_color(settings: *mut GtkPrintSettings, use_color: gboolean);
17356    pub fn gtk_print_settings_to_file(
17357        settings: *mut GtkPrintSettings,
17358        file_name: *const c_char,
17359        error: *mut *mut glib::GError,
17360    ) -> gboolean;
17361    pub fn gtk_print_settings_to_gvariant(settings: *mut GtkPrintSettings) -> *mut glib::GVariant;
17362    pub fn gtk_print_settings_to_key_file(
17363        settings: *mut GtkPrintSettings,
17364        key_file: *mut glib::GKeyFile,
17365        group_name: *const c_char,
17366    );
17367    pub fn gtk_print_settings_unset(settings: *mut GtkPrintSettings, key: *const c_char);
17368
17369    //=========================================================================
17370    // GtkPrintUnixDialog
17371    //=========================================================================
17372    pub fn gtk_print_unix_dialog_get_type() -> GType;
17373    pub fn gtk_print_unix_dialog_new(
17374        title: *const c_char,
17375        parent: *mut GtkWindow,
17376    ) -> *mut GtkWidget;
17377    pub fn gtk_print_unix_dialog_add_custom_tab(
17378        dialog: *mut GtkPrintUnixDialog,
17379        child: *mut GtkWidget,
17380        tab_label: *mut GtkWidget,
17381    );
17382    pub fn gtk_print_unix_dialog_get_current_page(dialog: *mut GtkPrintUnixDialog) -> c_int;
17383    pub fn gtk_print_unix_dialog_get_embed_page_setup(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17384    pub fn gtk_print_unix_dialog_get_has_selection(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17385    pub fn gtk_print_unix_dialog_get_manual_capabilities(
17386        dialog: *mut GtkPrintUnixDialog,
17387    ) -> GtkPrintCapabilities;
17388    pub fn gtk_print_unix_dialog_get_page_setup(
17389        dialog: *mut GtkPrintUnixDialog,
17390    ) -> *mut GtkPageSetup;
17391    pub fn gtk_print_unix_dialog_get_page_setup_set(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17392    pub fn gtk_print_unix_dialog_get_selected_printer(
17393        dialog: *mut GtkPrintUnixDialog,
17394    ) -> *mut GtkPrinter;
17395    pub fn gtk_print_unix_dialog_get_settings(
17396        dialog: *mut GtkPrintUnixDialog,
17397    ) -> *mut GtkPrintSettings;
17398    pub fn gtk_print_unix_dialog_get_support_selection(dialog: *mut GtkPrintUnixDialog)
17399        -> gboolean;
17400    pub fn gtk_print_unix_dialog_set_current_page(
17401        dialog: *mut GtkPrintUnixDialog,
17402        current_page: c_int,
17403    );
17404    pub fn gtk_print_unix_dialog_set_embed_page_setup(
17405        dialog: *mut GtkPrintUnixDialog,
17406        embed: gboolean,
17407    );
17408    pub fn gtk_print_unix_dialog_set_has_selection(
17409        dialog: *mut GtkPrintUnixDialog,
17410        has_selection: gboolean,
17411    );
17412    pub fn gtk_print_unix_dialog_set_manual_capabilities(
17413        dialog: *mut GtkPrintUnixDialog,
17414        capabilities: GtkPrintCapabilities,
17415    );
17416    pub fn gtk_print_unix_dialog_set_page_setup(
17417        dialog: *mut GtkPrintUnixDialog,
17418        page_setup: *mut GtkPageSetup,
17419    );
17420    pub fn gtk_print_unix_dialog_set_settings(
17421        dialog: *mut GtkPrintUnixDialog,
17422        settings: *mut GtkPrintSettings,
17423    );
17424    pub fn gtk_print_unix_dialog_set_support_selection(
17425        dialog: *mut GtkPrintUnixDialog,
17426        support_selection: gboolean,
17427    );
17428
17429    //=========================================================================
17430    // GtkPrinter
17431    //=========================================================================
17432    pub fn gtk_printer_get_type() -> GType;
17433    pub fn gtk_printer_new(
17434        name: *const c_char,
17435        backend: *mut GtkPrintBackend,
17436        virtual_: gboolean,
17437    ) -> *mut GtkPrinter;
17438    pub fn gtk_printer_accepts_pdf(printer: *mut GtkPrinter) -> gboolean;
17439    pub fn gtk_printer_accepts_ps(printer: *mut GtkPrinter) -> gboolean;
17440    pub fn gtk_printer_compare(a: *mut GtkPrinter, b: *mut GtkPrinter) -> c_int;
17441    pub fn gtk_printer_get_backend(printer: *mut GtkPrinter) -> *mut GtkPrintBackend;
17442    pub fn gtk_printer_get_capabilities(printer: *mut GtkPrinter) -> GtkPrintCapabilities;
17443    pub fn gtk_printer_get_default_page_size(printer: *mut GtkPrinter) -> *mut GtkPageSetup;
17444    pub fn gtk_printer_get_description(printer: *mut GtkPrinter) -> *const c_char;
17445    pub fn gtk_printer_get_hard_margins(
17446        printer: *mut GtkPrinter,
17447        top: *mut c_double,
17448        bottom: *mut c_double,
17449        left: *mut c_double,
17450        right: *mut c_double,
17451    ) -> gboolean;
17452    pub fn gtk_printer_get_hard_margins_for_paper_size(
17453        printer: *mut GtkPrinter,
17454        paper_size: *mut GtkPaperSize,
17455        top: *mut c_double,
17456        bottom: *mut c_double,
17457        left: *mut c_double,
17458        right: *mut c_double,
17459    ) -> gboolean;
17460    pub fn gtk_printer_get_icon_name(printer: *mut GtkPrinter) -> *const c_char;
17461    pub fn gtk_printer_get_job_count(printer: *mut GtkPrinter) -> c_int;
17462    pub fn gtk_printer_get_location(printer: *mut GtkPrinter) -> *const c_char;
17463    pub fn gtk_printer_get_name(printer: *mut GtkPrinter) -> *const c_char;
17464    pub fn gtk_printer_get_state_message(printer: *mut GtkPrinter) -> *const c_char;
17465    pub fn gtk_printer_has_details(printer: *mut GtkPrinter) -> gboolean;
17466    pub fn gtk_printer_is_accepting_jobs(printer: *mut GtkPrinter) -> gboolean;
17467    pub fn gtk_printer_is_active(printer: *mut GtkPrinter) -> gboolean;
17468    pub fn gtk_printer_is_default(printer: *mut GtkPrinter) -> gboolean;
17469    pub fn gtk_printer_is_paused(printer: *mut GtkPrinter) -> gboolean;
17470    pub fn gtk_printer_is_virtual(printer: *mut GtkPrinter) -> gboolean;
17471    pub fn gtk_printer_list_papers(printer: *mut GtkPrinter) -> *mut glib::GList;
17472    pub fn gtk_printer_request_details(printer: *mut GtkPrinter);
17473
17474    //=========================================================================
17475    // GtkProgressBar
17476    //=========================================================================
17477    pub fn gtk_progress_bar_get_type() -> GType;
17478    pub fn gtk_progress_bar_new() -> *mut GtkWidget;
17479    pub fn gtk_progress_bar_get_ellipsize(pbar: *mut GtkProgressBar) -> pango::PangoEllipsizeMode;
17480    pub fn gtk_progress_bar_get_fraction(pbar: *mut GtkProgressBar) -> c_double;
17481    pub fn gtk_progress_bar_get_inverted(pbar: *mut GtkProgressBar) -> gboolean;
17482    pub fn gtk_progress_bar_get_pulse_step(pbar: *mut GtkProgressBar) -> c_double;
17483    pub fn gtk_progress_bar_get_show_text(pbar: *mut GtkProgressBar) -> gboolean;
17484    pub fn gtk_progress_bar_get_text(pbar: *mut GtkProgressBar) -> *const c_char;
17485    pub fn gtk_progress_bar_pulse(pbar: *mut GtkProgressBar);
17486    pub fn gtk_progress_bar_set_ellipsize(
17487        pbar: *mut GtkProgressBar,
17488        mode: pango::PangoEllipsizeMode,
17489    );
17490    pub fn gtk_progress_bar_set_fraction(pbar: *mut GtkProgressBar, fraction: c_double);
17491    pub fn gtk_progress_bar_set_inverted(pbar: *mut GtkProgressBar, inverted: gboolean);
17492    pub fn gtk_progress_bar_set_pulse_step(pbar: *mut GtkProgressBar, fraction: c_double);
17493    pub fn gtk_progress_bar_set_show_text(pbar: *mut GtkProgressBar, show_text: gboolean);
17494    pub fn gtk_progress_bar_set_text(pbar: *mut GtkProgressBar, text: *const c_char);
17495
17496    //=========================================================================
17497    // GtkPropertyExpression
17498    //=========================================================================
17499    pub fn gtk_property_expression_get_type() -> GType;
17500    pub fn gtk_property_expression_new(
17501        this_type: GType,
17502        expression: *mut GtkExpression,
17503        property_name: *const c_char,
17504    ) -> *mut GtkPropertyExpression;
17505    pub fn gtk_property_expression_new_for_pspec(
17506        expression: *mut GtkExpression,
17507        pspec: *mut gobject::GParamSpec,
17508    ) -> *mut GtkPropertyExpression;
17509    pub fn gtk_property_expression_get_expression(
17510        expression: *mut GtkPropertyExpression,
17511    ) -> *mut GtkExpression;
17512    pub fn gtk_property_expression_get_pspec(
17513        expression: *mut GtkPropertyExpression,
17514    ) -> *mut gobject::GParamSpec;
17515
17516    //=========================================================================
17517    // GtkRange
17518    //=========================================================================
17519    pub fn gtk_range_get_type() -> GType;
17520    pub fn gtk_range_get_adjustment(range: *mut GtkRange) -> *mut GtkAdjustment;
17521    pub fn gtk_range_get_fill_level(range: *mut GtkRange) -> c_double;
17522    pub fn gtk_range_get_flippable(range: *mut GtkRange) -> gboolean;
17523    pub fn gtk_range_get_inverted(range: *mut GtkRange) -> gboolean;
17524    pub fn gtk_range_get_range_rect(range: *mut GtkRange, range_rect: *mut gdk::GdkRectangle);
17525    pub fn gtk_range_get_restrict_to_fill_level(range: *mut GtkRange) -> gboolean;
17526    pub fn gtk_range_get_round_digits(range: *mut GtkRange) -> c_int;
17527    pub fn gtk_range_get_show_fill_level(range: *mut GtkRange) -> gboolean;
17528    pub fn gtk_range_get_slider_range(
17529        range: *mut GtkRange,
17530        slider_start: *mut c_int,
17531        slider_end: *mut c_int,
17532    );
17533    pub fn gtk_range_get_slider_size_fixed(range: *mut GtkRange) -> gboolean;
17534    pub fn gtk_range_get_value(range: *mut GtkRange) -> c_double;
17535    pub fn gtk_range_set_adjustment(range: *mut GtkRange, adjustment: *mut GtkAdjustment);
17536    pub fn gtk_range_set_fill_level(range: *mut GtkRange, fill_level: c_double);
17537    pub fn gtk_range_set_flippable(range: *mut GtkRange, flippable: gboolean);
17538    pub fn gtk_range_set_increments(range: *mut GtkRange, step: c_double, page: c_double);
17539    pub fn gtk_range_set_inverted(range: *mut GtkRange, setting: gboolean);
17540    pub fn gtk_range_set_range(range: *mut GtkRange, min: c_double, max: c_double);
17541    pub fn gtk_range_set_restrict_to_fill_level(
17542        range: *mut GtkRange,
17543        restrict_to_fill_level: gboolean,
17544    );
17545    pub fn gtk_range_set_round_digits(range: *mut GtkRange, round_digits: c_int);
17546    pub fn gtk_range_set_show_fill_level(range: *mut GtkRange, show_fill_level: gboolean);
17547    pub fn gtk_range_set_slider_size_fixed(range: *mut GtkRange, size_fixed: gboolean);
17548    pub fn gtk_range_set_value(range: *mut GtkRange, value: c_double);
17549
17550    //=========================================================================
17551    // GtkRecentManager
17552    //=========================================================================
17553    pub fn gtk_recent_manager_get_type() -> GType;
17554    pub fn gtk_recent_manager_new() -> *mut GtkRecentManager;
17555    pub fn gtk_recent_manager_get_default() -> *mut GtkRecentManager;
17556    pub fn gtk_recent_manager_add_full(
17557        manager: *mut GtkRecentManager,
17558        uri: *const c_char,
17559        recent_data: *const GtkRecentData,
17560    ) -> gboolean;
17561    pub fn gtk_recent_manager_add_item(
17562        manager: *mut GtkRecentManager,
17563        uri: *const c_char,
17564    ) -> gboolean;
17565    pub fn gtk_recent_manager_get_items(manager: *mut GtkRecentManager) -> *mut glib::GList;
17566    pub fn gtk_recent_manager_has_item(
17567        manager: *mut GtkRecentManager,
17568        uri: *const c_char,
17569    ) -> gboolean;
17570    pub fn gtk_recent_manager_lookup_item(
17571        manager: *mut GtkRecentManager,
17572        uri: *const c_char,
17573        error: *mut *mut glib::GError,
17574    ) -> *mut GtkRecentInfo;
17575    pub fn gtk_recent_manager_move_item(
17576        manager: *mut GtkRecentManager,
17577        uri: *const c_char,
17578        new_uri: *const c_char,
17579        error: *mut *mut glib::GError,
17580    ) -> gboolean;
17581    pub fn gtk_recent_manager_purge_items(
17582        manager: *mut GtkRecentManager,
17583        error: *mut *mut glib::GError,
17584    ) -> c_int;
17585    pub fn gtk_recent_manager_remove_item(
17586        manager: *mut GtkRecentManager,
17587        uri: *const c_char,
17588        error: *mut *mut glib::GError,
17589    ) -> gboolean;
17590
17591    //=========================================================================
17592    // GtkRevealer
17593    //=========================================================================
17594    pub fn gtk_revealer_get_type() -> GType;
17595    pub fn gtk_revealer_new() -> *mut GtkWidget;
17596    pub fn gtk_revealer_get_child(revealer: *mut GtkRevealer) -> *mut GtkWidget;
17597    pub fn gtk_revealer_get_child_revealed(revealer: *mut GtkRevealer) -> gboolean;
17598    pub fn gtk_revealer_get_reveal_child(revealer: *mut GtkRevealer) -> gboolean;
17599    pub fn gtk_revealer_get_transition_duration(revealer: *mut GtkRevealer) -> c_uint;
17600    pub fn gtk_revealer_get_transition_type(
17601        revealer: *mut GtkRevealer,
17602    ) -> GtkRevealerTransitionType;
17603    pub fn gtk_revealer_set_child(revealer: *mut GtkRevealer, child: *mut GtkWidget);
17604    pub fn gtk_revealer_set_reveal_child(revealer: *mut GtkRevealer, reveal_child: gboolean);
17605    pub fn gtk_revealer_set_transition_duration(revealer: *mut GtkRevealer, duration: c_uint);
17606    pub fn gtk_revealer_set_transition_type(
17607        revealer: *mut GtkRevealer,
17608        transition: GtkRevealerTransitionType,
17609    );
17610
17611    //=========================================================================
17612    // GtkScale
17613    //=========================================================================
17614    pub fn gtk_scale_get_type() -> GType;
17615    pub fn gtk_scale_new(
17616        orientation: GtkOrientation,
17617        adjustment: *mut GtkAdjustment,
17618    ) -> *mut GtkWidget;
17619    pub fn gtk_scale_new_with_range(
17620        orientation: GtkOrientation,
17621        min: c_double,
17622        max: c_double,
17623        step: c_double,
17624    ) -> *mut GtkWidget;
17625    pub fn gtk_scale_add_mark(
17626        scale: *mut GtkScale,
17627        value: c_double,
17628        position: GtkPositionType,
17629        markup: *const c_char,
17630    );
17631    pub fn gtk_scale_clear_marks(scale: *mut GtkScale);
17632    pub fn gtk_scale_get_digits(scale: *mut GtkScale) -> c_int;
17633    pub fn gtk_scale_get_draw_value(scale: *mut GtkScale) -> gboolean;
17634    pub fn gtk_scale_get_has_origin(scale: *mut GtkScale) -> gboolean;
17635    pub fn gtk_scale_get_layout(scale: *mut GtkScale) -> *mut pango::PangoLayout;
17636    pub fn gtk_scale_get_layout_offsets(scale: *mut GtkScale, x: *mut c_int, y: *mut c_int);
17637    pub fn gtk_scale_get_value_pos(scale: *mut GtkScale) -> GtkPositionType;
17638    pub fn gtk_scale_set_digits(scale: *mut GtkScale, digits: c_int);
17639    pub fn gtk_scale_set_draw_value(scale: *mut GtkScale, draw_value: gboolean);
17640    pub fn gtk_scale_set_format_value_func(
17641        scale: *mut GtkScale,
17642        func: GtkScaleFormatValueFunc,
17643        user_data: gpointer,
17644        destroy_notify: glib::GDestroyNotify,
17645    );
17646    pub fn gtk_scale_set_has_origin(scale: *mut GtkScale, has_origin: gboolean);
17647    pub fn gtk_scale_set_value_pos(scale: *mut GtkScale, pos: GtkPositionType);
17648
17649    //=========================================================================
17650    // GtkScaleButton
17651    //=========================================================================
17652    pub fn gtk_scale_button_get_type() -> GType;
17653    pub fn gtk_scale_button_new(
17654        min: c_double,
17655        max: c_double,
17656        step: c_double,
17657        icons: *mut *const c_char,
17658    ) -> *mut GtkWidget;
17659    #[cfg(feature = "v4_10")]
17660    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
17661    pub fn gtk_scale_button_get_active(button: *mut GtkScaleButton) -> gboolean;
17662    pub fn gtk_scale_button_get_adjustment(button: *mut GtkScaleButton) -> *mut GtkAdjustment;
17663    #[cfg(feature = "v4_14")]
17664    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17665    pub fn gtk_scale_button_get_has_frame(button: *mut GtkScaleButton) -> gboolean;
17666    pub fn gtk_scale_button_get_minus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
17667    pub fn gtk_scale_button_get_plus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
17668    pub fn gtk_scale_button_get_popup(button: *mut GtkScaleButton) -> *mut GtkWidget;
17669    pub fn gtk_scale_button_get_value(button: *mut GtkScaleButton) -> c_double;
17670    pub fn gtk_scale_button_set_adjustment(
17671        button: *mut GtkScaleButton,
17672        adjustment: *mut GtkAdjustment,
17673    );
17674    #[cfg(feature = "v4_14")]
17675    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17676    pub fn gtk_scale_button_set_has_frame(button: *mut GtkScaleButton, has_frame: gboolean);
17677    pub fn gtk_scale_button_set_icons(button: *mut GtkScaleButton, icons: *mut *const c_char);
17678    pub fn gtk_scale_button_set_value(button: *mut GtkScaleButton, value: c_double);
17679
17680    //=========================================================================
17681    // GtkScrollbar
17682    //=========================================================================
17683    pub fn gtk_scrollbar_get_type() -> GType;
17684    pub fn gtk_scrollbar_new(
17685        orientation: GtkOrientation,
17686        adjustment: *mut GtkAdjustment,
17687    ) -> *mut GtkWidget;
17688    pub fn gtk_scrollbar_get_adjustment(self_: *mut GtkScrollbar) -> *mut GtkAdjustment;
17689    pub fn gtk_scrollbar_set_adjustment(self_: *mut GtkScrollbar, adjustment: *mut GtkAdjustment);
17690
17691    //=========================================================================
17692    // GtkScrolledWindow
17693    //=========================================================================
17694    pub fn gtk_scrolled_window_get_type() -> GType;
17695    pub fn gtk_scrolled_window_new() -> *mut GtkWidget;
17696    pub fn gtk_scrolled_window_get_child(scrolled_window: *mut GtkScrolledWindow)
17697        -> *mut GtkWidget;
17698    pub fn gtk_scrolled_window_get_hadjustment(
17699        scrolled_window: *mut GtkScrolledWindow,
17700    ) -> *mut GtkAdjustment;
17701    pub fn gtk_scrolled_window_get_has_frame(scrolled_window: *mut GtkScrolledWindow) -> gboolean;
17702    pub fn gtk_scrolled_window_get_hscrollbar(
17703        scrolled_window: *mut GtkScrolledWindow,
17704    ) -> *mut GtkWidget;
17705    pub fn gtk_scrolled_window_get_kinetic_scrolling(
17706        scrolled_window: *mut GtkScrolledWindow,
17707    ) -> gboolean;
17708    pub fn gtk_scrolled_window_get_max_content_height(
17709        scrolled_window: *mut GtkScrolledWindow,
17710    ) -> c_int;
17711    pub fn gtk_scrolled_window_get_max_content_width(
17712        scrolled_window: *mut GtkScrolledWindow,
17713    ) -> c_int;
17714    pub fn gtk_scrolled_window_get_min_content_height(
17715        scrolled_window: *mut GtkScrolledWindow,
17716    ) -> c_int;
17717    pub fn gtk_scrolled_window_get_min_content_width(
17718        scrolled_window: *mut GtkScrolledWindow,
17719    ) -> c_int;
17720    pub fn gtk_scrolled_window_get_overlay_scrolling(
17721        scrolled_window: *mut GtkScrolledWindow,
17722    ) -> gboolean;
17723    pub fn gtk_scrolled_window_get_placement(
17724        scrolled_window: *mut GtkScrolledWindow,
17725    ) -> GtkCornerType;
17726    pub fn gtk_scrolled_window_get_policy(
17727        scrolled_window: *mut GtkScrolledWindow,
17728        hscrollbar_policy: *mut GtkPolicyType,
17729        vscrollbar_policy: *mut GtkPolicyType,
17730    );
17731    pub fn gtk_scrolled_window_get_propagate_natural_height(
17732        scrolled_window: *mut GtkScrolledWindow,
17733    ) -> gboolean;
17734    pub fn gtk_scrolled_window_get_propagate_natural_width(
17735        scrolled_window: *mut GtkScrolledWindow,
17736    ) -> gboolean;
17737    pub fn gtk_scrolled_window_get_vadjustment(
17738        scrolled_window: *mut GtkScrolledWindow,
17739    ) -> *mut GtkAdjustment;
17740    pub fn gtk_scrolled_window_get_vscrollbar(
17741        scrolled_window: *mut GtkScrolledWindow,
17742    ) -> *mut GtkWidget;
17743    pub fn gtk_scrolled_window_set_child(
17744        scrolled_window: *mut GtkScrolledWindow,
17745        child: *mut GtkWidget,
17746    );
17747    pub fn gtk_scrolled_window_set_hadjustment(
17748        scrolled_window: *mut GtkScrolledWindow,
17749        hadjustment: *mut GtkAdjustment,
17750    );
17751    pub fn gtk_scrolled_window_set_has_frame(
17752        scrolled_window: *mut GtkScrolledWindow,
17753        has_frame: gboolean,
17754    );
17755    pub fn gtk_scrolled_window_set_kinetic_scrolling(
17756        scrolled_window: *mut GtkScrolledWindow,
17757        kinetic_scrolling: gboolean,
17758    );
17759    pub fn gtk_scrolled_window_set_max_content_height(
17760        scrolled_window: *mut GtkScrolledWindow,
17761        height: c_int,
17762    );
17763    pub fn gtk_scrolled_window_set_max_content_width(
17764        scrolled_window: *mut GtkScrolledWindow,
17765        width: c_int,
17766    );
17767    pub fn gtk_scrolled_window_set_min_content_height(
17768        scrolled_window: *mut GtkScrolledWindow,
17769        height: c_int,
17770    );
17771    pub fn gtk_scrolled_window_set_min_content_width(
17772        scrolled_window: *mut GtkScrolledWindow,
17773        width: c_int,
17774    );
17775    pub fn gtk_scrolled_window_set_overlay_scrolling(
17776        scrolled_window: *mut GtkScrolledWindow,
17777        overlay_scrolling: gboolean,
17778    );
17779    pub fn gtk_scrolled_window_set_placement(
17780        scrolled_window: *mut GtkScrolledWindow,
17781        window_placement: GtkCornerType,
17782    );
17783    pub fn gtk_scrolled_window_set_policy(
17784        scrolled_window: *mut GtkScrolledWindow,
17785        hscrollbar_policy: GtkPolicyType,
17786        vscrollbar_policy: GtkPolicyType,
17787    );
17788    pub fn gtk_scrolled_window_set_propagate_natural_height(
17789        scrolled_window: *mut GtkScrolledWindow,
17790        propagate: gboolean,
17791    );
17792    pub fn gtk_scrolled_window_set_propagate_natural_width(
17793        scrolled_window: *mut GtkScrolledWindow,
17794        propagate: gboolean,
17795    );
17796    pub fn gtk_scrolled_window_set_vadjustment(
17797        scrolled_window: *mut GtkScrolledWindow,
17798        vadjustment: *mut GtkAdjustment,
17799    );
17800    pub fn gtk_scrolled_window_unset_placement(scrolled_window: *mut GtkScrolledWindow);
17801
17802    //=========================================================================
17803    // GtkSearchBar
17804    //=========================================================================
17805    pub fn gtk_search_bar_get_type() -> GType;
17806    pub fn gtk_search_bar_new() -> *mut GtkWidget;
17807    pub fn gtk_search_bar_connect_entry(bar: *mut GtkSearchBar, entry: *mut GtkEditable);
17808    pub fn gtk_search_bar_get_child(bar: *mut GtkSearchBar) -> *mut GtkWidget;
17809    pub fn gtk_search_bar_get_key_capture_widget(bar: *mut GtkSearchBar) -> *mut GtkWidget;
17810    pub fn gtk_search_bar_get_search_mode(bar: *mut GtkSearchBar) -> gboolean;
17811    pub fn gtk_search_bar_get_show_close_button(bar: *mut GtkSearchBar) -> gboolean;
17812    pub fn gtk_search_bar_set_child(bar: *mut GtkSearchBar, child: *mut GtkWidget);
17813    pub fn gtk_search_bar_set_key_capture_widget(bar: *mut GtkSearchBar, widget: *mut GtkWidget);
17814    pub fn gtk_search_bar_set_search_mode(bar: *mut GtkSearchBar, search_mode: gboolean);
17815    pub fn gtk_search_bar_set_show_close_button(bar: *mut GtkSearchBar, visible: gboolean);
17816
17817    //=========================================================================
17818    // GtkSearchEntry
17819    //=========================================================================
17820    pub fn gtk_search_entry_get_type() -> GType;
17821    pub fn gtk_search_entry_new() -> *mut GtkWidget;
17822    #[cfg(feature = "v4_14")]
17823    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17824    pub fn gtk_search_entry_get_input_hints(entry: *mut GtkSearchEntry) -> GtkInputHints;
17825    #[cfg(feature = "v4_14")]
17826    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17827    pub fn gtk_search_entry_get_input_purpose(entry: *mut GtkSearchEntry) -> GtkInputPurpose;
17828    pub fn gtk_search_entry_get_key_capture_widget(entry: *mut GtkSearchEntry) -> *mut GtkWidget;
17829    #[cfg(feature = "v4_10")]
17830    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
17831    pub fn gtk_search_entry_get_placeholder_text(entry: *mut GtkSearchEntry) -> *const c_char;
17832    #[cfg(feature = "v4_8")]
17833    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
17834    pub fn gtk_search_entry_get_search_delay(entry: *mut GtkSearchEntry) -> c_uint;
17835    #[cfg(feature = "v4_14")]
17836    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17837    pub fn gtk_search_entry_set_input_hints(entry: *mut GtkSearchEntry, hints: GtkInputHints);
17838    #[cfg(feature = "v4_14")]
17839    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17840    pub fn gtk_search_entry_set_input_purpose(entry: *mut GtkSearchEntry, purpose: GtkInputPurpose);
17841    pub fn gtk_search_entry_set_key_capture_widget(
17842        entry: *mut GtkSearchEntry,
17843        widget: *mut GtkWidget,
17844    );
17845    #[cfg(feature = "v4_10")]
17846    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
17847    pub fn gtk_search_entry_set_placeholder_text(entry: *mut GtkSearchEntry, text: *const c_char);
17848    #[cfg(feature = "v4_8")]
17849    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
17850    pub fn gtk_search_entry_set_search_delay(entry: *mut GtkSearchEntry, delay: c_uint);
17851
17852    //=========================================================================
17853    // GtkSelectionFilterModel
17854    //=========================================================================
17855    pub fn gtk_selection_filter_model_get_type() -> GType;
17856    pub fn gtk_selection_filter_model_new(
17857        model: *mut GtkSelectionModel,
17858    ) -> *mut GtkSelectionFilterModel;
17859    pub fn gtk_selection_filter_model_get_model(
17860        self_: *mut GtkSelectionFilterModel,
17861    ) -> *mut GtkSelectionModel;
17862    pub fn gtk_selection_filter_model_set_model(
17863        self_: *mut GtkSelectionFilterModel,
17864        model: *mut GtkSelectionModel,
17865    );
17866
17867    //=========================================================================
17868    // GtkSeparator
17869    //=========================================================================
17870    pub fn gtk_separator_get_type() -> GType;
17871    pub fn gtk_separator_new(orientation: GtkOrientation) -> *mut GtkWidget;
17872
17873    //=========================================================================
17874    // GtkSettings
17875    //=========================================================================
17876    pub fn gtk_settings_get_type() -> GType;
17877    pub fn gtk_settings_get_default() -> *mut GtkSettings;
17878    pub fn gtk_settings_get_for_display(display: *mut gdk::GdkDisplay) -> *mut GtkSettings;
17879    pub fn gtk_settings_reset_property(settings: *mut GtkSettings, name: *const c_char);
17880
17881    //=========================================================================
17882    // GtkShortcut
17883    //=========================================================================
17884    pub fn gtk_shortcut_get_type() -> GType;
17885    pub fn gtk_shortcut_new(
17886        trigger: *mut GtkShortcutTrigger,
17887        action: *mut GtkShortcutAction,
17888    ) -> *mut GtkShortcut;
17889    pub fn gtk_shortcut_new_with_arguments(
17890        trigger: *mut GtkShortcutTrigger,
17891        action: *mut GtkShortcutAction,
17892        format_string: *const c_char,
17893        ...
17894    ) -> *mut GtkShortcut;
17895    pub fn gtk_shortcut_get_action(self_: *mut GtkShortcut) -> *mut GtkShortcutAction;
17896    pub fn gtk_shortcut_get_arguments(self_: *mut GtkShortcut) -> *mut glib::GVariant;
17897    pub fn gtk_shortcut_get_trigger(self_: *mut GtkShortcut) -> *mut GtkShortcutTrigger;
17898    pub fn gtk_shortcut_set_action(self_: *mut GtkShortcut, action: *mut GtkShortcutAction);
17899    pub fn gtk_shortcut_set_arguments(self_: *mut GtkShortcut, args: *mut glib::GVariant);
17900    pub fn gtk_shortcut_set_trigger(self_: *mut GtkShortcut, trigger: *mut GtkShortcutTrigger);
17901
17902    //=========================================================================
17903    // GtkShortcutAction
17904    //=========================================================================
17905    pub fn gtk_shortcut_action_get_type() -> GType;
17906    pub fn gtk_shortcut_action_parse_string(string: *const c_char) -> *mut GtkShortcutAction;
17907    pub fn gtk_shortcut_action_activate(
17908        self_: *mut GtkShortcutAction,
17909        flags: GtkShortcutActionFlags,
17910        widget: *mut GtkWidget,
17911        args: *mut glib::GVariant,
17912    ) -> gboolean;
17913    pub fn gtk_shortcut_action_print(self_: *mut GtkShortcutAction, string: *mut glib::GString);
17914    pub fn gtk_shortcut_action_to_string(self_: *mut GtkShortcutAction) -> *mut c_char;
17915
17916    //=========================================================================
17917    // GtkShortcutController
17918    //=========================================================================
17919    pub fn gtk_shortcut_controller_get_type() -> GType;
17920    pub fn gtk_shortcut_controller_new() -> *mut GtkEventController;
17921    pub fn gtk_shortcut_controller_new_for_model(
17922        model: *mut gio::GListModel,
17923    ) -> *mut GtkEventController;
17924    pub fn gtk_shortcut_controller_add_shortcut(
17925        self_: *mut GtkShortcutController,
17926        shortcut: *mut GtkShortcut,
17927    );
17928    pub fn gtk_shortcut_controller_get_mnemonics_modifiers(
17929        self_: *mut GtkShortcutController,
17930    ) -> gdk::GdkModifierType;
17931    pub fn gtk_shortcut_controller_get_scope(self_: *mut GtkShortcutController)
17932        -> GtkShortcutScope;
17933    pub fn gtk_shortcut_controller_remove_shortcut(
17934        self_: *mut GtkShortcutController,
17935        shortcut: *mut GtkShortcut,
17936    );
17937    pub fn gtk_shortcut_controller_set_mnemonics_modifiers(
17938        self_: *mut GtkShortcutController,
17939        modifiers: gdk::GdkModifierType,
17940    );
17941    pub fn gtk_shortcut_controller_set_scope(
17942        self_: *mut GtkShortcutController,
17943        scope: GtkShortcutScope,
17944    );
17945
17946    //=========================================================================
17947    // GtkShortcutLabel
17948    //=========================================================================
17949    pub fn gtk_shortcut_label_get_type() -> GType;
17950    pub fn gtk_shortcut_label_new(accelerator: *const c_char) -> *mut GtkWidget;
17951    pub fn gtk_shortcut_label_get_accelerator(self_: *mut GtkShortcutLabel) -> *const c_char;
17952    pub fn gtk_shortcut_label_get_disabled_text(self_: *mut GtkShortcutLabel) -> *const c_char;
17953    pub fn gtk_shortcut_label_set_accelerator(
17954        self_: *mut GtkShortcutLabel,
17955        accelerator: *const c_char,
17956    );
17957    pub fn gtk_shortcut_label_set_disabled_text(
17958        self_: *mut GtkShortcutLabel,
17959        disabled_text: *const c_char,
17960    );
17961
17962    //=========================================================================
17963    // GtkShortcutTrigger
17964    //=========================================================================
17965    pub fn gtk_shortcut_trigger_get_type() -> GType;
17966    pub fn gtk_shortcut_trigger_parse_string(string: *const c_char) -> *mut GtkShortcutTrigger;
17967    pub fn gtk_shortcut_trigger_compare(trigger1: gconstpointer, trigger2: gconstpointer) -> c_int;
17968    pub fn gtk_shortcut_trigger_equal(trigger1: gconstpointer, trigger2: gconstpointer)
17969        -> gboolean;
17970    pub fn gtk_shortcut_trigger_hash(trigger: gconstpointer) -> c_uint;
17971    pub fn gtk_shortcut_trigger_print(self_: *mut GtkShortcutTrigger, string: *mut glib::GString);
17972    pub fn gtk_shortcut_trigger_print_label(
17973        self_: *mut GtkShortcutTrigger,
17974        display: *mut gdk::GdkDisplay,
17975        string: *mut glib::GString,
17976    ) -> gboolean;
17977    pub fn gtk_shortcut_trigger_to_label(
17978        self_: *mut GtkShortcutTrigger,
17979        display: *mut gdk::GdkDisplay,
17980    ) -> *mut c_char;
17981    pub fn gtk_shortcut_trigger_to_string(self_: *mut GtkShortcutTrigger) -> *mut c_char;
17982    pub fn gtk_shortcut_trigger_trigger(
17983        self_: *mut GtkShortcutTrigger,
17984        event: *mut gdk::GdkEvent,
17985        enable_mnemonics: gboolean,
17986    ) -> gdk::GdkKeyMatch;
17987
17988    //=========================================================================
17989    // GtkShortcutsGroup
17990    //=========================================================================
17991    pub fn gtk_shortcuts_group_get_type() -> GType;
17992    #[cfg(feature = "v4_14")]
17993    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17994    pub fn gtk_shortcuts_group_add_shortcut(
17995        self_: *mut GtkShortcutsGroup,
17996        shortcut: *mut GtkShortcutsShortcut,
17997    );
17998
17999    //=========================================================================
18000    // GtkShortcutsSection
18001    //=========================================================================
18002    pub fn gtk_shortcuts_section_get_type() -> GType;
18003    #[cfg(feature = "v4_14")]
18004    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18005    pub fn gtk_shortcuts_section_add_group(
18006        self_: *mut GtkShortcutsSection,
18007        group: *mut GtkShortcutsGroup,
18008    );
18009
18010    //=========================================================================
18011    // GtkShortcutsShortcut
18012    //=========================================================================
18013    pub fn gtk_shortcuts_shortcut_get_type() -> GType;
18014
18015    //=========================================================================
18016    // GtkShortcutsWindow
18017    //=========================================================================
18018    pub fn gtk_shortcuts_window_get_type() -> GType;
18019    #[cfg(feature = "v4_14")]
18020    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18021    pub fn gtk_shortcuts_window_add_section(
18022        self_: *mut GtkShortcutsWindow,
18023        section: *mut GtkShortcutsSection,
18024    );
18025
18026    //=========================================================================
18027    // GtkSignalAction
18028    //=========================================================================
18029    pub fn gtk_signal_action_get_type() -> GType;
18030    pub fn gtk_signal_action_new(signal_name: *const c_char) -> *mut GtkSignalAction;
18031    pub fn gtk_signal_action_get_signal_name(self_: *mut GtkSignalAction) -> *const c_char;
18032
18033    //=========================================================================
18034    // GtkSignalListItemFactory
18035    //=========================================================================
18036    pub fn gtk_signal_list_item_factory_get_type() -> GType;
18037    pub fn gtk_signal_list_item_factory_new() -> *mut GtkListItemFactory;
18038
18039    //=========================================================================
18040    // GtkSingleSelection
18041    //=========================================================================
18042    pub fn gtk_single_selection_get_type() -> GType;
18043    pub fn gtk_single_selection_new(model: *mut gio::GListModel) -> *mut GtkSingleSelection;
18044    pub fn gtk_single_selection_get_autoselect(self_: *mut GtkSingleSelection) -> gboolean;
18045    pub fn gtk_single_selection_get_can_unselect(self_: *mut GtkSingleSelection) -> gboolean;
18046    pub fn gtk_single_selection_get_model(self_: *mut GtkSingleSelection) -> *mut gio::GListModel;
18047    pub fn gtk_single_selection_get_selected(self_: *mut GtkSingleSelection) -> c_uint;
18048    pub fn gtk_single_selection_get_selected_item(
18049        self_: *mut GtkSingleSelection,
18050    ) -> *mut gobject::GObject;
18051    pub fn gtk_single_selection_set_autoselect(
18052        self_: *mut GtkSingleSelection,
18053        autoselect: gboolean,
18054    );
18055    pub fn gtk_single_selection_set_can_unselect(
18056        self_: *mut GtkSingleSelection,
18057        can_unselect: gboolean,
18058    );
18059    pub fn gtk_single_selection_set_model(
18060        self_: *mut GtkSingleSelection,
18061        model: *mut gio::GListModel,
18062    );
18063    pub fn gtk_single_selection_set_selected(self_: *mut GtkSingleSelection, position: c_uint);
18064
18065    //=========================================================================
18066    // GtkSizeGroup
18067    //=========================================================================
18068    pub fn gtk_size_group_get_type() -> GType;
18069    pub fn gtk_size_group_new(mode: GtkSizeGroupMode) -> *mut GtkSizeGroup;
18070    pub fn gtk_size_group_add_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
18071    pub fn gtk_size_group_get_mode(size_group: *mut GtkSizeGroup) -> GtkSizeGroupMode;
18072    pub fn gtk_size_group_get_widgets(size_group: *mut GtkSizeGroup) -> *mut glib::GSList;
18073    pub fn gtk_size_group_remove_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
18074    pub fn gtk_size_group_set_mode(size_group: *mut GtkSizeGroup, mode: GtkSizeGroupMode);
18075
18076    //=========================================================================
18077    // GtkSliceListModel
18078    //=========================================================================
18079    pub fn gtk_slice_list_model_get_type() -> GType;
18080    pub fn gtk_slice_list_model_new(
18081        model: *mut gio::GListModel,
18082        offset: c_uint,
18083        size: c_uint,
18084    ) -> *mut GtkSliceListModel;
18085    pub fn gtk_slice_list_model_get_model(self_: *mut GtkSliceListModel) -> *mut gio::GListModel;
18086    pub fn gtk_slice_list_model_get_offset(self_: *mut GtkSliceListModel) -> c_uint;
18087    pub fn gtk_slice_list_model_get_size(self_: *mut GtkSliceListModel) -> c_uint;
18088    pub fn gtk_slice_list_model_set_model(
18089        self_: *mut GtkSliceListModel,
18090        model: *mut gio::GListModel,
18091    );
18092    pub fn gtk_slice_list_model_set_offset(self_: *mut GtkSliceListModel, offset: c_uint);
18093    pub fn gtk_slice_list_model_set_size(self_: *mut GtkSliceListModel, size: c_uint);
18094
18095    //=========================================================================
18096    // GtkSnapshot
18097    //=========================================================================
18098    pub fn gtk_snapshot_get_type() -> GType;
18099    pub fn gtk_snapshot_new() -> *mut GtkSnapshot;
18100    pub fn gtk_snapshot_append_border(
18101        snapshot: *mut GtkSnapshot,
18102        outline: *const gsk::GskRoundedRect,
18103        border_width: *const [c_float; 4],
18104        border_color: *const [gdk::GdkRGBA; 4],
18105    );
18106    pub fn gtk_snapshot_append_cairo(
18107        snapshot: *mut GtkSnapshot,
18108        bounds: *const graphene::graphene_rect_t,
18109    ) -> *mut cairo::cairo_t;
18110    pub fn gtk_snapshot_append_color(
18111        snapshot: *mut GtkSnapshot,
18112        color: *const gdk::GdkRGBA,
18113        bounds: *const graphene::graphene_rect_t,
18114    );
18115    pub fn gtk_snapshot_append_conic_gradient(
18116        snapshot: *mut GtkSnapshot,
18117        bounds: *const graphene::graphene_rect_t,
18118        center: *const graphene::graphene_point_t,
18119        rotation: c_float,
18120        stops: *const gsk::GskColorStop,
18121        n_stops: size_t,
18122    );
18123    #[cfg(feature = "v4_14")]
18124    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18125    pub fn gtk_snapshot_append_fill(
18126        snapshot: *mut GtkSnapshot,
18127        path: *mut gsk::GskPath,
18128        fill_rule: gsk::GskFillRule,
18129        color: *const gdk::GdkRGBA,
18130    );
18131    pub fn gtk_snapshot_append_inset_shadow(
18132        snapshot: *mut GtkSnapshot,
18133        outline: *const gsk::GskRoundedRect,
18134        color: *const gdk::GdkRGBA,
18135        dx: c_float,
18136        dy: c_float,
18137        spread: c_float,
18138        blur_radius: c_float,
18139    );
18140    pub fn gtk_snapshot_append_layout(
18141        snapshot: *mut GtkSnapshot,
18142        layout: *mut pango::PangoLayout,
18143        color: *const gdk::GdkRGBA,
18144    );
18145    pub fn gtk_snapshot_append_linear_gradient(
18146        snapshot: *mut GtkSnapshot,
18147        bounds: *const graphene::graphene_rect_t,
18148        start_point: *const graphene::graphene_point_t,
18149        end_point: *const graphene::graphene_point_t,
18150        stops: *const gsk::GskColorStop,
18151        n_stops: size_t,
18152    );
18153    pub fn gtk_snapshot_append_node(snapshot: *mut GtkSnapshot, node: *mut gsk::GskRenderNode);
18154    pub fn gtk_snapshot_append_outset_shadow(
18155        snapshot: *mut GtkSnapshot,
18156        outline: *const gsk::GskRoundedRect,
18157        color: *const gdk::GdkRGBA,
18158        dx: c_float,
18159        dy: c_float,
18160        spread: c_float,
18161        blur_radius: c_float,
18162    );
18163    pub fn gtk_snapshot_append_radial_gradient(
18164        snapshot: *mut GtkSnapshot,
18165        bounds: *const graphene::graphene_rect_t,
18166        center: *const graphene::graphene_point_t,
18167        hradius: c_float,
18168        vradius: c_float,
18169        start: c_float,
18170        end: c_float,
18171        stops: *const gsk::GskColorStop,
18172        n_stops: size_t,
18173    );
18174    pub fn gtk_snapshot_append_repeating_linear_gradient(
18175        snapshot: *mut GtkSnapshot,
18176        bounds: *const graphene::graphene_rect_t,
18177        start_point: *const graphene::graphene_point_t,
18178        end_point: *const graphene::graphene_point_t,
18179        stops: *const gsk::GskColorStop,
18180        n_stops: size_t,
18181    );
18182    pub fn gtk_snapshot_append_repeating_radial_gradient(
18183        snapshot: *mut GtkSnapshot,
18184        bounds: *const graphene::graphene_rect_t,
18185        center: *const graphene::graphene_point_t,
18186        hradius: c_float,
18187        vradius: c_float,
18188        start: c_float,
18189        end: c_float,
18190        stops: *const gsk::GskColorStop,
18191        n_stops: size_t,
18192    );
18193    #[cfg(feature = "v4_10")]
18194    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18195    pub fn gtk_snapshot_append_scaled_texture(
18196        snapshot: *mut GtkSnapshot,
18197        texture: *mut gdk::GdkTexture,
18198        filter: gsk::GskScalingFilter,
18199        bounds: *const graphene::graphene_rect_t,
18200    );
18201    #[cfg(feature = "v4_14")]
18202    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18203    pub fn gtk_snapshot_append_stroke(
18204        snapshot: *mut GtkSnapshot,
18205        path: *mut gsk::GskPath,
18206        stroke: *const gsk::GskStroke,
18207        color: *const gdk::GdkRGBA,
18208    );
18209    pub fn gtk_snapshot_append_texture(
18210        snapshot: *mut GtkSnapshot,
18211        texture: *mut gdk::GdkTexture,
18212        bounds: *const graphene::graphene_rect_t,
18213    );
18214    pub fn gtk_snapshot_free_to_node(snapshot: *mut GtkSnapshot) -> *mut gsk::GskRenderNode;
18215    pub fn gtk_snapshot_free_to_paintable(
18216        snapshot: *mut GtkSnapshot,
18217        size: *const graphene::graphene_size_t,
18218    ) -> *mut gdk::GdkPaintable;
18219    pub fn gtk_snapshot_gl_shader_pop_texture(snapshot: *mut GtkSnapshot);
18220    pub fn gtk_snapshot_perspective(snapshot: *mut GtkSnapshot, depth: c_float);
18221    pub fn gtk_snapshot_pop(snapshot: *mut GtkSnapshot);
18222    pub fn gtk_snapshot_push_blend(snapshot: *mut GtkSnapshot, blend_mode: gsk::GskBlendMode);
18223    pub fn gtk_snapshot_push_blur(snapshot: *mut GtkSnapshot, radius: c_double);
18224    pub fn gtk_snapshot_push_clip(
18225        snapshot: *mut GtkSnapshot,
18226        bounds: *const graphene::graphene_rect_t,
18227    );
18228    pub fn gtk_snapshot_push_color_matrix(
18229        snapshot: *mut GtkSnapshot,
18230        color_matrix: *const graphene::graphene_matrix_t,
18231        color_offset: *const graphene::graphene_vec4_t,
18232    );
18233    #[cfg(feature = "v4_20")]
18234    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
18235    pub fn gtk_snapshot_push_component_transfer(
18236        snapshot: *mut GtkSnapshot,
18237        red: *const gsk::GskComponentTransfer,
18238        green: *const gsk::GskComponentTransfer,
18239        blue: *const gsk::GskComponentTransfer,
18240        alpha: *const gsk::GskComponentTransfer,
18241    );
18242    pub fn gtk_snapshot_push_cross_fade(snapshot: *mut GtkSnapshot, progress: c_double);
18243    pub fn gtk_snapshot_push_debug(snapshot: *mut GtkSnapshot, message: *const c_char, ...);
18244    #[cfg(feature = "v4_14")]
18245    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18246    pub fn gtk_snapshot_push_fill(
18247        snapshot: *mut GtkSnapshot,
18248        path: *mut gsk::GskPath,
18249        fill_rule: gsk::GskFillRule,
18250    );
18251    pub fn gtk_snapshot_push_gl_shader(
18252        snapshot: *mut GtkSnapshot,
18253        shader: *mut gsk::GskGLShader,
18254        bounds: *const graphene::graphene_rect_t,
18255        take_args: *mut glib::GBytes,
18256    );
18257    #[cfg(feature = "v4_10")]
18258    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18259    pub fn gtk_snapshot_push_mask(snapshot: *mut GtkSnapshot, mask_mode: gsk::GskMaskMode);
18260    pub fn gtk_snapshot_push_opacity(snapshot: *mut GtkSnapshot, opacity: c_double);
18261    pub fn gtk_snapshot_push_repeat(
18262        snapshot: *mut GtkSnapshot,
18263        bounds: *const graphene::graphene_rect_t,
18264        child_bounds: *const graphene::graphene_rect_t,
18265    );
18266    pub fn gtk_snapshot_push_rounded_clip(
18267        snapshot: *mut GtkSnapshot,
18268        bounds: *const gsk::GskRoundedRect,
18269    );
18270    pub fn gtk_snapshot_push_shadow(
18271        snapshot: *mut GtkSnapshot,
18272        shadow: *const gsk::GskShadow,
18273        n_shadows: size_t,
18274    );
18275    #[cfg(feature = "v4_14")]
18276    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18277    pub fn gtk_snapshot_push_stroke(
18278        snapshot: *mut GtkSnapshot,
18279        path: *mut gsk::GskPath,
18280        stroke: *const gsk::GskStroke,
18281    );
18282    pub fn gtk_snapshot_render_background(
18283        snapshot: *mut GtkSnapshot,
18284        context: *mut GtkStyleContext,
18285        x: c_double,
18286        y: c_double,
18287        width: c_double,
18288        height: c_double,
18289    );
18290    pub fn gtk_snapshot_render_focus(
18291        snapshot: *mut GtkSnapshot,
18292        context: *mut GtkStyleContext,
18293        x: c_double,
18294        y: c_double,
18295        width: c_double,
18296        height: c_double,
18297    );
18298    pub fn gtk_snapshot_render_frame(
18299        snapshot: *mut GtkSnapshot,
18300        context: *mut GtkStyleContext,
18301        x: c_double,
18302        y: c_double,
18303        width: c_double,
18304        height: c_double,
18305    );
18306    pub fn gtk_snapshot_render_insertion_cursor(
18307        snapshot: *mut GtkSnapshot,
18308        context: *mut GtkStyleContext,
18309        x: c_double,
18310        y: c_double,
18311        layout: *mut pango::PangoLayout,
18312        index: c_int,
18313        direction: pango::PangoDirection,
18314    );
18315    pub fn gtk_snapshot_render_layout(
18316        snapshot: *mut GtkSnapshot,
18317        context: *mut GtkStyleContext,
18318        x: c_double,
18319        y: c_double,
18320        layout: *mut pango::PangoLayout,
18321    );
18322    pub fn gtk_snapshot_restore(snapshot: *mut GtkSnapshot);
18323    pub fn gtk_snapshot_rotate(snapshot: *mut GtkSnapshot, angle: c_float);
18324    pub fn gtk_snapshot_rotate_3d(
18325        snapshot: *mut GtkSnapshot,
18326        angle: c_float,
18327        axis: *const graphene::graphene_vec3_t,
18328    );
18329    pub fn gtk_snapshot_save(snapshot: *mut GtkSnapshot);
18330    pub fn gtk_snapshot_scale(snapshot: *mut GtkSnapshot, factor_x: c_float, factor_y: c_float);
18331    pub fn gtk_snapshot_scale_3d(
18332        snapshot: *mut GtkSnapshot,
18333        factor_x: c_float,
18334        factor_y: c_float,
18335        factor_z: c_float,
18336    );
18337    pub fn gtk_snapshot_to_node(snapshot: *mut GtkSnapshot) -> *mut gsk::GskRenderNode;
18338    pub fn gtk_snapshot_to_paintable(
18339        snapshot: *mut GtkSnapshot,
18340        size: *const graphene::graphene_size_t,
18341    ) -> *mut gdk::GdkPaintable;
18342    pub fn gtk_snapshot_transform(snapshot: *mut GtkSnapshot, transform: *mut gsk::GskTransform);
18343    pub fn gtk_snapshot_transform_matrix(
18344        snapshot: *mut GtkSnapshot,
18345        matrix: *const graphene::graphene_matrix_t,
18346    );
18347    pub fn gtk_snapshot_translate(
18348        snapshot: *mut GtkSnapshot,
18349        point: *const graphene::graphene_point_t,
18350    );
18351    pub fn gtk_snapshot_translate_3d(
18352        snapshot: *mut GtkSnapshot,
18353        point: *const graphene::graphene_point3d_t,
18354    );
18355
18356    //=========================================================================
18357    // GtkSortListModel
18358    //=========================================================================
18359    pub fn gtk_sort_list_model_get_type() -> GType;
18360    pub fn gtk_sort_list_model_new(
18361        model: *mut gio::GListModel,
18362        sorter: *mut GtkSorter,
18363    ) -> *mut GtkSortListModel;
18364    pub fn gtk_sort_list_model_get_incremental(self_: *mut GtkSortListModel) -> gboolean;
18365    pub fn gtk_sort_list_model_get_model(self_: *mut GtkSortListModel) -> *mut gio::GListModel;
18366    pub fn gtk_sort_list_model_get_pending(self_: *mut GtkSortListModel) -> c_uint;
18367    #[cfg(feature = "v4_12")]
18368    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
18369    pub fn gtk_sort_list_model_get_section_sorter(self_: *mut GtkSortListModel) -> *mut GtkSorter;
18370    pub fn gtk_sort_list_model_get_sorter(self_: *mut GtkSortListModel) -> *mut GtkSorter;
18371    pub fn gtk_sort_list_model_set_incremental(self_: *mut GtkSortListModel, incremental: gboolean);
18372    pub fn gtk_sort_list_model_set_model(self_: *mut GtkSortListModel, model: *mut gio::GListModel);
18373    #[cfg(feature = "v4_12")]
18374    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
18375    pub fn gtk_sort_list_model_set_section_sorter(
18376        self_: *mut GtkSortListModel,
18377        sorter: *mut GtkSorter,
18378    );
18379    pub fn gtk_sort_list_model_set_sorter(self_: *mut GtkSortListModel, sorter: *mut GtkSorter);
18380
18381    //=========================================================================
18382    // GtkSorter
18383    //=========================================================================
18384    pub fn gtk_sorter_get_type() -> GType;
18385    pub fn gtk_sorter_changed(self_: *mut GtkSorter, change: GtkSorterChange);
18386    pub fn gtk_sorter_compare(
18387        self_: *mut GtkSorter,
18388        item1: *mut gobject::GObject,
18389        item2: *mut gobject::GObject,
18390    ) -> GtkOrdering;
18391    pub fn gtk_sorter_get_order(self_: *mut GtkSorter) -> GtkSorterOrder;
18392
18393    //=========================================================================
18394    // GtkSpinButton
18395    //=========================================================================
18396    pub fn gtk_spin_button_get_type() -> GType;
18397    pub fn gtk_spin_button_new(
18398        adjustment: *mut GtkAdjustment,
18399        climb_rate: c_double,
18400        digits: c_uint,
18401    ) -> *mut GtkWidget;
18402    pub fn gtk_spin_button_new_with_range(
18403        min: c_double,
18404        max: c_double,
18405        step: c_double,
18406    ) -> *mut GtkWidget;
18407    pub fn gtk_spin_button_configure(
18408        spin_button: *mut GtkSpinButton,
18409        adjustment: *mut GtkAdjustment,
18410        climb_rate: c_double,
18411        digits: c_uint,
18412    );
18413    #[cfg(feature = "v4_14")]
18414    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18415    pub fn gtk_spin_button_get_activates_default(spin_button: *mut GtkSpinButton) -> gboolean;
18416    pub fn gtk_spin_button_get_adjustment(spin_button: *mut GtkSpinButton) -> *mut GtkAdjustment;
18417    pub fn gtk_spin_button_get_climb_rate(spin_button: *mut GtkSpinButton) -> c_double;
18418    pub fn gtk_spin_button_get_digits(spin_button: *mut GtkSpinButton) -> c_uint;
18419    pub fn gtk_spin_button_get_increments(
18420        spin_button: *mut GtkSpinButton,
18421        step: *mut c_double,
18422        page: *mut c_double,
18423    );
18424    pub fn gtk_spin_button_get_numeric(spin_button: *mut GtkSpinButton) -> gboolean;
18425    pub fn gtk_spin_button_get_range(
18426        spin_button: *mut GtkSpinButton,
18427        min: *mut c_double,
18428        max: *mut c_double,
18429    );
18430    pub fn gtk_spin_button_get_snap_to_ticks(spin_button: *mut GtkSpinButton) -> gboolean;
18431    pub fn gtk_spin_button_get_update_policy(
18432        spin_button: *mut GtkSpinButton,
18433    ) -> GtkSpinButtonUpdatePolicy;
18434    pub fn gtk_spin_button_get_value(spin_button: *mut GtkSpinButton) -> c_double;
18435    pub fn gtk_spin_button_get_value_as_int(spin_button: *mut GtkSpinButton) -> c_int;
18436    pub fn gtk_spin_button_get_wrap(spin_button: *mut GtkSpinButton) -> gboolean;
18437    #[cfg(feature = "v4_14")]
18438    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18439    pub fn gtk_spin_button_set_activates_default(
18440        spin_button: *mut GtkSpinButton,
18441        activates_default: gboolean,
18442    );
18443    pub fn gtk_spin_button_set_adjustment(
18444        spin_button: *mut GtkSpinButton,
18445        adjustment: *mut GtkAdjustment,
18446    );
18447    pub fn gtk_spin_button_set_climb_rate(spin_button: *mut GtkSpinButton, climb_rate: c_double);
18448    pub fn gtk_spin_button_set_digits(spin_button: *mut GtkSpinButton, digits: c_uint);
18449    pub fn gtk_spin_button_set_increments(
18450        spin_button: *mut GtkSpinButton,
18451        step: c_double,
18452        page: c_double,
18453    );
18454    pub fn gtk_spin_button_set_numeric(spin_button: *mut GtkSpinButton, numeric: gboolean);
18455    pub fn gtk_spin_button_set_range(spin_button: *mut GtkSpinButton, min: c_double, max: c_double);
18456    pub fn gtk_spin_button_set_snap_to_ticks(
18457        spin_button: *mut GtkSpinButton,
18458        snap_to_ticks: gboolean,
18459    );
18460    pub fn gtk_spin_button_set_update_policy(
18461        spin_button: *mut GtkSpinButton,
18462        policy: GtkSpinButtonUpdatePolicy,
18463    );
18464    pub fn gtk_spin_button_set_value(spin_button: *mut GtkSpinButton, value: c_double);
18465    pub fn gtk_spin_button_set_wrap(spin_button: *mut GtkSpinButton, wrap: gboolean);
18466    pub fn gtk_spin_button_spin(
18467        spin_button: *mut GtkSpinButton,
18468        direction: GtkSpinType,
18469        increment: c_double,
18470    );
18471    pub fn gtk_spin_button_update(spin_button: *mut GtkSpinButton);
18472
18473    //=========================================================================
18474    // GtkSpinner
18475    //=========================================================================
18476    pub fn gtk_spinner_get_type() -> GType;
18477    pub fn gtk_spinner_new() -> *mut GtkWidget;
18478    pub fn gtk_spinner_get_spinning(spinner: *mut GtkSpinner) -> gboolean;
18479    pub fn gtk_spinner_set_spinning(spinner: *mut GtkSpinner, spinning: gboolean);
18480    pub fn gtk_spinner_start(spinner: *mut GtkSpinner);
18481    pub fn gtk_spinner_stop(spinner: *mut GtkSpinner);
18482
18483    //=========================================================================
18484    // GtkStack
18485    //=========================================================================
18486    pub fn gtk_stack_get_type() -> GType;
18487    pub fn gtk_stack_new() -> *mut GtkWidget;
18488    pub fn gtk_stack_add_child(stack: *mut GtkStack, child: *mut GtkWidget) -> *mut GtkStackPage;
18489    pub fn gtk_stack_add_named(
18490        stack: *mut GtkStack,
18491        child: *mut GtkWidget,
18492        name: *const c_char,
18493    ) -> *mut GtkStackPage;
18494    pub fn gtk_stack_add_titled(
18495        stack: *mut GtkStack,
18496        child: *mut GtkWidget,
18497        name: *const c_char,
18498        title: *const c_char,
18499    ) -> *mut GtkStackPage;
18500    pub fn gtk_stack_get_child_by_name(stack: *mut GtkStack, name: *const c_char)
18501        -> *mut GtkWidget;
18502    pub fn gtk_stack_get_hhomogeneous(stack: *mut GtkStack) -> gboolean;
18503    pub fn gtk_stack_get_interpolate_size(stack: *mut GtkStack) -> gboolean;
18504    pub fn gtk_stack_get_page(stack: *mut GtkStack, child: *mut GtkWidget) -> *mut GtkStackPage;
18505    pub fn gtk_stack_get_pages(stack: *mut GtkStack) -> *mut GtkSelectionModel;
18506    pub fn gtk_stack_get_transition_duration(stack: *mut GtkStack) -> c_uint;
18507    pub fn gtk_stack_get_transition_running(stack: *mut GtkStack) -> gboolean;
18508    pub fn gtk_stack_get_transition_type(stack: *mut GtkStack) -> GtkStackTransitionType;
18509    pub fn gtk_stack_get_vhomogeneous(stack: *mut GtkStack) -> gboolean;
18510    pub fn gtk_stack_get_visible_child(stack: *mut GtkStack) -> *mut GtkWidget;
18511    pub fn gtk_stack_get_visible_child_name(stack: *mut GtkStack) -> *const c_char;
18512    pub fn gtk_stack_remove(stack: *mut GtkStack, child: *mut GtkWidget);
18513    pub fn gtk_stack_set_hhomogeneous(stack: *mut GtkStack, hhomogeneous: gboolean);
18514    pub fn gtk_stack_set_interpolate_size(stack: *mut GtkStack, interpolate_size: gboolean);
18515    pub fn gtk_stack_set_transition_duration(stack: *mut GtkStack, duration: c_uint);
18516    pub fn gtk_stack_set_transition_type(stack: *mut GtkStack, transition: GtkStackTransitionType);
18517    pub fn gtk_stack_set_vhomogeneous(stack: *mut GtkStack, vhomogeneous: gboolean);
18518    pub fn gtk_stack_set_visible_child(stack: *mut GtkStack, child: *mut GtkWidget);
18519    pub fn gtk_stack_set_visible_child_full(
18520        stack: *mut GtkStack,
18521        name: *const c_char,
18522        transition: GtkStackTransitionType,
18523    );
18524    pub fn gtk_stack_set_visible_child_name(stack: *mut GtkStack, name: *const c_char);
18525
18526    //=========================================================================
18527    // GtkStackPage
18528    //=========================================================================
18529    pub fn gtk_stack_page_get_type() -> GType;
18530    pub fn gtk_stack_page_get_child(self_: *mut GtkStackPage) -> *mut GtkWidget;
18531    pub fn gtk_stack_page_get_icon_name(self_: *mut GtkStackPage) -> *const c_char;
18532    pub fn gtk_stack_page_get_name(self_: *mut GtkStackPage) -> *const c_char;
18533    pub fn gtk_stack_page_get_needs_attention(self_: *mut GtkStackPage) -> gboolean;
18534    pub fn gtk_stack_page_get_title(self_: *mut GtkStackPage) -> *const c_char;
18535    pub fn gtk_stack_page_get_use_underline(self_: *mut GtkStackPage) -> gboolean;
18536    pub fn gtk_stack_page_get_visible(self_: *mut GtkStackPage) -> gboolean;
18537    pub fn gtk_stack_page_set_icon_name(self_: *mut GtkStackPage, setting: *const c_char);
18538    pub fn gtk_stack_page_set_name(self_: *mut GtkStackPage, setting: *const c_char);
18539    pub fn gtk_stack_page_set_needs_attention(self_: *mut GtkStackPage, setting: gboolean);
18540    pub fn gtk_stack_page_set_title(self_: *mut GtkStackPage, setting: *const c_char);
18541    pub fn gtk_stack_page_set_use_underline(self_: *mut GtkStackPage, setting: gboolean);
18542    pub fn gtk_stack_page_set_visible(self_: *mut GtkStackPage, visible: gboolean);
18543
18544    //=========================================================================
18545    // GtkStackSidebar
18546    //=========================================================================
18547    pub fn gtk_stack_sidebar_get_type() -> GType;
18548    pub fn gtk_stack_sidebar_new() -> *mut GtkWidget;
18549    pub fn gtk_stack_sidebar_get_stack(self_: *mut GtkStackSidebar) -> *mut GtkStack;
18550    pub fn gtk_stack_sidebar_set_stack(self_: *mut GtkStackSidebar, stack: *mut GtkStack);
18551
18552    //=========================================================================
18553    // GtkStackSwitcher
18554    //=========================================================================
18555    pub fn gtk_stack_switcher_get_type() -> GType;
18556    pub fn gtk_stack_switcher_new() -> *mut GtkWidget;
18557    pub fn gtk_stack_switcher_get_stack(switcher: *mut GtkStackSwitcher) -> *mut GtkStack;
18558    pub fn gtk_stack_switcher_set_stack(switcher: *mut GtkStackSwitcher, stack: *mut GtkStack);
18559
18560    //=========================================================================
18561    // GtkStatusbar
18562    //=========================================================================
18563    pub fn gtk_statusbar_get_type() -> GType;
18564    pub fn gtk_statusbar_new() -> *mut GtkWidget;
18565    pub fn gtk_statusbar_get_context_id(
18566        statusbar: *mut GtkStatusbar,
18567        context_description: *const c_char,
18568    ) -> c_uint;
18569    pub fn gtk_statusbar_pop(statusbar: *mut GtkStatusbar, context_id: c_uint);
18570    pub fn gtk_statusbar_push(
18571        statusbar: *mut GtkStatusbar,
18572        context_id: c_uint,
18573        text: *const c_char,
18574    ) -> c_uint;
18575    pub fn gtk_statusbar_remove(
18576        statusbar: *mut GtkStatusbar,
18577        context_id: c_uint,
18578        message_id: c_uint,
18579    );
18580    pub fn gtk_statusbar_remove_all(statusbar: *mut GtkStatusbar, context_id: c_uint);
18581
18582    //=========================================================================
18583    // GtkStringFilter
18584    //=========================================================================
18585    pub fn gtk_string_filter_get_type() -> GType;
18586    pub fn gtk_string_filter_new(expression: *mut GtkExpression) -> *mut GtkStringFilter;
18587    pub fn gtk_string_filter_get_expression(self_: *mut GtkStringFilter) -> *mut GtkExpression;
18588    pub fn gtk_string_filter_get_ignore_case(self_: *mut GtkStringFilter) -> gboolean;
18589    pub fn gtk_string_filter_get_match_mode(
18590        self_: *mut GtkStringFilter,
18591    ) -> GtkStringFilterMatchMode;
18592    pub fn gtk_string_filter_get_search(self_: *mut GtkStringFilter) -> *const c_char;
18593    pub fn gtk_string_filter_set_expression(
18594        self_: *mut GtkStringFilter,
18595        expression: *mut GtkExpression,
18596    );
18597    pub fn gtk_string_filter_set_ignore_case(self_: *mut GtkStringFilter, ignore_case: gboolean);
18598    pub fn gtk_string_filter_set_match_mode(
18599        self_: *mut GtkStringFilter,
18600        mode: GtkStringFilterMatchMode,
18601    );
18602    pub fn gtk_string_filter_set_search(self_: *mut GtkStringFilter, search: *const c_char);
18603
18604    //=========================================================================
18605    // GtkStringList
18606    //=========================================================================
18607    pub fn gtk_string_list_get_type() -> GType;
18608    pub fn gtk_string_list_new(strings: *const *const c_char) -> *mut GtkStringList;
18609    pub fn gtk_string_list_append(self_: *mut GtkStringList, string: *const c_char);
18610    #[cfg(feature = "v4_18")]
18611    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
18612    pub fn gtk_string_list_find(self_: *mut GtkStringList, string: *const c_char) -> c_uint;
18613    pub fn gtk_string_list_get_string(self_: *mut GtkStringList, position: c_uint)
18614        -> *const c_char;
18615    pub fn gtk_string_list_remove(self_: *mut GtkStringList, position: c_uint);
18616    pub fn gtk_string_list_splice(
18617        self_: *mut GtkStringList,
18618        position: c_uint,
18619        n_removals: c_uint,
18620        additions: *const *const c_char,
18621    );
18622    pub fn gtk_string_list_take(self_: *mut GtkStringList, string: *mut c_char);
18623
18624    //=========================================================================
18625    // GtkStringObject
18626    //=========================================================================
18627    pub fn gtk_string_object_get_type() -> GType;
18628    pub fn gtk_string_object_new(string: *const c_char) -> *mut GtkStringObject;
18629    pub fn gtk_string_object_get_string(self_: *mut GtkStringObject) -> *const c_char;
18630
18631    //=========================================================================
18632    // GtkStringSorter
18633    //=========================================================================
18634    pub fn gtk_string_sorter_get_type() -> GType;
18635    pub fn gtk_string_sorter_new(expression: *mut GtkExpression) -> *mut GtkStringSorter;
18636    #[cfg(feature = "v4_10")]
18637    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18638    pub fn gtk_string_sorter_get_collation(self_: *mut GtkStringSorter) -> GtkCollation;
18639    pub fn gtk_string_sorter_get_expression(self_: *mut GtkStringSorter) -> *mut GtkExpression;
18640    pub fn gtk_string_sorter_get_ignore_case(self_: *mut GtkStringSorter) -> gboolean;
18641    #[cfg(feature = "v4_10")]
18642    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18643    pub fn gtk_string_sorter_set_collation(self_: *mut GtkStringSorter, collation: GtkCollation);
18644    pub fn gtk_string_sorter_set_expression(
18645        self_: *mut GtkStringSorter,
18646        expression: *mut GtkExpression,
18647    );
18648    pub fn gtk_string_sorter_set_ignore_case(self_: *mut GtkStringSorter, ignore_case: gboolean);
18649
18650    //=========================================================================
18651    // GtkStyleContext
18652    //=========================================================================
18653    pub fn gtk_style_context_get_type() -> GType;
18654    pub fn gtk_style_context_add_provider_for_display(
18655        display: *mut gdk::GdkDisplay,
18656        provider: *mut GtkStyleProvider,
18657        priority: c_uint,
18658    );
18659    pub fn gtk_style_context_remove_provider_for_display(
18660        display: *mut gdk::GdkDisplay,
18661        provider: *mut GtkStyleProvider,
18662    );
18663    pub fn gtk_style_context_add_class(context: *mut GtkStyleContext, class_name: *const c_char);
18664    pub fn gtk_style_context_add_provider(
18665        context: *mut GtkStyleContext,
18666        provider: *mut GtkStyleProvider,
18667        priority: c_uint,
18668    );
18669    pub fn gtk_style_context_get_border(context: *mut GtkStyleContext, border: *mut GtkBorder);
18670    pub fn gtk_style_context_get_color(context: *mut GtkStyleContext, color: *mut gdk::GdkRGBA);
18671    pub fn gtk_style_context_get_display(context: *mut GtkStyleContext) -> *mut gdk::GdkDisplay;
18672    pub fn gtk_style_context_get_margin(context: *mut GtkStyleContext, margin: *mut GtkBorder);
18673    pub fn gtk_style_context_get_padding(context: *mut GtkStyleContext, padding: *mut GtkBorder);
18674    pub fn gtk_style_context_get_scale(context: *mut GtkStyleContext) -> c_int;
18675    pub fn gtk_style_context_get_state(context: *mut GtkStyleContext) -> GtkStateFlags;
18676    pub fn gtk_style_context_has_class(
18677        context: *mut GtkStyleContext,
18678        class_name: *const c_char,
18679    ) -> gboolean;
18680    pub fn gtk_style_context_lookup_color(
18681        context: *mut GtkStyleContext,
18682        color_name: *const c_char,
18683        color: *mut gdk::GdkRGBA,
18684    ) -> gboolean;
18685    pub fn gtk_style_context_remove_class(context: *mut GtkStyleContext, class_name: *const c_char);
18686    pub fn gtk_style_context_remove_provider(
18687        context: *mut GtkStyleContext,
18688        provider: *mut GtkStyleProvider,
18689    );
18690    pub fn gtk_style_context_restore(context: *mut GtkStyleContext);
18691    pub fn gtk_style_context_save(context: *mut GtkStyleContext);
18692    pub fn gtk_style_context_set_display(
18693        context: *mut GtkStyleContext,
18694        display: *mut gdk::GdkDisplay,
18695    );
18696    pub fn gtk_style_context_set_scale(context: *mut GtkStyleContext, scale: c_int);
18697    pub fn gtk_style_context_set_state(context: *mut GtkStyleContext, flags: GtkStateFlags);
18698    pub fn gtk_style_context_to_string(
18699        context: *mut GtkStyleContext,
18700        flags: GtkStyleContextPrintFlags,
18701    ) -> *mut c_char;
18702
18703    //=========================================================================
18704    // GtkSwitch
18705    //=========================================================================
18706    pub fn gtk_switch_get_type() -> GType;
18707    pub fn gtk_switch_new() -> *mut GtkWidget;
18708    pub fn gtk_switch_get_active(self_: *mut GtkSwitch) -> gboolean;
18709    pub fn gtk_switch_get_state(self_: *mut GtkSwitch) -> gboolean;
18710    pub fn gtk_switch_set_active(self_: *mut GtkSwitch, is_active: gboolean);
18711    pub fn gtk_switch_set_state(self_: *mut GtkSwitch, state: gboolean);
18712
18713    //=========================================================================
18714    // GtkText
18715    //=========================================================================
18716    pub fn gtk_text_get_type() -> GType;
18717    pub fn gtk_text_new() -> *mut GtkWidget;
18718    pub fn gtk_text_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
18719    #[cfg(feature = "v4_4")]
18720    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
18721    pub fn gtk_text_compute_cursor_extents(
18722        self_: *mut GtkText,
18723        position: size_t,
18724        strong: *mut graphene::graphene_rect_t,
18725        weak: *mut graphene::graphene_rect_t,
18726    );
18727    pub fn gtk_text_get_activates_default(self_: *mut GtkText) -> gboolean;
18728    pub fn gtk_text_get_attributes(self_: *mut GtkText) -> *mut pango::PangoAttrList;
18729    pub fn gtk_text_get_buffer(self_: *mut GtkText) -> *mut GtkEntryBuffer;
18730    pub fn gtk_text_get_enable_emoji_completion(self_: *mut GtkText) -> gboolean;
18731    pub fn gtk_text_get_extra_menu(self_: *mut GtkText) -> *mut gio::GMenuModel;
18732    pub fn gtk_text_get_input_hints(self_: *mut GtkText) -> GtkInputHints;
18733    pub fn gtk_text_get_input_purpose(self_: *mut GtkText) -> GtkInputPurpose;
18734    pub fn gtk_text_get_invisible_char(self_: *mut GtkText) -> u32;
18735    pub fn gtk_text_get_max_length(self_: *mut GtkText) -> c_int;
18736    pub fn gtk_text_get_overwrite_mode(self_: *mut GtkText) -> gboolean;
18737    pub fn gtk_text_get_placeholder_text(self_: *mut GtkText) -> *const c_char;
18738    pub fn gtk_text_get_propagate_text_width(self_: *mut GtkText) -> gboolean;
18739    pub fn gtk_text_get_tabs(self_: *mut GtkText) -> *mut pango::PangoTabArray;
18740    pub fn gtk_text_get_text_length(self_: *mut GtkText) -> u16;
18741    pub fn gtk_text_get_truncate_multiline(self_: *mut GtkText) -> gboolean;
18742    pub fn gtk_text_get_visibility(self_: *mut GtkText) -> gboolean;
18743    pub fn gtk_text_grab_focus_without_selecting(self_: *mut GtkText) -> gboolean;
18744    pub fn gtk_text_set_activates_default(self_: *mut GtkText, activates: gboolean);
18745    pub fn gtk_text_set_attributes(self_: *mut GtkText, attrs: *mut pango::PangoAttrList);
18746    pub fn gtk_text_set_buffer(self_: *mut GtkText, buffer: *mut GtkEntryBuffer);
18747    pub fn gtk_text_set_enable_emoji_completion(
18748        self_: *mut GtkText,
18749        enable_emoji_completion: gboolean,
18750    );
18751    pub fn gtk_text_set_extra_menu(self_: *mut GtkText, model: *mut gio::GMenuModel);
18752    pub fn gtk_text_set_input_hints(self_: *mut GtkText, hints: GtkInputHints);
18753    pub fn gtk_text_set_input_purpose(self_: *mut GtkText, purpose: GtkInputPurpose);
18754    pub fn gtk_text_set_invisible_char(self_: *mut GtkText, ch: u32);
18755    pub fn gtk_text_set_max_length(self_: *mut GtkText, length: c_int);
18756    pub fn gtk_text_set_overwrite_mode(self_: *mut GtkText, overwrite: gboolean);
18757    pub fn gtk_text_set_placeholder_text(self_: *mut GtkText, text: *const c_char);
18758    pub fn gtk_text_set_propagate_text_width(self_: *mut GtkText, propagate_text_width: gboolean);
18759    pub fn gtk_text_set_tabs(self_: *mut GtkText, tabs: *mut pango::PangoTabArray);
18760    pub fn gtk_text_set_truncate_multiline(self_: *mut GtkText, truncate_multiline: gboolean);
18761    pub fn gtk_text_set_visibility(self_: *mut GtkText, visible: gboolean);
18762    pub fn gtk_text_unset_invisible_char(self_: *mut GtkText);
18763
18764    //=========================================================================
18765    // GtkTextBuffer
18766    //=========================================================================
18767    pub fn gtk_text_buffer_get_type() -> GType;
18768    pub fn gtk_text_buffer_new(table: *mut GtkTextTagTable) -> *mut GtkTextBuffer;
18769    #[cfg(feature = "v4_16")]
18770    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
18771    pub fn gtk_text_buffer_add_commit_notify(
18772        buffer: *mut GtkTextBuffer,
18773        flags: GtkTextBufferNotifyFlags,
18774        commit_notify: GtkTextBufferCommitNotify,
18775        user_data: gpointer,
18776        destroy: glib::GDestroyNotify,
18777    ) -> c_uint;
18778    pub fn gtk_text_buffer_add_mark(
18779        buffer: *mut GtkTextBuffer,
18780        mark: *mut GtkTextMark,
18781        where_: *const GtkTextIter,
18782    );
18783    pub fn gtk_text_buffer_add_selection_clipboard(
18784        buffer: *mut GtkTextBuffer,
18785        clipboard: *mut gdk::GdkClipboard,
18786    );
18787    pub fn gtk_text_buffer_apply_tag(
18788        buffer: *mut GtkTextBuffer,
18789        tag: *mut GtkTextTag,
18790        start: *const GtkTextIter,
18791        end: *const GtkTextIter,
18792    );
18793    pub fn gtk_text_buffer_apply_tag_by_name(
18794        buffer: *mut GtkTextBuffer,
18795        name: *const c_char,
18796        start: *const GtkTextIter,
18797        end: *const GtkTextIter,
18798    );
18799    pub fn gtk_text_buffer_backspace(
18800        buffer: *mut GtkTextBuffer,
18801        iter: *mut GtkTextIter,
18802        interactive: gboolean,
18803        default_editable: gboolean,
18804    ) -> gboolean;
18805    pub fn gtk_text_buffer_begin_irreversible_action(buffer: *mut GtkTextBuffer);
18806    pub fn gtk_text_buffer_begin_user_action(buffer: *mut GtkTextBuffer);
18807    pub fn gtk_text_buffer_copy_clipboard(
18808        buffer: *mut GtkTextBuffer,
18809        clipboard: *mut gdk::GdkClipboard,
18810    );
18811    pub fn gtk_text_buffer_create_child_anchor(
18812        buffer: *mut GtkTextBuffer,
18813        iter: *mut GtkTextIter,
18814    ) -> *mut GtkTextChildAnchor;
18815    pub fn gtk_text_buffer_create_mark(
18816        buffer: *mut GtkTextBuffer,
18817        mark_name: *const c_char,
18818        where_: *const GtkTextIter,
18819        left_gravity: gboolean,
18820    ) -> *mut GtkTextMark;
18821    pub fn gtk_text_buffer_create_tag(
18822        buffer: *mut GtkTextBuffer,
18823        tag_name: *const c_char,
18824        first_property_name: *const c_char,
18825        ...
18826    ) -> *mut GtkTextTag;
18827    pub fn gtk_text_buffer_cut_clipboard(
18828        buffer: *mut GtkTextBuffer,
18829        clipboard: *mut gdk::GdkClipboard,
18830        default_editable: gboolean,
18831    );
18832    pub fn gtk_text_buffer_delete(
18833        buffer: *mut GtkTextBuffer,
18834        start: *mut GtkTextIter,
18835        end: *mut GtkTextIter,
18836    );
18837    pub fn gtk_text_buffer_delete_interactive(
18838        buffer: *mut GtkTextBuffer,
18839        start_iter: *mut GtkTextIter,
18840        end_iter: *mut GtkTextIter,
18841        default_editable: gboolean,
18842    ) -> gboolean;
18843    pub fn gtk_text_buffer_delete_mark(buffer: *mut GtkTextBuffer, mark: *mut GtkTextMark);
18844    pub fn gtk_text_buffer_delete_mark_by_name(buffer: *mut GtkTextBuffer, name: *const c_char);
18845    pub fn gtk_text_buffer_delete_selection(
18846        buffer: *mut GtkTextBuffer,
18847        interactive: gboolean,
18848        default_editable: gboolean,
18849    ) -> gboolean;
18850    pub fn gtk_text_buffer_end_irreversible_action(buffer: *mut GtkTextBuffer);
18851    pub fn gtk_text_buffer_end_user_action(buffer: *mut GtkTextBuffer);
18852    pub fn gtk_text_buffer_get_bounds(
18853        buffer: *mut GtkTextBuffer,
18854        start: *mut GtkTextIter,
18855        end: *mut GtkTextIter,
18856    );
18857    pub fn gtk_text_buffer_get_can_redo(buffer: *mut GtkTextBuffer) -> gboolean;
18858    pub fn gtk_text_buffer_get_can_undo(buffer: *mut GtkTextBuffer) -> gboolean;
18859    pub fn gtk_text_buffer_get_char_count(buffer: *mut GtkTextBuffer) -> c_int;
18860    pub fn gtk_text_buffer_get_enable_undo(buffer: *mut GtkTextBuffer) -> gboolean;
18861    pub fn gtk_text_buffer_get_end_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
18862    pub fn gtk_text_buffer_get_has_selection(buffer: *mut GtkTextBuffer) -> gboolean;
18863    pub fn gtk_text_buffer_get_insert(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
18864    pub fn gtk_text_buffer_get_iter_at_child_anchor(
18865        buffer: *mut GtkTextBuffer,
18866        iter: *mut GtkTextIter,
18867        anchor: *mut GtkTextChildAnchor,
18868    );
18869    pub fn gtk_text_buffer_get_iter_at_line(
18870        buffer: *mut GtkTextBuffer,
18871        iter: *mut GtkTextIter,
18872        line_number: c_int,
18873    ) -> gboolean;
18874    pub fn gtk_text_buffer_get_iter_at_line_index(
18875        buffer: *mut GtkTextBuffer,
18876        iter: *mut GtkTextIter,
18877        line_number: c_int,
18878        byte_index: c_int,
18879    ) -> gboolean;
18880    pub fn gtk_text_buffer_get_iter_at_line_offset(
18881        buffer: *mut GtkTextBuffer,
18882        iter: *mut GtkTextIter,
18883        line_number: c_int,
18884        char_offset: c_int,
18885    ) -> gboolean;
18886    pub fn gtk_text_buffer_get_iter_at_mark(
18887        buffer: *mut GtkTextBuffer,
18888        iter: *mut GtkTextIter,
18889        mark: *mut GtkTextMark,
18890    );
18891    pub fn gtk_text_buffer_get_iter_at_offset(
18892        buffer: *mut GtkTextBuffer,
18893        iter: *mut GtkTextIter,
18894        char_offset: c_int,
18895    );
18896    pub fn gtk_text_buffer_get_line_count(buffer: *mut GtkTextBuffer) -> c_int;
18897    pub fn gtk_text_buffer_get_mark(
18898        buffer: *mut GtkTextBuffer,
18899        name: *const c_char,
18900    ) -> *mut GtkTextMark;
18901    pub fn gtk_text_buffer_get_max_undo_levels(buffer: *mut GtkTextBuffer) -> c_uint;
18902    pub fn gtk_text_buffer_get_modified(buffer: *mut GtkTextBuffer) -> gboolean;
18903    pub fn gtk_text_buffer_get_selection_bound(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
18904    pub fn gtk_text_buffer_get_selection_bounds(
18905        buffer: *mut GtkTextBuffer,
18906        start: *mut GtkTextIter,
18907        end: *mut GtkTextIter,
18908    ) -> gboolean;
18909    pub fn gtk_text_buffer_get_selection_content(
18910        buffer: *mut GtkTextBuffer,
18911    ) -> *mut gdk::GdkContentProvider;
18912    pub fn gtk_text_buffer_get_slice(
18913        buffer: *mut GtkTextBuffer,
18914        start: *const GtkTextIter,
18915        end: *const GtkTextIter,
18916        include_hidden_chars: gboolean,
18917    ) -> *mut c_char;
18918    pub fn gtk_text_buffer_get_start_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
18919    pub fn gtk_text_buffer_get_tag_table(buffer: *mut GtkTextBuffer) -> *mut GtkTextTagTable;
18920    pub fn gtk_text_buffer_get_text(
18921        buffer: *mut GtkTextBuffer,
18922        start: *const GtkTextIter,
18923        end: *const GtkTextIter,
18924        include_hidden_chars: gboolean,
18925    ) -> *mut c_char;
18926    pub fn gtk_text_buffer_insert(
18927        buffer: *mut GtkTextBuffer,
18928        iter: *mut GtkTextIter,
18929        text: *const c_char,
18930        len: c_int,
18931    );
18932    pub fn gtk_text_buffer_insert_at_cursor(
18933        buffer: *mut GtkTextBuffer,
18934        text: *const c_char,
18935        len: c_int,
18936    );
18937    pub fn gtk_text_buffer_insert_child_anchor(
18938        buffer: *mut GtkTextBuffer,
18939        iter: *mut GtkTextIter,
18940        anchor: *mut GtkTextChildAnchor,
18941    );
18942    pub fn gtk_text_buffer_insert_interactive(
18943        buffer: *mut GtkTextBuffer,
18944        iter: *mut GtkTextIter,
18945        text: *const c_char,
18946        len: c_int,
18947        default_editable: gboolean,
18948    ) -> gboolean;
18949    pub fn gtk_text_buffer_insert_interactive_at_cursor(
18950        buffer: *mut GtkTextBuffer,
18951        text: *const c_char,
18952        len: c_int,
18953        default_editable: gboolean,
18954    ) -> gboolean;
18955    pub fn gtk_text_buffer_insert_markup(
18956        buffer: *mut GtkTextBuffer,
18957        iter: *mut GtkTextIter,
18958        markup: *const c_char,
18959        len: c_int,
18960    );
18961    pub fn gtk_text_buffer_insert_paintable(
18962        buffer: *mut GtkTextBuffer,
18963        iter: *mut GtkTextIter,
18964        paintable: *mut gdk::GdkPaintable,
18965    );
18966    pub fn gtk_text_buffer_insert_range(
18967        buffer: *mut GtkTextBuffer,
18968        iter: *mut GtkTextIter,
18969        start: *const GtkTextIter,
18970        end: *const GtkTextIter,
18971    );
18972    pub fn gtk_text_buffer_insert_range_interactive(
18973        buffer: *mut GtkTextBuffer,
18974        iter: *mut GtkTextIter,
18975        start: *const GtkTextIter,
18976        end: *const GtkTextIter,
18977        default_editable: gboolean,
18978    ) -> gboolean;
18979    pub fn gtk_text_buffer_insert_with_tags(
18980        buffer: *mut GtkTextBuffer,
18981        iter: *mut GtkTextIter,
18982        text: *const c_char,
18983        len: c_int,
18984        first_tag: *mut GtkTextTag,
18985        ...
18986    );
18987    pub fn gtk_text_buffer_insert_with_tags_by_name(
18988        buffer: *mut GtkTextBuffer,
18989        iter: *mut GtkTextIter,
18990        text: *const c_char,
18991        len: c_int,
18992        first_tag_name: *const c_char,
18993        ...
18994    );
18995    pub fn gtk_text_buffer_move_mark(
18996        buffer: *mut GtkTextBuffer,
18997        mark: *mut GtkTextMark,
18998        where_: *const GtkTextIter,
18999    );
19000    pub fn gtk_text_buffer_move_mark_by_name(
19001        buffer: *mut GtkTextBuffer,
19002        name: *const c_char,
19003        where_: *const GtkTextIter,
19004    );
19005    pub fn gtk_text_buffer_paste_clipboard(
19006        buffer: *mut GtkTextBuffer,
19007        clipboard: *mut gdk::GdkClipboard,
19008        override_location: *mut GtkTextIter,
19009        default_editable: gboolean,
19010    );
19011    pub fn gtk_text_buffer_place_cursor(buffer: *mut GtkTextBuffer, where_: *const GtkTextIter);
19012    pub fn gtk_text_buffer_redo(buffer: *mut GtkTextBuffer);
19013    pub fn gtk_text_buffer_remove_all_tags(
19014        buffer: *mut GtkTextBuffer,
19015        start: *const GtkTextIter,
19016        end: *const GtkTextIter,
19017    );
19018    #[cfg(feature = "v4_16")]
19019    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
19020    pub fn gtk_text_buffer_remove_commit_notify(
19021        buffer: *mut GtkTextBuffer,
19022        commit_notify_handler: c_uint,
19023    );
19024    pub fn gtk_text_buffer_remove_selection_clipboard(
19025        buffer: *mut GtkTextBuffer,
19026        clipboard: *mut gdk::GdkClipboard,
19027    );
19028    pub fn gtk_text_buffer_remove_tag(
19029        buffer: *mut GtkTextBuffer,
19030        tag: *mut GtkTextTag,
19031        start: *const GtkTextIter,
19032        end: *const GtkTextIter,
19033    );
19034    pub fn gtk_text_buffer_remove_tag_by_name(
19035        buffer: *mut GtkTextBuffer,
19036        name: *const c_char,
19037        start: *const GtkTextIter,
19038        end: *const GtkTextIter,
19039    );
19040    pub fn gtk_text_buffer_select_range(
19041        buffer: *mut GtkTextBuffer,
19042        ins: *const GtkTextIter,
19043        bound: *const GtkTextIter,
19044    );
19045    pub fn gtk_text_buffer_set_enable_undo(buffer: *mut GtkTextBuffer, enable_undo: gboolean);
19046    pub fn gtk_text_buffer_set_max_undo_levels(buffer: *mut GtkTextBuffer, max_undo_levels: c_uint);
19047    pub fn gtk_text_buffer_set_modified(buffer: *mut GtkTextBuffer, setting: gboolean);
19048    pub fn gtk_text_buffer_set_text(buffer: *mut GtkTextBuffer, text: *const c_char, len: c_int);
19049    pub fn gtk_text_buffer_undo(buffer: *mut GtkTextBuffer);
19050
19051    //=========================================================================
19052    // GtkTextChildAnchor
19053    //=========================================================================
19054    pub fn gtk_text_child_anchor_get_type() -> GType;
19055    pub fn gtk_text_child_anchor_new() -> *mut GtkTextChildAnchor;
19056    #[cfg(feature = "v4_6")]
19057    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19058    pub fn gtk_text_child_anchor_new_with_replacement(
19059        character: *const c_char,
19060    ) -> *mut GtkTextChildAnchor;
19061    pub fn gtk_text_child_anchor_get_deleted(anchor: *mut GtkTextChildAnchor) -> gboolean;
19062    pub fn gtk_text_child_anchor_get_widgets(
19063        anchor: *mut GtkTextChildAnchor,
19064        out_len: *mut c_uint,
19065    ) -> *mut *mut GtkWidget;
19066
19067    //=========================================================================
19068    // GtkTextMark
19069    //=========================================================================
19070    pub fn gtk_text_mark_get_type() -> GType;
19071    pub fn gtk_text_mark_new(name: *const c_char, left_gravity: gboolean) -> *mut GtkTextMark;
19072    pub fn gtk_text_mark_get_buffer(mark: *mut GtkTextMark) -> *mut GtkTextBuffer;
19073    pub fn gtk_text_mark_get_deleted(mark: *mut GtkTextMark) -> gboolean;
19074    pub fn gtk_text_mark_get_left_gravity(mark: *mut GtkTextMark) -> gboolean;
19075    pub fn gtk_text_mark_get_name(mark: *mut GtkTextMark) -> *const c_char;
19076    pub fn gtk_text_mark_get_visible(mark: *mut GtkTextMark) -> gboolean;
19077    pub fn gtk_text_mark_set_visible(mark: *mut GtkTextMark, setting: gboolean);
19078
19079    //=========================================================================
19080    // GtkTextTag
19081    //=========================================================================
19082    pub fn gtk_text_tag_get_type() -> GType;
19083    pub fn gtk_text_tag_new(name: *const c_char) -> *mut GtkTextTag;
19084    pub fn gtk_text_tag_changed(tag: *mut GtkTextTag, size_changed: gboolean);
19085    pub fn gtk_text_tag_get_priority(tag: *mut GtkTextTag) -> c_int;
19086    pub fn gtk_text_tag_set_priority(tag: *mut GtkTextTag, priority: c_int);
19087
19088    //=========================================================================
19089    // GtkTextTagTable
19090    //=========================================================================
19091    pub fn gtk_text_tag_table_get_type() -> GType;
19092    pub fn gtk_text_tag_table_new() -> *mut GtkTextTagTable;
19093    pub fn gtk_text_tag_table_add(table: *mut GtkTextTagTable, tag: *mut GtkTextTag) -> gboolean;
19094    pub fn gtk_text_tag_table_foreach(
19095        table: *mut GtkTextTagTable,
19096        func: GtkTextTagTableForeach,
19097        data: gpointer,
19098    );
19099    pub fn gtk_text_tag_table_get_size(table: *mut GtkTextTagTable) -> c_int;
19100    pub fn gtk_text_tag_table_lookup(
19101        table: *mut GtkTextTagTable,
19102        name: *const c_char,
19103    ) -> *mut GtkTextTag;
19104    pub fn gtk_text_tag_table_remove(table: *mut GtkTextTagTable, tag: *mut GtkTextTag);
19105
19106    //=========================================================================
19107    // GtkTextView
19108    //=========================================================================
19109    pub fn gtk_text_view_get_type() -> GType;
19110    pub fn gtk_text_view_new() -> *mut GtkWidget;
19111    pub fn gtk_text_view_new_with_buffer(buffer: *mut GtkTextBuffer) -> *mut GtkWidget;
19112    pub fn gtk_text_view_add_child_at_anchor(
19113        text_view: *mut GtkTextView,
19114        child: *mut GtkWidget,
19115        anchor: *mut GtkTextChildAnchor,
19116    );
19117    pub fn gtk_text_view_add_overlay(
19118        text_view: *mut GtkTextView,
19119        child: *mut GtkWidget,
19120        xpos: c_int,
19121        ypos: c_int,
19122    );
19123    pub fn gtk_text_view_backward_display_line(
19124        text_view: *mut GtkTextView,
19125        iter: *mut GtkTextIter,
19126    ) -> gboolean;
19127    pub fn gtk_text_view_backward_display_line_start(
19128        text_view: *mut GtkTextView,
19129        iter: *mut GtkTextIter,
19130    ) -> gboolean;
19131    pub fn gtk_text_view_buffer_to_window_coords(
19132        text_view: *mut GtkTextView,
19133        win: GtkTextWindowType,
19134        buffer_x: c_int,
19135        buffer_y: c_int,
19136        window_x: *mut c_int,
19137        window_y: *mut c_int,
19138    );
19139    pub fn gtk_text_view_forward_display_line(
19140        text_view: *mut GtkTextView,
19141        iter: *mut GtkTextIter,
19142    ) -> gboolean;
19143    pub fn gtk_text_view_forward_display_line_end(
19144        text_view: *mut GtkTextView,
19145        iter: *mut GtkTextIter,
19146    ) -> gboolean;
19147    pub fn gtk_text_view_get_accepts_tab(text_view: *mut GtkTextView) -> gboolean;
19148    pub fn gtk_text_view_get_bottom_margin(text_view: *mut GtkTextView) -> c_int;
19149    pub fn gtk_text_view_get_buffer(text_view: *mut GtkTextView) -> *mut GtkTextBuffer;
19150    pub fn gtk_text_view_get_cursor_locations(
19151        text_view: *mut GtkTextView,
19152        iter: *const GtkTextIter,
19153        strong: *mut gdk::GdkRectangle,
19154        weak: *mut gdk::GdkRectangle,
19155    );
19156    pub fn gtk_text_view_get_cursor_visible(text_view: *mut GtkTextView) -> gboolean;
19157    pub fn gtk_text_view_get_editable(text_view: *mut GtkTextView) -> gboolean;
19158    pub fn gtk_text_view_get_extra_menu(text_view: *mut GtkTextView) -> *mut gio::GMenuModel;
19159    pub fn gtk_text_view_get_gutter(
19160        text_view: *mut GtkTextView,
19161        win: GtkTextWindowType,
19162    ) -> *mut GtkWidget;
19163    pub fn gtk_text_view_get_indent(text_view: *mut GtkTextView) -> c_int;
19164    pub fn gtk_text_view_get_input_hints(text_view: *mut GtkTextView) -> GtkInputHints;
19165    pub fn gtk_text_view_get_input_purpose(text_view: *mut GtkTextView) -> GtkInputPurpose;
19166    pub fn gtk_text_view_get_iter_at_location(
19167        text_view: *mut GtkTextView,
19168        iter: *mut GtkTextIter,
19169        x: c_int,
19170        y: c_int,
19171    ) -> gboolean;
19172    pub fn gtk_text_view_get_iter_at_position(
19173        text_view: *mut GtkTextView,
19174        iter: *mut GtkTextIter,
19175        trailing: *mut c_int,
19176        x: c_int,
19177        y: c_int,
19178    ) -> gboolean;
19179    pub fn gtk_text_view_get_iter_location(
19180        text_view: *mut GtkTextView,
19181        iter: *const GtkTextIter,
19182        location: *mut gdk::GdkRectangle,
19183    );
19184    pub fn gtk_text_view_get_justification(text_view: *mut GtkTextView) -> GtkJustification;
19185    pub fn gtk_text_view_get_left_margin(text_view: *mut GtkTextView) -> c_int;
19186    pub fn gtk_text_view_get_line_at_y(
19187        text_view: *mut GtkTextView,
19188        target_iter: *mut GtkTextIter,
19189        y: c_int,
19190        line_top: *mut c_int,
19191    );
19192    pub fn gtk_text_view_get_line_yrange(
19193        text_view: *mut GtkTextView,
19194        iter: *const GtkTextIter,
19195        y: *mut c_int,
19196        height: *mut c_int,
19197    );
19198    #[cfg(feature = "v4_4")]
19199    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19200    pub fn gtk_text_view_get_ltr_context(text_view: *mut GtkTextView) -> *mut pango::PangoContext;
19201    pub fn gtk_text_view_get_monospace(text_view: *mut GtkTextView) -> gboolean;
19202    pub fn gtk_text_view_get_overwrite(text_view: *mut GtkTextView) -> gboolean;
19203    pub fn gtk_text_view_get_pixels_above_lines(text_view: *mut GtkTextView) -> c_int;
19204    pub fn gtk_text_view_get_pixels_below_lines(text_view: *mut GtkTextView) -> c_int;
19205    pub fn gtk_text_view_get_pixels_inside_wrap(text_view: *mut GtkTextView) -> c_int;
19206    pub fn gtk_text_view_get_right_margin(text_view: *mut GtkTextView) -> c_int;
19207    #[cfg(feature = "v4_4")]
19208    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19209    pub fn gtk_text_view_get_rtl_context(text_view: *mut GtkTextView) -> *mut pango::PangoContext;
19210    pub fn gtk_text_view_get_tabs(text_view: *mut GtkTextView) -> *mut pango::PangoTabArray;
19211    pub fn gtk_text_view_get_top_margin(text_view: *mut GtkTextView) -> c_int;
19212    #[cfg(feature = "v4_18")]
19213    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
19214    pub fn gtk_text_view_get_visible_offset(
19215        text_view: *mut GtkTextView,
19216        x_offset: *mut c_double,
19217        y_offset: *mut c_double,
19218    );
19219    pub fn gtk_text_view_get_visible_rect(
19220        text_view: *mut GtkTextView,
19221        visible_rect: *mut gdk::GdkRectangle,
19222    );
19223    pub fn gtk_text_view_get_wrap_mode(text_view: *mut GtkTextView) -> GtkWrapMode;
19224    pub fn gtk_text_view_im_context_filter_keypress(
19225        text_view: *mut GtkTextView,
19226        event: *mut gdk::GdkEvent,
19227    ) -> gboolean;
19228    pub fn gtk_text_view_move_mark_onscreen(
19229        text_view: *mut GtkTextView,
19230        mark: *mut GtkTextMark,
19231    ) -> gboolean;
19232    pub fn gtk_text_view_move_overlay(
19233        text_view: *mut GtkTextView,
19234        child: *mut GtkWidget,
19235        xpos: c_int,
19236        ypos: c_int,
19237    );
19238    pub fn gtk_text_view_move_visually(
19239        text_view: *mut GtkTextView,
19240        iter: *mut GtkTextIter,
19241        count: c_int,
19242    ) -> gboolean;
19243    pub fn gtk_text_view_place_cursor_onscreen(text_view: *mut GtkTextView) -> gboolean;
19244    pub fn gtk_text_view_remove(text_view: *mut GtkTextView, child: *mut GtkWidget);
19245    pub fn gtk_text_view_reset_cursor_blink(text_view: *mut GtkTextView);
19246    pub fn gtk_text_view_reset_im_context(text_view: *mut GtkTextView);
19247    pub fn gtk_text_view_scroll_mark_onscreen(text_view: *mut GtkTextView, mark: *mut GtkTextMark);
19248    pub fn gtk_text_view_scroll_to_iter(
19249        text_view: *mut GtkTextView,
19250        iter: *mut GtkTextIter,
19251        within_margin: c_double,
19252        use_align: gboolean,
19253        xalign: c_double,
19254        yalign: c_double,
19255    ) -> gboolean;
19256    pub fn gtk_text_view_scroll_to_mark(
19257        text_view: *mut GtkTextView,
19258        mark: *mut GtkTextMark,
19259        within_margin: c_double,
19260        use_align: gboolean,
19261        xalign: c_double,
19262        yalign: c_double,
19263    );
19264    pub fn gtk_text_view_set_accepts_tab(text_view: *mut GtkTextView, accepts_tab: gboolean);
19265    pub fn gtk_text_view_set_bottom_margin(text_view: *mut GtkTextView, bottom_margin: c_int);
19266    pub fn gtk_text_view_set_buffer(text_view: *mut GtkTextView, buffer: *mut GtkTextBuffer);
19267    pub fn gtk_text_view_set_cursor_visible(text_view: *mut GtkTextView, setting: gboolean);
19268    pub fn gtk_text_view_set_editable(text_view: *mut GtkTextView, setting: gboolean);
19269    pub fn gtk_text_view_set_extra_menu(text_view: *mut GtkTextView, model: *mut gio::GMenuModel);
19270    pub fn gtk_text_view_set_gutter(
19271        text_view: *mut GtkTextView,
19272        win: GtkTextWindowType,
19273        widget: *mut GtkWidget,
19274    );
19275    pub fn gtk_text_view_set_indent(text_view: *mut GtkTextView, indent: c_int);
19276    pub fn gtk_text_view_set_input_hints(text_view: *mut GtkTextView, hints: GtkInputHints);
19277    pub fn gtk_text_view_set_input_purpose(text_view: *mut GtkTextView, purpose: GtkInputPurpose);
19278    pub fn gtk_text_view_set_justification(
19279        text_view: *mut GtkTextView,
19280        justification: GtkJustification,
19281    );
19282    pub fn gtk_text_view_set_left_margin(text_view: *mut GtkTextView, left_margin: c_int);
19283    pub fn gtk_text_view_set_monospace(text_view: *mut GtkTextView, monospace: gboolean);
19284    pub fn gtk_text_view_set_overwrite(text_view: *mut GtkTextView, overwrite: gboolean);
19285    pub fn gtk_text_view_set_pixels_above_lines(
19286        text_view: *mut GtkTextView,
19287        pixels_above_lines: c_int,
19288    );
19289    pub fn gtk_text_view_set_pixels_below_lines(
19290        text_view: *mut GtkTextView,
19291        pixels_below_lines: c_int,
19292    );
19293    pub fn gtk_text_view_set_pixels_inside_wrap(
19294        text_view: *mut GtkTextView,
19295        pixels_inside_wrap: c_int,
19296    );
19297    pub fn gtk_text_view_set_right_margin(text_view: *mut GtkTextView, right_margin: c_int);
19298    pub fn gtk_text_view_set_tabs(text_view: *mut GtkTextView, tabs: *mut pango::PangoTabArray);
19299    pub fn gtk_text_view_set_top_margin(text_view: *mut GtkTextView, top_margin: c_int);
19300    pub fn gtk_text_view_set_wrap_mode(text_view: *mut GtkTextView, wrap_mode: GtkWrapMode);
19301    pub fn gtk_text_view_starts_display_line(
19302        text_view: *mut GtkTextView,
19303        iter: *const GtkTextIter,
19304    ) -> gboolean;
19305    pub fn gtk_text_view_window_to_buffer_coords(
19306        text_view: *mut GtkTextView,
19307        win: GtkTextWindowType,
19308        window_x: c_int,
19309        window_y: c_int,
19310        buffer_x: *mut c_int,
19311        buffer_y: *mut c_int,
19312    );
19313
19314    //=========================================================================
19315    // GtkToggleButton
19316    //=========================================================================
19317    pub fn gtk_toggle_button_get_type() -> GType;
19318    pub fn gtk_toggle_button_new() -> *mut GtkWidget;
19319    pub fn gtk_toggle_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
19320    pub fn gtk_toggle_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
19321    pub fn gtk_toggle_button_get_active(toggle_button: *mut GtkToggleButton) -> gboolean;
19322    pub fn gtk_toggle_button_set_active(toggle_button: *mut GtkToggleButton, is_active: gboolean);
19323    pub fn gtk_toggle_button_set_group(
19324        toggle_button: *mut GtkToggleButton,
19325        group: *mut GtkToggleButton,
19326    );
19327    pub fn gtk_toggle_button_toggled(toggle_button: *mut GtkToggleButton);
19328
19329    //=========================================================================
19330    // GtkTooltip
19331    //=========================================================================
19332    pub fn gtk_tooltip_get_type() -> GType;
19333    pub fn gtk_tooltip_set_custom(tooltip: *mut GtkTooltip, custom_widget: *mut GtkWidget);
19334    pub fn gtk_tooltip_set_icon(tooltip: *mut GtkTooltip, paintable: *mut gdk::GdkPaintable);
19335    pub fn gtk_tooltip_set_icon_from_gicon(tooltip: *mut GtkTooltip, gicon: *mut gio::GIcon);
19336    pub fn gtk_tooltip_set_icon_from_icon_name(tooltip: *mut GtkTooltip, icon_name: *const c_char);
19337    pub fn gtk_tooltip_set_markup(tooltip: *mut GtkTooltip, markup: *const c_char);
19338    pub fn gtk_tooltip_set_text(tooltip: *mut GtkTooltip, text: *const c_char);
19339    pub fn gtk_tooltip_set_tip_area(tooltip: *mut GtkTooltip, rect: *const gdk::GdkRectangle);
19340
19341    //=========================================================================
19342    // GtkTreeExpander
19343    //=========================================================================
19344    pub fn gtk_tree_expander_get_type() -> GType;
19345    pub fn gtk_tree_expander_new() -> *mut GtkWidget;
19346    pub fn gtk_tree_expander_get_child(self_: *mut GtkTreeExpander) -> *mut GtkWidget;
19347    #[cfg(feature = "v4_10")]
19348    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19349    pub fn gtk_tree_expander_get_hide_expander(self_: *mut GtkTreeExpander) -> gboolean;
19350    #[cfg(feature = "v4_10")]
19351    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19352    pub fn gtk_tree_expander_get_indent_for_depth(self_: *mut GtkTreeExpander) -> gboolean;
19353    #[cfg(feature = "v4_6")]
19354    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19355    pub fn gtk_tree_expander_get_indent_for_icon(self_: *mut GtkTreeExpander) -> gboolean;
19356    pub fn gtk_tree_expander_get_item(self_: *mut GtkTreeExpander) -> *mut gobject::GObject;
19357    pub fn gtk_tree_expander_get_list_row(self_: *mut GtkTreeExpander) -> *mut GtkTreeListRow;
19358    pub fn gtk_tree_expander_set_child(self_: *mut GtkTreeExpander, child: *mut GtkWidget);
19359    #[cfg(feature = "v4_10")]
19360    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19361    pub fn gtk_tree_expander_set_hide_expander(
19362        self_: *mut GtkTreeExpander,
19363        hide_expander: gboolean,
19364    );
19365    #[cfg(feature = "v4_10")]
19366    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19367    pub fn gtk_tree_expander_set_indent_for_depth(
19368        self_: *mut GtkTreeExpander,
19369        indent_for_depth: gboolean,
19370    );
19371    #[cfg(feature = "v4_6")]
19372    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19373    pub fn gtk_tree_expander_set_indent_for_icon(
19374        self_: *mut GtkTreeExpander,
19375        indent_for_icon: gboolean,
19376    );
19377    pub fn gtk_tree_expander_set_list_row(
19378        self_: *mut GtkTreeExpander,
19379        list_row: *mut GtkTreeListRow,
19380    );
19381
19382    //=========================================================================
19383    // GtkTreeListModel
19384    //=========================================================================
19385    pub fn gtk_tree_list_model_get_type() -> GType;
19386    pub fn gtk_tree_list_model_new(
19387        root: *mut gio::GListModel,
19388        passthrough: gboolean,
19389        autoexpand: gboolean,
19390        create_func: GtkTreeListModelCreateModelFunc,
19391        user_data: gpointer,
19392        user_destroy: glib::GDestroyNotify,
19393    ) -> *mut GtkTreeListModel;
19394    pub fn gtk_tree_list_model_get_autoexpand(self_: *mut GtkTreeListModel) -> gboolean;
19395    pub fn gtk_tree_list_model_get_child_row(
19396        self_: *mut GtkTreeListModel,
19397        position: c_uint,
19398    ) -> *mut GtkTreeListRow;
19399    pub fn gtk_tree_list_model_get_model(self_: *mut GtkTreeListModel) -> *mut gio::GListModel;
19400    pub fn gtk_tree_list_model_get_passthrough(self_: *mut GtkTreeListModel) -> gboolean;
19401    pub fn gtk_tree_list_model_get_row(
19402        self_: *mut GtkTreeListModel,
19403        position: c_uint,
19404    ) -> *mut GtkTreeListRow;
19405    pub fn gtk_tree_list_model_set_autoexpand(self_: *mut GtkTreeListModel, autoexpand: gboolean);
19406
19407    //=========================================================================
19408    // GtkTreeListRow
19409    //=========================================================================
19410    pub fn gtk_tree_list_row_get_type() -> GType;
19411    pub fn gtk_tree_list_row_get_child_row(
19412        self_: *mut GtkTreeListRow,
19413        position: c_uint,
19414    ) -> *mut GtkTreeListRow;
19415    pub fn gtk_tree_list_row_get_children(self_: *mut GtkTreeListRow) -> *mut gio::GListModel;
19416    pub fn gtk_tree_list_row_get_depth(self_: *mut GtkTreeListRow) -> c_uint;
19417    pub fn gtk_tree_list_row_get_expanded(self_: *mut GtkTreeListRow) -> gboolean;
19418    pub fn gtk_tree_list_row_get_item(self_: *mut GtkTreeListRow) -> *mut gobject::GObject;
19419    pub fn gtk_tree_list_row_get_parent(self_: *mut GtkTreeListRow) -> *mut GtkTreeListRow;
19420    pub fn gtk_tree_list_row_get_position(self_: *mut GtkTreeListRow) -> c_uint;
19421    pub fn gtk_tree_list_row_is_expandable(self_: *mut GtkTreeListRow) -> gboolean;
19422    pub fn gtk_tree_list_row_set_expanded(self_: *mut GtkTreeListRow, expanded: gboolean);
19423
19424    //=========================================================================
19425    // GtkTreeListRowSorter
19426    //=========================================================================
19427    pub fn gtk_tree_list_row_sorter_get_type() -> GType;
19428    pub fn gtk_tree_list_row_sorter_new(sorter: *mut GtkSorter) -> *mut GtkTreeListRowSorter;
19429    pub fn gtk_tree_list_row_sorter_get_sorter(self_: *mut GtkTreeListRowSorter) -> *mut GtkSorter;
19430    pub fn gtk_tree_list_row_sorter_set_sorter(
19431        self_: *mut GtkTreeListRowSorter,
19432        sorter: *mut GtkSorter,
19433    );
19434
19435    //=========================================================================
19436    // GtkTreeModelFilter
19437    //=========================================================================
19438    pub fn gtk_tree_model_filter_get_type() -> GType;
19439    pub fn gtk_tree_model_filter_clear_cache(filter: *mut GtkTreeModelFilter);
19440    pub fn gtk_tree_model_filter_convert_child_iter_to_iter(
19441        filter: *mut GtkTreeModelFilter,
19442        filter_iter: *mut GtkTreeIter,
19443        child_iter: *mut GtkTreeIter,
19444    ) -> gboolean;
19445    pub fn gtk_tree_model_filter_convert_child_path_to_path(
19446        filter: *mut GtkTreeModelFilter,
19447        child_path: *mut GtkTreePath,
19448    ) -> *mut GtkTreePath;
19449    pub fn gtk_tree_model_filter_convert_iter_to_child_iter(
19450        filter: *mut GtkTreeModelFilter,
19451        child_iter: *mut GtkTreeIter,
19452        filter_iter: *mut GtkTreeIter,
19453    );
19454    pub fn gtk_tree_model_filter_convert_path_to_child_path(
19455        filter: *mut GtkTreeModelFilter,
19456        filter_path: *mut GtkTreePath,
19457    ) -> *mut GtkTreePath;
19458    pub fn gtk_tree_model_filter_get_model(filter: *mut GtkTreeModelFilter) -> *mut GtkTreeModel;
19459    pub fn gtk_tree_model_filter_refilter(filter: *mut GtkTreeModelFilter);
19460    pub fn gtk_tree_model_filter_set_modify_func(
19461        filter: *mut GtkTreeModelFilter,
19462        n_columns: c_int,
19463        types: *mut GType,
19464        func: GtkTreeModelFilterModifyFunc,
19465        data: gpointer,
19466        destroy: glib::GDestroyNotify,
19467    );
19468    pub fn gtk_tree_model_filter_set_visible_column(filter: *mut GtkTreeModelFilter, column: c_int);
19469    pub fn gtk_tree_model_filter_set_visible_func(
19470        filter: *mut GtkTreeModelFilter,
19471        func: GtkTreeModelFilterVisibleFunc,
19472        data: gpointer,
19473        destroy: glib::GDestroyNotify,
19474    );
19475
19476    //=========================================================================
19477    // GtkTreeModelSort
19478    //=========================================================================
19479    pub fn gtk_tree_model_sort_get_type() -> GType;
19480    pub fn gtk_tree_model_sort_new_with_model(
19481        child_model: *mut GtkTreeModel,
19482    ) -> *mut GtkTreeModelSort;
19483    pub fn gtk_tree_model_sort_clear_cache(tree_model_sort: *mut GtkTreeModelSort);
19484    pub fn gtk_tree_model_sort_convert_child_iter_to_iter(
19485        tree_model_sort: *mut GtkTreeModelSort,
19486        sort_iter: *mut GtkTreeIter,
19487        child_iter: *mut GtkTreeIter,
19488    ) -> gboolean;
19489    pub fn gtk_tree_model_sort_convert_child_path_to_path(
19490        tree_model_sort: *mut GtkTreeModelSort,
19491        child_path: *mut GtkTreePath,
19492    ) -> *mut GtkTreePath;
19493    pub fn gtk_tree_model_sort_convert_iter_to_child_iter(
19494        tree_model_sort: *mut GtkTreeModelSort,
19495        child_iter: *mut GtkTreeIter,
19496        sorted_iter: *mut GtkTreeIter,
19497    );
19498    pub fn gtk_tree_model_sort_convert_path_to_child_path(
19499        tree_model_sort: *mut GtkTreeModelSort,
19500        sorted_path: *mut GtkTreePath,
19501    ) -> *mut GtkTreePath;
19502    pub fn gtk_tree_model_sort_get_model(tree_model: *mut GtkTreeModelSort) -> *mut GtkTreeModel;
19503    pub fn gtk_tree_model_sort_iter_is_valid(
19504        tree_model_sort: *mut GtkTreeModelSort,
19505        iter: *mut GtkTreeIter,
19506    ) -> gboolean;
19507    pub fn gtk_tree_model_sort_reset_default_sort_func(tree_model_sort: *mut GtkTreeModelSort);
19508
19509    //=========================================================================
19510    // GtkTreeSelection
19511    //=========================================================================
19512    pub fn gtk_tree_selection_get_type() -> GType;
19513    pub fn gtk_tree_selection_count_selected_rows(selection: *mut GtkTreeSelection) -> c_int;
19514    pub fn gtk_tree_selection_get_mode(selection: *mut GtkTreeSelection) -> GtkSelectionMode;
19515    pub fn gtk_tree_selection_get_select_function(
19516        selection: *mut GtkTreeSelection,
19517    ) -> GtkTreeSelectionFunc;
19518    pub fn gtk_tree_selection_get_selected(
19519        selection: *mut GtkTreeSelection,
19520        model: *mut *mut GtkTreeModel,
19521        iter: *mut GtkTreeIter,
19522    ) -> gboolean;
19523    pub fn gtk_tree_selection_get_selected_rows(
19524        selection: *mut GtkTreeSelection,
19525        model: *mut *mut GtkTreeModel,
19526    ) -> *mut glib::GList;
19527    pub fn gtk_tree_selection_get_tree_view(selection: *mut GtkTreeSelection) -> *mut GtkTreeView;
19528    pub fn gtk_tree_selection_get_user_data(selection: *mut GtkTreeSelection) -> gpointer;
19529    pub fn gtk_tree_selection_iter_is_selected(
19530        selection: *mut GtkTreeSelection,
19531        iter: *mut GtkTreeIter,
19532    ) -> gboolean;
19533    pub fn gtk_tree_selection_path_is_selected(
19534        selection: *mut GtkTreeSelection,
19535        path: *mut GtkTreePath,
19536    ) -> gboolean;
19537    pub fn gtk_tree_selection_select_all(selection: *mut GtkTreeSelection);
19538    pub fn gtk_tree_selection_select_iter(selection: *mut GtkTreeSelection, iter: *mut GtkTreeIter);
19539    pub fn gtk_tree_selection_select_path(selection: *mut GtkTreeSelection, path: *mut GtkTreePath);
19540    pub fn gtk_tree_selection_select_range(
19541        selection: *mut GtkTreeSelection,
19542        start_path: *mut GtkTreePath,
19543        end_path: *mut GtkTreePath,
19544    );
19545    pub fn gtk_tree_selection_selected_foreach(
19546        selection: *mut GtkTreeSelection,
19547        func: GtkTreeSelectionForeachFunc,
19548        data: gpointer,
19549    );
19550    pub fn gtk_tree_selection_set_mode(selection: *mut GtkTreeSelection, type_: GtkSelectionMode);
19551    pub fn gtk_tree_selection_set_select_function(
19552        selection: *mut GtkTreeSelection,
19553        func: GtkTreeSelectionFunc,
19554        data: gpointer,
19555        destroy: glib::GDestroyNotify,
19556    );
19557    pub fn gtk_tree_selection_unselect_all(selection: *mut GtkTreeSelection);
19558    pub fn gtk_tree_selection_unselect_iter(
19559        selection: *mut GtkTreeSelection,
19560        iter: *mut GtkTreeIter,
19561    );
19562    pub fn gtk_tree_selection_unselect_path(
19563        selection: *mut GtkTreeSelection,
19564        path: *mut GtkTreePath,
19565    );
19566    pub fn gtk_tree_selection_unselect_range(
19567        selection: *mut GtkTreeSelection,
19568        start_path: *mut GtkTreePath,
19569        end_path: *mut GtkTreePath,
19570    );
19571
19572    //=========================================================================
19573    // GtkTreeStore
19574    //=========================================================================
19575    pub fn gtk_tree_store_get_type() -> GType;
19576    pub fn gtk_tree_store_new(n_columns: c_int, ...) -> *mut GtkTreeStore;
19577    pub fn gtk_tree_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkTreeStore;
19578    pub fn gtk_tree_store_append(
19579        tree_store: *mut GtkTreeStore,
19580        iter: *mut GtkTreeIter,
19581        parent: *mut GtkTreeIter,
19582    );
19583    pub fn gtk_tree_store_clear(tree_store: *mut GtkTreeStore);
19584    pub fn gtk_tree_store_insert(
19585        tree_store: *mut GtkTreeStore,
19586        iter: *mut GtkTreeIter,
19587        parent: *mut GtkTreeIter,
19588        position: c_int,
19589    );
19590    pub fn gtk_tree_store_insert_after(
19591        tree_store: *mut GtkTreeStore,
19592        iter: *mut GtkTreeIter,
19593        parent: *mut GtkTreeIter,
19594        sibling: *mut GtkTreeIter,
19595    );
19596    pub fn gtk_tree_store_insert_before(
19597        tree_store: *mut GtkTreeStore,
19598        iter: *mut GtkTreeIter,
19599        parent: *mut GtkTreeIter,
19600        sibling: *mut GtkTreeIter,
19601    );
19602    pub fn gtk_tree_store_insert_with_values(
19603        tree_store: *mut GtkTreeStore,
19604        iter: *mut GtkTreeIter,
19605        parent: *mut GtkTreeIter,
19606        position: c_int,
19607        ...
19608    );
19609    pub fn gtk_tree_store_insert_with_valuesv(
19610        tree_store: *mut GtkTreeStore,
19611        iter: *mut GtkTreeIter,
19612        parent: *mut GtkTreeIter,
19613        position: c_int,
19614        columns: *mut c_int,
19615        values: *mut gobject::GValue,
19616        n_values: c_int,
19617    );
19618    pub fn gtk_tree_store_is_ancestor(
19619        tree_store: *mut GtkTreeStore,
19620        iter: *mut GtkTreeIter,
19621        descendant: *mut GtkTreeIter,
19622    ) -> gboolean;
19623    pub fn gtk_tree_store_iter_depth(
19624        tree_store: *mut GtkTreeStore,
19625        iter: *mut GtkTreeIter,
19626    ) -> c_int;
19627    pub fn gtk_tree_store_iter_is_valid(
19628        tree_store: *mut GtkTreeStore,
19629        iter: *mut GtkTreeIter,
19630    ) -> gboolean;
19631    pub fn gtk_tree_store_move_after(
19632        tree_store: *mut GtkTreeStore,
19633        iter: *mut GtkTreeIter,
19634        position: *mut GtkTreeIter,
19635    );
19636    pub fn gtk_tree_store_move_before(
19637        tree_store: *mut GtkTreeStore,
19638        iter: *mut GtkTreeIter,
19639        position: *mut GtkTreeIter,
19640    );
19641    pub fn gtk_tree_store_prepend(
19642        tree_store: *mut GtkTreeStore,
19643        iter: *mut GtkTreeIter,
19644        parent: *mut GtkTreeIter,
19645    );
19646    pub fn gtk_tree_store_remove(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter)
19647        -> gboolean;
19648    pub fn gtk_tree_store_reorder(
19649        tree_store: *mut GtkTreeStore,
19650        parent: *mut GtkTreeIter,
19651        new_order: *mut c_int,
19652    );
19653    pub fn gtk_tree_store_set(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, ...);
19654    pub fn gtk_tree_store_set_column_types(
19655        tree_store: *mut GtkTreeStore,
19656        n_columns: c_int,
19657        types: *mut GType,
19658    );
19659    //pub fn gtk_tree_store_set_valist(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
19660    pub fn gtk_tree_store_set_value(
19661        tree_store: *mut GtkTreeStore,
19662        iter: *mut GtkTreeIter,
19663        column: c_int,
19664        value: *mut gobject::GValue,
19665    );
19666    pub fn gtk_tree_store_set_valuesv(
19667        tree_store: *mut GtkTreeStore,
19668        iter: *mut GtkTreeIter,
19669        columns: *mut c_int,
19670        values: *mut gobject::GValue,
19671        n_values: c_int,
19672    );
19673    pub fn gtk_tree_store_swap(
19674        tree_store: *mut GtkTreeStore,
19675        a: *mut GtkTreeIter,
19676        b: *mut GtkTreeIter,
19677    );
19678
19679    //=========================================================================
19680    // GtkTreeView
19681    //=========================================================================
19682    pub fn gtk_tree_view_get_type() -> GType;
19683    pub fn gtk_tree_view_new() -> *mut GtkWidget;
19684    pub fn gtk_tree_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
19685    pub fn gtk_tree_view_append_column(
19686        tree_view: *mut GtkTreeView,
19687        column: *mut GtkTreeViewColumn,
19688    ) -> c_int;
19689    pub fn gtk_tree_view_collapse_all(tree_view: *mut GtkTreeView);
19690    pub fn gtk_tree_view_collapse_row(
19691        tree_view: *mut GtkTreeView,
19692        path: *mut GtkTreePath,
19693    ) -> gboolean;
19694    pub fn gtk_tree_view_columns_autosize(tree_view: *mut GtkTreeView);
19695    pub fn gtk_tree_view_convert_bin_window_to_tree_coords(
19696        tree_view: *mut GtkTreeView,
19697        bx: c_int,
19698        by: c_int,
19699        tx: *mut c_int,
19700        ty: *mut c_int,
19701    );
19702    pub fn gtk_tree_view_convert_bin_window_to_widget_coords(
19703        tree_view: *mut GtkTreeView,
19704        bx: c_int,
19705        by: c_int,
19706        wx: *mut c_int,
19707        wy: *mut c_int,
19708    );
19709    pub fn gtk_tree_view_convert_tree_to_bin_window_coords(
19710        tree_view: *mut GtkTreeView,
19711        tx: c_int,
19712        ty: c_int,
19713        bx: *mut c_int,
19714        by: *mut c_int,
19715    );
19716    pub fn gtk_tree_view_convert_tree_to_widget_coords(
19717        tree_view: *mut GtkTreeView,
19718        tx: c_int,
19719        ty: c_int,
19720        wx: *mut c_int,
19721        wy: *mut c_int,
19722    );
19723    pub fn gtk_tree_view_convert_widget_to_bin_window_coords(
19724        tree_view: *mut GtkTreeView,
19725        wx: c_int,
19726        wy: c_int,
19727        bx: *mut c_int,
19728        by: *mut c_int,
19729    );
19730    pub fn gtk_tree_view_convert_widget_to_tree_coords(
19731        tree_view: *mut GtkTreeView,
19732        wx: c_int,
19733        wy: c_int,
19734        tx: *mut c_int,
19735        ty: *mut c_int,
19736    );
19737    pub fn gtk_tree_view_create_row_drag_icon(
19738        tree_view: *mut GtkTreeView,
19739        path: *mut GtkTreePath,
19740    ) -> *mut gdk::GdkPaintable;
19741    pub fn gtk_tree_view_enable_model_drag_dest(
19742        tree_view: *mut GtkTreeView,
19743        formats: *mut gdk::GdkContentFormats,
19744        actions: gdk::GdkDragAction,
19745    );
19746    pub fn gtk_tree_view_enable_model_drag_source(
19747        tree_view: *mut GtkTreeView,
19748        start_button_mask: gdk::GdkModifierType,
19749        formats: *mut gdk::GdkContentFormats,
19750        actions: gdk::GdkDragAction,
19751    );
19752    pub fn gtk_tree_view_expand_all(tree_view: *mut GtkTreeView);
19753    pub fn gtk_tree_view_expand_row(
19754        tree_view: *mut GtkTreeView,
19755        path: *mut GtkTreePath,
19756        open_all: gboolean,
19757    ) -> gboolean;
19758    pub fn gtk_tree_view_expand_to_path(tree_view: *mut GtkTreeView, path: *mut GtkTreePath);
19759    pub fn gtk_tree_view_get_activate_on_single_click(tree_view: *mut GtkTreeView) -> gboolean;
19760    pub fn gtk_tree_view_get_background_area(
19761        tree_view: *mut GtkTreeView,
19762        path: *mut GtkTreePath,
19763        column: *mut GtkTreeViewColumn,
19764        rect: *mut gdk::GdkRectangle,
19765    );
19766    pub fn gtk_tree_view_get_cell_area(
19767        tree_view: *mut GtkTreeView,
19768        path: *mut GtkTreePath,
19769        column: *mut GtkTreeViewColumn,
19770        rect: *mut gdk::GdkRectangle,
19771    );
19772    pub fn gtk_tree_view_get_column(
19773        tree_view: *mut GtkTreeView,
19774        n: c_int,
19775    ) -> *mut GtkTreeViewColumn;
19776    pub fn gtk_tree_view_get_columns(tree_view: *mut GtkTreeView) -> *mut glib::GList;
19777    pub fn gtk_tree_view_get_cursor(
19778        tree_view: *mut GtkTreeView,
19779        path: *mut *mut GtkTreePath,
19780        focus_column: *mut *mut GtkTreeViewColumn,
19781    );
19782    pub fn gtk_tree_view_get_dest_row_at_pos(
19783        tree_view: *mut GtkTreeView,
19784        drag_x: c_int,
19785        drag_y: c_int,
19786        path: *mut *mut GtkTreePath,
19787        pos: *mut GtkTreeViewDropPosition,
19788    ) -> gboolean;
19789    pub fn gtk_tree_view_get_drag_dest_row(
19790        tree_view: *mut GtkTreeView,
19791        path: *mut *mut GtkTreePath,
19792        pos: *mut GtkTreeViewDropPosition,
19793    );
19794    pub fn gtk_tree_view_get_enable_search(tree_view: *mut GtkTreeView) -> gboolean;
19795    pub fn gtk_tree_view_get_enable_tree_lines(tree_view: *mut GtkTreeView) -> gboolean;
19796    pub fn gtk_tree_view_get_expander_column(tree_view: *mut GtkTreeView)
19797        -> *mut GtkTreeViewColumn;
19798    pub fn gtk_tree_view_get_fixed_height_mode(tree_view: *mut GtkTreeView) -> gboolean;
19799    pub fn gtk_tree_view_get_grid_lines(tree_view: *mut GtkTreeView) -> GtkTreeViewGridLines;
19800    pub fn gtk_tree_view_get_headers_clickable(tree_view: *mut GtkTreeView) -> gboolean;
19801    pub fn gtk_tree_view_get_headers_visible(tree_view: *mut GtkTreeView) -> gboolean;
19802    pub fn gtk_tree_view_get_hover_expand(tree_view: *mut GtkTreeView) -> gboolean;
19803    pub fn gtk_tree_view_get_hover_selection(tree_view: *mut GtkTreeView) -> gboolean;
19804    pub fn gtk_tree_view_get_level_indentation(tree_view: *mut GtkTreeView) -> c_int;
19805    pub fn gtk_tree_view_get_model(tree_view: *mut GtkTreeView) -> *mut GtkTreeModel;
19806    pub fn gtk_tree_view_get_n_columns(tree_view: *mut GtkTreeView) -> c_uint;
19807    pub fn gtk_tree_view_get_path_at_pos(
19808        tree_view: *mut GtkTreeView,
19809        x: c_int,
19810        y: c_int,
19811        path: *mut *mut GtkTreePath,
19812        column: *mut *mut GtkTreeViewColumn,
19813        cell_x: *mut c_int,
19814        cell_y: *mut c_int,
19815    ) -> gboolean;
19816    pub fn gtk_tree_view_get_reorderable(tree_view: *mut GtkTreeView) -> gboolean;
19817    pub fn gtk_tree_view_get_row_separator_func(
19818        tree_view: *mut GtkTreeView,
19819    ) -> GtkTreeViewRowSeparatorFunc;
19820    pub fn gtk_tree_view_get_rubber_banding(tree_view: *mut GtkTreeView) -> gboolean;
19821    pub fn gtk_tree_view_get_search_column(tree_view: *mut GtkTreeView) -> c_int;
19822    pub fn gtk_tree_view_get_search_entry(tree_view: *mut GtkTreeView) -> *mut GtkEditable;
19823    pub fn gtk_tree_view_get_search_equal_func(
19824        tree_view: *mut GtkTreeView,
19825    ) -> GtkTreeViewSearchEqualFunc;
19826    pub fn gtk_tree_view_get_selection(tree_view: *mut GtkTreeView) -> *mut GtkTreeSelection;
19827    pub fn gtk_tree_view_get_show_expanders(tree_view: *mut GtkTreeView) -> gboolean;
19828    pub fn gtk_tree_view_get_tooltip_column(tree_view: *mut GtkTreeView) -> c_int;
19829    pub fn gtk_tree_view_get_tooltip_context(
19830        tree_view: *mut GtkTreeView,
19831        x: c_int,
19832        y: c_int,
19833        keyboard_tip: gboolean,
19834        model: *mut *mut GtkTreeModel,
19835        path: *mut *mut GtkTreePath,
19836        iter: *mut GtkTreeIter,
19837    ) -> gboolean;
19838    pub fn gtk_tree_view_get_visible_range(
19839        tree_view: *mut GtkTreeView,
19840        start_path: *mut *mut GtkTreePath,
19841        end_path: *mut *mut GtkTreePath,
19842    ) -> gboolean;
19843    pub fn gtk_tree_view_get_visible_rect(
19844        tree_view: *mut GtkTreeView,
19845        visible_rect: *mut gdk::GdkRectangle,
19846    );
19847    pub fn gtk_tree_view_insert_column(
19848        tree_view: *mut GtkTreeView,
19849        column: *mut GtkTreeViewColumn,
19850        position: c_int,
19851    ) -> c_int;
19852    pub fn gtk_tree_view_insert_column_with_attributes(
19853        tree_view: *mut GtkTreeView,
19854        position: c_int,
19855        title: *const c_char,
19856        cell: *mut GtkCellRenderer,
19857        ...
19858    ) -> c_int;
19859    pub fn gtk_tree_view_insert_column_with_data_func(
19860        tree_view: *mut GtkTreeView,
19861        position: c_int,
19862        title: *const c_char,
19863        cell: *mut GtkCellRenderer,
19864        func: GtkTreeCellDataFunc,
19865        data: gpointer,
19866        dnotify: glib::GDestroyNotify,
19867    ) -> c_int;
19868    pub fn gtk_tree_view_is_blank_at_pos(
19869        tree_view: *mut GtkTreeView,
19870        x: c_int,
19871        y: c_int,
19872        path: *mut *mut GtkTreePath,
19873        column: *mut *mut GtkTreeViewColumn,
19874        cell_x: *mut c_int,
19875        cell_y: *mut c_int,
19876    ) -> gboolean;
19877    pub fn gtk_tree_view_is_rubber_banding_active(tree_view: *mut GtkTreeView) -> gboolean;
19878    pub fn gtk_tree_view_map_expanded_rows(
19879        tree_view: *mut GtkTreeView,
19880        func: GtkTreeViewMappingFunc,
19881        data: gpointer,
19882    );
19883    pub fn gtk_tree_view_move_column_after(
19884        tree_view: *mut GtkTreeView,
19885        column: *mut GtkTreeViewColumn,
19886        base_column: *mut GtkTreeViewColumn,
19887    );
19888    pub fn gtk_tree_view_remove_column(
19889        tree_view: *mut GtkTreeView,
19890        column: *mut GtkTreeViewColumn,
19891    ) -> c_int;
19892    pub fn gtk_tree_view_row_activated(
19893        tree_view: *mut GtkTreeView,
19894        path: *mut GtkTreePath,
19895        column: *mut GtkTreeViewColumn,
19896    );
19897    pub fn gtk_tree_view_row_expanded(
19898        tree_view: *mut GtkTreeView,
19899        path: *mut GtkTreePath,
19900    ) -> gboolean;
19901    pub fn gtk_tree_view_scroll_to_cell(
19902        tree_view: *mut GtkTreeView,
19903        path: *mut GtkTreePath,
19904        column: *mut GtkTreeViewColumn,
19905        use_align: gboolean,
19906        row_align: c_float,
19907        col_align: c_float,
19908    );
19909    pub fn gtk_tree_view_scroll_to_point(tree_view: *mut GtkTreeView, tree_x: c_int, tree_y: c_int);
19910    pub fn gtk_tree_view_set_activate_on_single_click(
19911        tree_view: *mut GtkTreeView,
19912        single: gboolean,
19913    );
19914    pub fn gtk_tree_view_set_column_drag_function(
19915        tree_view: *mut GtkTreeView,
19916        func: GtkTreeViewColumnDropFunc,
19917        user_data: gpointer,
19918        destroy: glib::GDestroyNotify,
19919    );
19920    pub fn gtk_tree_view_set_cursor(
19921        tree_view: *mut GtkTreeView,
19922        path: *mut GtkTreePath,
19923        focus_column: *mut GtkTreeViewColumn,
19924        start_editing: gboolean,
19925    );
19926    pub fn gtk_tree_view_set_cursor_on_cell(
19927        tree_view: *mut GtkTreeView,
19928        path: *mut GtkTreePath,
19929        focus_column: *mut GtkTreeViewColumn,
19930        focus_cell: *mut GtkCellRenderer,
19931        start_editing: gboolean,
19932    );
19933    pub fn gtk_tree_view_set_drag_dest_row(
19934        tree_view: *mut GtkTreeView,
19935        path: *mut GtkTreePath,
19936        pos: GtkTreeViewDropPosition,
19937    );
19938    pub fn gtk_tree_view_set_enable_search(tree_view: *mut GtkTreeView, enable_search: gboolean);
19939    pub fn gtk_tree_view_set_enable_tree_lines(tree_view: *mut GtkTreeView, enabled: gboolean);
19940    pub fn gtk_tree_view_set_expander_column(
19941        tree_view: *mut GtkTreeView,
19942        column: *mut GtkTreeViewColumn,
19943    );
19944    pub fn gtk_tree_view_set_fixed_height_mode(tree_view: *mut GtkTreeView, enable: gboolean);
19945    pub fn gtk_tree_view_set_grid_lines(
19946        tree_view: *mut GtkTreeView,
19947        grid_lines: GtkTreeViewGridLines,
19948    );
19949    pub fn gtk_tree_view_set_headers_clickable(tree_view: *mut GtkTreeView, setting: gboolean);
19950    pub fn gtk_tree_view_set_headers_visible(
19951        tree_view: *mut GtkTreeView,
19952        headers_visible: gboolean,
19953    );
19954    pub fn gtk_tree_view_set_hover_expand(tree_view: *mut GtkTreeView, expand: gboolean);
19955    pub fn gtk_tree_view_set_hover_selection(tree_view: *mut GtkTreeView, hover: gboolean);
19956    pub fn gtk_tree_view_set_level_indentation(tree_view: *mut GtkTreeView, indentation: c_int);
19957    pub fn gtk_tree_view_set_model(tree_view: *mut GtkTreeView, model: *mut GtkTreeModel);
19958    pub fn gtk_tree_view_set_reorderable(tree_view: *mut GtkTreeView, reorderable: gboolean);
19959    pub fn gtk_tree_view_set_row_separator_func(
19960        tree_view: *mut GtkTreeView,
19961        func: GtkTreeViewRowSeparatorFunc,
19962        data: gpointer,
19963        destroy: glib::GDestroyNotify,
19964    );
19965    pub fn gtk_tree_view_set_rubber_banding(tree_view: *mut GtkTreeView, enable: gboolean);
19966    pub fn gtk_tree_view_set_search_column(tree_view: *mut GtkTreeView, column: c_int);
19967    pub fn gtk_tree_view_set_search_entry(tree_view: *mut GtkTreeView, entry: *mut GtkEditable);
19968    pub fn gtk_tree_view_set_search_equal_func(
19969        tree_view: *mut GtkTreeView,
19970        search_equal_func: GtkTreeViewSearchEqualFunc,
19971        search_user_data: gpointer,
19972        search_destroy: glib::GDestroyNotify,
19973    );
19974    pub fn gtk_tree_view_set_show_expanders(tree_view: *mut GtkTreeView, enabled: gboolean);
19975    pub fn gtk_tree_view_set_tooltip_cell(
19976        tree_view: *mut GtkTreeView,
19977        tooltip: *mut GtkTooltip,
19978        path: *mut GtkTreePath,
19979        column: *mut GtkTreeViewColumn,
19980        cell: *mut GtkCellRenderer,
19981    );
19982    pub fn gtk_tree_view_set_tooltip_column(tree_view: *mut GtkTreeView, column: c_int);
19983    pub fn gtk_tree_view_set_tooltip_row(
19984        tree_view: *mut GtkTreeView,
19985        tooltip: *mut GtkTooltip,
19986        path: *mut GtkTreePath,
19987    );
19988    pub fn gtk_tree_view_unset_rows_drag_dest(tree_view: *mut GtkTreeView);
19989    pub fn gtk_tree_view_unset_rows_drag_source(tree_view: *mut GtkTreeView);
19990
19991    //=========================================================================
19992    // GtkTreeViewColumn
19993    //=========================================================================
19994    pub fn gtk_tree_view_column_get_type() -> GType;
19995    pub fn gtk_tree_view_column_new() -> *mut GtkTreeViewColumn;
19996    pub fn gtk_tree_view_column_new_with_area(area: *mut GtkCellArea) -> *mut GtkTreeViewColumn;
19997    pub fn gtk_tree_view_column_new_with_attributes(
19998        title: *const c_char,
19999        cell: *mut GtkCellRenderer,
20000        ...
20001    ) -> *mut GtkTreeViewColumn;
20002    pub fn gtk_tree_view_column_add_attribute(
20003        tree_column: *mut GtkTreeViewColumn,
20004        cell_renderer: *mut GtkCellRenderer,
20005        attribute: *const c_char,
20006        column: c_int,
20007    );
20008    pub fn gtk_tree_view_column_cell_get_position(
20009        tree_column: *mut GtkTreeViewColumn,
20010        cell_renderer: *mut GtkCellRenderer,
20011        x_offset: *mut c_int,
20012        width: *mut c_int,
20013    ) -> gboolean;
20014    pub fn gtk_tree_view_column_cell_get_size(
20015        tree_column: *mut GtkTreeViewColumn,
20016        x_offset: *mut c_int,
20017        y_offset: *mut c_int,
20018        width: *mut c_int,
20019        height: *mut c_int,
20020    );
20021    pub fn gtk_tree_view_column_cell_is_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20022    pub fn gtk_tree_view_column_cell_set_cell_data(
20023        tree_column: *mut GtkTreeViewColumn,
20024        tree_model: *mut GtkTreeModel,
20025        iter: *mut GtkTreeIter,
20026        is_expander: gboolean,
20027        is_expanded: gboolean,
20028    );
20029    pub fn gtk_tree_view_column_clear(tree_column: *mut GtkTreeViewColumn);
20030    pub fn gtk_tree_view_column_clear_attributes(
20031        tree_column: *mut GtkTreeViewColumn,
20032        cell_renderer: *mut GtkCellRenderer,
20033    );
20034    pub fn gtk_tree_view_column_clicked(tree_column: *mut GtkTreeViewColumn);
20035    pub fn gtk_tree_view_column_focus_cell(
20036        tree_column: *mut GtkTreeViewColumn,
20037        cell: *mut GtkCellRenderer,
20038    );
20039    pub fn gtk_tree_view_column_get_alignment(tree_column: *mut GtkTreeViewColumn) -> c_float;
20040    pub fn gtk_tree_view_column_get_button(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
20041    pub fn gtk_tree_view_column_get_clickable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20042    pub fn gtk_tree_view_column_get_expand(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20043    pub fn gtk_tree_view_column_get_fixed_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20044    pub fn gtk_tree_view_column_get_max_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20045    pub fn gtk_tree_view_column_get_min_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20046    pub fn gtk_tree_view_column_get_reorderable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20047    pub fn gtk_tree_view_column_get_resizable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20048    pub fn gtk_tree_view_column_get_sizing(
20049        tree_column: *mut GtkTreeViewColumn,
20050    ) -> GtkTreeViewColumnSizing;
20051    pub fn gtk_tree_view_column_get_sort_column_id(tree_column: *mut GtkTreeViewColumn) -> c_int;
20052    pub fn gtk_tree_view_column_get_sort_indicator(tree_column: *mut GtkTreeViewColumn)
20053        -> gboolean;
20054    pub fn gtk_tree_view_column_get_sort_order(tree_column: *mut GtkTreeViewColumn) -> GtkSortType;
20055    pub fn gtk_tree_view_column_get_spacing(tree_column: *mut GtkTreeViewColumn) -> c_int;
20056    pub fn gtk_tree_view_column_get_title(tree_column: *mut GtkTreeViewColumn) -> *const c_char;
20057    pub fn gtk_tree_view_column_get_tree_view(
20058        tree_column: *mut GtkTreeViewColumn,
20059    ) -> *mut GtkWidget;
20060    pub fn gtk_tree_view_column_get_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20061    pub fn gtk_tree_view_column_get_widget(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
20062    pub fn gtk_tree_view_column_get_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20063    pub fn gtk_tree_view_column_get_x_offset(tree_column: *mut GtkTreeViewColumn) -> c_int;
20064    pub fn gtk_tree_view_column_pack_end(
20065        tree_column: *mut GtkTreeViewColumn,
20066        cell: *mut GtkCellRenderer,
20067        expand: gboolean,
20068    );
20069    pub fn gtk_tree_view_column_pack_start(
20070        tree_column: *mut GtkTreeViewColumn,
20071        cell: *mut GtkCellRenderer,
20072        expand: gboolean,
20073    );
20074    pub fn gtk_tree_view_column_queue_resize(tree_column: *mut GtkTreeViewColumn);
20075    pub fn gtk_tree_view_column_set_alignment(tree_column: *mut GtkTreeViewColumn, xalign: c_float);
20076    pub fn gtk_tree_view_column_set_attributes(
20077        tree_column: *mut GtkTreeViewColumn,
20078        cell_renderer: *mut GtkCellRenderer,
20079        ...
20080    );
20081    pub fn gtk_tree_view_column_set_cell_data_func(
20082        tree_column: *mut GtkTreeViewColumn,
20083        cell_renderer: *mut GtkCellRenderer,
20084        func: GtkTreeCellDataFunc,
20085        func_data: gpointer,
20086        destroy: glib::GDestroyNotify,
20087    );
20088    pub fn gtk_tree_view_column_set_clickable(
20089        tree_column: *mut GtkTreeViewColumn,
20090        clickable: gboolean,
20091    );
20092    pub fn gtk_tree_view_column_set_expand(tree_column: *mut GtkTreeViewColumn, expand: gboolean);
20093    pub fn gtk_tree_view_column_set_fixed_width(
20094        tree_column: *mut GtkTreeViewColumn,
20095        fixed_width: c_int,
20096    );
20097    pub fn gtk_tree_view_column_set_max_width(
20098        tree_column: *mut GtkTreeViewColumn,
20099        max_width: c_int,
20100    );
20101    pub fn gtk_tree_view_column_set_min_width(
20102        tree_column: *mut GtkTreeViewColumn,
20103        min_width: c_int,
20104    );
20105    pub fn gtk_tree_view_column_set_reorderable(
20106        tree_column: *mut GtkTreeViewColumn,
20107        reorderable: gboolean,
20108    );
20109    pub fn gtk_tree_view_column_set_resizable(
20110        tree_column: *mut GtkTreeViewColumn,
20111        resizable: gboolean,
20112    );
20113    pub fn gtk_tree_view_column_set_sizing(
20114        tree_column: *mut GtkTreeViewColumn,
20115        type_: GtkTreeViewColumnSizing,
20116    );
20117    pub fn gtk_tree_view_column_set_sort_column_id(
20118        tree_column: *mut GtkTreeViewColumn,
20119        sort_column_id: c_int,
20120    );
20121    pub fn gtk_tree_view_column_set_sort_indicator(
20122        tree_column: *mut GtkTreeViewColumn,
20123        setting: gboolean,
20124    );
20125    pub fn gtk_tree_view_column_set_sort_order(
20126        tree_column: *mut GtkTreeViewColumn,
20127        order: GtkSortType,
20128    );
20129    pub fn gtk_tree_view_column_set_spacing(tree_column: *mut GtkTreeViewColumn, spacing: c_int);
20130    pub fn gtk_tree_view_column_set_title(
20131        tree_column: *mut GtkTreeViewColumn,
20132        title: *const c_char,
20133    );
20134    pub fn gtk_tree_view_column_set_visible(tree_column: *mut GtkTreeViewColumn, visible: gboolean);
20135    pub fn gtk_tree_view_column_set_widget(
20136        tree_column: *mut GtkTreeViewColumn,
20137        widget: *mut GtkWidget,
20138    );
20139
20140    //=========================================================================
20141    // GtkUriLauncher
20142    //=========================================================================
20143    #[cfg(feature = "v4_10")]
20144    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20145    pub fn gtk_uri_launcher_get_type() -> GType;
20146    #[cfg(feature = "v4_10")]
20147    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20148    pub fn gtk_uri_launcher_new(uri: *const c_char) -> *mut GtkUriLauncher;
20149    #[cfg(feature = "v4_20")]
20150    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20151    pub fn gtk_uri_launcher_can_launch(
20152        self_: *mut GtkUriLauncher,
20153        parent: *mut GtkWindow,
20154    ) -> gboolean;
20155    #[cfg(feature = "v4_10")]
20156    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20157    pub fn gtk_uri_launcher_get_uri(self_: *mut GtkUriLauncher) -> *const c_char;
20158    #[cfg(feature = "v4_10")]
20159    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20160    pub fn gtk_uri_launcher_launch(
20161        self_: *mut GtkUriLauncher,
20162        parent: *mut GtkWindow,
20163        cancellable: *mut gio::GCancellable,
20164        callback: gio::GAsyncReadyCallback,
20165        user_data: gpointer,
20166    );
20167    #[cfg(feature = "v4_10")]
20168    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20169    pub fn gtk_uri_launcher_launch_finish(
20170        self_: *mut GtkUriLauncher,
20171        result: *mut gio::GAsyncResult,
20172        error: *mut *mut glib::GError,
20173    ) -> gboolean;
20174    #[cfg(feature = "v4_10")]
20175    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20176    pub fn gtk_uri_launcher_set_uri(self_: *mut GtkUriLauncher, uri: *const c_char);
20177
20178    //=========================================================================
20179    // GtkVideo
20180    //=========================================================================
20181    pub fn gtk_video_get_type() -> GType;
20182    pub fn gtk_video_new() -> *mut GtkWidget;
20183    pub fn gtk_video_new_for_file(file: *mut gio::GFile) -> *mut GtkWidget;
20184    pub fn gtk_video_new_for_filename(filename: *const c_char) -> *mut GtkWidget;
20185    pub fn gtk_video_new_for_media_stream(stream: *mut GtkMediaStream) -> *mut GtkWidget;
20186    pub fn gtk_video_new_for_resource(resource_path: *const c_char) -> *mut GtkWidget;
20187    pub fn gtk_video_get_autoplay(self_: *mut GtkVideo) -> gboolean;
20188    pub fn gtk_video_get_file(self_: *mut GtkVideo) -> *mut gio::GFile;
20189    #[cfg(feature = "v4_14")]
20190    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20191    pub fn gtk_video_get_graphics_offload(self_: *mut GtkVideo) -> GtkGraphicsOffloadEnabled;
20192    pub fn gtk_video_get_loop(self_: *mut GtkVideo) -> gboolean;
20193    pub fn gtk_video_get_media_stream(self_: *mut GtkVideo) -> *mut GtkMediaStream;
20194    pub fn gtk_video_set_autoplay(self_: *mut GtkVideo, autoplay: gboolean);
20195    pub fn gtk_video_set_file(self_: *mut GtkVideo, file: *mut gio::GFile);
20196    pub fn gtk_video_set_filename(self_: *mut GtkVideo, filename: *const c_char);
20197    #[cfg(feature = "v4_14")]
20198    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20199    pub fn gtk_video_set_graphics_offload(self_: *mut GtkVideo, enabled: GtkGraphicsOffloadEnabled);
20200    pub fn gtk_video_set_loop(self_: *mut GtkVideo, loop_: gboolean);
20201    pub fn gtk_video_set_media_stream(self_: *mut GtkVideo, stream: *mut GtkMediaStream);
20202    pub fn gtk_video_set_resource(self_: *mut GtkVideo, resource_path: *const c_char);
20203
20204    //=========================================================================
20205    // GtkViewport
20206    //=========================================================================
20207    pub fn gtk_viewport_get_type() -> GType;
20208    pub fn gtk_viewport_new(
20209        hadjustment: *mut GtkAdjustment,
20210        vadjustment: *mut GtkAdjustment,
20211    ) -> *mut GtkWidget;
20212    pub fn gtk_viewport_get_child(viewport: *mut GtkViewport) -> *mut GtkWidget;
20213    pub fn gtk_viewport_get_scroll_to_focus(viewport: *mut GtkViewport) -> gboolean;
20214    #[cfg(feature = "v4_12")]
20215    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20216    pub fn gtk_viewport_scroll_to(
20217        viewport: *mut GtkViewport,
20218        descendant: *mut GtkWidget,
20219        scroll: *mut GtkScrollInfo,
20220    );
20221    pub fn gtk_viewport_set_child(viewport: *mut GtkViewport, child: *mut GtkWidget);
20222    pub fn gtk_viewport_set_scroll_to_focus(viewport: *mut GtkViewport, scroll_to_focus: gboolean);
20223
20224    //=========================================================================
20225    // GtkVolumeButton
20226    //=========================================================================
20227    pub fn gtk_volume_button_get_type() -> GType;
20228    pub fn gtk_volume_button_new() -> *mut GtkWidget;
20229
20230    //=========================================================================
20231    // GtkWidget
20232    //=========================================================================
20233    pub fn gtk_widget_get_type() -> GType;
20234    pub fn gtk_widget_get_default_direction() -> GtkTextDirection;
20235    pub fn gtk_widget_set_default_direction(dir: GtkTextDirection);
20236    pub fn gtk_widget_action_set_enabled(
20237        widget: *mut GtkWidget,
20238        action_name: *const c_char,
20239        enabled: gboolean,
20240    );
20241    pub fn gtk_widget_activate(widget: *mut GtkWidget) -> gboolean;
20242    pub fn gtk_widget_activate_action(
20243        widget: *mut GtkWidget,
20244        name: *const c_char,
20245        format_string: *const c_char,
20246        ...
20247    ) -> gboolean;
20248    pub fn gtk_widget_activate_action_variant(
20249        widget: *mut GtkWidget,
20250        name: *const c_char,
20251        args: *mut glib::GVariant,
20252    ) -> gboolean;
20253    pub fn gtk_widget_activate_default(widget: *mut GtkWidget);
20254    pub fn gtk_widget_add_controller(widget: *mut GtkWidget, controller: *mut GtkEventController);
20255    pub fn gtk_widget_add_css_class(widget: *mut GtkWidget, css_class: *const c_char);
20256    pub fn gtk_widget_add_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
20257    pub fn gtk_widget_add_tick_callback(
20258        widget: *mut GtkWidget,
20259        callback: GtkTickCallback,
20260        user_data: gpointer,
20261        notify: glib::GDestroyNotify,
20262    ) -> c_uint;
20263    pub fn gtk_widget_allocate(
20264        widget: *mut GtkWidget,
20265        width: c_int,
20266        height: c_int,
20267        baseline: c_int,
20268        transform: *mut gsk::GskTransform,
20269    );
20270    pub fn gtk_widget_child_focus(widget: *mut GtkWidget, direction: GtkDirectionType) -> gboolean;
20271    pub fn gtk_widget_compute_bounds(
20272        widget: *mut GtkWidget,
20273        target: *mut GtkWidget,
20274        out_bounds: *mut graphene::graphene_rect_t,
20275    ) -> gboolean;
20276    pub fn gtk_widget_compute_expand(
20277        widget: *mut GtkWidget,
20278        orientation: GtkOrientation,
20279    ) -> gboolean;
20280    pub fn gtk_widget_compute_point(
20281        widget: *mut GtkWidget,
20282        target: *mut GtkWidget,
20283        point: *const graphene::graphene_point_t,
20284        out_point: *mut graphene::graphene_point_t,
20285    ) -> gboolean;
20286    pub fn gtk_widget_compute_transform(
20287        widget: *mut GtkWidget,
20288        target: *mut GtkWidget,
20289        out_transform: *mut graphene::graphene_matrix_t,
20290    ) -> gboolean;
20291    pub fn gtk_widget_contains(widget: *mut GtkWidget, x: c_double, y: c_double) -> gboolean;
20292    pub fn gtk_widget_create_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
20293    pub fn gtk_widget_create_pango_layout(
20294        widget: *mut GtkWidget,
20295        text: *const c_char,
20296    ) -> *mut pango::PangoLayout;
20297    #[cfg(feature = "v4_8")]
20298    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
20299    pub fn gtk_widget_dispose_template(widget: *mut GtkWidget, widget_type: GType);
20300    pub fn gtk_drag_check_threshold(
20301        widget: *mut GtkWidget,
20302        start_x: c_int,
20303        start_y: c_int,
20304        current_x: c_int,
20305        current_y: c_int,
20306    ) -> gboolean;
20307    pub fn gtk_widget_error_bell(widget: *mut GtkWidget);
20308    pub fn gtk_widget_get_allocated_baseline(widget: *mut GtkWidget) -> c_int;
20309    pub fn gtk_widget_get_allocated_height(widget: *mut GtkWidget) -> c_int;
20310    pub fn gtk_widget_get_allocated_width(widget: *mut GtkWidget) -> c_int;
20311    pub fn gtk_widget_get_allocation(widget: *mut GtkWidget, allocation: *mut GtkAllocation);
20312    pub fn gtk_widget_get_ancestor(widget: *mut GtkWidget, widget_type: GType) -> *mut GtkWidget;
20313    #[cfg(feature = "v4_12")]
20314    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20315    pub fn gtk_widget_get_baseline(widget: *mut GtkWidget) -> c_int;
20316    pub fn gtk_widget_get_can_focus(widget: *mut GtkWidget) -> gboolean;
20317    pub fn gtk_widget_get_can_target(widget: *mut GtkWidget) -> gboolean;
20318    pub fn gtk_widget_get_child_visible(widget: *mut GtkWidget) -> gboolean;
20319    pub fn gtk_widget_get_clipboard(widget: *mut GtkWidget) -> *mut gdk::GdkClipboard;
20320    #[cfg(feature = "v4_10")]
20321    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20322    pub fn gtk_widget_get_color(widget: *mut GtkWidget, color: *mut gdk::GdkRGBA);
20323    pub fn gtk_widget_get_css_classes(widget: *mut GtkWidget) -> *mut *mut c_char;
20324    pub fn gtk_widget_get_css_name(self_: *mut GtkWidget) -> *const c_char;
20325    pub fn gtk_widget_get_cursor(widget: *mut GtkWidget) -> *mut gdk::GdkCursor;
20326    pub fn gtk_widget_get_direction(widget: *mut GtkWidget) -> GtkTextDirection;
20327    pub fn gtk_widget_get_display(widget: *mut GtkWidget) -> *mut gdk::GdkDisplay;
20328    pub fn gtk_widget_get_first_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20329    pub fn gtk_widget_get_focus_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20330    pub fn gtk_widget_get_focus_on_click(widget: *mut GtkWidget) -> gboolean;
20331    pub fn gtk_widget_get_focusable(widget: *mut GtkWidget) -> gboolean;
20332    pub fn gtk_widget_get_font_map(widget: *mut GtkWidget) -> *mut pango::PangoFontMap;
20333    pub fn gtk_widget_get_font_options(
20334        widget: *mut GtkWidget,
20335    ) -> *const cairo::cairo_font_options_t;
20336    pub fn gtk_widget_get_frame_clock(widget: *mut GtkWidget) -> *mut gdk::GdkFrameClock;
20337    pub fn gtk_widget_get_halign(widget: *mut GtkWidget) -> GtkAlign;
20338    pub fn gtk_widget_get_has_tooltip(widget: *mut GtkWidget) -> gboolean;
20339    pub fn gtk_widget_get_height(widget: *mut GtkWidget) -> c_int;
20340    pub fn gtk_widget_get_hexpand(widget: *mut GtkWidget) -> gboolean;
20341    pub fn gtk_widget_get_hexpand_set(widget: *mut GtkWidget) -> gboolean;
20342    pub fn gtk_widget_get_last_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20343    pub fn gtk_widget_get_layout_manager(widget: *mut GtkWidget) -> *mut GtkLayoutManager;
20344    #[cfg(feature = "v4_18")]
20345    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20346    pub fn gtk_widget_get_limit_events(widget: *mut GtkWidget) -> gboolean;
20347    pub fn gtk_widget_get_mapped(widget: *mut GtkWidget) -> gboolean;
20348    pub fn gtk_widget_get_margin_bottom(widget: *mut GtkWidget) -> c_int;
20349    pub fn gtk_widget_get_margin_end(widget: *mut GtkWidget) -> c_int;
20350    pub fn gtk_widget_get_margin_start(widget: *mut GtkWidget) -> c_int;
20351    pub fn gtk_widget_get_margin_top(widget: *mut GtkWidget) -> c_int;
20352    pub fn gtk_widget_get_name(widget: *mut GtkWidget) -> *const c_char;
20353    pub fn gtk_widget_get_native(widget: *mut GtkWidget) -> *mut GtkNative;
20354    pub fn gtk_widget_get_next_sibling(widget: *mut GtkWidget) -> *mut GtkWidget;
20355    pub fn gtk_widget_get_opacity(widget: *mut GtkWidget) -> c_double;
20356    pub fn gtk_widget_get_overflow(widget: *mut GtkWidget) -> GtkOverflow;
20357    pub fn gtk_widget_get_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
20358    pub fn gtk_widget_get_parent(widget: *mut GtkWidget) -> *mut GtkWidget;
20359    pub fn gtk_widget_get_preferred_size(
20360        widget: *mut GtkWidget,
20361        minimum_size: *mut GtkRequisition,
20362        natural_size: *mut GtkRequisition,
20363    );
20364    pub fn gtk_widget_get_prev_sibling(widget: *mut GtkWidget) -> *mut GtkWidget;
20365    pub fn gtk_widget_get_primary_clipboard(widget: *mut GtkWidget) -> *mut gdk::GdkClipboard;
20366    pub fn gtk_widget_get_realized(widget: *mut GtkWidget) -> gboolean;
20367    pub fn gtk_widget_get_receives_default(widget: *mut GtkWidget) -> gboolean;
20368    pub fn gtk_widget_get_request_mode(widget: *mut GtkWidget) -> GtkSizeRequestMode;
20369    pub fn gtk_widget_get_root(widget: *mut GtkWidget) -> *mut GtkRoot;
20370    pub fn gtk_widget_get_scale_factor(widget: *mut GtkWidget) -> c_int;
20371    pub fn gtk_widget_get_sensitive(widget: *mut GtkWidget) -> gboolean;
20372    pub fn gtk_widget_get_settings(widget: *mut GtkWidget) -> *mut GtkSettings;
20373    pub fn gtk_widget_get_size(widget: *mut GtkWidget, orientation: GtkOrientation) -> c_int;
20374    pub fn gtk_widget_get_size_request(
20375        widget: *mut GtkWidget,
20376        width: *mut c_int,
20377        height: *mut c_int,
20378    );
20379    pub fn gtk_widget_get_state_flags(widget: *mut GtkWidget) -> GtkStateFlags;
20380    pub fn gtk_widget_get_style_context(widget: *mut GtkWidget) -> *mut GtkStyleContext;
20381    pub fn gtk_widget_get_template_child(
20382        widget: *mut GtkWidget,
20383        widget_type: GType,
20384        name: *const c_char,
20385    ) -> *mut gobject::GObject;
20386    pub fn gtk_widget_get_tooltip_markup(widget: *mut GtkWidget) -> *const c_char;
20387    pub fn gtk_widget_get_tooltip_text(widget: *mut GtkWidget) -> *const c_char;
20388    pub fn gtk_widget_get_valign(widget: *mut GtkWidget) -> GtkAlign;
20389    pub fn gtk_widget_get_vexpand(widget: *mut GtkWidget) -> gboolean;
20390    pub fn gtk_widget_get_vexpand_set(widget: *mut GtkWidget) -> gboolean;
20391    pub fn gtk_widget_get_visible(widget: *mut GtkWidget) -> gboolean;
20392    pub fn gtk_widget_get_width(widget: *mut GtkWidget) -> c_int;
20393    pub fn gtk_widget_grab_focus(widget: *mut GtkWidget) -> gboolean;
20394    pub fn gtk_widget_has_css_class(widget: *mut GtkWidget, css_class: *const c_char) -> gboolean;
20395    pub fn gtk_widget_has_default(widget: *mut GtkWidget) -> gboolean;
20396    pub fn gtk_widget_has_focus(widget: *mut GtkWidget) -> gboolean;
20397    pub fn gtk_widget_has_visible_focus(widget: *mut GtkWidget) -> gboolean;
20398    pub fn gtk_widget_hide(widget: *mut GtkWidget);
20399    pub fn gtk_widget_in_destruction(widget: *mut GtkWidget) -> gboolean;
20400    pub fn gtk_widget_init_template(widget: *mut GtkWidget);
20401    pub fn gtk_widget_insert_action_group(
20402        widget: *mut GtkWidget,
20403        name: *const c_char,
20404        group: *mut gio::GActionGroup,
20405    );
20406    pub fn gtk_widget_insert_after(
20407        widget: *mut GtkWidget,
20408        parent: *mut GtkWidget,
20409        previous_sibling: *mut GtkWidget,
20410    );
20411    pub fn gtk_widget_insert_before(
20412        widget: *mut GtkWidget,
20413        parent: *mut GtkWidget,
20414        next_sibling: *mut GtkWidget,
20415    );
20416    pub fn gtk_widget_is_ancestor(widget: *mut GtkWidget, ancestor: *mut GtkWidget) -> gboolean;
20417    pub fn gtk_widget_is_drawable(widget: *mut GtkWidget) -> gboolean;
20418    pub fn gtk_widget_is_focus(widget: *mut GtkWidget) -> gboolean;
20419    pub fn gtk_widget_is_sensitive(widget: *mut GtkWidget) -> gboolean;
20420    pub fn gtk_widget_is_visible(widget: *mut GtkWidget) -> gboolean;
20421    pub fn gtk_widget_keynav_failed(
20422        widget: *mut GtkWidget,
20423        direction: GtkDirectionType,
20424    ) -> gboolean;
20425    pub fn gtk_widget_list_mnemonic_labels(widget: *mut GtkWidget) -> *mut glib::GList;
20426    pub fn gtk_widget_map(widget: *mut GtkWidget);
20427    pub fn gtk_widget_measure(
20428        widget: *mut GtkWidget,
20429        orientation: GtkOrientation,
20430        for_size: c_int,
20431        minimum: *mut c_int,
20432        natural: *mut c_int,
20433        minimum_baseline: *mut c_int,
20434        natural_baseline: *mut c_int,
20435    );
20436    pub fn gtk_widget_mnemonic_activate(
20437        widget: *mut GtkWidget,
20438        group_cycling: gboolean,
20439    ) -> gboolean;
20440    pub fn gtk_widget_observe_children(widget: *mut GtkWidget) -> *mut gio::GListModel;
20441    pub fn gtk_widget_observe_controllers(widget: *mut GtkWidget) -> *mut gio::GListModel;
20442    pub fn gtk_widget_pick(
20443        widget: *mut GtkWidget,
20444        x: c_double,
20445        y: c_double,
20446        flags: GtkPickFlags,
20447    ) -> *mut GtkWidget;
20448    pub fn gtk_widget_queue_allocate(widget: *mut GtkWidget);
20449    pub fn gtk_widget_queue_draw(widget: *mut GtkWidget);
20450    pub fn gtk_widget_queue_resize(widget: *mut GtkWidget);
20451    pub fn gtk_widget_realize(widget: *mut GtkWidget);
20452    pub fn gtk_widget_remove_controller(
20453        widget: *mut GtkWidget,
20454        controller: *mut GtkEventController,
20455    );
20456    pub fn gtk_widget_remove_css_class(widget: *mut GtkWidget, css_class: *const c_char);
20457    pub fn gtk_widget_remove_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
20458    pub fn gtk_widget_remove_tick_callback(widget: *mut GtkWidget, id: c_uint);
20459    pub fn gtk_widget_set_can_focus(widget: *mut GtkWidget, can_focus: gboolean);
20460    pub fn gtk_widget_set_can_target(widget: *mut GtkWidget, can_target: gboolean);
20461    pub fn gtk_widget_set_child_visible(widget: *mut GtkWidget, child_visible: gboolean);
20462    pub fn gtk_widget_set_css_classes(widget: *mut GtkWidget, classes: *mut *const c_char);
20463    pub fn gtk_widget_set_cursor(widget: *mut GtkWidget, cursor: *mut gdk::GdkCursor);
20464    pub fn gtk_widget_set_cursor_from_name(widget: *mut GtkWidget, name: *const c_char);
20465    pub fn gtk_widget_set_direction(widget: *mut GtkWidget, dir: GtkTextDirection);
20466    pub fn gtk_widget_set_focus_child(widget: *mut GtkWidget, child: *mut GtkWidget);
20467    pub fn gtk_widget_set_focus_on_click(widget: *mut GtkWidget, focus_on_click: gboolean);
20468    pub fn gtk_widget_set_focusable(widget: *mut GtkWidget, focusable: gboolean);
20469    pub fn gtk_widget_set_font_map(widget: *mut GtkWidget, font_map: *mut pango::PangoFontMap);
20470    pub fn gtk_widget_set_font_options(
20471        widget: *mut GtkWidget,
20472        options: *const cairo::cairo_font_options_t,
20473    );
20474    pub fn gtk_widget_set_halign(widget: *mut GtkWidget, align: GtkAlign);
20475    pub fn gtk_widget_set_has_tooltip(widget: *mut GtkWidget, has_tooltip: gboolean);
20476    pub fn gtk_widget_set_hexpand(widget: *mut GtkWidget, expand: gboolean);
20477    pub fn gtk_widget_set_hexpand_set(widget: *mut GtkWidget, set: gboolean);
20478    pub fn gtk_widget_set_layout_manager(
20479        widget: *mut GtkWidget,
20480        layout_manager: *mut GtkLayoutManager,
20481    );
20482    #[cfg(feature = "v4_18")]
20483    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20484    pub fn gtk_widget_set_limit_events(widget: *mut GtkWidget, limit_events: gboolean);
20485    pub fn gtk_widget_set_margin_bottom(widget: *mut GtkWidget, margin: c_int);
20486    pub fn gtk_widget_set_margin_end(widget: *mut GtkWidget, margin: c_int);
20487    pub fn gtk_widget_set_margin_start(widget: *mut GtkWidget, margin: c_int);
20488    pub fn gtk_widget_set_margin_top(widget: *mut GtkWidget, margin: c_int);
20489    pub fn gtk_widget_set_name(widget: *mut GtkWidget, name: *const c_char);
20490    pub fn gtk_widget_set_opacity(widget: *mut GtkWidget, opacity: c_double);
20491    pub fn gtk_widget_set_overflow(widget: *mut GtkWidget, overflow: GtkOverflow);
20492    pub fn gtk_widget_set_parent(widget: *mut GtkWidget, parent: *mut GtkWidget);
20493    pub fn gtk_widget_set_receives_default(widget: *mut GtkWidget, receives_default: gboolean);
20494    pub fn gtk_widget_set_sensitive(widget: *mut GtkWidget, sensitive: gboolean);
20495    pub fn gtk_widget_set_size_request(widget: *mut GtkWidget, width: c_int, height: c_int);
20496    pub fn gtk_widget_set_state_flags(
20497        widget: *mut GtkWidget,
20498        flags: GtkStateFlags,
20499        clear: gboolean,
20500    );
20501    pub fn gtk_widget_set_tooltip_markup(widget: *mut GtkWidget, markup: *const c_char);
20502    pub fn gtk_widget_set_tooltip_text(widget: *mut GtkWidget, text: *const c_char);
20503    pub fn gtk_widget_set_valign(widget: *mut GtkWidget, align: GtkAlign);
20504    pub fn gtk_widget_set_vexpand(widget: *mut GtkWidget, expand: gboolean);
20505    pub fn gtk_widget_set_vexpand_set(widget: *mut GtkWidget, set: gboolean);
20506    pub fn gtk_widget_set_visible(widget: *mut GtkWidget, visible: gboolean);
20507    pub fn gtk_widget_should_layout(widget: *mut GtkWidget) -> gboolean;
20508    pub fn gtk_widget_show(widget: *mut GtkWidget);
20509    pub fn gtk_widget_size_allocate(
20510        widget: *mut GtkWidget,
20511        allocation: *const GtkAllocation,
20512        baseline: c_int,
20513    );
20514    pub fn gtk_widget_snapshot_child(
20515        widget: *mut GtkWidget,
20516        child: *mut GtkWidget,
20517        snapshot: *mut GtkSnapshot,
20518    );
20519    pub fn gtk_widget_translate_coordinates(
20520        src_widget: *mut GtkWidget,
20521        dest_widget: *mut GtkWidget,
20522        src_x: c_double,
20523        src_y: c_double,
20524        dest_x: *mut c_double,
20525        dest_y: *mut c_double,
20526    ) -> gboolean;
20527    pub fn gtk_widget_trigger_tooltip_query(widget: *mut GtkWidget);
20528    pub fn gtk_widget_unmap(widget: *mut GtkWidget);
20529    pub fn gtk_widget_unparent(widget: *mut GtkWidget);
20530    pub fn gtk_widget_unrealize(widget: *mut GtkWidget);
20531    pub fn gtk_widget_unset_state_flags(widget: *mut GtkWidget, flags: GtkStateFlags);
20532
20533    //=========================================================================
20534    // GtkWidgetPaintable
20535    //=========================================================================
20536    pub fn gtk_widget_paintable_get_type() -> GType;
20537    pub fn gtk_widget_paintable_new(widget: *mut GtkWidget) -> *mut GtkWidgetPaintable;
20538    pub fn gtk_widget_paintable_get_widget(self_: *mut GtkWidgetPaintable) -> *mut GtkWidget;
20539    pub fn gtk_widget_paintable_set_widget(self_: *mut GtkWidgetPaintable, widget: *mut GtkWidget);
20540
20541    //=========================================================================
20542    // GtkWindow
20543    //=========================================================================
20544    pub fn gtk_window_get_type() -> GType;
20545    pub fn gtk_window_new() -> *mut GtkWidget;
20546    pub fn gtk_window_get_default_icon_name() -> *const c_char;
20547    pub fn gtk_window_get_toplevels() -> *mut gio::GListModel;
20548    pub fn gtk_window_list_toplevels() -> *mut glib::GList;
20549    pub fn gtk_window_set_auto_startup_notification(setting: gboolean);
20550    pub fn gtk_window_set_default_icon_name(name: *const c_char);
20551    pub fn gtk_window_set_interactive_debugging(enable: gboolean);
20552    pub fn gtk_window_close(window: *mut GtkWindow);
20553    pub fn gtk_window_destroy(window: *mut GtkWindow);
20554    pub fn gtk_window_fullscreen(window: *mut GtkWindow);
20555    pub fn gtk_window_fullscreen_on_monitor(window: *mut GtkWindow, monitor: *mut gdk::GdkMonitor);
20556    pub fn gtk_window_get_application(window: *mut GtkWindow) -> *mut GtkApplication;
20557    pub fn gtk_window_get_child(window: *mut GtkWindow) -> *mut GtkWidget;
20558    pub fn gtk_window_get_decorated(window: *mut GtkWindow) -> gboolean;
20559    pub fn gtk_window_get_default_size(
20560        window: *mut GtkWindow,
20561        width: *mut c_int,
20562        height: *mut c_int,
20563    );
20564    pub fn gtk_window_get_default_widget(window: *mut GtkWindow) -> *mut GtkWidget;
20565    pub fn gtk_window_get_deletable(window: *mut GtkWindow) -> gboolean;
20566    pub fn gtk_window_get_destroy_with_parent(window: *mut GtkWindow) -> gboolean;
20567    pub fn gtk_window_get_focus(window: *mut GtkWindow) -> *mut GtkWidget;
20568    pub fn gtk_window_get_focus_visible(window: *mut GtkWindow) -> gboolean;
20569    #[cfg(feature = "v4_20")]
20570    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20571    pub fn gtk_window_get_gravity(window: *mut GtkWindow) -> GtkWindowGravity;
20572    pub fn gtk_window_get_group(window: *mut GtkWindow) -> *mut GtkWindowGroup;
20573    #[cfg(feature = "v4_2")]
20574    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
20575    pub fn gtk_window_get_handle_menubar_accel(window: *mut GtkWindow) -> gboolean;
20576    pub fn gtk_window_get_hide_on_close(window: *mut GtkWindow) -> gboolean;
20577    pub fn gtk_window_get_icon_name(window: *mut GtkWindow) -> *const c_char;
20578    pub fn gtk_window_get_mnemonics_visible(window: *mut GtkWindow) -> gboolean;
20579    pub fn gtk_window_get_modal(window: *mut GtkWindow) -> gboolean;
20580    pub fn gtk_window_get_resizable(window: *mut GtkWindow) -> gboolean;
20581    pub fn gtk_window_get_title(window: *mut GtkWindow) -> *const c_char;
20582    pub fn gtk_window_get_titlebar(window: *mut GtkWindow) -> *mut GtkWidget;
20583    pub fn gtk_window_get_transient_for(window: *mut GtkWindow) -> *mut GtkWindow;
20584    pub fn gtk_window_has_group(window: *mut GtkWindow) -> gboolean;
20585    pub fn gtk_window_is_active(window: *mut GtkWindow) -> gboolean;
20586    pub fn gtk_window_is_fullscreen(window: *mut GtkWindow) -> gboolean;
20587    pub fn gtk_window_is_maximized(window: *mut GtkWindow) -> gboolean;
20588    #[cfg(feature = "v4_12")]
20589    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20590    pub fn gtk_window_is_suspended(window: *mut GtkWindow) -> gboolean;
20591    pub fn gtk_window_maximize(window: *mut GtkWindow);
20592    pub fn gtk_window_minimize(window: *mut GtkWindow);
20593    pub fn gtk_window_present(window: *mut GtkWindow);
20594    pub fn gtk_window_present_with_time(window: *mut GtkWindow, timestamp: u32);
20595    pub fn gtk_window_set_application(window: *mut GtkWindow, application: *mut GtkApplication);
20596    pub fn gtk_window_set_child(window: *mut GtkWindow, child: *mut GtkWidget);
20597    pub fn gtk_window_set_decorated(window: *mut GtkWindow, setting: gboolean);
20598    pub fn gtk_window_set_default_size(window: *mut GtkWindow, width: c_int, height: c_int);
20599    pub fn gtk_window_set_default_widget(window: *mut GtkWindow, default_widget: *mut GtkWidget);
20600    pub fn gtk_window_set_deletable(window: *mut GtkWindow, setting: gboolean);
20601    pub fn gtk_window_set_destroy_with_parent(window: *mut GtkWindow, setting: gboolean);
20602    pub fn gtk_window_set_display(window: *mut GtkWindow, display: *mut gdk::GdkDisplay);
20603    pub fn gtk_window_set_focus(window: *mut GtkWindow, focus: *mut GtkWidget);
20604    pub fn gtk_window_set_focus_visible(window: *mut GtkWindow, setting: gboolean);
20605    #[cfg(feature = "v4_20")]
20606    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20607    pub fn gtk_window_set_gravity(window: *mut GtkWindow, gravity: GtkWindowGravity);
20608    #[cfg(feature = "v4_2")]
20609    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
20610    pub fn gtk_window_set_handle_menubar_accel(
20611        window: *mut GtkWindow,
20612        handle_menubar_accel: gboolean,
20613    );
20614    pub fn gtk_window_set_hide_on_close(window: *mut GtkWindow, setting: gboolean);
20615    pub fn gtk_window_set_icon_name(window: *mut GtkWindow, name: *const c_char);
20616    pub fn gtk_window_set_mnemonics_visible(window: *mut GtkWindow, setting: gboolean);
20617    pub fn gtk_window_set_modal(window: *mut GtkWindow, modal: gboolean);
20618    pub fn gtk_window_set_resizable(window: *mut GtkWindow, resizable: gboolean);
20619    pub fn gtk_window_set_startup_id(window: *mut GtkWindow, startup_id: *const c_char);
20620    pub fn gtk_window_set_title(window: *mut GtkWindow, title: *const c_char);
20621    pub fn gtk_window_set_titlebar(window: *mut GtkWindow, titlebar: *mut GtkWidget);
20622    pub fn gtk_window_set_transient_for(window: *mut GtkWindow, parent: *mut GtkWindow);
20623    pub fn gtk_window_unfullscreen(window: *mut GtkWindow);
20624    pub fn gtk_window_unmaximize(window: *mut GtkWindow);
20625    pub fn gtk_window_unminimize(window: *mut GtkWindow);
20626
20627    //=========================================================================
20628    // GtkWindowControls
20629    //=========================================================================
20630    pub fn gtk_window_controls_get_type() -> GType;
20631    pub fn gtk_window_controls_new(side: GtkPackType) -> *mut GtkWidget;
20632    pub fn gtk_window_controls_get_decoration_layout(
20633        self_: *mut GtkWindowControls,
20634    ) -> *const c_char;
20635    pub fn gtk_window_controls_get_empty(self_: *mut GtkWindowControls) -> gboolean;
20636    pub fn gtk_window_controls_get_side(self_: *mut GtkWindowControls) -> GtkPackType;
20637    #[cfg(feature = "v4_18")]
20638    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20639    pub fn gtk_window_controls_get_use_native_controls(self_: *mut GtkWindowControls) -> gboolean;
20640    pub fn gtk_window_controls_set_decoration_layout(
20641        self_: *mut GtkWindowControls,
20642        layout: *const c_char,
20643    );
20644    pub fn gtk_window_controls_set_side(self_: *mut GtkWindowControls, side: GtkPackType);
20645    #[cfg(feature = "v4_18")]
20646    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20647    pub fn gtk_window_controls_set_use_native_controls(
20648        self_: *mut GtkWindowControls,
20649        setting: gboolean,
20650    );
20651
20652    //=========================================================================
20653    // GtkWindowGroup
20654    //=========================================================================
20655    pub fn gtk_window_group_get_type() -> GType;
20656    pub fn gtk_window_group_new() -> *mut GtkWindowGroup;
20657    pub fn gtk_window_group_add_window(window_group: *mut GtkWindowGroup, window: *mut GtkWindow);
20658    pub fn gtk_window_group_list_windows(window_group: *mut GtkWindowGroup) -> *mut glib::GList;
20659    pub fn gtk_window_group_remove_window(
20660        window_group: *mut GtkWindowGroup,
20661        window: *mut GtkWindow,
20662    );
20663
20664    //=========================================================================
20665    // GtkWindowHandle
20666    //=========================================================================
20667    pub fn gtk_window_handle_get_type() -> GType;
20668    pub fn gtk_window_handle_new() -> *mut GtkWidget;
20669    pub fn gtk_window_handle_get_child(self_: *mut GtkWindowHandle) -> *mut GtkWidget;
20670    pub fn gtk_window_handle_set_child(self_: *mut GtkWindowHandle, child: *mut GtkWidget);
20671
20672    //=========================================================================
20673    // GtkAccessible
20674    //=========================================================================
20675    pub fn gtk_accessible_get_type() -> GType;
20676    #[cfg(feature = "v4_14")]
20677    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20678    pub fn gtk_accessible_announce(
20679        self_: *mut GtkAccessible,
20680        message: *const c_char,
20681        priority: GtkAccessibleAnnouncementPriority,
20682    );
20683    #[cfg(feature = "v4_10")]
20684    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20685    pub fn gtk_accessible_get_accessible_parent(self_: *mut GtkAccessible) -> *mut GtkAccessible;
20686    pub fn gtk_accessible_get_accessible_role(self_: *mut GtkAccessible) -> GtkAccessibleRole;
20687    #[cfg(feature = "v4_10")]
20688    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20689    pub fn gtk_accessible_get_at_context(self_: *mut GtkAccessible) -> *mut GtkATContext;
20690    #[cfg(feature = "v4_10")]
20691    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20692    pub fn gtk_accessible_get_bounds(
20693        self_: *mut GtkAccessible,
20694        x: *mut c_int,
20695        y: *mut c_int,
20696        width: *mut c_int,
20697        height: *mut c_int,
20698    ) -> gboolean;
20699    #[cfg(feature = "v4_10")]
20700    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20701    pub fn gtk_accessible_get_first_accessible_child(
20702        self_: *mut GtkAccessible,
20703    ) -> *mut GtkAccessible;
20704    #[cfg(feature = "v4_10")]
20705    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20706    pub fn gtk_accessible_get_next_accessible_sibling(
20707        self_: *mut GtkAccessible,
20708    ) -> *mut GtkAccessible;
20709    #[cfg(feature = "v4_10")]
20710    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20711    pub fn gtk_accessible_get_platform_state(
20712        self_: *mut GtkAccessible,
20713        state: GtkAccessiblePlatformState,
20714    ) -> gboolean;
20715    pub fn gtk_accessible_reset_property(
20716        self_: *mut GtkAccessible,
20717        property: GtkAccessibleProperty,
20718    );
20719    pub fn gtk_accessible_reset_relation(
20720        self_: *mut GtkAccessible,
20721        relation: GtkAccessibleRelation,
20722    );
20723    pub fn gtk_accessible_reset_state(self_: *mut GtkAccessible, state: GtkAccessibleState);
20724    #[cfg(feature = "v4_10")]
20725    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20726    pub fn gtk_accessible_set_accessible_parent(
20727        self_: *mut GtkAccessible,
20728        parent: *mut GtkAccessible,
20729        next_sibling: *mut GtkAccessible,
20730    );
20731    #[cfg(feature = "v4_10")]
20732    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20733    pub fn gtk_accessible_update_next_accessible_sibling(
20734        self_: *mut GtkAccessible,
20735        new_sibling: *mut GtkAccessible,
20736    );
20737    #[cfg(feature = "v4_18")]
20738    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20739    pub fn gtk_accessible_update_platform_state(
20740        self_: *mut GtkAccessible,
20741        state: GtkAccessiblePlatformState,
20742    );
20743    pub fn gtk_accessible_update_property(
20744        self_: *mut GtkAccessible,
20745        first_property: GtkAccessibleProperty,
20746        ...
20747    );
20748    pub fn gtk_accessible_update_property_value(
20749        self_: *mut GtkAccessible,
20750        n_properties: c_int,
20751        properties: *mut GtkAccessibleProperty,
20752        values: *const gobject::GValue,
20753    );
20754    pub fn gtk_accessible_update_relation(
20755        self_: *mut GtkAccessible,
20756        first_relation: GtkAccessibleRelation,
20757        ...
20758    );
20759    pub fn gtk_accessible_update_relation_value(
20760        self_: *mut GtkAccessible,
20761        n_relations: c_int,
20762        relations: *mut GtkAccessibleRelation,
20763        values: *const gobject::GValue,
20764    );
20765    pub fn gtk_accessible_update_state(
20766        self_: *mut GtkAccessible,
20767        first_state: GtkAccessibleState,
20768        ...
20769    );
20770    pub fn gtk_accessible_update_state_value(
20771        self_: *mut GtkAccessible,
20772        n_states: c_int,
20773        states: *mut GtkAccessibleState,
20774        values: *const gobject::GValue,
20775    );
20776
20777    //=========================================================================
20778    // GtkAccessibleRange
20779    //=========================================================================
20780    #[cfg(feature = "v4_10")]
20781    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20782    pub fn gtk_accessible_range_get_type() -> GType;
20783
20784    //=========================================================================
20785    // GtkAccessibleText
20786    //=========================================================================
20787    #[cfg(feature = "v4_14")]
20788    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20789    pub fn gtk_accessible_text_get_type() -> GType;
20790    #[cfg(feature = "v4_14")]
20791    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20792    pub fn gtk_accessible_text_update_caret_position(self_: *mut GtkAccessibleText);
20793    #[cfg(feature = "v4_14")]
20794    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20795    pub fn gtk_accessible_text_update_contents(
20796        self_: *mut GtkAccessibleText,
20797        change: GtkAccessibleTextContentChange,
20798        start: c_uint,
20799        end: c_uint,
20800    );
20801    #[cfg(feature = "v4_14")]
20802    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20803    pub fn gtk_accessible_text_update_selection_bound(self_: *mut GtkAccessibleText);
20804
20805    //=========================================================================
20806    // GtkActionable
20807    //=========================================================================
20808    pub fn gtk_actionable_get_type() -> GType;
20809    pub fn gtk_actionable_get_action_name(actionable: *mut GtkActionable) -> *const c_char;
20810    pub fn gtk_actionable_get_action_target_value(
20811        actionable: *mut GtkActionable,
20812    ) -> *mut glib::GVariant;
20813    pub fn gtk_actionable_set_action_name(
20814        actionable: *mut GtkActionable,
20815        action_name: *const c_char,
20816    );
20817    pub fn gtk_actionable_set_action_target(
20818        actionable: *mut GtkActionable,
20819        format_string: *const c_char,
20820        ...
20821    );
20822    pub fn gtk_actionable_set_action_target_value(
20823        actionable: *mut GtkActionable,
20824        target_value: *mut glib::GVariant,
20825    );
20826    pub fn gtk_actionable_set_detailed_action_name(
20827        actionable: *mut GtkActionable,
20828        detailed_action_name: *const c_char,
20829    );
20830
20831    //=========================================================================
20832    // GtkAppChooser
20833    //=========================================================================
20834    pub fn gtk_app_chooser_get_type() -> GType;
20835    pub fn gtk_app_chooser_get_app_info(self_: *mut GtkAppChooser) -> *mut gio::GAppInfo;
20836    pub fn gtk_app_chooser_get_content_type(self_: *mut GtkAppChooser) -> *mut c_char;
20837    pub fn gtk_app_chooser_refresh(self_: *mut GtkAppChooser);
20838
20839    //=========================================================================
20840    // GtkBuildable
20841    //=========================================================================
20842    pub fn gtk_buildable_get_type() -> GType;
20843    pub fn gtk_buildable_get_buildable_id(buildable: *mut GtkBuildable) -> *const c_char;
20844
20845    //=========================================================================
20846    // GtkBuilderScope
20847    //=========================================================================
20848    pub fn gtk_builder_scope_get_type() -> GType;
20849
20850    //=========================================================================
20851    // GtkCellEditable
20852    //=========================================================================
20853    pub fn gtk_cell_editable_get_type() -> GType;
20854    pub fn gtk_cell_editable_editing_done(cell_editable: *mut GtkCellEditable);
20855    pub fn gtk_cell_editable_remove_widget(cell_editable: *mut GtkCellEditable);
20856    pub fn gtk_cell_editable_start_editing(
20857        cell_editable: *mut GtkCellEditable,
20858        event: *mut gdk::GdkEvent,
20859    );
20860
20861    //=========================================================================
20862    // GtkCellLayout
20863    //=========================================================================
20864    pub fn gtk_cell_layout_get_type() -> GType;
20865    pub fn gtk_cell_layout_add_attribute(
20866        cell_layout: *mut GtkCellLayout,
20867        cell: *mut GtkCellRenderer,
20868        attribute: *const c_char,
20869        column: c_int,
20870    );
20871    pub fn gtk_cell_layout_clear(cell_layout: *mut GtkCellLayout);
20872    pub fn gtk_cell_layout_clear_attributes(
20873        cell_layout: *mut GtkCellLayout,
20874        cell: *mut GtkCellRenderer,
20875    );
20876    pub fn gtk_cell_layout_get_area(cell_layout: *mut GtkCellLayout) -> *mut GtkCellArea;
20877    pub fn gtk_cell_layout_get_cells(cell_layout: *mut GtkCellLayout) -> *mut glib::GList;
20878    pub fn gtk_cell_layout_pack_end(
20879        cell_layout: *mut GtkCellLayout,
20880        cell: *mut GtkCellRenderer,
20881        expand: gboolean,
20882    );
20883    pub fn gtk_cell_layout_pack_start(
20884        cell_layout: *mut GtkCellLayout,
20885        cell: *mut GtkCellRenderer,
20886        expand: gboolean,
20887    );
20888    pub fn gtk_cell_layout_reorder(
20889        cell_layout: *mut GtkCellLayout,
20890        cell: *mut GtkCellRenderer,
20891        position: c_int,
20892    );
20893    pub fn gtk_cell_layout_set_attributes(
20894        cell_layout: *mut GtkCellLayout,
20895        cell: *mut GtkCellRenderer,
20896        ...
20897    );
20898    pub fn gtk_cell_layout_set_cell_data_func(
20899        cell_layout: *mut GtkCellLayout,
20900        cell: *mut GtkCellRenderer,
20901        func: GtkCellLayoutDataFunc,
20902        func_data: gpointer,
20903        destroy: glib::GDestroyNotify,
20904    );
20905
20906    //=========================================================================
20907    // GtkColorChooser
20908    //=========================================================================
20909    pub fn gtk_color_chooser_get_type() -> GType;
20910    pub fn gtk_color_chooser_add_palette(
20911        chooser: *mut GtkColorChooser,
20912        orientation: GtkOrientation,
20913        colors_per_line: c_int,
20914        n_colors: c_int,
20915        colors: *mut gdk::GdkRGBA,
20916    );
20917    pub fn gtk_color_chooser_get_rgba(chooser: *mut GtkColorChooser, color: *mut gdk::GdkRGBA);
20918    pub fn gtk_color_chooser_get_use_alpha(chooser: *mut GtkColorChooser) -> gboolean;
20919    pub fn gtk_color_chooser_set_rgba(chooser: *mut GtkColorChooser, color: *const gdk::GdkRGBA);
20920    pub fn gtk_color_chooser_set_use_alpha(chooser: *mut GtkColorChooser, use_alpha: gboolean);
20921
20922    //=========================================================================
20923    // GtkConstraintTarget
20924    //=========================================================================
20925    pub fn gtk_constraint_target_get_type() -> GType;
20926
20927    //=========================================================================
20928    // GtkEditable
20929    //=========================================================================
20930    pub fn gtk_editable_get_type() -> GType;
20931    pub fn gtk_editable_delegate_get_property(
20932        object: *mut gobject::GObject,
20933        prop_id: c_uint,
20934        value: *mut gobject::GValue,
20935        pspec: *mut gobject::GParamSpec,
20936    ) -> gboolean;
20937    pub fn gtk_editable_delegate_set_property(
20938        object: *mut gobject::GObject,
20939        prop_id: c_uint,
20940        value: *const gobject::GValue,
20941        pspec: *mut gobject::GParamSpec,
20942    ) -> gboolean;
20943    pub fn gtk_editable_install_properties(
20944        object_class: *mut gobject::GObjectClass,
20945        first_prop: c_uint,
20946    ) -> c_uint;
20947    #[cfg(feature = "v4_10")]
20948    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20949    pub fn gtk_editable_delegate_get_accessible_platform_state(
20950        editable: *mut GtkEditable,
20951        state: GtkAccessiblePlatformState,
20952    ) -> gboolean;
20953    pub fn gtk_editable_delete_selection(editable: *mut GtkEditable);
20954    pub fn gtk_editable_delete_text(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
20955    pub fn gtk_editable_finish_delegate(editable: *mut GtkEditable);
20956    pub fn gtk_editable_get_alignment(editable: *mut GtkEditable) -> c_float;
20957    pub fn gtk_editable_get_chars(
20958        editable: *mut GtkEditable,
20959        start_pos: c_int,
20960        end_pos: c_int,
20961    ) -> *mut c_char;
20962    pub fn gtk_editable_get_delegate(editable: *mut GtkEditable) -> *mut GtkEditable;
20963    pub fn gtk_editable_get_editable(editable: *mut GtkEditable) -> gboolean;
20964    pub fn gtk_editable_get_enable_undo(editable: *mut GtkEditable) -> gboolean;
20965    pub fn gtk_editable_get_max_width_chars(editable: *mut GtkEditable) -> c_int;
20966    pub fn gtk_editable_get_position(editable: *mut GtkEditable) -> c_int;
20967    pub fn gtk_editable_get_selection_bounds(
20968        editable: *mut GtkEditable,
20969        start_pos: *mut c_int,
20970        end_pos: *mut c_int,
20971    ) -> gboolean;
20972    pub fn gtk_editable_get_text(editable: *mut GtkEditable) -> *const c_char;
20973    pub fn gtk_editable_get_width_chars(editable: *mut GtkEditable) -> c_int;
20974    pub fn gtk_editable_init_delegate(editable: *mut GtkEditable);
20975    pub fn gtk_editable_insert_text(
20976        editable: *mut GtkEditable,
20977        text: *const c_char,
20978        length: c_int,
20979        position: *mut c_int,
20980    );
20981    pub fn gtk_editable_select_region(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
20982    pub fn gtk_editable_set_alignment(editable: *mut GtkEditable, xalign: c_float);
20983    pub fn gtk_editable_set_editable(editable: *mut GtkEditable, is_editable: gboolean);
20984    pub fn gtk_editable_set_enable_undo(editable: *mut GtkEditable, enable_undo: gboolean);
20985    pub fn gtk_editable_set_max_width_chars(editable: *mut GtkEditable, n_chars: c_int);
20986    pub fn gtk_editable_set_position(editable: *mut GtkEditable, position: c_int);
20987    pub fn gtk_editable_set_text(editable: *mut GtkEditable, text: *const c_char);
20988    pub fn gtk_editable_set_width_chars(editable: *mut GtkEditable, n_chars: c_int);
20989
20990    //=========================================================================
20991    // GtkFileChooser
20992    //=========================================================================
20993    pub fn gtk_file_chooser_get_type() -> GType;
20994    pub fn gtk_file_chooser_add_choice(
20995        chooser: *mut GtkFileChooser,
20996        id: *const c_char,
20997        label: *const c_char,
20998        options: *mut *const c_char,
20999        option_labels: *mut *const c_char,
21000    );
21001    pub fn gtk_file_chooser_add_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21002    pub fn gtk_file_chooser_add_shortcut_folder(
21003        chooser: *mut GtkFileChooser,
21004        folder: *mut gio::GFile,
21005        error: *mut *mut glib::GError,
21006    ) -> gboolean;
21007    pub fn gtk_file_chooser_get_action(chooser: *mut GtkFileChooser) -> GtkFileChooserAction;
21008    pub fn gtk_file_chooser_get_choice(
21009        chooser: *mut GtkFileChooser,
21010        id: *const c_char,
21011    ) -> *const c_char;
21012    pub fn gtk_file_chooser_get_create_folders(chooser: *mut GtkFileChooser) -> gboolean;
21013    pub fn gtk_file_chooser_get_current_folder(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
21014    pub fn gtk_file_chooser_get_current_name(chooser: *mut GtkFileChooser) -> *mut c_char;
21015    pub fn gtk_file_chooser_get_file(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
21016    pub fn gtk_file_chooser_get_files(chooser: *mut GtkFileChooser) -> *mut gio::GListModel;
21017    pub fn gtk_file_chooser_get_filter(chooser: *mut GtkFileChooser) -> *mut GtkFileFilter;
21018    pub fn gtk_file_chooser_get_filters(chooser: *mut GtkFileChooser) -> *mut gio::GListModel;
21019    pub fn gtk_file_chooser_get_select_multiple(chooser: *mut GtkFileChooser) -> gboolean;
21020    pub fn gtk_file_chooser_get_shortcut_folders(
21021        chooser: *mut GtkFileChooser,
21022    ) -> *mut gio::GListModel;
21023    pub fn gtk_file_chooser_remove_choice(chooser: *mut GtkFileChooser, id: *const c_char);
21024    pub fn gtk_file_chooser_remove_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21025    pub fn gtk_file_chooser_remove_shortcut_folder(
21026        chooser: *mut GtkFileChooser,
21027        folder: *mut gio::GFile,
21028        error: *mut *mut glib::GError,
21029    ) -> gboolean;
21030    pub fn gtk_file_chooser_set_action(chooser: *mut GtkFileChooser, action: GtkFileChooserAction);
21031    pub fn gtk_file_chooser_set_choice(
21032        chooser: *mut GtkFileChooser,
21033        id: *const c_char,
21034        option: *const c_char,
21035    );
21036    pub fn gtk_file_chooser_set_create_folders(
21037        chooser: *mut GtkFileChooser,
21038        create_folders: gboolean,
21039    );
21040    pub fn gtk_file_chooser_set_current_folder(
21041        chooser: *mut GtkFileChooser,
21042        file: *mut gio::GFile,
21043        error: *mut *mut glib::GError,
21044    ) -> gboolean;
21045    pub fn gtk_file_chooser_set_current_name(chooser: *mut GtkFileChooser, name: *const c_char);
21046    pub fn gtk_file_chooser_set_file(
21047        chooser: *mut GtkFileChooser,
21048        file: *mut gio::GFile,
21049        error: *mut *mut glib::GError,
21050    ) -> gboolean;
21051    pub fn gtk_file_chooser_set_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21052    pub fn gtk_file_chooser_set_select_multiple(
21053        chooser: *mut GtkFileChooser,
21054        select_multiple: gboolean,
21055    );
21056
21057    //=========================================================================
21058    // GtkFontChooser
21059    //=========================================================================
21060    pub fn gtk_font_chooser_get_type() -> GType;
21061    pub fn gtk_font_chooser_get_font(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21062    pub fn gtk_font_chooser_get_font_desc(
21063        fontchooser: *mut GtkFontChooser,
21064    ) -> *mut pango::PangoFontDescription;
21065    pub fn gtk_font_chooser_get_font_face(
21066        fontchooser: *mut GtkFontChooser,
21067    ) -> *mut pango::PangoFontFace;
21068    pub fn gtk_font_chooser_get_font_family(
21069        fontchooser: *mut GtkFontChooser,
21070    ) -> *mut pango::PangoFontFamily;
21071    pub fn gtk_font_chooser_get_font_features(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21072    pub fn gtk_font_chooser_get_font_map(
21073        fontchooser: *mut GtkFontChooser,
21074    ) -> *mut pango::PangoFontMap;
21075    pub fn gtk_font_chooser_get_font_size(fontchooser: *mut GtkFontChooser) -> c_int;
21076    pub fn gtk_font_chooser_get_language(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21077    pub fn gtk_font_chooser_get_level(fontchooser: *mut GtkFontChooser) -> GtkFontChooserLevel;
21078    pub fn gtk_font_chooser_get_preview_text(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21079    pub fn gtk_font_chooser_get_show_preview_entry(fontchooser: *mut GtkFontChooser) -> gboolean;
21080    pub fn gtk_font_chooser_set_filter_func(
21081        fontchooser: *mut GtkFontChooser,
21082        filter: GtkFontFilterFunc,
21083        user_data: gpointer,
21084        destroy: glib::GDestroyNotify,
21085    );
21086    pub fn gtk_font_chooser_set_font(fontchooser: *mut GtkFontChooser, fontname: *const c_char);
21087    pub fn gtk_font_chooser_set_font_desc(
21088        fontchooser: *mut GtkFontChooser,
21089        font_desc: *const pango::PangoFontDescription,
21090    );
21091    pub fn gtk_font_chooser_set_font_map(
21092        fontchooser: *mut GtkFontChooser,
21093        fontmap: *mut pango::PangoFontMap,
21094    );
21095    pub fn gtk_font_chooser_set_language(fontchooser: *mut GtkFontChooser, language: *const c_char);
21096    pub fn gtk_font_chooser_set_level(fontchooser: *mut GtkFontChooser, level: GtkFontChooserLevel);
21097    pub fn gtk_font_chooser_set_preview_text(fontchooser: *mut GtkFontChooser, text: *const c_char);
21098    pub fn gtk_font_chooser_set_show_preview_entry(
21099        fontchooser: *mut GtkFontChooser,
21100        show_preview_entry: gboolean,
21101    );
21102
21103    //=========================================================================
21104    // GtkNative
21105    //=========================================================================
21106    pub fn gtk_native_get_type() -> GType;
21107    pub fn gtk_native_get_for_surface(surface: *mut gdk::GdkSurface) -> *mut GtkNative;
21108    pub fn gtk_native_get_renderer(self_: *mut GtkNative) -> *mut gsk::GskRenderer;
21109    pub fn gtk_native_get_surface(self_: *mut GtkNative) -> *mut gdk::GdkSurface;
21110    pub fn gtk_native_get_surface_transform(
21111        self_: *mut GtkNative,
21112        x: *mut c_double,
21113        y: *mut c_double,
21114    );
21115    pub fn gtk_native_realize(self_: *mut GtkNative);
21116    pub fn gtk_native_unrealize(self_: *mut GtkNative);
21117
21118    //=========================================================================
21119    // GtkOrientable
21120    //=========================================================================
21121    pub fn gtk_orientable_get_type() -> GType;
21122    pub fn gtk_orientable_get_orientation(orientable: *mut GtkOrientable) -> GtkOrientation;
21123    pub fn gtk_orientable_set_orientation(
21124        orientable: *mut GtkOrientable,
21125        orientation: GtkOrientation,
21126    );
21127
21128    //=========================================================================
21129    // GtkPrintOperationPreview
21130    //=========================================================================
21131    pub fn gtk_print_operation_preview_get_type() -> GType;
21132    pub fn gtk_print_operation_preview_end_preview(preview: *mut GtkPrintOperationPreview);
21133    pub fn gtk_print_operation_preview_is_selected(
21134        preview: *mut GtkPrintOperationPreview,
21135        page_nr: c_int,
21136    ) -> gboolean;
21137    pub fn gtk_print_operation_preview_render_page(
21138        preview: *mut GtkPrintOperationPreview,
21139        page_nr: c_int,
21140    );
21141
21142    //=========================================================================
21143    // GtkRoot
21144    //=========================================================================
21145    pub fn gtk_root_get_type() -> GType;
21146    pub fn gtk_root_get_display(self_: *mut GtkRoot) -> *mut gdk::GdkDisplay;
21147    pub fn gtk_root_get_focus(self_: *mut GtkRoot) -> *mut GtkWidget;
21148    pub fn gtk_root_set_focus(self_: *mut GtkRoot, focus: *mut GtkWidget);
21149
21150    //=========================================================================
21151    // GtkScrollable
21152    //=========================================================================
21153    pub fn gtk_scrollable_get_type() -> GType;
21154    pub fn gtk_scrollable_get_border(
21155        scrollable: *mut GtkScrollable,
21156        border: *mut GtkBorder,
21157    ) -> gboolean;
21158    pub fn gtk_scrollable_get_hadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
21159    pub fn gtk_scrollable_get_hscroll_policy(scrollable: *mut GtkScrollable)
21160        -> GtkScrollablePolicy;
21161    pub fn gtk_scrollable_get_vadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
21162    pub fn gtk_scrollable_get_vscroll_policy(scrollable: *mut GtkScrollable)
21163        -> GtkScrollablePolicy;
21164    pub fn gtk_scrollable_set_hadjustment(
21165        scrollable: *mut GtkScrollable,
21166        hadjustment: *mut GtkAdjustment,
21167    );
21168    pub fn gtk_scrollable_set_hscroll_policy(
21169        scrollable: *mut GtkScrollable,
21170        policy: GtkScrollablePolicy,
21171    );
21172    pub fn gtk_scrollable_set_vadjustment(
21173        scrollable: *mut GtkScrollable,
21174        vadjustment: *mut GtkAdjustment,
21175    );
21176    pub fn gtk_scrollable_set_vscroll_policy(
21177        scrollable: *mut GtkScrollable,
21178        policy: GtkScrollablePolicy,
21179    );
21180
21181    //=========================================================================
21182    // GtkSectionModel
21183    //=========================================================================
21184    #[cfg(feature = "v4_12")]
21185    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21186    pub fn gtk_section_model_get_type() -> GType;
21187    #[cfg(feature = "v4_12")]
21188    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21189    pub fn gtk_section_model_get_section(
21190        self_: *mut GtkSectionModel,
21191        position: c_uint,
21192        out_start: *mut c_uint,
21193        out_end: *mut c_uint,
21194    );
21195    #[cfg(feature = "v4_12")]
21196    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21197    pub fn gtk_section_model_sections_changed(
21198        self_: *mut GtkSectionModel,
21199        position: c_uint,
21200        n_items: c_uint,
21201    );
21202
21203    //=========================================================================
21204    // GtkSelectionModel
21205    //=========================================================================
21206    pub fn gtk_selection_model_get_type() -> GType;
21207    pub fn gtk_selection_model_get_selection(model: *mut GtkSelectionModel) -> *mut GtkBitset;
21208    pub fn gtk_selection_model_get_selection_in_range(
21209        model: *mut GtkSelectionModel,
21210        position: c_uint,
21211        n_items: c_uint,
21212    ) -> *mut GtkBitset;
21213    pub fn gtk_selection_model_is_selected(
21214        model: *mut GtkSelectionModel,
21215        position: c_uint,
21216    ) -> gboolean;
21217    pub fn gtk_selection_model_select_all(model: *mut GtkSelectionModel) -> gboolean;
21218    pub fn gtk_selection_model_select_item(
21219        model: *mut GtkSelectionModel,
21220        position: c_uint,
21221        unselect_rest: gboolean,
21222    ) -> gboolean;
21223    pub fn gtk_selection_model_select_range(
21224        model: *mut GtkSelectionModel,
21225        position: c_uint,
21226        n_items: c_uint,
21227        unselect_rest: gboolean,
21228    ) -> gboolean;
21229    pub fn gtk_selection_model_selection_changed(
21230        model: *mut GtkSelectionModel,
21231        position: c_uint,
21232        n_items: c_uint,
21233    );
21234    pub fn gtk_selection_model_set_selection(
21235        model: *mut GtkSelectionModel,
21236        selected: *mut GtkBitset,
21237        mask: *mut GtkBitset,
21238    ) -> gboolean;
21239    pub fn gtk_selection_model_unselect_all(model: *mut GtkSelectionModel) -> gboolean;
21240    pub fn gtk_selection_model_unselect_item(
21241        model: *mut GtkSelectionModel,
21242        position: c_uint,
21243    ) -> gboolean;
21244    pub fn gtk_selection_model_unselect_range(
21245        model: *mut GtkSelectionModel,
21246        position: c_uint,
21247        n_items: c_uint,
21248    ) -> gboolean;
21249
21250    //=========================================================================
21251    // GtkShortcutManager
21252    //=========================================================================
21253    pub fn gtk_shortcut_manager_get_type() -> GType;
21254
21255    //=========================================================================
21256    // GtkStyleProvider
21257    //=========================================================================
21258    pub fn gtk_style_provider_get_type() -> GType;
21259
21260    //=========================================================================
21261    // GtkSymbolicPaintable
21262    //=========================================================================
21263    #[cfg(feature = "v4_6")]
21264    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
21265    pub fn gtk_symbolic_paintable_get_type() -> GType;
21266    #[cfg(feature = "v4_6")]
21267    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
21268    pub fn gtk_symbolic_paintable_snapshot_symbolic(
21269        paintable: *mut GtkSymbolicPaintable,
21270        snapshot: *mut gdk::GdkSnapshot,
21271        width: c_double,
21272        height: c_double,
21273        colors: *const gdk::GdkRGBA,
21274        n_colors: size_t,
21275    );
21276
21277    //=========================================================================
21278    // GtkTreeDragDest
21279    //=========================================================================
21280    pub fn gtk_tree_drag_dest_get_type() -> GType;
21281    pub fn gtk_tree_drag_dest_drag_data_received(
21282        drag_dest: *mut GtkTreeDragDest,
21283        dest: *mut GtkTreePath,
21284        value: *const gobject::GValue,
21285    ) -> gboolean;
21286    pub fn gtk_tree_drag_dest_row_drop_possible(
21287        drag_dest: *mut GtkTreeDragDest,
21288        dest_path: *mut GtkTreePath,
21289        value: *const gobject::GValue,
21290    ) -> gboolean;
21291
21292    //=========================================================================
21293    // GtkTreeDragSource
21294    //=========================================================================
21295    pub fn gtk_tree_drag_source_get_type() -> GType;
21296    pub fn gtk_tree_drag_source_drag_data_delete(
21297        drag_source: *mut GtkTreeDragSource,
21298        path: *mut GtkTreePath,
21299    ) -> gboolean;
21300    pub fn gtk_tree_drag_source_drag_data_get(
21301        drag_source: *mut GtkTreeDragSource,
21302        path: *mut GtkTreePath,
21303    ) -> *mut gdk::GdkContentProvider;
21304    pub fn gtk_tree_drag_source_row_draggable(
21305        drag_source: *mut GtkTreeDragSource,
21306        path: *mut GtkTreePath,
21307    ) -> gboolean;
21308
21309    //=========================================================================
21310    // GtkTreeModel
21311    //=========================================================================
21312    pub fn gtk_tree_model_get_type() -> GType;
21313    pub fn gtk_tree_model_filter_new(
21314        child_model: *mut GtkTreeModel,
21315        root: *mut GtkTreePath,
21316    ) -> *mut GtkTreeModel;
21317    pub fn gtk_tree_model_foreach(
21318        model: *mut GtkTreeModel,
21319        func: GtkTreeModelForeachFunc,
21320        user_data: gpointer,
21321    );
21322    pub fn gtk_tree_model_get(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, ...);
21323    pub fn gtk_tree_model_get_column_type(tree_model: *mut GtkTreeModel, index_: c_int) -> GType;
21324    pub fn gtk_tree_model_get_flags(tree_model: *mut GtkTreeModel) -> GtkTreeModelFlags;
21325    pub fn gtk_tree_model_get_iter(
21326        tree_model: *mut GtkTreeModel,
21327        iter: *mut GtkTreeIter,
21328        path: *mut GtkTreePath,
21329    ) -> gboolean;
21330    pub fn gtk_tree_model_get_iter_first(
21331        tree_model: *mut GtkTreeModel,
21332        iter: *mut GtkTreeIter,
21333    ) -> gboolean;
21334    pub fn gtk_tree_model_get_iter_from_string(
21335        tree_model: *mut GtkTreeModel,
21336        iter: *mut GtkTreeIter,
21337        path_string: *const c_char,
21338    ) -> gboolean;
21339    pub fn gtk_tree_model_get_n_columns(tree_model: *mut GtkTreeModel) -> c_int;
21340    pub fn gtk_tree_model_get_path(
21341        tree_model: *mut GtkTreeModel,
21342        iter: *mut GtkTreeIter,
21343    ) -> *mut GtkTreePath;
21344    pub fn gtk_tree_model_get_string_from_iter(
21345        tree_model: *mut GtkTreeModel,
21346        iter: *mut GtkTreeIter,
21347    ) -> *mut c_char;
21348    //pub fn gtk_tree_model_get_valist(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
21349    pub fn gtk_tree_model_get_value(
21350        tree_model: *mut GtkTreeModel,
21351        iter: *mut GtkTreeIter,
21352        column: c_int,
21353        value: *mut gobject::GValue,
21354    );
21355    pub fn gtk_tree_model_iter_children(
21356        tree_model: *mut GtkTreeModel,
21357        iter: *mut GtkTreeIter,
21358        parent: *mut GtkTreeIter,
21359    ) -> gboolean;
21360    pub fn gtk_tree_model_iter_has_child(
21361        tree_model: *mut GtkTreeModel,
21362        iter: *mut GtkTreeIter,
21363    ) -> gboolean;
21364    pub fn gtk_tree_model_iter_n_children(
21365        tree_model: *mut GtkTreeModel,
21366        iter: *mut GtkTreeIter,
21367    ) -> c_int;
21368    pub fn gtk_tree_model_iter_next(
21369        tree_model: *mut GtkTreeModel,
21370        iter: *mut GtkTreeIter,
21371    ) -> gboolean;
21372    pub fn gtk_tree_model_iter_nth_child(
21373        tree_model: *mut GtkTreeModel,
21374        iter: *mut GtkTreeIter,
21375        parent: *mut GtkTreeIter,
21376        n: c_int,
21377    ) -> gboolean;
21378    pub fn gtk_tree_model_iter_parent(
21379        tree_model: *mut GtkTreeModel,
21380        iter: *mut GtkTreeIter,
21381        child: *mut GtkTreeIter,
21382    ) -> gboolean;
21383    pub fn gtk_tree_model_iter_previous(
21384        tree_model: *mut GtkTreeModel,
21385        iter: *mut GtkTreeIter,
21386    ) -> gboolean;
21387    pub fn gtk_tree_model_ref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
21388    pub fn gtk_tree_model_row_changed(
21389        tree_model: *mut GtkTreeModel,
21390        path: *mut GtkTreePath,
21391        iter: *mut GtkTreeIter,
21392    );
21393    pub fn gtk_tree_model_row_deleted(tree_model: *mut GtkTreeModel, path: *mut GtkTreePath);
21394    pub fn gtk_tree_model_row_has_child_toggled(
21395        tree_model: *mut GtkTreeModel,
21396        path: *mut GtkTreePath,
21397        iter: *mut GtkTreeIter,
21398    );
21399    pub fn gtk_tree_model_row_inserted(
21400        tree_model: *mut GtkTreeModel,
21401        path: *mut GtkTreePath,
21402        iter: *mut GtkTreeIter,
21403    );
21404    pub fn gtk_tree_model_rows_reordered(
21405        tree_model: *mut GtkTreeModel,
21406        path: *mut GtkTreePath,
21407        iter: *mut GtkTreeIter,
21408        new_order: *mut c_int,
21409    );
21410    pub fn gtk_tree_model_rows_reordered_with_length(
21411        tree_model: *mut GtkTreeModel,
21412        path: *mut GtkTreePath,
21413        iter: *mut GtkTreeIter,
21414        new_order: *mut c_int,
21415        length: c_int,
21416    );
21417    pub fn gtk_tree_model_unref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
21418
21419    //=========================================================================
21420    // GtkTreeSortable
21421    //=========================================================================
21422    pub fn gtk_tree_sortable_get_type() -> GType;
21423    pub fn gtk_tree_sortable_get_sort_column_id(
21424        sortable: *mut GtkTreeSortable,
21425        sort_column_id: *mut c_int,
21426        order: *mut GtkSortType,
21427    ) -> gboolean;
21428    pub fn gtk_tree_sortable_has_default_sort_func(sortable: *mut GtkTreeSortable) -> gboolean;
21429    pub fn gtk_tree_sortable_set_default_sort_func(
21430        sortable: *mut GtkTreeSortable,
21431        sort_func: GtkTreeIterCompareFunc,
21432        user_data: gpointer,
21433        destroy: glib::GDestroyNotify,
21434    );
21435    pub fn gtk_tree_sortable_set_sort_column_id(
21436        sortable: *mut GtkTreeSortable,
21437        sort_column_id: c_int,
21438        order: GtkSortType,
21439    );
21440    pub fn gtk_tree_sortable_set_sort_func(
21441        sortable: *mut GtkTreeSortable,
21442        sort_column_id: c_int,
21443        sort_func: GtkTreeIterCompareFunc,
21444        user_data: gpointer,
21445        destroy: glib::GDestroyNotify,
21446    );
21447    pub fn gtk_tree_sortable_sort_column_changed(sortable: *mut GtkTreeSortable);
21448
21449    //=========================================================================
21450    // Other functions
21451    //=========================================================================
21452    pub fn gtk_accelerator_get_default_mod_mask() -> gdk::GdkModifierType;
21453    pub fn gtk_accelerator_get_label(
21454        accelerator_key: c_uint,
21455        accelerator_mods: gdk::GdkModifierType,
21456    ) -> *mut c_char;
21457    pub fn gtk_accelerator_get_label_with_keycode(
21458        display: *mut gdk::GdkDisplay,
21459        accelerator_key: c_uint,
21460        keycode: c_uint,
21461        accelerator_mods: gdk::GdkModifierType,
21462    ) -> *mut c_char;
21463    pub fn gtk_accelerator_name(
21464        accelerator_key: c_uint,
21465        accelerator_mods: gdk::GdkModifierType,
21466    ) -> *mut c_char;
21467    pub fn gtk_accelerator_name_with_keycode(
21468        display: *mut gdk::GdkDisplay,
21469        accelerator_key: c_uint,
21470        keycode: c_uint,
21471        accelerator_mods: gdk::GdkModifierType,
21472    ) -> *mut c_char;
21473    pub fn gtk_accelerator_parse(
21474        accelerator: *const c_char,
21475        accelerator_key: *mut c_uint,
21476        accelerator_mods: *mut gdk::GdkModifierType,
21477    ) -> gboolean;
21478    pub fn gtk_accelerator_parse_with_keycode(
21479        accelerator: *const c_char,
21480        display: *mut gdk::GdkDisplay,
21481        accelerator_key: *mut c_uint,
21482        accelerator_codes: *mut *mut c_uint,
21483        accelerator_mods: *mut gdk::GdkModifierType,
21484    ) -> gboolean;
21485    pub fn gtk_accelerator_valid(keyval: c_uint, modifiers: gdk::GdkModifierType) -> gboolean;
21486    pub fn gtk_check_version(
21487        required_major: c_uint,
21488        required_minor: c_uint,
21489        required_micro: c_uint,
21490    ) -> *const c_char;
21491    pub fn gtk_css_parser_error_quark() -> glib::GQuark;
21492    pub fn gtk_css_parser_warning_quark() -> glib::GQuark;
21493    #[cfg(feature = "v4_18")]
21494    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
21495    pub fn gtk_disable_portals();
21496    pub fn gtk_disable_setlocale();
21497    pub fn gtk_distribute_natural_allocation(
21498        extra_space: c_int,
21499        n_requested_sizes: c_uint,
21500        sizes: *mut GtkRequestedSize,
21501    ) -> c_int;
21502    pub fn gtk_enumerate_printers(
21503        func: GtkPrinterFunc,
21504        data: gpointer,
21505        destroy: glib::GDestroyNotify,
21506        wait: gboolean,
21507    );
21508    pub fn gtk_get_binary_age() -> c_uint;
21509    pub fn gtk_get_debug_flags() -> GtkDebugFlags;
21510    pub fn gtk_get_default_language() -> *mut pango::PangoLanguage;
21511    pub fn gtk_get_interface_age() -> c_uint;
21512    pub fn gtk_get_locale_direction() -> GtkTextDirection;
21513    pub fn gtk_get_major_version() -> c_uint;
21514    pub fn gtk_get_micro_version() -> c_uint;
21515    pub fn gtk_get_minor_version() -> c_uint;
21516    pub fn gtk_hsv_to_rgb(
21517        h: c_float,
21518        s: c_float,
21519        v: c_float,
21520        r: *mut c_float,
21521        g: *mut c_float,
21522        b: *mut c_float,
21523    );
21524    pub fn gtk_init();
21525    pub fn gtk_init_check() -> gboolean;
21526    pub fn gtk_is_initialized() -> gboolean;
21527    pub fn gtk_param_spec_expression(
21528        name: *const c_char,
21529        nick: *const c_char,
21530        blurb: *const c_char,
21531        flags: gobject::GParamFlags,
21532    ) -> *mut gobject::GParamSpec;
21533    pub fn gtk_print_run_page_setup_dialog(
21534        parent: *mut GtkWindow,
21535        page_setup: *mut GtkPageSetup,
21536        settings: *mut GtkPrintSettings,
21537    ) -> *mut GtkPageSetup;
21538    pub fn gtk_print_run_page_setup_dialog_async(
21539        parent: *mut GtkWindow,
21540        page_setup: *mut GtkPageSetup,
21541        settings: *mut GtkPrintSettings,
21542        done_cb: GtkPageSetupDoneFunc,
21543        data: gpointer,
21544    );
21545    pub fn gtk_render_activity(
21546        context: *mut GtkStyleContext,
21547        cr: *mut cairo::cairo_t,
21548        x: c_double,
21549        y: c_double,
21550        width: c_double,
21551        height: c_double,
21552    );
21553    pub fn gtk_render_arrow(
21554        context: *mut GtkStyleContext,
21555        cr: *mut cairo::cairo_t,
21556        angle: c_double,
21557        x: c_double,
21558        y: c_double,
21559        size: c_double,
21560    );
21561    pub fn gtk_render_background(
21562        context: *mut GtkStyleContext,
21563        cr: *mut cairo::cairo_t,
21564        x: c_double,
21565        y: c_double,
21566        width: c_double,
21567        height: c_double,
21568    );
21569    pub fn gtk_render_check(
21570        context: *mut GtkStyleContext,
21571        cr: *mut cairo::cairo_t,
21572        x: c_double,
21573        y: c_double,
21574        width: c_double,
21575        height: c_double,
21576    );
21577    pub fn gtk_render_expander(
21578        context: *mut GtkStyleContext,
21579        cr: *mut cairo::cairo_t,
21580        x: c_double,
21581        y: c_double,
21582        width: c_double,
21583        height: c_double,
21584    );
21585    pub fn gtk_render_focus(
21586        context: *mut GtkStyleContext,
21587        cr: *mut cairo::cairo_t,
21588        x: c_double,
21589        y: c_double,
21590        width: c_double,
21591        height: c_double,
21592    );
21593    pub fn gtk_render_frame(
21594        context: *mut GtkStyleContext,
21595        cr: *mut cairo::cairo_t,
21596        x: c_double,
21597        y: c_double,
21598        width: c_double,
21599        height: c_double,
21600    );
21601    pub fn gtk_render_handle(
21602        context: *mut GtkStyleContext,
21603        cr: *mut cairo::cairo_t,
21604        x: c_double,
21605        y: c_double,
21606        width: c_double,
21607        height: c_double,
21608    );
21609    pub fn gtk_render_icon(
21610        context: *mut GtkStyleContext,
21611        cr: *mut cairo::cairo_t,
21612        texture: *mut gdk::GdkTexture,
21613        x: c_double,
21614        y: c_double,
21615    );
21616    pub fn gtk_render_layout(
21617        context: *mut GtkStyleContext,
21618        cr: *mut cairo::cairo_t,
21619        x: c_double,
21620        y: c_double,
21621        layout: *mut pango::PangoLayout,
21622    );
21623    pub fn gtk_render_line(
21624        context: *mut GtkStyleContext,
21625        cr: *mut cairo::cairo_t,
21626        x0: c_double,
21627        y0: c_double,
21628        x1: c_double,
21629        y1: c_double,
21630    );
21631    pub fn gtk_render_option(
21632        context: *mut GtkStyleContext,
21633        cr: *mut cairo::cairo_t,
21634        x: c_double,
21635        y: c_double,
21636        width: c_double,
21637        height: c_double,
21638    );
21639    pub fn gtk_rgb_to_hsv(
21640        r: c_float,
21641        g: c_float,
21642        b: c_float,
21643        h: *mut c_float,
21644        s: *mut c_float,
21645        v: *mut c_float,
21646    );
21647    pub fn gtk_set_debug_flags(flags: GtkDebugFlags);
21648    pub fn gtk_show_about_dialog(parent: *mut GtkWindow, first_property_name: *const c_char, ...);
21649    pub fn gtk_show_uri(parent: *mut GtkWindow, uri: *const c_char, timestamp: u32);
21650    pub fn gtk_show_uri_full(
21651        parent: *mut GtkWindow,
21652        uri: *const c_char,
21653        timestamp: u32,
21654        cancellable: *mut gio::GCancellable,
21655        callback: gio::GAsyncReadyCallback,
21656        user_data: gpointer,
21657    );
21658    pub fn gtk_show_uri_full_finish(
21659        parent: *mut GtkWindow,
21660        result: *mut gio::GAsyncResult,
21661        error: *mut *mut glib::GError,
21662    ) -> gboolean;
21663    pub fn gtk_test_accessible_assertion_message_role(
21664        domain: *const c_char,
21665        file: *const c_char,
21666        line: c_int,
21667        func: *const c_char,
21668        expr: *const c_char,
21669        accessible: *mut GtkAccessible,
21670        expected_role: GtkAccessibleRole,
21671        actual_role: GtkAccessibleRole,
21672    );
21673    pub fn gtk_test_accessible_check_property(
21674        accessible: *mut GtkAccessible,
21675        property: GtkAccessibleProperty,
21676        ...
21677    ) -> *mut c_char;
21678    pub fn gtk_test_accessible_check_relation(
21679        accessible: *mut GtkAccessible,
21680        relation: GtkAccessibleRelation,
21681        ...
21682    ) -> *mut c_char;
21683    pub fn gtk_test_accessible_check_state(
21684        accessible: *mut GtkAccessible,
21685        state: GtkAccessibleState,
21686        ...
21687    ) -> *mut c_char;
21688    pub fn gtk_test_accessible_has_property(
21689        accessible: *mut GtkAccessible,
21690        property: GtkAccessibleProperty,
21691    ) -> gboolean;
21692    pub fn gtk_test_accessible_has_relation(
21693        accessible: *mut GtkAccessible,
21694        relation: GtkAccessibleRelation,
21695    ) -> gboolean;
21696    pub fn gtk_test_accessible_has_role(
21697        accessible: *mut GtkAccessible,
21698        role: GtkAccessibleRole,
21699    ) -> gboolean;
21700    pub fn gtk_test_accessible_has_state(
21701        accessible: *mut GtkAccessible,
21702        state: GtkAccessibleState,
21703    ) -> gboolean;
21704    pub fn gtk_test_init(argcp: *mut c_int, argvp: *mut *mut *mut c_char, ...);
21705    pub fn gtk_test_list_all_types(n_types: *mut c_uint) -> *const GType;
21706    pub fn gtk_test_register_all_types();
21707    pub fn gtk_test_widget_wait_for_draw(widget: *mut GtkWidget);
21708    pub fn gtk_tree_create_row_drag_content(
21709        tree_model: *mut GtkTreeModel,
21710        path: *mut GtkTreePath,
21711    ) -> *mut gdk::GdkContentProvider;
21712    pub fn gtk_tree_get_row_drag_data(
21713        value: *const gobject::GValue,
21714        tree_model: *mut *mut GtkTreeModel,
21715        path: *mut *mut GtkTreePath,
21716    ) -> gboolean;
21717    pub fn gtk_value_dup_expression(value: *const gobject::GValue) -> *mut GtkExpression;
21718    pub fn gtk_value_get_expression(value: *const gobject::GValue) -> *mut GtkExpression;
21719    pub fn gtk_value_set_expression(value: *mut gobject::GValue, expression: *mut GtkExpression);
21720    pub fn gtk_value_take_expression(value: *mut gobject::GValue, expression: *mut GtkExpression);
21721
21722}