gtk4_sys/
lib.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from gir-files (https://github.com/gtk-rs/gir-files)
3// DO NOT EDIT
4
5#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
6#![allow(
7    clippy::approx_constant,
8    clippy::type_complexity,
9    clippy::unreadable_literal,
10    clippy::upper_case_acronyms
11)]
12#![cfg_attr(docsrs, feature(doc_cfg))]
13
14use cairo_sys as cairo;
15use gdk4_sys as gdk;
16use gdk_pixbuf_sys as gdk_pixbuf;
17use gio_sys as gio;
18use glib_sys as glib;
19use gobject_sys as gobject;
20use graphene_sys as graphene;
21use gsk4_sys as gsk;
22use pango_sys as pango;
23
24#[cfg(unix)]
25#[allow(unused_imports)]
26use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
27#[allow(unused_imports)]
28use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
29#[allow(unused_imports)]
30use std::ffi::{
31    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
32};
33
34#[allow(unused_imports)]
35use glib::{gboolean, gconstpointer, gpointer, GType};
36
37pub const GTK_ENTRY_BUFFER_MAX_SIZE: u16 = u16::MAX;
38
39// Aliases
40pub type GtkAllocation = gdk::GdkRectangle;
41
42// Enums
43pub type GtkAccessibleAnnouncementPriority = c_int;
44pub const GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_LOW: GtkAccessibleAnnouncementPriority = 0;
45pub const GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_MEDIUM: GtkAccessibleAnnouncementPriority = 1;
46pub const GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_HIGH: GtkAccessibleAnnouncementPriority = 2;
47
48pub type GtkAccessibleAutocomplete = c_int;
49pub const GTK_ACCESSIBLE_AUTOCOMPLETE_NONE: GtkAccessibleAutocomplete = 0;
50pub const GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE: GtkAccessibleAutocomplete = 1;
51pub const GTK_ACCESSIBLE_AUTOCOMPLETE_LIST: GtkAccessibleAutocomplete = 2;
52pub const GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH: GtkAccessibleAutocomplete = 3;
53
54pub type GtkAccessibleInvalidState = c_int;
55pub const GTK_ACCESSIBLE_INVALID_FALSE: GtkAccessibleInvalidState = 0;
56pub const GTK_ACCESSIBLE_INVALID_TRUE: GtkAccessibleInvalidState = 1;
57pub const GTK_ACCESSIBLE_INVALID_GRAMMAR: GtkAccessibleInvalidState = 2;
58pub const GTK_ACCESSIBLE_INVALID_SPELLING: GtkAccessibleInvalidState = 3;
59
60pub type GtkAccessiblePlatformState = c_int;
61pub const GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSABLE: GtkAccessiblePlatformState = 0;
62pub const GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSED: GtkAccessiblePlatformState = 1;
63pub const GTK_ACCESSIBLE_PLATFORM_STATE_ACTIVE: GtkAccessiblePlatformState = 2;
64
65pub type GtkAccessibleProperty = c_int;
66pub const GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE: GtkAccessibleProperty = 0;
67pub const GTK_ACCESSIBLE_PROPERTY_DESCRIPTION: GtkAccessibleProperty = 1;
68pub const GTK_ACCESSIBLE_PROPERTY_HAS_POPUP: GtkAccessibleProperty = 2;
69pub const GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS: GtkAccessibleProperty = 3;
70pub const GTK_ACCESSIBLE_PROPERTY_LABEL: GtkAccessibleProperty = 4;
71pub const GTK_ACCESSIBLE_PROPERTY_LEVEL: GtkAccessibleProperty = 5;
72pub const GTK_ACCESSIBLE_PROPERTY_MODAL: GtkAccessibleProperty = 6;
73pub const GTK_ACCESSIBLE_PROPERTY_MULTI_LINE: GtkAccessibleProperty = 7;
74pub const GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE: GtkAccessibleProperty = 8;
75pub const GTK_ACCESSIBLE_PROPERTY_ORIENTATION: GtkAccessibleProperty = 9;
76pub const GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER: GtkAccessibleProperty = 10;
77pub const GTK_ACCESSIBLE_PROPERTY_READ_ONLY: GtkAccessibleProperty = 11;
78pub const GTK_ACCESSIBLE_PROPERTY_REQUIRED: GtkAccessibleProperty = 12;
79pub const GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION: GtkAccessibleProperty = 13;
80pub const GTK_ACCESSIBLE_PROPERTY_SORT: GtkAccessibleProperty = 14;
81pub const GTK_ACCESSIBLE_PROPERTY_VALUE_MAX: GtkAccessibleProperty = 15;
82pub const GTK_ACCESSIBLE_PROPERTY_VALUE_MIN: GtkAccessibleProperty = 16;
83pub const GTK_ACCESSIBLE_PROPERTY_VALUE_NOW: GtkAccessibleProperty = 17;
84pub const GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT: GtkAccessibleProperty = 18;
85#[cfg(feature = "v4_16")]
86#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
87pub const GTK_ACCESSIBLE_PROPERTY_HELP_TEXT: GtkAccessibleProperty = 19;
88
89pub type GtkAccessibleRelation = c_int;
90pub const GTK_ACCESSIBLE_RELATION_ACTIVE_DESCENDANT: GtkAccessibleRelation = 0;
91pub const GTK_ACCESSIBLE_RELATION_COL_COUNT: GtkAccessibleRelation = 1;
92pub const GTK_ACCESSIBLE_RELATION_COL_INDEX: GtkAccessibleRelation = 2;
93pub const GTK_ACCESSIBLE_RELATION_COL_INDEX_TEXT: GtkAccessibleRelation = 3;
94pub const GTK_ACCESSIBLE_RELATION_COL_SPAN: GtkAccessibleRelation = 4;
95pub const GTK_ACCESSIBLE_RELATION_CONTROLS: GtkAccessibleRelation = 5;
96pub const GTK_ACCESSIBLE_RELATION_DESCRIBED_BY: GtkAccessibleRelation = 6;
97pub const GTK_ACCESSIBLE_RELATION_DETAILS: GtkAccessibleRelation = 7;
98pub const GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE: GtkAccessibleRelation = 8;
99pub const GTK_ACCESSIBLE_RELATION_FLOW_TO: GtkAccessibleRelation = 9;
100pub const GTK_ACCESSIBLE_RELATION_LABELLED_BY: GtkAccessibleRelation = 10;
101pub const GTK_ACCESSIBLE_RELATION_OWNS: GtkAccessibleRelation = 11;
102pub const GTK_ACCESSIBLE_RELATION_POS_IN_SET: GtkAccessibleRelation = 12;
103pub const GTK_ACCESSIBLE_RELATION_ROW_COUNT: GtkAccessibleRelation = 13;
104pub const GTK_ACCESSIBLE_RELATION_ROW_INDEX: GtkAccessibleRelation = 14;
105pub const GTK_ACCESSIBLE_RELATION_ROW_INDEX_TEXT: GtkAccessibleRelation = 15;
106pub const GTK_ACCESSIBLE_RELATION_ROW_SPAN: GtkAccessibleRelation = 16;
107pub const GTK_ACCESSIBLE_RELATION_SET_SIZE: GtkAccessibleRelation = 17;
108#[cfg(feature = "v4_18")]
109#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
110pub const GTK_ACCESSIBLE_RELATION_LABEL_FOR: GtkAccessibleRelation = 18;
111#[cfg(feature = "v4_18")]
112#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
113pub const GTK_ACCESSIBLE_RELATION_DESCRIPTION_FOR: GtkAccessibleRelation = 19;
114#[cfg(feature = "v4_18")]
115#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
116pub const GTK_ACCESSIBLE_RELATION_CONTROLLED_BY: GtkAccessibleRelation = 20;
117#[cfg(feature = "v4_18")]
118#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
119pub const GTK_ACCESSIBLE_RELATION_DETAILS_FOR: GtkAccessibleRelation = 21;
120#[cfg(feature = "v4_18")]
121#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
122pub const GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE_FOR: GtkAccessibleRelation = 22;
123#[cfg(feature = "v4_18")]
124#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
125pub const GTK_ACCESSIBLE_RELATION_FLOW_FROM: GtkAccessibleRelation = 23;
126
127pub type GtkAccessibleRole = c_int;
128pub const GTK_ACCESSIBLE_ROLE_ALERT: GtkAccessibleRole = 0;
129pub const GTK_ACCESSIBLE_ROLE_ALERT_DIALOG: GtkAccessibleRole = 1;
130pub const GTK_ACCESSIBLE_ROLE_BANNER: GtkAccessibleRole = 2;
131pub const GTK_ACCESSIBLE_ROLE_BUTTON: GtkAccessibleRole = 3;
132pub const GTK_ACCESSIBLE_ROLE_CAPTION: GtkAccessibleRole = 4;
133pub const GTK_ACCESSIBLE_ROLE_CELL: GtkAccessibleRole = 5;
134pub const GTK_ACCESSIBLE_ROLE_CHECKBOX: GtkAccessibleRole = 6;
135pub const GTK_ACCESSIBLE_ROLE_COLUMN_HEADER: GtkAccessibleRole = 7;
136pub const GTK_ACCESSIBLE_ROLE_COMBO_BOX: GtkAccessibleRole = 8;
137pub const GTK_ACCESSIBLE_ROLE_COMMAND: GtkAccessibleRole = 9;
138pub const GTK_ACCESSIBLE_ROLE_COMPOSITE: GtkAccessibleRole = 10;
139pub const GTK_ACCESSIBLE_ROLE_DIALOG: GtkAccessibleRole = 11;
140pub const GTK_ACCESSIBLE_ROLE_DOCUMENT: GtkAccessibleRole = 12;
141pub const GTK_ACCESSIBLE_ROLE_FEED: GtkAccessibleRole = 13;
142pub const GTK_ACCESSIBLE_ROLE_FORM: GtkAccessibleRole = 14;
143pub const GTK_ACCESSIBLE_ROLE_GENERIC: GtkAccessibleRole = 15;
144pub const GTK_ACCESSIBLE_ROLE_GRID: GtkAccessibleRole = 16;
145pub const GTK_ACCESSIBLE_ROLE_GRID_CELL: GtkAccessibleRole = 17;
146pub const GTK_ACCESSIBLE_ROLE_GROUP: GtkAccessibleRole = 18;
147pub const GTK_ACCESSIBLE_ROLE_HEADING: GtkAccessibleRole = 19;
148pub const GTK_ACCESSIBLE_ROLE_IMG: GtkAccessibleRole = 20;
149pub const GTK_ACCESSIBLE_ROLE_INPUT: GtkAccessibleRole = 21;
150pub const GTK_ACCESSIBLE_ROLE_LABEL: GtkAccessibleRole = 22;
151pub const GTK_ACCESSIBLE_ROLE_LANDMARK: GtkAccessibleRole = 23;
152pub const GTK_ACCESSIBLE_ROLE_LEGEND: GtkAccessibleRole = 24;
153pub const GTK_ACCESSIBLE_ROLE_LINK: GtkAccessibleRole = 25;
154pub const GTK_ACCESSIBLE_ROLE_LIST: GtkAccessibleRole = 26;
155pub const GTK_ACCESSIBLE_ROLE_LIST_BOX: GtkAccessibleRole = 27;
156pub const GTK_ACCESSIBLE_ROLE_LIST_ITEM: GtkAccessibleRole = 28;
157pub const GTK_ACCESSIBLE_ROLE_LOG: GtkAccessibleRole = 29;
158pub const GTK_ACCESSIBLE_ROLE_MAIN: GtkAccessibleRole = 30;
159pub const GTK_ACCESSIBLE_ROLE_MARQUEE: GtkAccessibleRole = 31;
160pub const GTK_ACCESSIBLE_ROLE_MATH: GtkAccessibleRole = 32;
161pub const GTK_ACCESSIBLE_ROLE_METER: GtkAccessibleRole = 33;
162pub const GTK_ACCESSIBLE_ROLE_MENU: GtkAccessibleRole = 34;
163pub const GTK_ACCESSIBLE_ROLE_MENU_BAR: GtkAccessibleRole = 35;
164pub const GTK_ACCESSIBLE_ROLE_MENU_ITEM: GtkAccessibleRole = 36;
165pub const GTK_ACCESSIBLE_ROLE_MENU_ITEM_CHECKBOX: GtkAccessibleRole = 37;
166pub const GTK_ACCESSIBLE_ROLE_MENU_ITEM_RADIO: GtkAccessibleRole = 38;
167pub const GTK_ACCESSIBLE_ROLE_NAVIGATION: GtkAccessibleRole = 39;
168pub const GTK_ACCESSIBLE_ROLE_NONE: GtkAccessibleRole = 40;
169pub const GTK_ACCESSIBLE_ROLE_NOTE: GtkAccessibleRole = 41;
170pub const GTK_ACCESSIBLE_ROLE_OPTION: GtkAccessibleRole = 42;
171pub const GTK_ACCESSIBLE_ROLE_PRESENTATION: GtkAccessibleRole = 43;
172pub const GTK_ACCESSIBLE_ROLE_PROGRESS_BAR: GtkAccessibleRole = 44;
173pub const GTK_ACCESSIBLE_ROLE_RADIO: GtkAccessibleRole = 45;
174pub const GTK_ACCESSIBLE_ROLE_RADIO_GROUP: GtkAccessibleRole = 46;
175pub const GTK_ACCESSIBLE_ROLE_RANGE: GtkAccessibleRole = 47;
176pub const GTK_ACCESSIBLE_ROLE_REGION: GtkAccessibleRole = 48;
177pub const GTK_ACCESSIBLE_ROLE_ROW: GtkAccessibleRole = 49;
178pub const GTK_ACCESSIBLE_ROLE_ROW_GROUP: GtkAccessibleRole = 50;
179pub const GTK_ACCESSIBLE_ROLE_ROW_HEADER: GtkAccessibleRole = 51;
180pub const GTK_ACCESSIBLE_ROLE_SCROLLBAR: GtkAccessibleRole = 52;
181pub const GTK_ACCESSIBLE_ROLE_SEARCH: GtkAccessibleRole = 53;
182pub const GTK_ACCESSIBLE_ROLE_SEARCH_BOX: GtkAccessibleRole = 54;
183pub const GTK_ACCESSIBLE_ROLE_SECTION: GtkAccessibleRole = 55;
184pub const GTK_ACCESSIBLE_ROLE_SECTION_HEAD: GtkAccessibleRole = 56;
185pub const GTK_ACCESSIBLE_ROLE_SELECT: GtkAccessibleRole = 57;
186pub const GTK_ACCESSIBLE_ROLE_SEPARATOR: GtkAccessibleRole = 58;
187pub const GTK_ACCESSIBLE_ROLE_SLIDER: GtkAccessibleRole = 59;
188pub const GTK_ACCESSIBLE_ROLE_SPIN_BUTTON: GtkAccessibleRole = 60;
189pub const GTK_ACCESSIBLE_ROLE_STATUS: GtkAccessibleRole = 61;
190pub const GTK_ACCESSIBLE_ROLE_STRUCTURE: GtkAccessibleRole = 62;
191pub const GTK_ACCESSIBLE_ROLE_SWITCH: GtkAccessibleRole = 63;
192pub const GTK_ACCESSIBLE_ROLE_TAB: GtkAccessibleRole = 64;
193pub const GTK_ACCESSIBLE_ROLE_TABLE: GtkAccessibleRole = 65;
194pub const GTK_ACCESSIBLE_ROLE_TAB_LIST: GtkAccessibleRole = 66;
195pub const GTK_ACCESSIBLE_ROLE_TAB_PANEL: GtkAccessibleRole = 67;
196pub const GTK_ACCESSIBLE_ROLE_TEXT_BOX: GtkAccessibleRole = 68;
197pub const GTK_ACCESSIBLE_ROLE_TIME: GtkAccessibleRole = 69;
198pub const GTK_ACCESSIBLE_ROLE_TIMER: GtkAccessibleRole = 70;
199pub const GTK_ACCESSIBLE_ROLE_TOOLBAR: GtkAccessibleRole = 71;
200pub const GTK_ACCESSIBLE_ROLE_TOOLTIP: GtkAccessibleRole = 72;
201pub const GTK_ACCESSIBLE_ROLE_TREE: GtkAccessibleRole = 73;
202pub const GTK_ACCESSIBLE_ROLE_TREE_GRID: GtkAccessibleRole = 74;
203pub const GTK_ACCESSIBLE_ROLE_TREE_ITEM: GtkAccessibleRole = 75;
204pub const GTK_ACCESSIBLE_ROLE_WIDGET: GtkAccessibleRole = 76;
205pub const GTK_ACCESSIBLE_ROLE_WINDOW: GtkAccessibleRole = 77;
206#[cfg(feature = "v4_10")]
207#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
208pub const GTK_ACCESSIBLE_ROLE_TOGGLE_BUTTON: GtkAccessibleRole = 78;
209#[cfg(feature = "v4_12")]
210#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
211pub const GTK_ACCESSIBLE_ROLE_APPLICATION: GtkAccessibleRole = 79;
212#[cfg(feature = "v4_14")]
213#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
214pub const GTK_ACCESSIBLE_ROLE_PARAGRAPH: GtkAccessibleRole = 80;
215#[cfg(feature = "v4_14")]
216#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
217pub const GTK_ACCESSIBLE_ROLE_BLOCK_QUOTE: GtkAccessibleRole = 81;
218#[cfg(feature = "v4_14")]
219#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
220pub const GTK_ACCESSIBLE_ROLE_ARTICLE: GtkAccessibleRole = 82;
221#[cfg(feature = "v4_14")]
222#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
223pub const GTK_ACCESSIBLE_ROLE_COMMENT: GtkAccessibleRole = 83;
224#[cfg(feature = "v4_14")]
225#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
226pub const GTK_ACCESSIBLE_ROLE_TERMINAL: GtkAccessibleRole = 84;
227
228pub type GtkAccessibleSort = c_int;
229pub const GTK_ACCESSIBLE_SORT_NONE: GtkAccessibleSort = 0;
230pub const GTK_ACCESSIBLE_SORT_ASCENDING: GtkAccessibleSort = 1;
231pub const GTK_ACCESSIBLE_SORT_DESCENDING: GtkAccessibleSort = 2;
232pub const GTK_ACCESSIBLE_SORT_OTHER: GtkAccessibleSort = 3;
233
234pub type GtkAccessibleState = c_int;
235pub const GTK_ACCESSIBLE_STATE_BUSY: GtkAccessibleState = 0;
236pub const GTK_ACCESSIBLE_STATE_CHECKED: GtkAccessibleState = 1;
237pub const GTK_ACCESSIBLE_STATE_DISABLED: GtkAccessibleState = 2;
238pub const GTK_ACCESSIBLE_STATE_EXPANDED: GtkAccessibleState = 3;
239pub const GTK_ACCESSIBLE_STATE_HIDDEN: GtkAccessibleState = 4;
240pub const GTK_ACCESSIBLE_STATE_INVALID: GtkAccessibleState = 5;
241pub const GTK_ACCESSIBLE_STATE_PRESSED: GtkAccessibleState = 6;
242pub const GTK_ACCESSIBLE_STATE_SELECTED: GtkAccessibleState = 7;
243#[cfg(feature = "v4_12")]
244#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
245pub const GTK_ACCESSIBLE_STATE_VISITED: GtkAccessibleState = 8;
246
247pub type GtkAccessibleTextContentChange = c_int;
248pub const GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_INSERT: GtkAccessibleTextContentChange = 0;
249pub const GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_REMOVE: GtkAccessibleTextContentChange = 1;
250
251pub type GtkAccessibleTextGranularity = c_int;
252pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_CHARACTER: GtkAccessibleTextGranularity = 0;
253pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_WORD: GtkAccessibleTextGranularity = 1;
254pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_SENTENCE: GtkAccessibleTextGranularity = 2;
255pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_LINE: GtkAccessibleTextGranularity = 3;
256pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_PARAGRAPH: GtkAccessibleTextGranularity = 4;
257
258pub type GtkAccessibleTristate = c_int;
259pub const GTK_ACCESSIBLE_TRISTATE_FALSE: GtkAccessibleTristate = 0;
260pub const GTK_ACCESSIBLE_TRISTATE_TRUE: GtkAccessibleTristate = 1;
261pub const GTK_ACCESSIBLE_TRISTATE_MIXED: GtkAccessibleTristate = 2;
262
263pub type GtkAlign = c_int;
264pub const GTK_ALIGN_FILL: GtkAlign = 0;
265pub const GTK_ALIGN_START: GtkAlign = 1;
266pub const GTK_ALIGN_END: GtkAlign = 2;
267pub const GTK_ALIGN_CENTER: GtkAlign = 3;
268#[cfg(feature = "v4_12")]
269#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
270pub const GTK_ALIGN_BASELINE_FILL: GtkAlign = 4;
271pub const GTK_ALIGN_BASELINE: GtkAlign = 4;
272#[cfg(feature = "v4_12")]
273#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
274pub const GTK_ALIGN_BASELINE_CENTER: GtkAlign = 5;
275
276pub type GtkArrowType = c_int;
277pub const GTK_ARROW_UP: GtkArrowType = 0;
278pub const GTK_ARROW_DOWN: GtkArrowType = 1;
279pub const GTK_ARROW_LEFT: GtkArrowType = 2;
280pub const GTK_ARROW_RIGHT: GtkArrowType = 3;
281pub const GTK_ARROW_NONE: GtkArrowType = 4;
282
283pub type GtkAssistantPageType = c_int;
284pub const GTK_ASSISTANT_PAGE_CONTENT: GtkAssistantPageType = 0;
285pub const GTK_ASSISTANT_PAGE_INTRO: GtkAssistantPageType = 1;
286pub const GTK_ASSISTANT_PAGE_CONFIRM: GtkAssistantPageType = 2;
287pub const GTK_ASSISTANT_PAGE_SUMMARY: GtkAssistantPageType = 3;
288pub const GTK_ASSISTANT_PAGE_PROGRESS: GtkAssistantPageType = 4;
289pub const GTK_ASSISTANT_PAGE_CUSTOM: GtkAssistantPageType = 5;
290
291pub type GtkBaselinePosition = c_int;
292pub const GTK_BASELINE_POSITION_TOP: GtkBaselinePosition = 0;
293pub const GTK_BASELINE_POSITION_CENTER: GtkBaselinePosition = 1;
294pub const GTK_BASELINE_POSITION_BOTTOM: GtkBaselinePosition = 2;
295
296pub type GtkBorderStyle = c_int;
297pub const GTK_BORDER_STYLE_NONE: GtkBorderStyle = 0;
298pub const GTK_BORDER_STYLE_HIDDEN: GtkBorderStyle = 1;
299pub const GTK_BORDER_STYLE_SOLID: GtkBorderStyle = 2;
300pub const GTK_BORDER_STYLE_INSET: GtkBorderStyle = 3;
301pub const GTK_BORDER_STYLE_OUTSET: GtkBorderStyle = 4;
302pub const GTK_BORDER_STYLE_DOTTED: GtkBorderStyle = 5;
303pub const GTK_BORDER_STYLE_DASHED: GtkBorderStyle = 6;
304pub const GTK_BORDER_STYLE_DOUBLE: GtkBorderStyle = 7;
305pub const GTK_BORDER_STYLE_GROOVE: GtkBorderStyle = 8;
306pub const GTK_BORDER_STYLE_RIDGE: GtkBorderStyle = 9;
307
308pub type GtkBuilderError = c_int;
309pub const GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION: GtkBuilderError = 0;
310pub const GTK_BUILDER_ERROR_UNHANDLED_TAG: GtkBuilderError = 1;
311pub const GTK_BUILDER_ERROR_MISSING_ATTRIBUTE: GtkBuilderError = 2;
312pub const GTK_BUILDER_ERROR_INVALID_ATTRIBUTE: GtkBuilderError = 3;
313pub const GTK_BUILDER_ERROR_INVALID_TAG: GtkBuilderError = 4;
314pub const GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE: GtkBuilderError = 5;
315pub const GTK_BUILDER_ERROR_INVALID_VALUE: GtkBuilderError = 6;
316pub const GTK_BUILDER_ERROR_VERSION_MISMATCH: GtkBuilderError = 7;
317pub const GTK_BUILDER_ERROR_DUPLICATE_ID: GtkBuilderError = 8;
318pub const GTK_BUILDER_ERROR_OBJECT_TYPE_REFUSED: GtkBuilderError = 9;
319pub const GTK_BUILDER_ERROR_TEMPLATE_MISMATCH: GtkBuilderError = 10;
320pub const GTK_BUILDER_ERROR_INVALID_PROPERTY: GtkBuilderError = 11;
321pub const GTK_BUILDER_ERROR_INVALID_SIGNAL: GtkBuilderError = 12;
322pub const GTK_BUILDER_ERROR_INVALID_ID: GtkBuilderError = 13;
323pub const GTK_BUILDER_ERROR_INVALID_FUNCTION: GtkBuilderError = 14;
324
325pub type GtkButtonsType = c_int;
326pub const GTK_BUTTONS_NONE: GtkButtonsType = 0;
327pub const GTK_BUTTONS_OK: GtkButtonsType = 1;
328pub const GTK_BUTTONS_CLOSE: GtkButtonsType = 2;
329pub const GTK_BUTTONS_CANCEL: GtkButtonsType = 3;
330pub const GTK_BUTTONS_YES_NO: GtkButtonsType = 4;
331pub const GTK_BUTTONS_OK_CANCEL: GtkButtonsType = 5;
332
333pub type GtkCellRendererAccelMode = c_int;
334pub const GTK_CELL_RENDERER_ACCEL_MODE_GTK: GtkCellRendererAccelMode = 0;
335pub const GTK_CELL_RENDERER_ACCEL_MODE_OTHER: GtkCellRendererAccelMode = 1;
336
337pub type GtkCellRendererMode = c_int;
338pub const GTK_CELL_RENDERER_MODE_INERT: GtkCellRendererMode = 0;
339pub const GTK_CELL_RENDERER_MODE_ACTIVATABLE: GtkCellRendererMode = 1;
340pub const GTK_CELL_RENDERER_MODE_EDITABLE: GtkCellRendererMode = 2;
341
342pub type GtkCollation = c_int;
343pub const GTK_COLLATION_NONE: GtkCollation = 0;
344pub const GTK_COLLATION_UNICODE: GtkCollation = 1;
345pub const GTK_COLLATION_FILENAME: GtkCollation = 2;
346
347pub type GtkConstraintAttribute = c_int;
348pub const GTK_CONSTRAINT_ATTRIBUTE_NONE: GtkConstraintAttribute = 0;
349pub const GTK_CONSTRAINT_ATTRIBUTE_LEFT: GtkConstraintAttribute = 1;
350pub const GTK_CONSTRAINT_ATTRIBUTE_RIGHT: GtkConstraintAttribute = 2;
351pub const GTK_CONSTRAINT_ATTRIBUTE_TOP: GtkConstraintAttribute = 3;
352pub const GTK_CONSTRAINT_ATTRIBUTE_BOTTOM: GtkConstraintAttribute = 4;
353pub const GTK_CONSTRAINT_ATTRIBUTE_START: GtkConstraintAttribute = 5;
354pub const GTK_CONSTRAINT_ATTRIBUTE_END: GtkConstraintAttribute = 6;
355pub const GTK_CONSTRAINT_ATTRIBUTE_WIDTH: GtkConstraintAttribute = 7;
356pub const GTK_CONSTRAINT_ATTRIBUTE_HEIGHT: GtkConstraintAttribute = 8;
357pub const GTK_CONSTRAINT_ATTRIBUTE_CENTER_X: GtkConstraintAttribute = 9;
358pub const GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y: GtkConstraintAttribute = 10;
359pub const GTK_CONSTRAINT_ATTRIBUTE_BASELINE: GtkConstraintAttribute = 11;
360
361pub type GtkConstraintRelation = c_int;
362pub const GTK_CONSTRAINT_RELATION_LE: GtkConstraintRelation = -1;
363pub const GTK_CONSTRAINT_RELATION_EQ: GtkConstraintRelation = 0;
364pub const GTK_CONSTRAINT_RELATION_GE: GtkConstraintRelation = 1;
365
366pub type GtkConstraintStrength = c_int;
367pub const GTK_CONSTRAINT_STRENGTH_REQUIRED: GtkConstraintStrength = 1001001000;
368pub const GTK_CONSTRAINT_STRENGTH_STRONG: GtkConstraintStrength = 1000000000;
369pub const GTK_CONSTRAINT_STRENGTH_MEDIUM: GtkConstraintStrength = 1000;
370pub const GTK_CONSTRAINT_STRENGTH_WEAK: GtkConstraintStrength = 1;
371
372pub type GtkConstraintVflParserError = c_int;
373pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL: GtkConstraintVflParserError = 0;
374pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE: GtkConstraintVflParserError = 1;
375pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW: GtkConstraintVflParserError = 2;
376pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC: GtkConstraintVflParserError = 3;
377pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY: GtkConstraintVflParserError = 4;
378pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION: GtkConstraintVflParserError = 5;
379
380pub type GtkContentFit = c_int;
381pub const GTK_CONTENT_FIT_FILL: GtkContentFit = 0;
382pub const GTK_CONTENT_FIT_CONTAIN: GtkContentFit = 1;
383pub const GTK_CONTENT_FIT_COVER: GtkContentFit = 2;
384pub const GTK_CONTENT_FIT_SCALE_DOWN: GtkContentFit = 3;
385
386pub type GtkCornerType = c_int;
387pub const GTK_CORNER_TOP_LEFT: GtkCornerType = 0;
388pub const GTK_CORNER_BOTTOM_LEFT: GtkCornerType = 1;
389pub const GTK_CORNER_TOP_RIGHT: GtkCornerType = 2;
390pub const GTK_CORNER_BOTTOM_RIGHT: GtkCornerType = 3;
391
392pub type GtkCssParserError = c_int;
393pub const GTK_CSS_PARSER_ERROR_FAILED: GtkCssParserError = 0;
394pub const GTK_CSS_PARSER_ERROR_SYNTAX: GtkCssParserError = 1;
395pub const GTK_CSS_PARSER_ERROR_IMPORT: GtkCssParserError = 2;
396pub const GTK_CSS_PARSER_ERROR_NAME: GtkCssParserError = 3;
397pub const GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE: GtkCssParserError = 4;
398
399pub type GtkCssParserWarning = c_int;
400pub const GTK_CSS_PARSER_WARNING_DEPRECATED: GtkCssParserWarning = 0;
401pub const GTK_CSS_PARSER_WARNING_SYNTAX: GtkCssParserWarning = 1;
402pub const GTK_CSS_PARSER_WARNING_UNIMPLEMENTED: GtkCssParserWarning = 2;
403
404pub type GtkDeleteType = c_int;
405pub const GTK_DELETE_CHARS: GtkDeleteType = 0;
406pub const GTK_DELETE_WORD_ENDS: GtkDeleteType = 1;
407pub const GTK_DELETE_WORDS: GtkDeleteType = 2;
408pub const GTK_DELETE_DISPLAY_LINES: GtkDeleteType = 3;
409pub const GTK_DELETE_DISPLAY_LINE_ENDS: GtkDeleteType = 4;
410pub const GTK_DELETE_PARAGRAPH_ENDS: GtkDeleteType = 5;
411pub const GTK_DELETE_PARAGRAPHS: GtkDeleteType = 6;
412pub const GTK_DELETE_WHITESPACE: GtkDeleteType = 7;
413
414pub type GtkDialogError = c_int;
415pub const GTK_DIALOG_ERROR_FAILED: GtkDialogError = 0;
416pub const GTK_DIALOG_ERROR_CANCELLED: GtkDialogError = 1;
417pub const GTK_DIALOG_ERROR_DISMISSED: GtkDialogError = 2;
418
419pub type GtkDirectionType = c_int;
420pub const GTK_DIR_TAB_FORWARD: GtkDirectionType = 0;
421pub const GTK_DIR_TAB_BACKWARD: GtkDirectionType = 1;
422pub const GTK_DIR_UP: GtkDirectionType = 2;
423pub const GTK_DIR_DOWN: GtkDirectionType = 3;
424pub const GTK_DIR_LEFT: GtkDirectionType = 4;
425pub const GTK_DIR_RIGHT: GtkDirectionType = 5;
426
427pub type GtkEditableProperties = c_int;
428pub const GTK_EDITABLE_PROP_TEXT: GtkEditableProperties = 0;
429pub const GTK_EDITABLE_PROP_CURSOR_POSITION: GtkEditableProperties = 1;
430pub const GTK_EDITABLE_PROP_SELECTION_BOUND: GtkEditableProperties = 2;
431pub const GTK_EDITABLE_PROP_EDITABLE: GtkEditableProperties = 3;
432pub const GTK_EDITABLE_PROP_WIDTH_CHARS: GtkEditableProperties = 4;
433pub const GTK_EDITABLE_PROP_MAX_WIDTH_CHARS: GtkEditableProperties = 5;
434pub const GTK_EDITABLE_PROP_XALIGN: GtkEditableProperties = 6;
435pub const GTK_EDITABLE_PROP_ENABLE_UNDO: GtkEditableProperties = 7;
436pub const GTK_EDITABLE_NUM_PROPERTIES: GtkEditableProperties = 8;
437
438pub type GtkEntryIconPosition = c_int;
439pub const GTK_ENTRY_ICON_PRIMARY: GtkEntryIconPosition = 0;
440pub const GTK_ENTRY_ICON_SECONDARY: GtkEntryIconPosition = 1;
441
442pub type GtkEventSequenceState = c_int;
443pub const GTK_EVENT_SEQUENCE_NONE: GtkEventSequenceState = 0;
444pub const GTK_EVENT_SEQUENCE_CLAIMED: GtkEventSequenceState = 1;
445pub const GTK_EVENT_SEQUENCE_DENIED: GtkEventSequenceState = 2;
446
447pub type GtkFileChooserAction = c_int;
448pub const GTK_FILE_CHOOSER_ACTION_OPEN: GtkFileChooserAction = 0;
449pub const GTK_FILE_CHOOSER_ACTION_SAVE: GtkFileChooserAction = 1;
450pub const GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER: GtkFileChooserAction = 2;
451
452pub type GtkFileChooserError = c_int;
453pub const GTK_FILE_CHOOSER_ERROR_NONEXISTENT: GtkFileChooserError = 0;
454pub const GTK_FILE_CHOOSER_ERROR_BAD_FILENAME: GtkFileChooserError = 1;
455pub const GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS: GtkFileChooserError = 2;
456pub const GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME: GtkFileChooserError = 3;
457
458pub type GtkFilterChange = c_int;
459pub const GTK_FILTER_CHANGE_DIFFERENT: GtkFilterChange = 0;
460pub const GTK_FILTER_CHANGE_LESS_STRICT: GtkFilterChange = 1;
461pub const GTK_FILTER_CHANGE_MORE_STRICT: GtkFilterChange = 2;
462#[cfg(feature = "v4_20")]
463#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
464pub const GTK_FILTER_CHANGE_DIFFERENT_REWATCH: GtkFilterChange = 3;
465#[cfg(feature = "v4_20")]
466#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
467pub const GTK_FILTER_CHANGE_LESS_STRICT_REWATCH: GtkFilterChange = 4;
468#[cfg(feature = "v4_20")]
469#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
470pub const GTK_FILTER_CHANGE_MORE_STRICT_REWATCH: GtkFilterChange = 5;
471
472pub type GtkFilterMatch = c_int;
473pub const GTK_FILTER_MATCH_SOME: GtkFilterMatch = 0;
474pub const GTK_FILTER_MATCH_NONE: GtkFilterMatch = 1;
475pub const GTK_FILTER_MATCH_ALL: GtkFilterMatch = 2;
476
477pub type GtkFontLevel = c_int;
478pub const GTK_FONT_LEVEL_FAMILY: GtkFontLevel = 0;
479pub const GTK_FONT_LEVEL_FACE: GtkFontLevel = 1;
480pub const GTK_FONT_LEVEL_FONT: GtkFontLevel = 2;
481pub const GTK_FONT_LEVEL_FEATURES: GtkFontLevel = 3;
482
483pub type GtkFontRendering = c_int;
484pub const GTK_FONT_RENDERING_AUTOMATIC: GtkFontRendering = 0;
485pub const GTK_FONT_RENDERING_MANUAL: GtkFontRendering = 1;
486
487pub type GtkGraphicsOffloadEnabled = c_int;
488pub const GTK_GRAPHICS_OFFLOAD_ENABLED: GtkGraphicsOffloadEnabled = 0;
489pub const GTK_GRAPHICS_OFFLOAD_DISABLED: GtkGraphicsOffloadEnabled = 1;
490
491pub type GtkIconSize = c_int;
492pub const GTK_ICON_SIZE_INHERIT: GtkIconSize = 0;
493pub const GTK_ICON_SIZE_NORMAL: GtkIconSize = 1;
494pub const GTK_ICON_SIZE_LARGE: GtkIconSize = 2;
495
496pub type GtkIconThemeError = c_int;
497pub const GTK_ICON_THEME_NOT_FOUND: GtkIconThemeError = 0;
498pub const GTK_ICON_THEME_FAILED: GtkIconThemeError = 1;
499
500pub type GtkIconViewDropPosition = c_int;
501pub const GTK_ICON_VIEW_NO_DROP: GtkIconViewDropPosition = 0;
502pub const GTK_ICON_VIEW_DROP_INTO: GtkIconViewDropPosition = 1;
503pub const GTK_ICON_VIEW_DROP_LEFT: GtkIconViewDropPosition = 2;
504pub const GTK_ICON_VIEW_DROP_RIGHT: GtkIconViewDropPosition = 3;
505pub const GTK_ICON_VIEW_DROP_ABOVE: GtkIconViewDropPosition = 4;
506pub const GTK_ICON_VIEW_DROP_BELOW: GtkIconViewDropPosition = 5;
507
508pub type GtkImageType = c_int;
509pub const GTK_IMAGE_EMPTY: GtkImageType = 0;
510pub const GTK_IMAGE_ICON_NAME: GtkImageType = 1;
511pub const GTK_IMAGE_GICON: GtkImageType = 2;
512pub const GTK_IMAGE_PAINTABLE: GtkImageType = 3;
513
514pub type GtkInputPurpose = c_int;
515pub const GTK_INPUT_PURPOSE_FREE_FORM: GtkInputPurpose = 0;
516pub const GTK_INPUT_PURPOSE_ALPHA: GtkInputPurpose = 1;
517pub const GTK_INPUT_PURPOSE_DIGITS: GtkInputPurpose = 2;
518pub const GTK_INPUT_PURPOSE_NUMBER: GtkInputPurpose = 3;
519pub const GTK_INPUT_PURPOSE_PHONE: GtkInputPurpose = 4;
520pub const GTK_INPUT_PURPOSE_URL: GtkInputPurpose = 5;
521pub const GTK_INPUT_PURPOSE_EMAIL: GtkInputPurpose = 6;
522pub const GTK_INPUT_PURPOSE_NAME: GtkInputPurpose = 7;
523pub const GTK_INPUT_PURPOSE_PASSWORD: GtkInputPurpose = 8;
524pub const GTK_INPUT_PURPOSE_PIN: GtkInputPurpose = 9;
525pub const GTK_INPUT_PURPOSE_TERMINAL: GtkInputPurpose = 10;
526
527pub type GtkInscriptionOverflow = c_int;
528pub const GTK_INSCRIPTION_OVERFLOW_CLIP: GtkInscriptionOverflow = 0;
529pub const GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START: GtkInscriptionOverflow = 1;
530pub const GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE: GtkInscriptionOverflow = 2;
531pub const GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END: GtkInscriptionOverflow = 3;
532
533pub type GtkInterfaceColorScheme = c_int;
534pub const GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED: GtkInterfaceColorScheme = 0;
535pub const GTK_INTERFACE_COLOR_SCHEME_DEFAULT: GtkInterfaceColorScheme = 1;
536pub const GTK_INTERFACE_COLOR_SCHEME_DARK: GtkInterfaceColorScheme = 2;
537pub const GTK_INTERFACE_COLOR_SCHEME_LIGHT: GtkInterfaceColorScheme = 3;
538
539pub type GtkInterfaceContrast = c_int;
540pub const GTK_INTERFACE_CONTRAST_UNSUPPORTED: GtkInterfaceContrast = 0;
541pub const GTK_INTERFACE_CONTRAST_NO_PREFERENCE: GtkInterfaceContrast = 1;
542pub const GTK_INTERFACE_CONTRAST_MORE: GtkInterfaceContrast = 2;
543pub const GTK_INTERFACE_CONTRAST_LESS: GtkInterfaceContrast = 3;
544
545pub type GtkJustification = c_int;
546pub const GTK_JUSTIFY_LEFT: GtkJustification = 0;
547pub const GTK_JUSTIFY_RIGHT: GtkJustification = 1;
548pub const GTK_JUSTIFY_CENTER: GtkJustification = 2;
549pub const GTK_JUSTIFY_FILL: GtkJustification = 3;
550
551pub type GtkLevelBarMode = c_int;
552pub const GTK_LEVEL_BAR_MODE_CONTINUOUS: GtkLevelBarMode = 0;
553pub const GTK_LEVEL_BAR_MODE_DISCRETE: GtkLevelBarMode = 1;
554
555pub type GtkLicense = c_int;
556pub const GTK_LICENSE_UNKNOWN: GtkLicense = 0;
557pub const GTK_LICENSE_CUSTOM: GtkLicense = 1;
558pub const GTK_LICENSE_GPL_2_0: GtkLicense = 2;
559pub const GTK_LICENSE_GPL_3_0: GtkLicense = 3;
560pub const GTK_LICENSE_LGPL_2_1: GtkLicense = 4;
561pub const GTK_LICENSE_LGPL_3_0: GtkLicense = 5;
562pub const GTK_LICENSE_BSD: GtkLicense = 6;
563pub const GTK_LICENSE_MIT_X11: GtkLicense = 7;
564pub const GTK_LICENSE_ARTISTIC: GtkLicense = 8;
565pub const GTK_LICENSE_GPL_2_0_ONLY: GtkLicense = 9;
566pub const GTK_LICENSE_GPL_3_0_ONLY: GtkLicense = 10;
567pub const GTK_LICENSE_LGPL_2_1_ONLY: GtkLicense = 11;
568pub const GTK_LICENSE_LGPL_3_0_ONLY: GtkLicense = 12;
569pub const GTK_LICENSE_AGPL_3_0: GtkLicense = 13;
570pub const GTK_LICENSE_AGPL_3_0_ONLY: GtkLicense = 14;
571pub const GTK_LICENSE_BSD_3: GtkLicense = 15;
572pub const GTK_LICENSE_APACHE_2_0: GtkLicense = 16;
573pub const GTK_LICENSE_MPL_2_0: GtkLicense = 17;
574pub const GTK_LICENSE_0BSD: GtkLicense = 18;
575
576pub type GtkListTabBehavior = c_int;
577pub const GTK_LIST_TAB_ALL: GtkListTabBehavior = 0;
578pub const GTK_LIST_TAB_ITEM: GtkListTabBehavior = 1;
579pub const GTK_LIST_TAB_CELL: GtkListTabBehavior = 2;
580
581pub type GtkMessageType = c_int;
582pub const GTK_MESSAGE_INFO: GtkMessageType = 0;
583pub const GTK_MESSAGE_WARNING: GtkMessageType = 1;
584pub const GTK_MESSAGE_QUESTION: GtkMessageType = 2;
585pub const GTK_MESSAGE_ERROR: GtkMessageType = 3;
586pub const GTK_MESSAGE_OTHER: GtkMessageType = 4;
587
588pub type GtkMovementStep = c_int;
589pub const GTK_MOVEMENT_LOGICAL_POSITIONS: GtkMovementStep = 0;
590pub const GTK_MOVEMENT_VISUAL_POSITIONS: GtkMovementStep = 1;
591pub const GTK_MOVEMENT_WORDS: GtkMovementStep = 2;
592pub const GTK_MOVEMENT_DISPLAY_LINES: GtkMovementStep = 3;
593pub const GTK_MOVEMENT_DISPLAY_LINE_ENDS: GtkMovementStep = 4;
594pub const GTK_MOVEMENT_PARAGRAPHS: GtkMovementStep = 5;
595pub const GTK_MOVEMENT_PARAGRAPH_ENDS: GtkMovementStep = 6;
596pub const GTK_MOVEMENT_PAGES: GtkMovementStep = 7;
597pub const GTK_MOVEMENT_BUFFER_ENDS: GtkMovementStep = 8;
598pub const GTK_MOVEMENT_HORIZONTAL_PAGES: GtkMovementStep = 9;
599
600pub type GtkNaturalWrapMode = c_int;
601pub const GTK_NATURAL_WRAP_INHERIT: GtkNaturalWrapMode = 0;
602pub const GTK_NATURAL_WRAP_NONE: GtkNaturalWrapMode = 1;
603pub const GTK_NATURAL_WRAP_WORD: GtkNaturalWrapMode = 2;
604
605pub type GtkNotebookTab = c_int;
606pub const GTK_NOTEBOOK_TAB_FIRST: GtkNotebookTab = 0;
607pub const GTK_NOTEBOOK_TAB_LAST: GtkNotebookTab = 1;
608
609pub type GtkNumberUpLayout = c_int;
610pub const GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM: GtkNumberUpLayout = 0;
611pub const GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP: GtkNumberUpLayout = 1;
612pub const GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM: GtkNumberUpLayout = 2;
613pub const GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP: GtkNumberUpLayout = 3;
614pub const GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT: GtkNumberUpLayout = 4;
615pub const GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT: GtkNumberUpLayout = 5;
616pub const GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT: GtkNumberUpLayout = 6;
617pub const GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT: GtkNumberUpLayout = 7;
618
619pub type GtkOrdering = c_int;
620pub const GTK_ORDERING_SMALLER: GtkOrdering = -1;
621pub const GTK_ORDERING_EQUAL: GtkOrdering = 0;
622pub const GTK_ORDERING_LARGER: GtkOrdering = 1;
623
624pub type GtkOrientation = c_int;
625pub const GTK_ORIENTATION_HORIZONTAL: GtkOrientation = 0;
626pub const GTK_ORIENTATION_VERTICAL: GtkOrientation = 1;
627
628pub type GtkOverflow = c_int;
629pub const GTK_OVERFLOW_VISIBLE: GtkOverflow = 0;
630pub const GTK_OVERFLOW_HIDDEN: GtkOverflow = 1;
631
632pub type GtkPackType = c_int;
633pub const GTK_PACK_START: GtkPackType = 0;
634pub const GTK_PACK_END: GtkPackType = 1;
635
636pub type GtkPadActionType = c_int;
637pub const GTK_PAD_ACTION_BUTTON: GtkPadActionType = 0;
638pub const GTK_PAD_ACTION_RING: GtkPadActionType = 1;
639pub const GTK_PAD_ACTION_STRIP: GtkPadActionType = 2;
640pub const GTK_PAD_ACTION_DIAL: GtkPadActionType = 3;
641
642pub type GtkPageOrientation = c_int;
643pub const GTK_PAGE_ORIENTATION_PORTRAIT: GtkPageOrientation = 0;
644pub const GTK_PAGE_ORIENTATION_LANDSCAPE: GtkPageOrientation = 1;
645pub const GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT: GtkPageOrientation = 2;
646pub const GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE: GtkPageOrientation = 3;
647
648pub type GtkPageSet = c_int;
649pub const GTK_PAGE_SET_ALL: GtkPageSet = 0;
650pub const GTK_PAGE_SET_EVEN: GtkPageSet = 1;
651pub const GTK_PAGE_SET_ODD: GtkPageSet = 2;
652
653pub type GtkPanDirection = c_int;
654pub const GTK_PAN_DIRECTION_LEFT: GtkPanDirection = 0;
655pub const GTK_PAN_DIRECTION_RIGHT: GtkPanDirection = 1;
656pub const GTK_PAN_DIRECTION_UP: GtkPanDirection = 2;
657pub const GTK_PAN_DIRECTION_DOWN: GtkPanDirection = 3;
658
659pub type GtkPolicyType = c_int;
660pub const GTK_POLICY_ALWAYS: GtkPolicyType = 0;
661pub const GTK_POLICY_AUTOMATIC: GtkPolicyType = 1;
662pub const GTK_POLICY_NEVER: GtkPolicyType = 2;
663pub const GTK_POLICY_EXTERNAL: GtkPolicyType = 3;
664
665pub type GtkPositionType = c_int;
666pub const GTK_POS_LEFT: GtkPositionType = 0;
667pub const GTK_POS_RIGHT: GtkPositionType = 1;
668pub const GTK_POS_TOP: GtkPositionType = 2;
669pub const GTK_POS_BOTTOM: GtkPositionType = 3;
670
671pub type GtkPrintDuplex = c_int;
672pub const GTK_PRINT_DUPLEX_SIMPLEX: GtkPrintDuplex = 0;
673pub const GTK_PRINT_DUPLEX_HORIZONTAL: GtkPrintDuplex = 1;
674pub const GTK_PRINT_DUPLEX_VERTICAL: GtkPrintDuplex = 2;
675
676pub type GtkPrintError = c_int;
677pub const GTK_PRINT_ERROR_GENERAL: GtkPrintError = 0;
678pub const GTK_PRINT_ERROR_INTERNAL_ERROR: GtkPrintError = 1;
679pub const GTK_PRINT_ERROR_NOMEM: GtkPrintError = 2;
680pub const GTK_PRINT_ERROR_INVALID_FILE: GtkPrintError = 3;
681
682pub type GtkPrintOperationAction = c_int;
683pub const GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG: GtkPrintOperationAction = 0;
684pub const GTK_PRINT_OPERATION_ACTION_PRINT: GtkPrintOperationAction = 1;
685pub const GTK_PRINT_OPERATION_ACTION_PREVIEW: GtkPrintOperationAction = 2;
686pub const GTK_PRINT_OPERATION_ACTION_EXPORT: GtkPrintOperationAction = 3;
687
688pub type GtkPrintOperationResult = c_int;
689pub const GTK_PRINT_OPERATION_RESULT_ERROR: GtkPrintOperationResult = 0;
690pub const GTK_PRINT_OPERATION_RESULT_APPLY: GtkPrintOperationResult = 1;
691pub const GTK_PRINT_OPERATION_RESULT_CANCEL: GtkPrintOperationResult = 2;
692pub const GTK_PRINT_OPERATION_RESULT_IN_PROGRESS: GtkPrintOperationResult = 3;
693
694pub type GtkPrintPages = c_int;
695pub const GTK_PRINT_PAGES_ALL: GtkPrintPages = 0;
696pub const GTK_PRINT_PAGES_CURRENT: GtkPrintPages = 1;
697pub const GTK_PRINT_PAGES_RANGES: GtkPrintPages = 2;
698pub const GTK_PRINT_PAGES_SELECTION: GtkPrintPages = 3;
699
700pub type GtkPrintQuality = c_int;
701pub const GTK_PRINT_QUALITY_LOW: GtkPrintQuality = 0;
702pub const GTK_PRINT_QUALITY_NORMAL: GtkPrintQuality = 1;
703pub const GTK_PRINT_QUALITY_HIGH: GtkPrintQuality = 2;
704pub const GTK_PRINT_QUALITY_DRAFT: GtkPrintQuality = 3;
705
706pub type GtkPrintStatus = c_int;
707pub const GTK_PRINT_STATUS_INITIAL: GtkPrintStatus = 0;
708pub const GTK_PRINT_STATUS_PREPARING: GtkPrintStatus = 1;
709pub const GTK_PRINT_STATUS_GENERATING_DATA: GtkPrintStatus = 2;
710pub const GTK_PRINT_STATUS_SENDING_DATA: GtkPrintStatus = 3;
711pub const GTK_PRINT_STATUS_PENDING: GtkPrintStatus = 4;
712pub const GTK_PRINT_STATUS_PENDING_ISSUE: GtkPrintStatus = 5;
713pub const GTK_PRINT_STATUS_PRINTING: GtkPrintStatus = 6;
714pub const GTK_PRINT_STATUS_FINISHED: GtkPrintStatus = 7;
715pub const GTK_PRINT_STATUS_FINISHED_ABORTED: GtkPrintStatus = 8;
716
717pub type GtkPropagationLimit = c_int;
718pub const GTK_LIMIT_NONE: GtkPropagationLimit = 0;
719pub const GTK_LIMIT_SAME_NATIVE: GtkPropagationLimit = 1;
720
721pub type GtkPropagationPhase = c_int;
722pub const GTK_PHASE_NONE: GtkPropagationPhase = 0;
723pub const GTK_PHASE_CAPTURE: GtkPropagationPhase = 1;
724pub const GTK_PHASE_BUBBLE: GtkPropagationPhase = 2;
725pub const GTK_PHASE_TARGET: GtkPropagationPhase = 3;
726
727pub type GtkRecentManagerError = c_int;
728pub const GTK_RECENT_MANAGER_ERROR_NOT_FOUND: GtkRecentManagerError = 0;
729pub const GTK_RECENT_MANAGER_ERROR_INVALID_URI: GtkRecentManagerError = 1;
730pub const GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING: GtkRecentManagerError = 2;
731pub const GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED: GtkRecentManagerError = 3;
732pub const GTK_RECENT_MANAGER_ERROR_READ: GtkRecentManagerError = 4;
733pub const GTK_RECENT_MANAGER_ERROR_WRITE: GtkRecentManagerError = 5;
734pub const GTK_RECENT_MANAGER_ERROR_UNKNOWN: GtkRecentManagerError = 6;
735
736pub type GtkReducedMotion = c_int;
737pub const GTK_REDUCED_MOTION_NO_PREFERENCE: GtkReducedMotion = 0;
738pub const GTK_REDUCED_MOTION_REDUCE: GtkReducedMotion = 1;
739
740pub type GtkResponseType = c_int;
741pub const GTK_RESPONSE_NONE: GtkResponseType = -1;
742pub const GTK_RESPONSE_REJECT: GtkResponseType = -2;
743pub const GTK_RESPONSE_ACCEPT: GtkResponseType = -3;
744pub const GTK_RESPONSE_DELETE_EVENT: GtkResponseType = -4;
745pub const GTK_RESPONSE_OK: GtkResponseType = -5;
746pub const GTK_RESPONSE_CANCEL: GtkResponseType = -6;
747pub const GTK_RESPONSE_CLOSE: GtkResponseType = -7;
748pub const GTK_RESPONSE_YES: GtkResponseType = -8;
749pub const GTK_RESPONSE_NO: GtkResponseType = -9;
750pub const GTK_RESPONSE_APPLY: GtkResponseType = -10;
751pub const GTK_RESPONSE_HELP: GtkResponseType = -11;
752
753pub type GtkRestoreReason = c_int;
754pub const GTK_RESTORE_REASON_PRISTINE: GtkRestoreReason = 0;
755pub const GTK_RESTORE_REASON_LAUNCH: GtkRestoreReason = 1;
756pub const GTK_RESTORE_REASON_RECOVER: GtkRestoreReason = 2;
757pub const GTK_RESTORE_REASON_RESTORE: GtkRestoreReason = 3;
758
759pub type GtkRevealerTransitionType = c_int;
760pub const GTK_REVEALER_TRANSITION_TYPE_NONE: GtkRevealerTransitionType = 0;
761pub const GTK_REVEALER_TRANSITION_TYPE_CROSSFADE: GtkRevealerTransitionType = 1;
762pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT: GtkRevealerTransitionType = 2;
763pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT: GtkRevealerTransitionType = 3;
764pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP: GtkRevealerTransitionType = 4;
765pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN: GtkRevealerTransitionType = 5;
766pub const GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT: GtkRevealerTransitionType = 6;
767pub const GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT: GtkRevealerTransitionType = 7;
768pub const GTK_REVEALER_TRANSITION_TYPE_SWING_UP: GtkRevealerTransitionType = 8;
769pub const GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN: GtkRevealerTransitionType = 9;
770#[cfg(feature = "v4_22")]
771#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
772pub const GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT: GtkRevealerTransitionType = 10;
773#[cfg(feature = "v4_22")]
774#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
775pub const GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT: GtkRevealerTransitionType = 11;
776#[cfg(feature = "v4_22")]
777#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
778pub const GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP: GtkRevealerTransitionType = 12;
779#[cfg(feature = "v4_22")]
780#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
781pub const GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN: GtkRevealerTransitionType = 13;
782
783pub type GtkScrollStep = c_int;
784pub const GTK_SCROLL_STEPS: GtkScrollStep = 0;
785pub const GTK_SCROLL_PAGES: GtkScrollStep = 1;
786pub const GTK_SCROLL_ENDS: GtkScrollStep = 2;
787pub const GTK_SCROLL_HORIZONTAL_STEPS: GtkScrollStep = 3;
788pub const GTK_SCROLL_HORIZONTAL_PAGES: GtkScrollStep = 4;
789pub const GTK_SCROLL_HORIZONTAL_ENDS: GtkScrollStep = 5;
790
791pub type GtkScrollType = c_int;
792pub const GTK_SCROLL_NONE: GtkScrollType = 0;
793pub const GTK_SCROLL_JUMP: GtkScrollType = 1;
794pub const GTK_SCROLL_STEP_BACKWARD: GtkScrollType = 2;
795pub const GTK_SCROLL_STEP_FORWARD: GtkScrollType = 3;
796pub const GTK_SCROLL_PAGE_BACKWARD: GtkScrollType = 4;
797pub const GTK_SCROLL_PAGE_FORWARD: GtkScrollType = 5;
798pub const GTK_SCROLL_STEP_UP: GtkScrollType = 6;
799pub const GTK_SCROLL_STEP_DOWN: GtkScrollType = 7;
800pub const GTK_SCROLL_PAGE_UP: GtkScrollType = 8;
801pub const GTK_SCROLL_PAGE_DOWN: GtkScrollType = 9;
802pub const GTK_SCROLL_STEP_LEFT: GtkScrollType = 10;
803pub const GTK_SCROLL_STEP_RIGHT: GtkScrollType = 11;
804pub const GTK_SCROLL_PAGE_LEFT: GtkScrollType = 12;
805pub const GTK_SCROLL_PAGE_RIGHT: GtkScrollType = 13;
806pub const GTK_SCROLL_START: GtkScrollType = 14;
807pub const GTK_SCROLL_END: GtkScrollType = 15;
808
809pub type GtkScrollablePolicy = c_int;
810pub const GTK_SCROLL_MINIMUM: GtkScrollablePolicy = 0;
811pub const GTK_SCROLL_NATURAL: GtkScrollablePolicy = 1;
812
813pub type GtkSelectionMode = c_int;
814pub const GTK_SELECTION_NONE: GtkSelectionMode = 0;
815pub const GTK_SELECTION_SINGLE: GtkSelectionMode = 1;
816pub const GTK_SELECTION_BROWSE: GtkSelectionMode = 2;
817pub const GTK_SELECTION_MULTIPLE: GtkSelectionMode = 3;
818
819pub type GtkSensitivityType = c_int;
820pub const GTK_SENSITIVITY_AUTO: GtkSensitivityType = 0;
821pub const GTK_SENSITIVITY_ON: GtkSensitivityType = 1;
822pub const GTK_SENSITIVITY_OFF: GtkSensitivityType = 2;
823
824pub type GtkShortcutScope = c_int;
825pub const GTK_SHORTCUT_SCOPE_LOCAL: GtkShortcutScope = 0;
826pub const GTK_SHORTCUT_SCOPE_MANAGED: GtkShortcutScope = 1;
827pub const GTK_SHORTCUT_SCOPE_GLOBAL: GtkShortcutScope = 2;
828
829pub type GtkShortcutType = c_int;
830pub const GTK_SHORTCUT_ACCELERATOR: GtkShortcutType = 0;
831pub const GTK_SHORTCUT_GESTURE_PINCH: GtkShortcutType = 1;
832pub const GTK_SHORTCUT_GESTURE_STRETCH: GtkShortcutType = 2;
833pub const GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE: GtkShortcutType = 3;
834pub const GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE: GtkShortcutType = 4;
835pub const GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT: GtkShortcutType = 5;
836pub const GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT: GtkShortcutType = 6;
837pub const GTK_SHORTCUT_GESTURE: GtkShortcutType = 7;
838pub const GTK_SHORTCUT_GESTURE_SWIPE_LEFT: GtkShortcutType = 8;
839pub const GTK_SHORTCUT_GESTURE_SWIPE_RIGHT: GtkShortcutType = 9;
840
841pub type GtkSizeGroupMode = c_int;
842pub const GTK_SIZE_GROUP_NONE: GtkSizeGroupMode = 0;
843pub const GTK_SIZE_GROUP_HORIZONTAL: GtkSizeGroupMode = 1;
844pub const GTK_SIZE_GROUP_VERTICAL: GtkSizeGroupMode = 2;
845pub const GTK_SIZE_GROUP_BOTH: GtkSizeGroupMode = 3;
846
847pub type GtkSizeRequestMode = c_int;
848pub const GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH: GtkSizeRequestMode = 0;
849pub const GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT: GtkSizeRequestMode = 1;
850pub const GTK_SIZE_REQUEST_CONSTANT_SIZE: GtkSizeRequestMode = 2;
851
852pub type GtkSortType = c_int;
853pub const GTK_SORT_ASCENDING: GtkSortType = 0;
854pub const GTK_SORT_DESCENDING: GtkSortType = 1;
855
856pub type GtkSorterChange = c_int;
857pub const GTK_SORTER_CHANGE_DIFFERENT: GtkSorterChange = 0;
858pub const GTK_SORTER_CHANGE_INVERTED: GtkSorterChange = 1;
859pub const GTK_SORTER_CHANGE_LESS_STRICT: GtkSorterChange = 2;
860pub const GTK_SORTER_CHANGE_MORE_STRICT: GtkSorterChange = 3;
861
862pub type GtkSorterOrder = c_int;
863pub const GTK_SORTER_ORDER_PARTIAL: GtkSorterOrder = 0;
864pub const GTK_SORTER_ORDER_NONE: GtkSorterOrder = 1;
865pub const GTK_SORTER_ORDER_TOTAL: GtkSorterOrder = 2;
866
867pub type GtkSpinButtonUpdatePolicy = c_int;
868pub const GTK_UPDATE_ALWAYS: GtkSpinButtonUpdatePolicy = 0;
869pub const GTK_UPDATE_IF_VALID: GtkSpinButtonUpdatePolicy = 1;
870
871pub type GtkSpinType = c_int;
872pub const GTK_SPIN_STEP_FORWARD: GtkSpinType = 0;
873pub const GTK_SPIN_STEP_BACKWARD: GtkSpinType = 1;
874pub const GTK_SPIN_PAGE_FORWARD: GtkSpinType = 2;
875pub const GTK_SPIN_PAGE_BACKWARD: GtkSpinType = 3;
876pub const GTK_SPIN_HOME: GtkSpinType = 4;
877pub const GTK_SPIN_END: GtkSpinType = 5;
878pub const GTK_SPIN_USER_DEFINED: GtkSpinType = 6;
879
880pub type GtkStackTransitionType = c_int;
881pub const GTK_STACK_TRANSITION_TYPE_NONE: GtkStackTransitionType = 0;
882pub const GTK_STACK_TRANSITION_TYPE_CROSSFADE: GtkStackTransitionType = 1;
883pub const GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT: GtkStackTransitionType = 2;
884pub const GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT: GtkStackTransitionType = 3;
885pub const GTK_STACK_TRANSITION_TYPE_SLIDE_UP: GtkStackTransitionType = 4;
886pub const GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN: GtkStackTransitionType = 5;
887pub const GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT: GtkStackTransitionType = 6;
888pub const GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN: GtkStackTransitionType = 7;
889pub const GTK_STACK_TRANSITION_TYPE_OVER_UP: GtkStackTransitionType = 8;
890pub const GTK_STACK_TRANSITION_TYPE_OVER_DOWN: GtkStackTransitionType = 9;
891pub const GTK_STACK_TRANSITION_TYPE_OVER_LEFT: GtkStackTransitionType = 10;
892pub const GTK_STACK_TRANSITION_TYPE_OVER_RIGHT: GtkStackTransitionType = 11;
893pub const GTK_STACK_TRANSITION_TYPE_UNDER_UP: GtkStackTransitionType = 12;
894pub const GTK_STACK_TRANSITION_TYPE_UNDER_DOWN: GtkStackTransitionType = 13;
895pub const GTK_STACK_TRANSITION_TYPE_UNDER_LEFT: GtkStackTransitionType = 14;
896pub const GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT: GtkStackTransitionType = 15;
897pub const GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN: GtkStackTransitionType = 16;
898pub const GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP: GtkStackTransitionType = 17;
899pub const GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT: GtkStackTransitionType = 18;
900pub const GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT: GtkStackTransitionType = 19;
901pub const GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT: GtkStackTransitionType = 20;
902pub const GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT: GtkStackTransitionType = 21;
903pub const GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT: GtkStackTransitionType = 22;
904
905pub type GtkStringFilterMatchMode = c_int;
906pub const GTK_STRING_FILTER_MATCH_MODE_EXACT: GtkStringFilterMatchMode = 0;
907pub const GTK_STRING_FILTER_MATCH_MODE_SUBSTRING: GtkStringFilterMatchMode = 1;
908pub const GTK_STRING_FILTER_MATCH_MODE_PREFIX: GtkStringFilterMatchMode = 2;
909
910pub type GtkSvgError = c_int;
911pub const GTK_SVG_ERROR_INVALID_ELEMENT: GtkSvgError = 0;
912pub const GTK_SVG_ERROR_INVALID_ATTRIBUTE: GtkSvgError = 1;
913pub const GTK_SVG_ERROR_MISSING_ATTRIBUTE: GtkSvgError = 2;
914pub const GTK_SVG_ERROR_INVALID_REFERENCE: GtkSvgError = 3;
915pub const GTK_SVG_ERROR_FAILED_UPDATE: GtkSvgError = 4;
916pub const GTK_SVG_ERROR_FAILED_RENDERING: GtkSvgError = 5;
917
918pub type GtkSymbolicColor = c_int;
919pub const GTK_SYMBOLIC_COLOR_FOREGROUND: GtkSymbolicColor = 0;
920pub const GTK_SYMBOLIC_COLOR_ERROR: GtkSymbolicColor = 1;
921pub const GTK_SYMBOLIC_COLOR_WARNING: GtkSymbolicColor = 2;
922pub const GTK_SYMBOLIC_COLOR_SUCCESS: GtkSymbolicColor = 3;
923#[cfg(feature = "v4_22")]
924#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
925pub const GTK_SYMBOLIC_COLOR_ACCENT: GtkSymbolicColor = 4;
926
927pub type GtkSystemSetting = c_int;
928pub const GTK_SYSTEM_SETTING_DPI: GtkSystemSetting = 0;
929pub const GTK_SYSTEM_SETTING_FONT_NAME: GtkSystemSetting = 1;
930pub const GTK_SYSTEM_SETTING_FONT_CONFIG: GtkSystemSetting = 2;
931pub const GTK_SYSTEM_SETTING_DISPLAY: GtkSystemSetting = 3;
932pub const GTK_SYSTEM_SETTING_ICON_THEME: GtkSystemSetting = 4;
933
934pub type GtkTextDirection = c_int;
935pub const GTK_TEXT_DIR_NONE: GtkTextDirection = 0;
936pub const GTK_TEXT_DIR_LTR: GtkTextDirection = 1;
937pub const GTK_TEXT_DIR_RTL: GtkTextDirection = 2;
938
939pub type GtkTextExtendSelection = c_int;
940pub const GTK_TEXT_EXTEND_SELECTION_WORD: GtkTextExtendSelection = 0;
941pub const GTK_TEXT_EXTEND_SELECTION_LINE: GtkTextExtendSelection = 1;
942
943pub type GtkTextViewLayer = c_int;
944pub const GTK_TEXT_VIEW_LAYER_BELOW_TEXT: GtkTextViewLayer = 0;
945pub const GTK_TEXT_VIEW_LAYER_ABOVE_TEXT: GtkTextViewLayer = 1;
946
947pub type GtkTextWindowType = c_int;
948pub const GTK_TEXT_WINDOW_WIDGET: GtkTextWindowType = 1;
949pub const GTK_TEXT_WINDOW_TEXT: GtkTextWindowType = 2;
950pub const GTK_TEXT_WINDOW_LEFT: GtkTextWindowType = 3;
951pub const GTK_TEXT_WINDOW_RIGHT: GtkTextWindowType = 4;
952pub const GTK_TEXT_WINDOW_TOP: GtkTextWindowType = 5;
953pub const GTK_TEXT_WINDOW_BOTTOM: GtkTextWindowType = 6;
954
955pub type GtkTreeViewColumnSizing = c_int;
956pub const GTK_TREE_VIEW_COLUMN_GROW_ONLY: GtkTreeViewColumnSizing = 0;
957pub const GTK_TREE_VIEW_COLUMN_AUTOSIZE: GtkTreeViewColumnSizing = 1;
958pub const GTK_TREE_VIEW_COLUMN_FIXED: GtkTreeViewColumnSizing = 2;
959
960pub type GtkTreeViewDropPosition = c_int;
961pub const GTK_TREE_VIEW_DROP_BEFORE: GtkTreeViewDropPosition = 0;
962pub const GTK_TREE_VIEW_DROP_AFTER: GtkTreeViewDropPosition = 1;
963pub const GTK_TREE_VIEW_DROP_INTO_OR_BEFORE: GtkTreeViewDropPosition = 2;
964pub const GTK_TREE_VIEW_DROP_INTO_OR_AFTER: GtkTreeViewDropPosition = 3;
965
966pub type GtkTreeViewGridLines = c_int;
967pub const GTK_TREE_VIEW_GRID_LINES_NONE: GtkTreeViewGridLines = 0;
968pub const GTK_TREE_VIEW_GRID_LINES_HORIZONTAL: GtkTreeViewGridLines = 1;
969pub const GTK_TREE_VIEW_GRID_LINES_VERTICAL: GtkTreeViewGridLines = 2;
970pub const GTK_TREE_VIEW_GRID_LINES_BOTH: GtkTreeViewGridLines = 3;
971
972pub type GtkUnit = c_int;
973pub const GTK_UNIT_NONE: GtkUnit = 0;
974pub const GTK_UNIT_POINTS: GtkUnit = 1;
975pub const GTK_UNIT_INCH: GtkUnit = 2;
976pub const GTK_UNIT_MM: GtkUnit = 3;
977
978pub type GtkWindowGravity = c_int;
979pub const GTK_WINDOW_GRAVITY_TOP_LEFT: GtkWindowGravity = 0;
980pub const GTK_WINDOW_GRAVITY_TOP: GtkWindowGravity = 1;
981pub const GTK_WINDOW_GRAVITY_TOP_RIGHT: GtkWindowGravity = 2;
982pub const GTK_WINDOW_GRAVITY_LEFT: GtkWindowGravity = 3;
983pub const GTK_WINDOW_GRAVITY_CENTER: GtkWindowGravity = 4;
984pub const GTK_WINDOW_GRAVITY_RIGHT: GtkWindowGravity = 5;
985pub const GTK_WINDOW_GRAVITY_BOTTOM_LEFT: GtkWindowGravity = 6;
986pub const GTK_WINDOW_GRAVITY_BOTTOM: GtkWindowGravity = 7;
987pub const GTK_WINDOW_GRAVITY_BOTTOM_RIGHT: GtkWindowGravity = 8;
988pub const GTK_WINDOW_GRAVITY_TOP_START: GtkWindowGravity = 9;
989pub const GTK_WINDOW_GRAVITY_TOP_END: GtkWindowGravity = 10;
990pub const GTK_WINDOW_GRAVITY_START: GtkWindowGravity = 11;
991pub const GTK_WINDOW_GRAVITY_END: GtkWindowGravity = 12;
992pub const GTK_WINDOW_GRAVITY_BOTTOM_START: GtkWindowGravity = 13;
993pub const GTK_WINDOW_GRAVITY_BOTTOM_END: GtkWindowGravity = 14;
994
995pub type GtkWrapMode = c_int;
996pub const GTK_WRAP_NONE: GtkWrapMode = 0;
997pub const GTK_WRAP_CHAR: GtkWrapMode = 1;
998pub const GTK_WRAP_WORD: GtkWrapMode = 2;
999pub const GTK_WRAP_WORD_CHAR: GtkWrapMode = 3;
1000
1001// Constants
1002pub const GTK_ACCESSIBLE_ATTRIBUTE_BACKGROUND: &[u8] = b"bg-color\0";
1003pub const GTK_ACCESSIBLE_ATTRIBUTE_FAMILY: &[u8] = b"family-name\0";
1004pub const GTK_ACCESSIBLE_ATTRIBUTE_FOREGROUND: &[u8] = b"fg-color\0";
1005pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE: &[u8] = b"overline\0";
1006pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE_NONE: &[u8] = b"none\0";
1007pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE_SINGLE: &[u8] = b"single\0";
1008pub const GTK_ACCESSIBLE_ATTRIBUTE_SIZE: &[u8] = b"size\0";
1009pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH: &[u8] = b"stretch\0";
1010pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_CONDENSED: &[u8] = b"condensed\0";
1011pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXPANDED: &[u8] = b"expanded\0";
1012pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXTRA_CONDENSED: &[u8] = b"extra_condensed\0";
1013pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXTRA_EXPANDED: &[u8] = b"extra_expanded\0";
1014pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_NORMAL: &[u8] = b"normal\0";
1015pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_SEMI_CONDENSED: &[u8] = b"semi_condensed\0";
1016pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_SEMI_EXPANDED: &[u8] = b"semi_expanded\0";
1017pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_ULTRA_CONDENSED: &[u8] = b"ultra_condensed\0";
1018pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_ULTRA_EXPANDED: &[u8] = b"ultra_expanded\0";
1019pub const GTK_ACCESSIBLE_ATTRIBUTE_STRIKETHROUGH: &[u8] = b"strikethrough\0";
1020pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE: &[u8] = b"style\0";
1021pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_ITALIC: &[u8] = b"italic\0";
1022pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_NORMAL: &[u8] = b"normal\0";
1023pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_OBLIQUE: &[u8] = b"oblique\0";
1024pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE: &[u8] = b"underline\0";
1025pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_DOUBLE: &[u8] = b"double\0";
1026pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_ERROR: &[u8] = b"error\0";
1027pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_NONE: &[u8] = b"none\0";
1028pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_SINGLE: &[u8] = b"single\0";
1029pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT: &[u8] = b"variant\0";
1030pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_ALL_PETITE_CAPS: &[u8] = b"all-petite-caps\0";
1031pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_ALL_SMALL_CAPS: &[u8] = b"all-small-caps\0";
1032pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_PETITE_CAPS: &[u8] = b"petite-caps\0";
1033pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_SMALL_CAPS: &[u8] = b"small-caps\0";
1034pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_TITLE_CAPS: &[u8] = b"title-caps\0";
1035pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_UNICASE: &[u8] = b"unicase\0";
1036pub const GTK_ACCESSIBLE_ATTRIBUTE_WEIGHT: &[u8] = b"weight\0";
1037pub const GTK_ACCESSIBLE_VALUE_UNDEFINED: c_int = -1;
1038pub const GTK_IM_MODULE_EXTENSION_POINT_NAME: &[u8] = b"gtk-im-module\0";
1039pub const GTK_INPUT_ERROR: c_int = -1;
1040pub const GTK_INVALID_LIST_POSITION: c_uint = 4294967295;
1041pub const GTK_LEVEL_BAR_OFFSET_FULL: &[u8] = b"full\0";
1042pub const GTK_LEVEL_BAR_OFFSET_HIGH: &[u8] = b"high\0";
1043pub const GTK_LEVEL_BAR_OFFSET_LOW: &[u8] = b"low\0";
1044pub const GTK_MAX_COMPOSE_LEN: c_int = 7;
1045pub const GTK_MEDIA_FILE_EXTENSION_POINT_NAME: &[u8] = b"gtk-media-file\0";
1046pub const GTK_PAPER_NAME_A3: &[u8] = b"iso_a3\0";
1047pub const GTK_PAPER_NAME_A4: &[u8] = b"iso_a4\0";
1048pub const GTK_PAPER_NAME_A5: &[u8] = b"iso_a5\0";
1049pub const GTK_PAPER_NAME_B5: &[u8] = b"iso_b5\0";
1050pub const GTK_PAPER_NAME_EXECUTIVE: &[u8] = b"na_executive\0";
1051pub const GTK_PAPER_NAME_LEGAL: &[u8] = b"na_legal\0";
1052pub const GTK_PAPER_NAME_LETTER: &[u8] = b"na_letter\0";
1053pub const GTK_PRINT_SETTINGS_COLLATE: &[u8] = b"collate\0";
1054pub const GTK_PRINT_SETTINGS_DEFAULT_SOURCE: &[u8] = b"default-source\0";
1055pub const GTK_PRINT_SETTINGS_DITHER: &[u8] = b"dither\0";
1056pub const GTK_PRINT_SETTINGS_DUPLEX: &[u8] = b"duplex\0";
1057pub const GTK_PRINT_SETTINGS_FINISHINGS: &[u8] = b"finishings\0";
1058pub const GTK_PRINT_SETTINGS_MEDIA_TYPE: &[u8] = b"media-type\0";
1059pub const GTK_PRINT_SETTINGS_NUMBER_UP: &[u8] = b"number-up\0";
1060pub const GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT: &[u8] = b"number-up-layout\0";
1061pub const GTK_PRINT_SETTINGS_N_COPIES: &[u8] = b"n-copies\0";
1062pub const GTK_PRINT_SETTINGS_ORIENTATION: &[u8] = b"orientation\0";
1063pub const GTK_PRINT_SETTINGS_OUTPUT_BASENAME: &[u8] = b"output-basename\0";
1064pub const GTK_PRINT_SETTINGS_OUTPUT_BIN: &[u8] = b"output-bin\0";
1065pub const GTK_PRINT_SETTINGS_OUTPUT_DIR: &[u8] = b"output-dir\0";
1066pub const GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT: &[u8] = b"output-file-format\0";
1067pub const GTK_PRINT_SETTINGS_OUTPUT_URI: &[u8] = b"output-uri\0";
1068pub const GTK_PRINT_SETTINGS_PAGE_RANGES: &[u8] = b"page-ranges\0";
1069pub const GTK_PRINT_SETTINGS_PAGE_SET: &[u8] = b"page-set\0";
1070pub const GTK_PRINT_SETTINGS_PAPER_FORMAT: &[u8] = b"paper-format\0";
1071pub const GTK_PRINT_SETTINGS_PAPER_HEIGHT: &[u8] = b"paper-height\0";
1072pub const GTK_PRINT_SETTINGS_PAPER_WIDTH: &[u8] = b"paper-width\0";
1073pub const GTK_PRINT_SETTINGS_PRINTER: &[u8] = b"printer\0";
1074pub const GTK_PRINT_SETTINGS_PRINTER_LPI: &[u8] = b"printer-lpi\0";
1075pub const GTK_PRINT_SETTINGS_PRINT_PAGES: &[u8] = b"print-pages\0";
1076pub const GTK_PRINT_SETTINGS_QUALITY: &[u8] = b"quality\0";
1077pub const GTK_PRINT_SETTINGS_RESOLUTION: &[u8] = b"resolution\0";
1078pub const GTK_PRINT_SETTINGS_RESOLUTION_X: &[u8] = b"resolution-x\0";
1079pub const GTK_PRINT_SETTINGS_RESOLUTION_Y: &[u8] = b"resolution-y\0";
1080pub const GTK_PRINT_SETTINGS_REVERSE: &[u8] = b"reverse\0";
1081pub const GTK_PRINT_SETTINGS_SCALE: &[u8] = b"scale\0";
1082pub const GTK_PRINT_SETTINGS_USE_COLOR: &[u8] = b"use-color\0";
1083pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_EXTRA: &[u8] = b"win32-driver-extra\0";
1084pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_VERSION: &[u8] = b"win32-driver-version\0";
1085pub const GTK_PRIORITY_RESIZE: c_int = 110;
1086pub const GTK_STYLE_PROVIDER_PRIORITY_APPLICATION: c_int = 600;
1087pub const GTK_STYLE_PROVIDER_PRIORITY_FALLBACK: c_int = 1;
1088pub const GTK_STYLE_PROVIDER_PRIORITY_SETTINGS: c_int = 400;
1089pub const GTK_STYLE_PROVIDER_PRIORITY_THEME: c_int = 200;
1090pub const GTK_STYLE_PROVIDER_PRIORITY_USER: c_int = 800;
1091pub const GTK_TEXT_VIEW_PRIORITY_VALIDATE: c_int = 125;
1092pub const GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID: c_int = -1;
1093pub const GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID: c_int = -2;
1094
1095// Flags
1096pub type GtkApplicationInhibitFlags = c_uint;
1097pub const GTK_APPLICATION_INHIBIT_LOGOUT: GtkApplicationInhibitFlags = 1;
1098pub const GTK_APPLICATION_INHIBIT_SWITCH: GtkApplicationInhibitFlags = 2;
1099pub const GTK_APPLICATION_INHIBIT_SUSPEND: GtkApplicationInhibitFlags = 4;
1100pub const GTK_APPLICATION_INHIBIT_IDLE: GtkApplicationInhibitFlags = 8;
1101
1102pub type GtkBuilderClosureFlags = c_uint;
1103pub const GTK_BUILDER_CLOSURE_SWAPPED: GtkBuilderClosureFlags = 1;
1104
1105pub type GtkCellRendererState = c_uint;
1106pub const GTK_CELL_RENDERER_SELECTED: GtkCellRendererState = 1;
1107pub const GTK_CELL_RENDERER_PRELIT: GtkCellRendererState = 2;
1108pub const GTK_CELL_RENDERER_INSENSITIVE: GtkCellRendererState = 4;
1109pub const GTK_CELL_RENDERER_SORTED: GtkCellRendererState = 8;
1110pub const GTK_CELL_RENDERER_FOCUSED: GtkCellRendererState = 16;
1111pub const GTK_CELL_RENDERER_EXPANDABLE: GtkCellRendererState = 32;
1112pub const GTK_CELL_RENDERER_EXPANDED: GtkCellRendererState = 64;
1113
1114pub type GtkDebugFlags = c_uint;
1115pub const GTK_DEBUG_TEXT: GtkDebugFlags = 1;
1116pub const GTK_DEBUG_TREE: GtkDebugFlags = 2;
1117pub const GTK_DEBUG_KEYBINDINGS: GtkDebugFlags = 4;
1118pub const GTK_DEBUG_MODULES: GtkDebugFlags = 8;
1119pub const GTK_DEBUG_GEOMETRY: GtkDebugFlags = 16;
1120pub const GTK_DEBUG_ICONTHEME: GtkDebugFlags = 32;
1121pub const GTK_DEBUG_PRINTING: GtkDebugFlags = 64;
1122pub const GTK_DEBUG_BUILDER_TRACE: GtkDebugFlags = 128;
1123pub const GTK_DEBUG_SIZE_REQUEST: GtkDebugFlags = 256;
1124pub const GTK_DEBUG_NO_CSS_CACHE: GtkDebugFlags = 512;
1125pub const GTK_DEBUG_INTERACTIVE: GtkDebugFlags = 1024;
1126#[cfg(feature = "v4_20")]
1127#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1128pub const GTK_DEBUG_TOUCHSCREEN: GtkDebugFlags = 2048;
1129pub const GTK_DEBUG_ACTIONS: GtkDebugFlags = 4096;
1130pub const GTK_DEBUG_LAYOUT: GtkDebugFlags = 8192;
1131pub const GTK_DEBUG_SNAPSHOT: GtkDebugFlags = 16384;
1132pub const GTK_DEBUG_CONSTRAINTS: GtkDebugFlags = 32768;
1133pub const GTK_DEBUG_BUILDER_OBJECTS: GtkDebugFlags = 65536;
1134pub const GTK_DEBUG_A11Y: GtkDebugFlags = 131072;
1135#[cfg(feature = "v4_2")]
1136#[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
1137pub const GTK_DEBUG_ICONFALLBACK: GtkDebugFlags = 262144;
1138#[cfg(feature = "v4_8")]
1139#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
1140pub const GTK_DEBUG_INVERT_TEXT_DIR: GtkDebugFlags = 524288;
1141#[cfg(feature = "v4_16")]
1142#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
1143pub const GTK_DEBUG_CSS: GtkDebugFlags = 1048576;
1144#[cfg(feature = "v4_18")]
1145#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
1146pub const GTK_DEBUG_BUILDER: GtkDebugFlags = 2097152;
1147#[cfg(feature = "v4_22")]
1148#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
1149pub const GTK_DEBUG_SESSION: GtkDebugFlags = 4194304;
1150
1151pub type GtkDialogFlags = c_uint;
1152pub const GTK_DIALOG_MODAL: GtkDialogFlags = 1;
1153pub const GTK_DIALOG_DESTROY_WITH_PARENT: GtkDialogFlags = 2;
1154pub const GTK_DIALOG_USE_HEADER_BAR: GtkDialogFlags = 4;
1155
1156pub type GtkEventControllerScrollFlags = c_uint;
1157pub const GTK_EVENT_CONTROLLER_SCROLL_NONE: GtkEventControllerScrollFlags = 0;
1158pub const GTK_EVENT_CONTROLLER_SCROLL_VERTICAL: GtkEventControllerScrollFlags = 1;
1159pub const GTK_EVENT_CONTROLLER_SCROLL_HORIZONTAL: GtkEventControllerScrollFlags = 2;
1160pub const GTK_EVENT_CONTROLLER_SCROLL_DISCRETE: GtkEventControllerScrollFlags = 4;
1161pub const GTK_EVENT_CONTROLLER_SCROLL_KINETIC: GtkEventControllerScrollFlags = 8;
1162#[cfg(feature = "v4_20")]
1163#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1164pub const GTK_EVENT_CONTROLLER_SCROLL_PHYSICAL_DIRECTION: GtkEventControllerScrollFlags = 16;
1165pub const GTK_EVENT_CONTROLLER_SCROLL_BOTH_AXES: GtkEventControllerScrollFlags = 3;
1166
1167pub type GtkFontChooserLevel = c_uint;
1168pub const GTK_FONT_CHOOSER_LEVEL_FAMILY: GtkFontChooserLevel = 0;
1169pub const GTK_FONT_CHOOSER_LEVEL_STYLE: GtkFontChooserLevel = 1;
1170pub const GTK_FONT_CHOOSER_LEVEL_SIZE: GtkFontChooserLevel = 2;
1171pub const GTK_FONT_CHOOSER_LEVEL_VARIATIONS: GtkFontChooserLevel = 4;
1172pub const GTK_FONT_CHOOSER_LEVEL_FEATURES: GtkFontChooserLevel = 8;
1173
1174pub type GtkIconLookupFlags = c_uint;
1175#[cfg(feature = "v4_18")]
1176#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
1177pub const GTK_ICON_LOOKUP_NONE: GtkIconLookupFlags = 0;
1178pub const GTK_ICON_LOOKUP_FORCE_REGULAR: GtkIconLookupFlags = 1;
1179pub const GTK_ICON_LOOKUP_FORCE_SYMBOLIC: GtkIconLookupFlags = 2;
1180pub const GTK_ICON_LOOKUP_PRELOAD: GtkIconLookupFlags = 4;
1181
1182pub type GtkInputHints = c_uint;
1183pub const GTK_INPUT_HINT_NONE: GtkInputHints = 0;
1184pub const GTK_INPUT_HINT_SPELLCHECK: GtkInputHints = 1;
1185pub const GTK_INPUT_HINT_NO_SPELLCHECK: GtkInputHints = 2;
1186pub const GTK_INPUT_HINT_WORD_COMPLETION: GtkInputHints = 4;
1187pub const GTK_INPUT_HINT_LOWERCASE: GtkInputHints = 8;
1188pub const GTK_INPUT_HINT_UPPERCASE_CHARS: GtkInputHints = 16;
1189pub const GTK_INPUT_HINT_UPPERCASE_WORDS: GtkInputHints = 32;
1190pub const GTK_INPUT_HINT_UPPERCASE_SENTENCES: GtkInputHints = 64;
1191pub const GTK_INPUT_HINT_INHIBIT_OSK: GtkInputHints = 128;
1192pub const GTK_INPUT_HINT_VERTICAL_WRITING: GtkInputHints = 256;
1193pub const GTK_INPUT_HINT_EMOJI: GtkInputHints = 512;
1194pub const GTK_INPUT_HINT_NO_EMOJI: GtkInputHints = 1024;
1195pub const GTK_INPUT_HINT_PRIVATE: GtkInputHints = 2048;
1196
1197pub type GtkListScrollFlags = c_uint;
1198pub const GTK_LIST_SCROLL_NONE: GtkListScrollFlags = 0;
1199pub const GTK_LIST_SCROLL_FOCUS: GtkListScrollFlags = 1;
1200pub const GTK_LIST_SCROLL_SELECT: GtkListScrollFlags = 2;
1201
1202pub type GtkPickFlags = c_uint;
1203pub const GTK_PICK_DEFAULT: GtkPickFlags = 0;
1204pub const GTK_PICK_INSENSITIVE: GtkPickFlags = 1;
1205pub const GTK_PICK_NON_TARGETABLE: GtkPickFlags = 2;
1206
1207pub type GtkPopoverMenuFlags = c_uint;
1208#[cfg(feature = "v4_14")]
1209#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1210pub const GTK_POPOVER_MENU_SLIDING: GtkPopoverMenuFlags = 0;
1211pub const GTK_POPOVER_MENU_NESTED: GtkPopoverMenuFlags = 1;
1212
1213pub type GtkPrintCapabilities = c_uint;
1214pub const GTK_PRINT_CAPABILITY_PAGE_SET: GtkPrintCapabilities = 1;
1215pub const GTK_PRINT_CAPABILITY_COPIES: GtkPrintCapabilities = 2;
1216pub const GTK_PRINT_CAPABILITY_COLLATE: GtkPrintCapabilities = 4;
1217pub const GTK_PRINT_CAPABILITY_REVERSE: GtkPrintCapabilities = 8;
1218pub const GTK_PRINT_CAPABILITY_SCALE: GtkPrintCapabilities = 16;
1219pub const GTK_PRINT_CAPABILITY_GENERATE_PDF: GtkPrintCapabilities = 32;
1220pub const GTK_PRINT_CAPABILITY_GENERATE_PS: GtkPrintCapabilities = 64;
1221pub const GTK_PRINT_CAPABILITY_PREVIEW: GtkPrintCapabilities = 128;
1222pub const GTK_PRINT_CAPABILITY_NUMBER_UP: GtkPrintCapabilities = 256;
1223pub const GTK_PRINT_CAPABILITY_NUMBER_UP_LAYOUT: GtkPrintCapabilities = 512;
1224
1225pub type GtkShortcutActionFlags = c_uint;
1226pub const GTK_SHORTCUT_ACTION_EXCLUSIVE: GtkShortcutActionFlags = 1;
1227
1228pub type GtkStateFlags = c_uint;
1229pub const GTK_STATE_FLAG_NORMAL: GtkStateFlags = 0;
1230pub const GTK_STATE_FLAG_ACTIVE: GtkStateFlags = 1;
1231pub const GTK_STATE_FLAG_PRELIGHT: GtkStateFlags = 2;
1232pub const GTK_STATE_FLAG_SELECTED: GtkStateFlags = 4;
1233pub const GTK_STATE_FLAG_INSENSITIVE: GtkStateFlags = 8;
1234pub const GTK_STATE_FLAG_INCONSISTENT: GtkStateFlags = 16;
1235pub const GTK_STATE_FLAG_FOCUSED: GtkStateFlags = 32;
1236pub const GTK_STATE_FLAG_BACKDROP: GtkStateFlags = 64;
1237pub const GTK_STATE_FLAG_DIR_LTR: GtkStateFlags = 128;
1238pub const GTK_STATE_FLAG_DIR_RTL: GtkStateFlags = 256;
1239pub const GTK_STATE_FLAG_LINK: GtkStateFlags = 512;
1240pub const GTK_STATE_FLAG_VISITED: GtkStateFlags = 1024;
1241pub const GTK_STATE_FLAG_CHECKED: GtkStateFlags = 2048;
1242pub const GTK_STATE_FLAG_DROP_ACTIVE: GtkStateFlags = 4096;
1243pub const GTK_STATE_FLAG_FOCUS_VISIBLE: GtkStateFlags = 8192;
1244pub const GTK_STATE_FLAG_FOCUS_WITHIN: GtkStateFlags = 16384;
1245
1246pub type GtkStyleContextPrintFlags = c_uint;
1247pub const GTK_STYLE_CONTEXT_PRINT_NONE: GtkStyleContextPrintFlags = 0;
1248pub const GTK_STYLE_CONTEXT_PRINT_RECURSE: GtkStyleContextPrintFlags = 1;
1249pub const GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE: GtkStyleContextPrintFlags = 2;
1250pub const GTK_STYLE_CONTEXT_PRINT_SHOW_CHANGE: GtkStyleContextPrintFlags = 4;
1251
1252pub type GtkTextBufferNotifyFlags = c_uint;
1253pub const GTK_TEXT_BUFFER_NOTIFY_BEFORE_INSERT: GtkTextBufferNotifyFlags = 1;
1254pub const GTK_TEXT_BUFFER_NOTIFY_AFTER_INSERT: GtkTextBufferNotifyFlags = 2;
1255pub const GTK_TEXT_BUFFER_NOTIFY_BEFORE_DELETE: GtkTextBufferNotifyFlags = 4;
1256pub const GTK_TEXT_BUFFER_NOTIFY_AFTER_DELETE: GtkTextBufferNotifyFlags = 8;
1257
1258pub type GtkTextSearchFlags = c_uint;
1259pub const GTK_TEXT_SEARCH_VISIBLE_ONLY: GtkTextSearchFlags = 1;
1260pub const GTK_TEXT_SEARCH_TEXT_ONLY: GtkTextSearchFlags = 2;
1261pub const GTK_TEXT_SEARCH_CASE_INSENSITIVE: GtkTextSearchFlags = 4;
1262
1263pub type GtkTreeModelFlags = c_uint;
1264pub const GTK_TREE_MODEL_ITERS_PERSIST: GtkTreeModelFlags = 1;
1265pub const GTK_TREE_MODEL_LIST_ONLY: GtkTreeModelFlags = 2;
1266
1267// Callbacks
1268pub type GtkAssistantPageFunc = Option<unsafe extern "C" fn(c_int, gpointer) -> c_int>;
1269pub type GtkCellAllocCallback = Option<
1270    unsafe extern "C" fn(
1271        *mut GtkCellRenderer,
1272        *const gdk::GdkRectangle,
1273        *const gdk::GdkRectangle,
1274        gpointer,
1275    ) -> gboolean,
1276>;
1277pub type GtkCellCallback = Option<unsafe extern "C" fn(*mut GtkCellRenderer, gpointer) -> gboolean>;
1278pub type GtkCellLayoutDataFunc = Option<
1279    unsafe extern "C" fn(
1280        *mut GtkCellLayout,
1281        *mut GtkCellRenderer,
1282        *mut GtkTreeModel,
1283        *mut GtkTreeIter,
1284        gpointer,
1285    ),
1286>;
1287pub type GtkCustomAllocateFunc = Option<unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, c_int)>;
1288pub type GtkCustomFilterFunc =
1289    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> gboolean>;
1290pub type GtkCustomMeasureFunc = Option<
1291    unsafe extern "C" fn(
1292        *mut GtkWidget,
1293        GtkOrientation,
1294        c_int,
1295        *mut c_int,
1296        *mut c_int,
1297        *mut c_int,
1298        *mut c_int,
1299    ),
1300>;
1301pub type GtkCustomRequestModeFunc =
1302    Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>;
1303pub type GtkDrawingAreaDrawFunc =
1304    Option<unsafe extern "C" fn(*mut GtkDrawingArea, *mut cairo::cairo_t, c_int, c_int, gpointer)>;
1305pub type GtkEntryCompletionMatchFunc = Option<
1306    unsafe extern "C" fn(
1307        *mut GtkEntryCompletion,
1308        *const c_char,
1309        *mut GtkTreeIter,
1310        gpointer,
1311    ) -> gboolean,
1312>;
1313pub type GtkExpressionNotify = Option<unsafe extern "C" fn(gpointer)>;
1314pub type GtkFlowBoxCreateWidgetFunc =
1315    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1316pub type GtkFlowBoxFilterFunc =
1317    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, gpointer) -> gboolean>;
1318pub type GtkFlowBoxForeachFunc =
1319    Option<unsafe extern "C" fn(*mut GtkFlowBox, *mut GtkFlowBoxChild, gpointer)>;
1320pub type GtkFlowBoxSortFunc =
1321    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, *mut GtkFlowBoxChild, gpointer) -> c_int>;
1322pub type GtkFontFilterFunc = Option<
1323    unsafe extern "C" fn(
1324        *const pango::PangoFontFamily,
1325        *const pango::PangoFontFace,
1326        gpointer,
1327    ) -> gboolean,
1328>;
1329pub type GtkIconViewForeachFunc =
1330    Option<unsafe extern "C" fn(*mut GtkIconView, *mut GtkTreePath, gpointer)>;
1331pub type GtkListBoxCreateWidgetFunc =
1332    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1333pub type GtkListBoxFilterFunc =
1334    Option<unsafe extern "C" fn(*mut GtkListBoxRow, gpointer) -> gboolean>;
1335pub type GtkListBoxForeachFunc =
1336    Option<unsafe extern "C" fn(*mut GtkListBox, *mut GtkListBoxRow, gpointer)>;
1337pub type GtkListBoxSortFunc =
1338    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer) -> c_int>;
1339pub type GtkListBoxUpdateHeaderFunc =
1340    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer)>;
1341pub type GtkMapListModelMapFunc =
1342    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut gobject::GObject>;
1343pub type GtkMenuButtonCreatePopupFunc = Option<unsafe extern "C" fn(*mut GtkMenuButton, gpointer)>;
1344pub type GtkPageSetupDoneFunc = Option<unsafe extern "C" fn(*mut GtkPageSetup, gpointer)>;
1345pub type GtkPrintJobCompleteFunc =
1346    Option<unsafe extern "C" fn(*mut GtkPrintJob, gpointer, *const glib::GError)>;
1347pub type GtkPrintSettingsFunc =
1348    Option<unsafe extern "C" fn(*const c_char, *const c_char, gpointer)>;
1349pub type GtkPrinterFunc = Option<unsafe extern "C" fn(*mut GtkPrinter, gpointer) -> gboolean>;
1350pub type GtkScaleFormatValueFunc =
1351    Option<unsafe extern "C" fn(*mut GtkScale, c_double, gpointer) -> *mut c_char>;
1352pub type GtkShortcutFunc =
1353    Option<unsafe extern "C" fn(*mut GtkWidget, *mut glib::GVariant, gpointer) -> gboolean>;
1354pub type GtkTextBufferCommitNotify = Option<
1355    unsafe extern "C" fn(*mut GtkTextBuffer, GtkTextBufferNotifyFlags, c_uint, c_uint, gpointer),
1356>;
1357pub type GtkTextCharPredicate = Option<unsafe extern "C" fn(u32, gpointer) -> gboolean>;
1358pub type GtkTextTagTableForeach = Option<unsafe extern "C" fn(*mut GtkTextTag, gpointer)>;
1359pub type GtkTickCallback =
1360    Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkFrameClock, gpointer) -> gboolean>;
1361pub type GtkTreeCellDataFunc = Option<
1362    unsafe extern "C" fn(
1363        *mut GtkTreeViewColumn,
1364        *mut GtkCellRenderer,
1365        *mut GtkTreeModel,
1366        *mut GtkTreeIter,
1367        gpointer,
1368    ),
1369>;
1370pub type GtkTreeIterCompareFunc = Option<
1371    unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter, gpointer) -> c_int,
1372>;
1373pub type GtkTreeListModelCreateModelFunc =
1374    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut gio::GListModel>;
1375pub type GtkTreeModelFilterModifyFunc = Option<
1376    unsafe extern "C" fn(
1377        *mut GtkTreeModel,
1378        *mut GtkTreeIter,
1379        *mut gobject::GValue,
1380        c_int,
1381        gpointer,
1382    ),
1383>;
1384pub type GtkTreeModelFilterVisibleFunc =
1385    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1386pub type GtkTreeModelForeachFunc = Option<
1387    unsafe extern "C" fn(
1388        *mut GtkTreeModel,
1389        *mut GtkTreePath,
1390        *mut GtkTreeIter,
1391        gpointer,
1392    ) -> gboolean,
1393>;
1394pub type GtkTreeSelectionForeachFunc =
1395    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, gpointer)>;
1396pub type GtkTreeSelectionFunc = Option<
1397    unsafe extern "C" fn(
1398        *mut GtkTreeSelection,
1399        *mut GtkTreeModel,
1400        *mut GtkTreePath,
1401        gboolean,
1402        gpointer,
1403    ) -> gboolean,
1404>;
1405pub type GtkTreeViewColumnDropFunc = Option<
1406    unsafe extern "C" fn(
1407        *mut GtkTreeView,
1408        *mut GtkTreeViewColumn,
1409        *mut GtkTreeViewColumn,
1410        *mut GtkTreeViewColumn,
1411        gpointer,
1412    ) -> gboolean,
1413>;
1414pub type GtkTreeViewMappingFunc =
1415    Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, gpointer)>;
1416pub type GtkTreeViewRowSeparatorFunc =
1417    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1418pub type GtkTreeViewSearchEqualFunc = Option<
1419    unsafe extern "C" fn(
1420        *mut GtkTreeModel,
1421        c_int,
1422        *const c_char,
1423        *mut GtkTreeIter,
1424        gpointer,
1425    ) -> gboolean,
1426>;
1427pub type GtkWidgetActionActivateFunc =
1428    Option<unsafe extern "C" fn(*mut GtkWidget, *const c_char, *mut glib::GVariant)>;
1429
1430// Records
1431#[repr(C)]
1432#[allow(dead_code)]
1433pub struct _GtkATContextClass {
1434    _data: [u8; 0],
1435    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1436}
1437
1438pub type GtkATContextClass = _GtkATContextClass;
1439
1440#[derive(Copy, Clone)]
1441#[repr(C)]
1442pub struct GtkAccessibleHyperlinkClass {
1443    pub parent_class: gobject::GObjectClass,
1444}
1445
1446impl ::std::fmt::Debug for GtkAccessibleHyperlinkClass {
1447    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1448        f.debug_struct(&format!("GtkAccessibleHyperlinkClass @ {self:p}"))
1449            .field("parent_class", &self.parent_class)
1450            .finish()
1451    }
1452}
1453
1454#[derive(Copy, Clone)]
1455#[repr(C)]
1456pub struct GtkAccessibleHypertextInterface {
1457    pub g_iface: gobject::GTypeInterface,
1458    pub get_n_links: Option<unsafe extern "C" fn(*mut GtkAccessibleHypertext) -> c_uint>,
1459    pub get_link: Option<
1460        unsafe extern "C" fn(*mut GtkAccessibleHypertext, c_uint) -> *mut GtkAccessibleHyperlink,
1461    >,
1462    pub get_link_at: Option<unsafe extern "C" fn(*mut GtkAccessibleHypertext, c_uint) -> c_uint>,
1463}
1464
1465impl ::std::fmt::Debug for GtkAccessibleHypertextInterface {
1466    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1467        f.debug_struct(&format!("GtkAccessibleHypertextInterface @ {self:p}"))
1468            .field("get_n_links", &self.get_n_links)
1469            .field("get_link", &self.get_link)
1470            .field("get_link_at", &self.get_link_at)
1471            .finish()
1472    }
1473}
1474
1475#[derive(Copy, Clone)]
1476#[repr(C)]
1477pub struct GtkAccessibleInterface {
1478    pub g_iface: gobject::GTypeInterface,
1479    pub get_at_context: Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkATContext>,
1480    pub get_platform_state:
1481        Option<unsafe extern "C" fn(*mut GtkAccessible, GtkAccessiblePlatformState) -> gboolean>,
1482    pub get_accessible_parent:
1483        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1484    pub get_first_accessible_child:
1485        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1486    pub get_next_accessible_sibling:
1487        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1488    pub get_bounds: Option<
1489        unsafe extern "C" fn(
1490            *mut GtkAccessible,
1491            *mut c_int,
1492            *mut c_int,
1493            *mut c_int,
1494            *mut c_int,
1495        ) -> gboolean,
1496    >,
1497}
1498
1499impl ::std::fmt::Debug for GtkAccessibleInterface {
1500    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1501        f.debug_struct(&format!("GtkAccessibleInterface @ {self:p}"))
1502            .field("g_iface", &self.g_iface)
1503            .field("get_at_context", &self.get_at_context)
1504            .field("get_platform_state", &self.get_platform_state)
1505            .field("get_accessible_parent", &self.get_accessible_parent)
1506            .field(
1507                "get_first_accessible_child",
1508                &self.get_first_accessible_child,
1509            )
1510            .field(
1511                "get_next_accessible_sibling",
1512                &self.get_next_accessible_sibling,
1513            )
1514            .field("get_bounds", &self.get_bounds)
1515            .finish()
1516    }
1517}
1518
1519#[repr(C)]
1520#[allow(dead_code)]
1521pub struct GtkAccessibleList {
1522    _data: [u8; 0],
1523    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1524}
1525
1526impl ::std::fmt::Debug for GtkAccessibleList {
1527    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1528        f.debug_struct(&format!("GtkAccessibleList @ {self:p}"))
1529            .finish()
1530    }
1531}
1532
1533#[derive(Copy, Clone)]
1534#[repr(C)]
1535pub struct GtkAccessibleRangeInterface {
1536    pub g_iface: gobject::GTypeInterface,
1537    pub set_current_value:
1538        Option<unsafe extern "C" fn(*mut GtkAccessibleRange, c_double) -> gboolean>,
1539}
1540
1541impl ::std::fmt::Debug for GtkAccessibleRangeInterface {
1542    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1543        f.debug_struct(&format!("GtkAccessibleRangeInterface @ {self:p}"))
1544            .field("g_iface", &self.g_iface)
1545            .field("set_current_value", &self.set_current_value)
1546            .finish()
1547    }
1548}
1549
1550#[derive(Copy, Clone)]
1551#[repr(C)]
1552pub struct GtkAccessibleTextInterface {
1553    pub g_iface: gobject::GTypeInterface,
1554    pub get_contents:
1555        Option<unsafe extern "C" fn(*mut GtkAccessibleText, c_uint, c_uint) -> *mut glib::GBytes>,
1556    pub get_contents_at: Option<
1557        unsafe extern "C" fn(
1558            *mut GtkAccessibleText,
1559            c_uint,
1560            GtkAccessibleTextGranularity,
1561            *mut c_uint,
1562            *mut c_uint,
1563        ) -> *mut glib::GBytes,
1564    >,
1565    pub get_caret_position: Option<unsafe extern "C" fn(*mut GtkAccessibleText) -> c_uint>,
1566    pub get_selection: Option<
1567        unsafe extern "C" fn(
1568            *mut GtkAccessibleText,
1569            *mut size_t,
1570            *mut *mut GtkAccessibleTextRange,
1571        ) -> gboolean,
1572    >,
1573    pub get_attributes: Option<
1574        unsafe extern "C" fn(
1575            *mut GtkAccessibleText,
1576            c_uint,
1577            *mut size_t,
1578            *mut *mut GtkAccessibleTextRange,
1579            *mut *mut *mut c_char,
1580            *mut *mut *mut c_char,
1581        ) -> gboolean,
1582    >,
1583    pub get_default_attributes: Option<
1584        unsafe extern "C" fn(*mut GtkAccessibleText, *mut *mut *mut c_char, *mut *mut *mut c_char),
1585    >,
1586    pub get_extents: Option<
1587        unsafe extern "C" fn(
1588            *mut GtkAccessibleText,
1589            c_uint,
1590            c_uint,
1591            *mut graphene::graphene_rect_t,
1592        ) -> gboolean,
1593    >,
1594    pub get_offset: Option<
1595        unsafe extern "C" fn(
1596            *mut GtkAccessibleText,
1597            *const graphene::graphene_point_t,
1598            *mut c_uint,
1599        ) -> gboolean,
1600    >,
1601    pub set_caret_position:
1602        Option<unsafe extern "C" fn(*mut GtkAccessibleText, c_uint) -> gboolean>,
1603    pub set_selection: Option<
1604        unsafe extern "C" fn(
1605            *mut GtkAccessibleText,
1606            size_t,
1607            *mut GtkAccessibleTextRange,
1608        ) -> gboolean,
1609    >,
1610}
1611
1612impl ::std::fmt::Debug for GtkAccessibleTextInterface {
1613    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1614        f.debug_struct(&format!("GtkAccessibleTextInterface @ {self:p}"))
1615            .field("get_contents", &self.get_contents)
1616            .field("get_contents_at", &self.get_contents_at)
1617            .field("get_caret_position", &self.get_caret_position)
1618            .field("get_selection", &self.get_selection)
1619            .field("get_attributes", &self.get_attributes)
1620            .field("get_default_attributes", &self.get_default_attributes)
1621            .field("get_extents", &self.get_extents)
1622            .field("get_offset", &self.get_offset)
1623            .field("set_caret_position", &self.set_caret_position)
1624            .field("set_selection", &self.set_selection)
1625            .finish()
1626    }
1627}
1628
1629#[derive(Copy, Clone)]
1630#[repr(C)]
1631pub struct GtkAccessibleTextRange {
1632    pub start: size_t,
1633    pub length: size_t,
1634}
1635
1636impl ::std::fmt::Debug for GtkAccessibleTextRange {
1637    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1638        f.debug_struct(&format!("GtkAccessibleTextRange @ {self:p}"))
1639            .field("start", &self.start)
1640            .field("length", &self.length)
1641            .finish()
1642    }
1643}
1644
1645#[derive(Copy, Clone)]
1646#[repr(C)]
1647pub struct GtkActionableInterface {
1648    pub g_iface: gobject::GTypeInterface,
1649    pub get_action_name: Option<unsafe extern "C" fn(*mut GtkActionable) -> *const c_char>,
1650    pub set_action_name: Option<unsafe extern "C" fn(*mut GtkActionable, *const c_char)>,
1651    pub get_action_target_value:
1652        Option<unsafe extern "C" fn(*mut GtkActionable) -> *mut glib::GVariant>,
1653    pub set_action_target_value:
1654        Option<unsafe extern "C" fn(*mut GtkActionable, *mut glib::GVariant)>,
1655}
1656
1657impl ::std::fmt::Debug for GtkActionableInterface {
1658    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1659        f.debug_struct(&format!("GtkActionableInterface @ {self:p}"))
1660            .field("get_action_name", &self.get_action_name)
1661            .field("set_action_name", &self.set_action_name)
1662            .field("get_action_target_value", &self.get_action_target_value)
1663            .field("set_action_target_value", &self.set_action_target_value)
1664            .finish()
1665    }
1666}
1667
1668#[repr(C)]
1669#[allow(dead_code)]
1670pub struct _GtkActivateActionClass {
1671    _data: [u8; 0],
1672    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1673}
1674
1675pub type GtkActivateActionClass = _GtkActivateActionClass;
1676
1677#[derive(Copy, Clone)]
1678#[repr(C)]
1679pub struct GtkAdjustmentClass {
1680    pub parent_class: gobject::GInitiallyUnownedClass,
1681    pub changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1682    pub value_changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1683    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1684    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1685    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1686    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1687}
1688
1689impl ::std::fmt::Debug for GtkAdjustmentClass {
1690    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1691        f.debug_struct(&format!("GtkAdjustmentClass @ {self:p}"))
1692            .field("parent_class", &self.parent_class)
1693            .field("changed", &self.changed)
1694            .field("value_changed", &self.value_changed)
1695            .field("_gtk_reserved1", &self._gtk_reserved1)
1696            .field("_gtk_reserved2", &self._gtk_reserved2)
1697            .field("_gtk_reserved3", &self._gtk_reserved3)
1698            .field("_gtk_reserved4", &self._gtk_reserved4)
1699            .finish()
1700    }
1701}
1702
1703#[derive(Copy, Clone)]
1704#[repr(C)]
1705pub struct GtkAlertDialogClass {
1706    pub parent_class: gobject::GObjectClass,
1707}
1708
1709impl ::std::fmt::Debug for GtkAlertDialogClass {
1710    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1711        f.debug_struct(&format!("GtkAlertDialogClass @ {self:p}"))
1712            .field("parent_class", &self.parent_class)
1713            .finish()
1714    }
1715}
1716
1717#[repr(C)]
1718#[allow(dead_code)]
1719pub struct _GtkAlternativeTriggerClass {
1720    _data: [u8; 0],
1721    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1722}
1723
1724pub type GtkAlternativeTriggerClass = _GtkAlternativeTriggerClass;
1725
1726#[repr(C)]
1727#[allow(dead_code)]
1728pub struct _GtkAnyFilterClass {
1729    _data: [u8; 0],
1730    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1731}
1732
1733pub type GtkAnyFilterClass = _GtkAnyFilterClass;
1734
1735#[derive(Copy, Clone)]
1736#[repr(C)]
1737pub struct GtkApplicationClass {
1738    pub parent_class: gio::GApplicationClass,
1739    pub window_added: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
1740    pub window_removed: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
1741    pub save_state:
1742        Option<unsafe extern "C" fn(*mut GtkApplication, *mut glib::GVariantDict) -> gboolean>,
1743    pub restore_state: Option<
1744        unsafe extern "C" fn(
1745            *mut GtkApplication,
1746            GtkRestoreReason,
1747            *mut glib::GVariant,
1748        ) -> gboolean,
1749    >,
1750    pub restore_window:
1751        Option<unsafe extern "C" fn(*mut GtkApplication, GtkRestoreReason, *mut glib::GVariant)>,
1752    pub padding: [gpointer; 5],
1753}
1754
1755impl ::std::fmt::Debug for GtkApplicationClass {
1756    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1757        f.debug_struct(&format!("GtkApplicationClass @ {self:p}"))
1758            .field("parent_class", &self.parent_class)
1759            .field("window_added", &self.window_added)
1760            .field("window_removed", &self.window_removed)
1761            .field("save_state", &self.save_state)
1762            .field("restore_state", &self.restore_state)
1763            .field("restore_window", &self.restore_window)
1764            .finish()
1765    }
1766}
1767
1768#[derive(Copy, Clone)]
1769#[repr(C)]
1770pub struct GtkApplicationWindowClass {
1771    pub parent_class: GtkWindowClass,
1772    pub save_state: Option<
1773        unsafe extern "C" fn(*mut GtkApplicationWindow, *mut glib::GVariantDict) -> gboolean,
1774    >,
1775    pub padding: [gpointer; 7],
1776}
1777
1778impl ::std::fmt::Debug for GtkApplicationWindowClass {
1779    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1780        f.debug_struct(&format!("GtkApplicationWindowClass @ {self:p}"))
1781            .field("parent_class", &self.parent_class)
1782            .field("save_state", &self.save_state)
1783            .finish()
1784    }
1785}
1786
1787#[derive(Copy, Clone)]
1788#[repr(C)]
1789pub struct GtkBinLayoutClass {
1790    pub parent_class: GtkLayoutManagerClass,
1791}
1792
1793impl ::std::fmt::Debug for GtkBinLayoutClass {
1794    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1795        f.debug_struct(&format!("GtkBinLayoutClass @ {self:p}"))
1796            .field("parent_class", &self.parent_class)
1797            .finish()
1798    }
1799}
1800
1801#[repr(C)]
1802#[allow(dead_code)]
1803pub struct GtkBitset {
1804    _data: [u8; 0],
1805    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1806}
1807
1808impl ::std::fmt::Debug for GtkBitset {
1809    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1810        f.debug_struct(&format!("GtkBitset @ {self:p}")).finish()
1811    }
1812}
1813
1814#[derive(Copy, Clone)]
1815#[repr(C)]
1816pub struct GtkBitsetIter {
1817    pub private_data: [gpointer; 10],
1818}
1819
1820impl ::std::fmt::Debug for GtkBitsetIter {
1821    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1822        f.debug_struct(&format!("GtkBitsetIter @ {self:p}"))
1823            .finish()
1824    }
1825}
1826
1827#[derive(Copy, Clone)]
1828#[repr(C)]
1829pub struct GtkBookmarkListClass {
1830    pub parent_class: gobject::GObjectClass,
1831}
1832
1833impl ::std::fmt::Debug for GtkBookmarkListClass {
1834    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1835        f.debug_struct(&format!("GtkBookmarkListClass @ {self:p}"))
1836            .field("parent_class", &self.parent_class)
1837            .finish()
1838    }
1839}
1840
1841#[derive(Copy, Clone)]
1842#[repr(C)]
1843pub struct GtkBoolFilterClass {
1844    pub parent_class: GtkFilterClass,
1845}
1846
1847impl ::std::fmt::Debug for GtkBoolFilterClass {
1848    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1849        f.debug_struct(&format!("GtkBoolFilterClass @ {self:p}"))
1850            .field("parent_class", &self.parent_class)
1851            .finish()
1852    }
1853}
1854
1855#[derive(Copy, Clone)]
1856#[repr(C)]
1857pub struct GtkBorder {
1858    pub left: i16,
1859    pub right: i16,
1860    pub top: i16,
1861    pub bottom: i16,
1862}
1863
1864impl ::std::fmt::Debug for GtkBorder {
1865    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1866        f.debug_struct(&format!("GtkBorder @ {self:p}"))
1867            .field("left", &self.left)
1868            .field("right", &self.right)
1869            .field("top", &self.top)
1870            .field("bottom", &self.bottom)
1871            .finish()
1872    }
1873}
1874
1875#[derive(Copy, Clone)]
1876#[repr(C)]
1877pub struct GtkBoxClass {
1878    pub parent_class: GtkWidgetClass,
1879    pub padding: [gpointer; 8],
1880}
1881
1882impl ::std::fmt::Debug for GtkBoxClass {
1883    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1884        f.debug_struct(&format!("GtkBoxClass @ {self:p}"))
1885            .field("parent_class", &self.parent_class)
1886            .finish()
1887    }
1888}
1889
1890#[derive(Copy, Clone)]
1891#[repr(C)]
1892pub struct GtkBoxLayoutClass {
1893    pub parent_class: GtkLayoutManagerClass,
1894}
1895
1896impl ::std::fmt::Debug for GtkBoxLayoutClass {
1897    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1898        f.debug_struct(&format!("GtkBoxLayoutClass @ {self:p}"))
1899            .field("parent_class", &self.parent_class)
1900            .finish()
1901    }
1902}
1903
1904#[derive(Copy, Clone)]
1905#[repr(C)]
1906pub struct GtkBuildableIface {
1907    pub g_iface: gobject::GTypeInterface,
1908    pub set_id: Option<unsafe extern "C" fn(*mut GtkBuildable, *const c_char)>,
1909    pub get_id: Option<unsafe extern "C" fn(*mut GtkBuildable) -> *const c_char>,
1910    pub add_child: Option<
1911        unsafe extern "C" fn(
1912            *mut GtkBuildable,
1913            *mut GtkBuilder,
1914            *mut gobject::GObject,
1915            *const c_char,
1916        ),
1917    >,
1918    pub set_buildable_property: Option<
1919        unsafe extern "C" fn(
1920            *mut GtkBuildable,
1921            *mut GtkBuilder,
1922            *const c_char,
1923            *const gobject::GValue,
1924        ),
1925    >,
1926    pub construct_child: Option<
1927        unsafe extern "C" fn(
1928            *mut GtkBuildable,
1929            *mut GtkBuilder,
1930            *const c_char,
1931        ) -> *mut gobject::GObject,
1932    >,
1933    pub custom_tag_start: Option<
1934        unsafe extern "C" fn(
1935            *mut GtkBuildable,
1936            *mut GtkBuilder,
1937            *mut gobject::GObject,
1938            *const c_char,
1939            *mut GtkBuildableParser,
1940            *mut gpointer,
1941        ) -> gboolean,
1942    >,
1943    pub custom_tag_end: Option<
1944        unsafe extern "C" fn(
1945            *mut GtkBuildable,
1946            *mut GtkBuilder,
1947            *mut gobject::GObject,
1948            *const c_char,
1949            gpointer,
1950        ),
1951    >,
1952    pub custom_finished: Option<
1953        unsafe extern "C" fn(
1954            *mut GtkBuildable,
1955            *mut GtkBuilder,
1956            *mut gobject::GObject,
1957            *const c_char,
1958            gpointer,
1959        ),
1960    >,
1961    pub parser_finished: Option<unsafe extern "C" fn(*mut GtkBuildable, *mut GtkBuilder)>,
1962    pub get_internal_child: Option<
1963        unsafe extern "C" fn(
1964            *mut GtkBuildable,
1965            *mut GtkBuilder,
1966            *const c_char,
1967        ) -> *mut gobject::GObject,
1968    >,
1969}
1970
1971impl ::std::fmt::Debug for GtkBuildableIface {
1972    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1973        f.debug_struct(&format!("GtkBuildableIface @ {self:p}"))
1974            .field("g_iface", &self.g_iface)
1975            .field("set_id", &self.set_id)
1976            .field("get_id", &self.get_id)
1977            .field("add_child", &self.add_child)
1978            .field("set_buildable_property", &self.set_buildable_property)
1979            .field("construct_child", &self.construct_child)
1980            .field("custom_tag_start", &self.custom_tag_start)
1981            .field("custom_tag_end", &self.custom_tag_end)
1982            .field("custom_finished", &self.custom_finished)
1983            .field("parser_finished", &self.parser_finished)
1984            .field("get_internal_child", &self.get_internal_child)
1985            .finish()
1986    }
1987}
1988
1989#[repr(C)]
1990#[allow(dead_code)]
1991pub struct _GtkBuildableParseContext {
1992    _data: [u8; 0],
1993    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1994}
1995
1996pub type GtkBuildableParseContext = _GtkBuildableParseContext;
1997
1998#[derive(Copy, Clone)]
1999#[repr(C)]
2000pub struct GtkBuildableParser {
2001    pub start_element: Option<
2002        unsafe extern "C" fn(
2003            *mut GtkBuildableParseContext,
2004            *const c_char,
2005            *mut *const c_char,
2006            *mut *const c_char,
2007            gpointer,
2008            *mut *mut glib::GError,
2009        ),
2010    >,
2011    pub end_element: Option<
2012        unsafe extern "C" fn(
2013            *mut GtkBuildableParseContext,
2014            *const c_char,
2015            gpointer,
2016            *mut *mut glib::GError,
2017        ),
2018    >,
2019    pub text: Option<
2020        unsafe extern "C" fn(
2021            *mut GtkBuildableParseContext,
2022            *const c_char,
2023            size_t,
2024            gpointer,
2025            *mut *mut glib::GError,
2026        ),
2027    >,
2028    pub error:
2029        Option<unsafe extern "C" fn(*mut GtkBuildableParseContext, *mut glib::GError, gpointer)>,
2030    pub padding: [gpointer; 4],
2031}
2032
2033impl ::std::fmt::Debug for GtkBuildableParser {
2034    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2035        f.debug_struct(&format!("GtkBuildableParser @ {self:p}"))
2036            .field("start_element", &self.start_element)
2037            .field("end_element", &self.end_element)
2038            .field("text", &self.text)
2039            .field("error", &self.error)
2040            .finish()
2041    }
2042}
2043
2044#[derive(Copy, Clone)]
2045#[repr(C)]
2046pub struct GtkBuilderCScopeClass {
2047    pub parent_class: gobject::GObjectClass,
2048}
2049
2050impl ::std::fmt::Debug for GtkBuilderCScopeClass {
2051    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2052        f.debug_struct(&format!("GtkBuilderCScopeClass @ {self:p}"))
2053            .field("parent_class", &self.parent_class)
2054            .finish()
2055    }
2056}
2057
2058#[repr(C)]
2059#[allow(dead_code)]
2060pub struct _GtkBuilderClass {
2061    _data: [u8; 0],
2062    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2063}
2064
2065pub type GtkBuilderClass = _GtkBuilderClass;
2066
2067#[repr(C)]
2068#[allow(dead_code)]
2069pub struct _GtkBuilderListItemFactoryClass {
2070    _data: [u8; 0],
2071    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2072}
2073
2074pub type GtkBuilderListItemFactoryClass = _GtkBuilderListItemFactoryClass;
2075
2076#[derive(Copy, Clone)]
2077#[repr(C)]
2078pub struct GtkBuilderScopeInterface {
2079    pub g_iface: gobject::GTypeInterface,
2080    pub get_type_from_name:
2081        Option<unsafe extern "C" fn(*mut GtkBuilderScope, *mut GtkBuilder, *const c_char) -> GType>,
2082    pub get_type_from_function:
2083        Option<unsafe extern "C" fn(*mut GtkBuilderScope, *mut GtkBuilder, *const c_char) -> GType>,
2084    pub create_closure: Option<
2085        unsafe extern "C" fn(
2086            *mut GtkBuilderScope,
2087            *mut GtkBuilder,
2088            *const c_char,
2089            GtkBuilderClosureFlags,
2090            *mut gobject::GObject,
2091            *mut *mut glib::GError,
2092        ) -> *mut gobject::GClosure,
2093    >,
2094}
2095
2096impl ::std::fmt::Debug for GtkBuilderScopeInterface {
2097    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2098        f.debug_struct(&format!("GtkBuilderScopeInterface @ {self:p}"))
2099            .field("get_type_from_name", &self.get_type_from_name)
2100            .field("get_type_from_function", &self.get_type_from_function)
2101            .field("create_closure", &self.create_closure)
2102            .finish()
2103    }
2104}
2105
2106#[derive(Copy, Clone)]
2107#[repr(C)]
2108pub struct GtkButtonClass {
2109    pub parent_class: GtkWidgetClass,
2110    pub clicked: Option<unsafe extern "C" fn(*mut GtkButton)>,
2111    pub activate: Option<unsafe extern "C" fn(*mut GtkButton)>,
2112    pub padding: [gpointer; 8],
2113}
2114
2115impl ::std::fmt::Debug for GtkButtonClass {
2116    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2117        f.debug_struct(&format!("GtkButtonClass @ {self:p}"))
2118            .field("parent_class", &self.parent_class)
2119            .field("clicked", &self.clicked)
2120            .field("activate", &self.activate)
2121            .finish()
2122    }
2123}
2124
2125#[repr(C)]
2126#[allow(dead_code)]
2127pub struct _GtkButtonPrivate {
2128    _data: [u8; 0],
2129    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2130}
2131
2132pub type GtkButtonPrivate = _GtkButtonPrivate;
2133
2134#[repr(C)]
2135#[allow(dead_code)]
2136pub struct _GtkCallbackActionClass {
2137    _data: [u8; 0],
2138    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2139}
2140
2141pub type GtkCallbackActionClass = _GtkCallbackActionClass;
2142
2143#[derive(Copy, Clone)]
2144#[repr(C)]
2145pub struct GtkCellAreaClass {
2146    pub parent_class: gobject::GInitiallyUnownedClass,
2147    pub add: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2148    pub remove: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2149    pub foreach: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkCellCallback, gpointer)>,
2150    pub foreach_alloc: Option<
2151        unsafe extern "C" fn(
2152            *mut GtkCellArea,
2153            *mut GtkCellAreaContext,
2154            *mut GtkWidget,
2155            *const gdk::GdkRectangle,
2156            *const gdk::GdkRectangle,
2157            GtkCellAllocCallback,
2158            gpointer,
2159        ),
2160    >,
2161    pub event: Option<
2162        unsafe extern "C" fn(
2163            *mut GtkCellArea,
2164            *mut GtkCellAreaContext,
2165            *mut GtkWidget,
2166            *mut gdk::GdkEvent,
2167            *const gdk::GdkRectangle,
2168            GtkCellRendererState,
2169        ) -> c_int,
2170    >,
2171    pub snapshot: Option<
2172        unsafe extern "C" fn(
2173            *mut GtkCellArea,
2174            *mut GtkCellAreaContext,
2175            *mut GtkWidget,
2176            *mut GtkSnapshot,
2177            *const gdk::GdkRectangle,
2178            *const gdk::GdkRectangle,
2179            GtkCellRendererState,
2180            gboolean,
2181        ),
2182    >,
2183    pub apply_attributes: Option<
2184        unsafe extern "C" fn(
2185            *mut GtkCellArea,
2186            *mut GtkTreeModel,
2187            *mut GtkTreeIter,
2188            gboolean,
2189            gboolean,
2190        ),
2191    >,
2192    pub create_context: Option<unsafe extern "C" fn(*mut GtkCellArea) -> *mut GtkCellAreaContext>,
2193    pub copy_context: Option<
2194        unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellAreaContext) -> *mut GtkCellAreaContext,
2195    >,
2196    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellArea) -> GtkSizeRequestMode>,
2197    pub get_preferred_width: Option<
2198        unsafe extern "C" fn(
2199            *mut GtkCellArea,
2200            *mut GtkCellAreaContext,
2201            *mut GtkWidget,
2202            *mut c_int,
2203            *mut c_int,
2204        ),
2205    >,
2206    pub get_preferred_height_for_width: Option<
2207        unsafe extern "C" fn(
2208            *mut GtkCellArea,
2209            *mut GtkCellAreaContext,
2210            *mut GtkWidget,
2211            c_int,
2212            *mut c_int,
2213            *mut c_int,
2214        ),
2215    >,
2216    pub get_preferred_height: Option<
2217        unsafe extern "C" fn(
2218            *mut GtkCellArea,
2219            *mut GtkCellAreaContext,
2220            *mut GtkWidget,
2221            *mut c_int,
2222            *mut c_int,
2223        ),
2224    >,
2225    pub get_preferred_width_for_height: Option<
2226        unsafe extern "C" fn(
2227            *mut GtkCellArea,
2228            *mut GtkCellAreaContext,
2229            *mut GtkWidget,
2230            c_int,
2231            *mut c_int,
2232            *mut c_int,
2233        ),
2234    >,
2235    pub set_cell_property: Option<
2236        unsafe extern "C" fn(
2237            *mut GtkCellArea,
2238            *mut GtkCellRenderer,
2239            c_uint,
2240            *mut gobject::GValue,
2241            *mut gobject::GParamSpec,
2242        ),
2243    >,
2244    pub get_cell_property: Option<
2245        unsafe extern "C" fn(
2246            *mut GtkCellArea,
2247            *mut GtkCellRenderer,
2248            c_uint,
2249            *mut gobject::GValue,
2250            *mut gobject::GParamSpec,
2251        ),
2252    >,
2253    pub focus: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkDirectionType) -> gboolean>,
2254    pub is_activatable: Option<unsafe extern "C" fn(*mut GtkCellArea) -> gboolean>,
2255    pub activate: Option<
2256        unsafe extern "C" fn(
2257            *mut GtkCellArea,
2258            *mut GtkCellAreaContext,
2259            *mut GtkWidget,
2260            *const gdk::GdkRectangle,
2261            GtkCellRendererState,
2262            gboolean,
2263        ) -> gboolean,
2264    >,
2265    pub padding: [gpointer; 8],
2266}
2267
2268impl ::std::fmt::Debug for GtkCellAreaClass {
2269    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2270        f.debug_struct(&format!("GtkCellAreaClass @ {self:p}"))
2271            .field("add", &self.add)
2272            .field("remove", &self.remove)
2273            .field("foreach", &self.foreach)
2274            .field("foreach_alloc", &self.foreach_alloc)
2275            .field("event", &self.event)
2276            .field("snapshot", &self.snapshot)
2277            .field("apply_attributes", &self.apply_attributes)
2278            .field("create_context", &self.create_context)
2279            .field("copy_context", &self.copy_context)
2280            .field("get_request_mode", &self.get_request_mode)
2281            .field("get_preferred_width", &self.get_preferred_width)
2282            .field(
2283                "get_preferred_height_for_width",
2284                &self.get_preferred_height_for_width,
2285            )
2286            .field("get_preferred_height", &self.get_preferred_height)
2287            .field(
2288                "get_preferred_width_for_height",
2289                &self.get_preferred_width_for_height,
2290            )
2291            .field("set_cell_property", &self.set_cell_property)
2292            .field("get_cell_property", &self.get_cell_property)
2293            .field("focus", &self.focus)
2294            .field("is_activatable", &self.is_activatable)
2295            .field("activate", &self.activate)
2296            .finish()
2297    }
2298}
2299
2300#[derive(Copy, Clone)]
2301#[repr(C)]
2302pub struct GtkCellAreaContextClass {
2303    pub parent_class: gobject::GObjectClass,
2304    pub allocate: Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, c_int)>,
2305    pub reset: Option<unsafe extern "C" fn(*mut GtkCellAreaContext)>,
2306    pub get_preferred_height_for_width:
2307        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2308    pub get_preferred_width_for_height:
2309        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2310    pub padding: [gpointer; 8],
2311}
2312
2313impl ::std::fmt::Debug for GtkCellAreaContextClass {
2314    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2315        f.debug_struct(&format!("GtkCellAreaContextClass @ {self:p}"))
2316            .field("allocate", &self.allocate)
2317            .field("reset", &self.reset)
2318            .field(
2319                "get_preferred_height_for_width",
2320                &self.get_preferred_height_for_width,
2321            )
2322            .field(
2323                "get_preferred_width_for_height",
2324                &self.get_preferred_width_for_height,
2325            )
2326            .finish()
2327    }
2328}
2329
2330#[repr(C)]
2331#[allow(dead_code)]
2332pub struct _GtkCellAreaContextPrivate {
2333    _data: [u8; 0],
2334    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2335}
2336
2337pub type GtkCellAreaContextPrivate = _GtkCellAreaContextPrivate;
2338
2339#[derive(Copy, Clone)]
2340#[repr(C)]
2341pub struct GtkCellEditableIface {
2342    pub g_iface: gobject::GTypeInterface,
2343    pub editing_done: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
2344    pub remove_widget: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
2345    pub start_editing: Option<unsafe extern "C" fn(*mut GtkCellEditable, *mut gdk::GdkEvent)>,
2346}
2347
2348impl ::std::fmt::Debug for GtkCellEditableIface {
2349    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2350        f.debug_struct(&format!("GtkCellEditableIface @ {self:p}"))
2351            .field("editing_done", &self.editing_done)
2352            .field("remove_widget", &self.remove_widget)
2353            .field("start_editing", &self.start_editing)
2354            .finish()
2355    }
2356}
2357
2358#[derive(Copy, Clone)]
2359#[repr(C)]
2360pub struct GtkCellLayoutIface {
2361    pub g_iface: gobject::GTypeInterface,
2362    pub pack_start:
2363        Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
2364    pub pack_end: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
2365    pub clear: Option<unsafe extern "C" fn(*mut GtkCellLayout)>,
2366    pub add_attribute: Option<
2367        unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, *const c_char, c_int),
2368    >,
2369    pub set_cell_data_func: Option<
2370        unsafe extern "C" fn(
2371            *mut GtkCellLayout,
2372            *mut GtkCellRenderer,
2373            GtkCellLayoutDataFunc,
2374            gpointer,
2375            glib::GDestroyNotify,
2376        ),
2377    >,
2378    pub clear_attributes: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer)>,
2379    pub reorder: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, c_int)>,
2380    pub get_cells: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut glib::GList>,
2381    pub get_area: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut GtkCellArea>,
2382}
2383
2384impl ::std::fmt::Debug for GtkCellLayoutIface {
2385    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2386        f.debug_struct(&format!("GtkCellLayoutIface @ {self:p}"))
2387            .field("pack_start", &self.pack_start)
2388            .field("pack_end", &self.pack_end)
2389            .field("clear", &self.clear)
2390            .field("add_attribute", &self.add_attribute)
2391            .field("set_cell_data_func", &self.set_cell_data_func)
2392            .field("clear_attributes", &self.clear_attributes)
2393            .field("reorder", &self.reorder)
2394            .field("get_cells", &self.get_cells)
2395            .field("get_area", &self.get_area)
2396            .finish()
2397    }
2398}
2399
2400#[derive(Copy, Clone)]
2401#[repr(C)]
2402pub struct GtkCellRendererClass {
2403    pub parent_class: gobject::GInitiallyUnownedClass,
2404    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellRenderer) -> GtkSizeRequestMode>,
2405    pub get_preferred_width:
2406        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
2407    pub get_preferred_height_for_width: Option<
2408        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
2409    >,
2410    pub get_preferred_height:
2411        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
2412    pub get_preferred_width_for_height: Option<
2413        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
2414    >,
2415    pub get_aligned_area: Option<
2416        unsafe extern "C" fn(
2417            *mut GtkCellRenderer,
2418            *mut GtkWidget,
2419            GtkCellRendererState,
2420            *const gdk::GdkRectangle,
2421            *mut gdk::GdkRectangle,
2422        ),
2423    >,
2424    pub snapshot: Option<
2425        unsafe extern "C" fn(
2426            *mut GtkCellRenderer,
2427            *mut GtkSnapshot,
2428            *mut GtkWidget,
2429            *const gdk::GdkRectangle,
2430            *const gdk::GdkRectangle,
2431            GtkCellRendererState,
2432        ),
2433    >,
2434    pub activate: Option<
2435        unsafe extern "C" fn(
2436            *mut GtkCellRenderer,
2437            *mut gdk::GdkEvent,
2438            *mut GtkWidget,
2439            *const c_char,
2440            *const gdk::GdkRectangle,
2441            *const gdk::GdkRectangle,
2442            GtkCellRendererState,
2443        ) -> gboolean,
2444    >,
2445    pub start_editing: Option<
2446        unsafe extern "C" fn(
2447            *mut GtkCellRenderer,
2448            *mut gdk::GdkEvent,
2449            *mut GtkWidget,
2450            *const c_char,
2451            *const gdk::GdkRectangle,
2452            *const gdk::GdkRectangle,
2453            GtkCellRendererState,
2454        ) -> *mut GtkCellEditable,
2455    >,
2456    pub editing_canceled: Option<unsafe extern "C" fn(*mut GtkCellRenderer)>,
2457    pub editing_started:
2458        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkCellEditable, *const c_char)>,
2459    pub padding: [gpointer; 8],
2460}
2461
2462impl ::std::fmt::Debug for GtkCellRendererClass {
2463    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2464        f.debug_struct(&format!("GtkCellRendererClass @ {self:p}"))
2465            .field("get_request_mode", &self.get_request_mode)
2466            .field("get_preferred_width", &self.get_preferred_width)
2467            .field(
2468                "get_preferred_height_for_width",
2469                &self.get_preferred_height_for_width,
2470            )
2471            .field("get_preferred_height", &self.get_preferred_height)
2472            .field(
2473                "get_preferred_width_for_height",
2474                &self.get_preferred_width_for_height,
2475            )
2476            .field("get_aligned_area", &self.get_aligned_area)
2477            .field("snapshot", &self.snapshot)
2478            .field("activate", &self.activate)
2479            .field("start_editing", &self.start_editing)
2480            .field("editing_canceled", &self.editing_canceled)
2481            .field("editing_started", &self.editing_started)
2482            .finish()
2483    }
2484}
2485
2486#[repr(C)]
2487#[allow(dead_code)]
2488pub struct _GtkCellRendererClassPrivate {
2489    _data: [u8; 0],
2490    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2491}
2492
2493pub type GtkCellRendererClassPrivate = _GtkCellRendererClassPrivate;
2494
2495#[repr(C)]
2496#[allow(dead_code)]
2497pub struct _GtkCellRendererPrivate {
2498    _data: [u8; 0],
2499    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2500}
2501
2502pub type GtkCellRendererPrivate = _GtkCellRendererPrivate;
2503
2504#[derive(Copy, Clone)]
2505#[repr(C)]
2506pub struct GtkCellRendererTextClass {
2507    pub parent_class: GtkCellRendererClass,
2508    pub edited:
2509        Option<unsafe extern "C" fn(*mut GtkCellRendererText, *const c_char, *const c_char)>,
2510    pub padding: [gpointer; 8],
2511}
2512
2513impl ::std::fmt::Debug for GtkCellRendererTextClass {
2514    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2515        f.debug_struct(&format!("GtkCellRendererTextClass @ {self:p}"))
2516            .field("parent_class", &self.parent_class)
2517            .field("edited", &self.edited)
2518            .finish()
2519    }
2520}
2521
2522#[repr(C)]
2523#[allow(dead_code)]
2524pub struct _GtkCenterBoxClass {
2525    _data: [u8; 0],
2526    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2527}
2528
2529pub type GtkCenterBoxClass = _GtkCenterBoxClass;
2530
2531#[derive(Copy, Clone)]
2532#[repr(C)]
2533pub struct GtkCenterLayoutClass {
2534    pub parent_class: GtkLayoutManagerClass,
2535}
2536
2537impl ::std::fmt::Debug for GtkCenterLayoutClass {
2538    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2539        f.debug_struct(&format!("GtkCenterLayoutClass @ {self:p}"))
2540            .field("parent_class", &self.parent_class)
2541            .finish()
2542    }
2543}
2544
2545#[derive(Copy, Clone)]
2546#[repr(C)]
2547pub struct GtkCheckButtonClass {
2548    pub parent_class: GtkWidgetClass,
2549    pub toggled: Option<unsafe extern "C" fn(*mut GtkCheckButton)>,
2550    pub activate: Option<unsafe extern "C" fn(*mut GtkCheckButton)>,
2551    pub padding: [gpointer; 7],
2552}
2553
2554impl ::std::fmt::Debug for GtkCheckButtonClass {
2555    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2556        f.debug_struct(&format!("GtkCheckButtonClass @ {self:p}"))
2557            .field("parent_class", &self.parent_class)
2558            .field("toggled", &self.toggled)
2559            .field("activate", &self.activate)
2560            .finish()
2561    }
2562}
2563
2564#[derive(Copy, Clone)]
2565#[repr(C)]
2566pub struct GtkColorChooserInterface {
2567    pub base_interface: gobject::GTypeInterface,
2568    pub get_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2569    pub set_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2570    pub add_palette: Option<
2571        unsafe extern "C" fn(*mut GtkColorChooser, GtkOrientation, c_int, c_int, *mut gdk::GdkRGBA),
2572    >,
2573    pub color_activated: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2574    pub padding: [gpointer; 12],
2575}
2576
2577impl ::std::fmt::Debug for GtkColorChooserInterface {
2578    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2579        f.debug_struct(&format!("GtkColorChooserInterface @ {self:p}"))
2580            .field("base_interface", &self.base_interface)
2581            .field("get_rgba", &self.get_rgba)
2582            .field("set_rgba", &self.set_rgba)
2583            .field("add_palette", &self.add_palette)
2584            .field("color_activated", &self.color_activated)
2585            .finish()
2586    }
2587}
2588
2589#[derive(Copy, Clone)]
2590#[repr(C)]
2591pub struct GtkColorDialogButtonClass {
2592    pub parent_class: GtkWidgetClass,
2593}
2594
2595impl ::std::fmt::Debug for GtkColorDialogButtonClass {
2596    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2597        f.debug_struct(&format!("GtkColorDialogButtonClass @ {self:p}"))
2598            .field("parent_class", &self.parent_class)
2599            .finish()
2600    }
2601}
2602
2603#[derive(Copy, Clone)]
2604#[repr(C)]
2605pub struct GtkColorDialogClass {
2606    pub parent_class: gobject::GObjectClass,
2607}
2608
2609impl ::std::fmt::Debug for GtkColorDialogClass {
2610    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2611        f.debug_struct(&format!("GtkColorDialogClass @ {self:p}"))
2612            .field("parent_class", &self.parent_class)
2613            .finish()
2614    }
2615}
2616
2617#[repr(C)]
2618#[allow(dead_code)]
2619pub struct _GtkColumnViewCellClass {
2620    _data: [u8; 0],
2621    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2622}
2623
2624pub type GtkColumnViewCellClass = _GtkColumnViewCellClass;
2625
2626#[repr(C)]
2627#[allow(dead_code)]
2628pub struct _GtkColumnViewClass {
2629    _data: [u8; 0],
2630    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2631}
2632
2633pub type GtkColumnViewClass = _GtkColumnViewClass;
2634
2635#[repr(C)]
2636#[allow(dead_code)]
2637pub struct _GtkColumnViewColumnClass {
2638    _data: [u8; 0],
2639    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2640}
2641
2642pub type GtkColumnViewColumnClass = _GtkColumnViewColumnClass;
2643
2644#[repr(C)]
2645#[allow(dead_code)]
2646pub struct _GtkColumnViewRowClass {
2647    _data: [u8; 0],
2648    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2649}
2650
2651pub type GtkColumnViewRowClass = _GtkColumnViewRowClass;
2652
2653#[derive(Copy, Clone)]
2654#[repr(C)]
2655pub struct GtkColumnViewSorterClass {
2656    pub parent_class: GtkSorterClass,
2657}
2658
2659impl ::std::fmt::Debug for GtkColumnViewSorterClass {
2660    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2661        f.debug_struct(&format!("GtkColumnViewSorterClass @ {self:p}"))
2662            .field("parent_class", &self.parent_class)
2663            .finish()
2664    }
2665}
2666
2667#[derive(Copy, Clone)]
2668#[repr(C)]
2669pub struct GtkComboBoxClass {
2670    pub parent_class: GtkWidgetClass,
2671    pub changed: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
2672    pub format_entry_text:
2673        Option<unsafe extern "C" fn(*mut GtkComboBox, *const c_char) -> *mut c_char>,
2674    pub activate: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
2675    pub padding: [gpointer; 7],
2676}
2677
2678impl ::std::fmt::Debug for GtkComboBoxClass {
2679    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2680        f.debug_struct(&format!("GtkComboBoxClass @ {self:p}"))
2681            .field("parent_class", &self.parent_class)
2682            .field("changed", &self.changed)
2683            .field("format_entry_text", &self.format_entry_text)
2684            .field("activate", &self.activate)
2685            .finish()
2686    }
2687}
2688
2689#[derive(Copy, Clone)]
2690#[repr(C)]
2691pub struct GtkConstraintClass {
2692    pub parent_class: gobject::GObjectClass,
2693}
2694
2695impl ::std::fmt::Debug for GtkConstraintClass {
2696    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2697        f.debug_struct(&format!("GtkConstraintClass @ {self:p}"))
2698            .field("parent_class", &self.parent_class)
2699            .finish()
2700    }
2701}
2702
2703#[derive(Copy, Clone)]
2704#[repr(C)]
2705pub struct GtkConstraintGuideClass {
2706    pub parent_class: gobject::GObjectClass,
2707}
2708
2709impl ::std::fmt::Debug for GtkConstraintGuideClass {
2710    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2711        f.debug_struct(&format!("GtkConstraintGuideClass @ {self:p}"))
2712            .field("parent_class", &self.parent_class)
2713            .finish()
2714    }
2715}
2716
2717#[derive(Copy, Clone)]
2718#[repr(C)]
2719pub struct GtkConstraintLayoutChildClass {
2720    pub parent_class: GtkLayoutChildClass,
2721}
2722
2723impl ::std::fmt::Debug for GtkConstraintLayoutChildClass {
2724    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2725        f.debug_struct(&format!("GtkConstraintLayoutChildClass @ {self:p}"))
2726            .field("parent_class", &self.parent_class)
2727            .finish()
2728    }
2729}
2730
2731#[derive(Copy, Clone)]
2732#[repr(C)]
2733pub struct GtkConstraintLayoutClass {
2734    pub parent_class: GtkLayoutManagerClass,
2735}
2736
2737impl ::std::fmt::Debug for GtkConstraintLayoutClass {
2738    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2739        f.debug_struct(&format!("GtkConstraintLayoutClass @ {self:p}"))
2740            .field("parent_class", &self.parent_class)
2741            .finish()
2742    }
2743}
2744
2745#[repr(C)]
2746#[allow(dead_code)]
2747pub struct _GtkConstraintTargetInterface {
2748    _data: [u8; 0],
2749    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2750}
2751
2752pub type GtkConstraintTargetInterface = _GtkConstraintTargetInterface;
2753
2754#[derive(Copy, Clone)]
2755#[repr(C)]
2756pub struct GtkCssLocation {
2757    pub bytes: size_t,
2758    pub chars: size_t,
2759    pub lines: size_t,
2760    pub line_bytes: size_t,
2761    pub line_chars: size_t,
2762}
2763
2764impl ::std::fmt::Debug for GtkCssLocation {
2765    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2766        f.debug_struct(&format!("GtkCssLocation @ {self:p}"))
2767            .field("bytes", &self.bytes)
2768            .field("chars", &self.chars)
2769            .field("lines", &self.lines)
2770            .field("line_bytes", &self.line_bytes)
2771            .field("line_chars", &self.line_chars)
2772            .finish()
2773    }
2774}
2775
2776#[repr(C)]
2777#[allow(dead_code)]
2778pub struct _GtkCssProviderClass {
2779    _data: [u8; 0],
2780    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2781}
2782
2783pub type GtkCssProviderClass = _GtkCssProviderClass;
2784
2785#[repr(C)]
2786#[allow(dead_code)]
2787pub struct _GtkCssProviderPrivate {
2788    _data: [u8; 0],
2789    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2790}
2791
2792pub type GtkCssProviderPrivate = _GtkCssProviderPrivate;
2793
2794#[repr(C)]
2795#[allow(dead_code)]
2796pub struct GtkCssSection {
2797    _data: [u8; 0],
2798    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2799}
2800
2801impl ::std::fmt::Debug for GtkCssSection {
2802    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2803        f.debug_struct(&format!("GtkCssSection @ {self:p}"))
2804            .finish()
2805    }
2806}
2807
2808#[repr(C)]
2809#[allow(dead_code)]
2810pub struct _GtkCssStyleChange {
2811    _data: [u8; 0],
2812    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2813}
2814
2815pub type GtkCssStyleChange = _GtkCssStyleChange;
2816
2817#[derive(Copy, Clone)]
2818#[repr(C)]
2819pub struct GtkCustomFilterClass {
2820    pub parent_class: GtkFilterClass,
2821}
2822
2823impl ::std::fmt::Debug for GtkCustomFilterClass {
2824    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2825        f.debug_struct(&format!("GtkCustomFilterClass @ {self:p}"))
2826            .field("parent_class", &self.parent_class)
2827            .finish()
2828    }
2829}
2830
2831#[derive(Copy, Clone)]
2832#[repr(C)]
2833pub struct GtkCustomLayoutClass {
2834    pub parent_class: GtkLayoutManagerClass,
2835}
2836
2837impl ::std::fmt::Debug for GtkCustomLayoutClass {
2838    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2839        f.debug_struct(&format!("GtkCustomLayoutClass @ {self:p}"))
2840            .field("parent_class", &self.parent_class)
2841            .finish()
2842    }
2843}
2844
2845#[derive(Copy, Clone)]
2846#[repr(C)]
2847pub struct GtkCustomSorterClass {
2848    pub parent_class: GtkSorterClass,
2849}
2850
2851impl ::std::fmt::Debug for GtkCustomSorterClass {
2852    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2853        f.debug_struct(&format!("GtkCustomSorterClass @ {self:p}"))
2854            .field("parent_class", &self.parent_class)
2855            .finish()
2856    }
2857}
2858
2859#[derive(Copy, Clone)]
2860#[repr(C)]
2861pub struct GtkDialogClass {
2862    pub parent_class: GtkWindowClass,
2863    pub response: Option<unsafe extern "C" fn(*mut GtkDialog, GtkResponseType)>,
2864    pub close: Option<unsafe extern "C" fn(*mut GtkDialog)>,
2865    pub padding: [gpointer; 8],
2866}
2867
2868impl ::std::fmt::Debug for GtkDialogClass {
2869    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2870        f.debug_struct(&format!("GtkDialogClass @ {self:p}"))
2871            .field("parent_class", &self.parent_class)
2872            .field("response", &self.response)
2873            .field("close", &self.close)
2874            .finish()
2875    }
2876}
2877
2878#[derive(Copy, Clone)]
2879#[repr(C)]
2880pub struct GtkDirectoryListClass {
2881    pub parent_class: gobject::GObjectClass,
2882}
2883
2884impl ::std::fmt::Debug for GtkDirectoryListClass {
2885    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2886        f.debug_struct(&format!("GtkDirectoryListClass @ {self:p}"))
2887            .field("parent_class", &self.parent_class)
2888            .finish()
2889    }
2890}
2891
2892#[derive(Copy, Clone)]
2893#[repr(C)]
2894pub struct GtkDragIconClass {
2895    pub parent_class: GtkWidgetClass,
2896}
2897
2898impl ::std::fmt::Debug for GtkDragIconClass {
2899    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2900        f.debug_struct(&format!("GtkDragIconClass @ {self:p}"))
2901            .field("parent_class", &self.parent_class)
2902            .finish()
2903    }
2904}
2905
2906#[repr(C)]
2907#[allow(dead_code)]
2908pub struct _GtkDragSourceClass {
2909    _data: [u8; 0],
2910    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2911}
2912
2913pub type GtkDragSourceClass = _GtkDragSourceClass;
2914
2915#[derive(Copy, Clone)]
2916#[repr(C)]
2917pub struct GtkDrawingAreaClass {
2918    pub parent_class: GtkWidgetClass,
2919    pub resize: Option<unsafe extern "C" fn(*mut GtkDrawingArea, c_int, c_int)>,
2920    pub padding: [gpointer; 8],
2921}
2922
2923impl ::std::fmt::Debug for GtkDrawingAreaClass {
2924    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2925        f.debug_struct(&format!("GtkDrawingAreaClass @ {self:p}"))
2926            .field("parent_class", &self.parent_class)
2927            .field("resize", &self.resize)
2928            .finish()
2929    }
2930}
2931
2932#[repr(C)]
2933#[allow(dead_code)]
2934pub struct _GtkDropControllerMotionClass {
2935    _data: [u8; 0],
2936    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2937}
2938
2939pub type GtkDropControllerMotionClass = _GtkDropControllerMotionClass;
2940
2941#[derive(Copy, Clone)]
2942#[repr(C)]
2943pub struct GtkDropDownClass {
2944    pub parent_class: GtkWidgetClass,
2945}
2946
2947impl ::std::fmt::Debug for GtkDropDownClass {
2948    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2949        f.debug_struct(&format!("GtkDropDownClass @ {self:p}"))
2950            .field("parent_class", &self.parent_class)
2951            .finish()
2952    }
2953}
2954
2955#[repr(C)]
2956#[allow(dead_code)]
2957pub struct _GtkDropTargetAsyncClass {
2958    _data: [u8; 0],
2959    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2960}
2961
2962pub type GtkDropTargetAsyncClass = _GtkDropTargetAsyncClass;
2963
2964#[repr(C)]
2965#[allow(dead_code)]
2966pub struct _GtkDropTargetClass {
2967    _data: [u8; 0],
2968    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2969}
2970
2971pub type GtkDropTargetClass = _GtkDropTargetClass;
2972
2973#[derive(Copy, Clone)]
2974#[repr(C)]
2975pub struct GtkEditableInterface {
2976    pub base_iface: gobject::GTypeInterface,
2977    pub insert_text:
2978        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
2979    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2980    pub changed: Option<unsafe extern "C" fn(*mut GtkEditable)>,
2981    pub get_text: Option<unsafe extern "C" fn(*mut GtkEditable) -> *const c_char>,
2982    pub do_insert_text:
2983        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
2984    pub do_delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2985    pub get_selection_bounds:
2986        Option<unsafe extern "C" fn(*mut GtkEditable, *mut c_int, *mut c_int) -> gboolean>,
2987    pub set_selection_bounds: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2988    pub get_delegate: Option<unsafe extern "C" fn(*mut GtkEditable) -> *mut GtkEditable>,
2989}
2990
2991impl ::std::fmt::Debug for GtkEditableInterface {
2992    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2993        f.debug_struct(&format!("GtkEditableInterface @ {self:p}"))
2994            .field("base_iface", &self.base_iface)
2995            .field("insert_text", &self.insert_text)
2996            .field("delete_text", &self.delete_text)
2997            .field("changed", &self.changed)
2998            .field("get_text", &self.get_text)
2999            .field("do_insert_text", &self.do_insert_text)
3000            .field("do_delete_text", &self.do_delete_text)
3001            .field("get_selection_bounds", &self.get_selection_bounds)
3002            .field("set_selection_bounds", &self.set_selection_bounds)
3003            .field("get_delegate", &self.get_delegate)
3004            .finish()
3005    }
3006}
3007
3008#[derive(Copy, Clone)]
3009#[repr(C)]
3010pub struct GtkEditableLabelClass {
3011    pub parent_class: GtkWidgetClass,
3012}
3013
3014impl ::std::fmt::Debug for GtkEditableLabelClass {
3015    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3016        f.debug_struct(&format!("GtkEditableLabelClass @ {self:p}"))
3017            .field("parent_class", &self.parent_class)
3018            .finish()
3019    }
3020}
3021
3022#[repr(C)]
3023#[allow(dead_code)]
3024pub struct _GtkEmojiChooserClass {
3025    _data: [u8; 0],
3026    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3027}
3028
3029pub type GtkEmojiChooserClass = _GtkEmojiChooserClass;
3030
3031#[derive(Copy, Clone)]
3032#[repr(C)]
3033pub struct GtkEntryBufferClass {
3034    pub parent_class: gobject::GObjectClass,
3035    pub inserted_text:
3036        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint)>,
3037    pub deleted_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint)>,
3038    pub get_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, *mut size_t) -> *const c_char>,
3039    pub get_length: Option<unsafe extern "C" fn(*mut GtkEntryBuffer) -> c_uint>,
3040    pub insert_text:
3041        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint) -> c_uint>,
3042    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint) -> c_uint>,
3043    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3044    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3045    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3046    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3047    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3048    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3049    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3050    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3051}
3052
3053impl ::std::fmt::Debug for GtkEntryBufferClass {
3054    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3055        f.debug_struct(&format!("GtkEntryBufferClass @ {self:p}"))
3056            .field("parent_class", &self.parent_class)
3057            .field("inserted_text", &self.inserted_text)
3058            .field("deleted_text", &self.deleted_text)
3059            .field("get_text", &self.get_text)
3060            .field("get_length", &self.get_length)
3061            .field("insert_text", &self.insert_text)
3062            .field("delete_text", &self.delete_text)
3063            .field("_gtk_reserved1", &self._gtk_reserved1)
3064            .field("_gtk_reserved2", &self._gtk_reserved2)
3065            .field("_gtk_reserved3", &self._gtk_reserved3)
3066            .field("_gtk_reserved4", &self._gtk_reserved4)
3067            .field("_gtk_reserved5", &self._gtk_reserved5)
3068            .field("_gtk_reserved6", &self._gtk_reserved6)
3069            .field("_gtk_reserved7", &self._gtk_reserved7)
3070            .field("_gtk_reserved8", &self._gtk_reserved8)
3071            .finish()
3072    }
3073}
3074
3075#[derive(Copy, Clone)]
3076#[repr(C)]
3077pub struct GtkEntryClass {
3078    pub parent_class: GtkWidgetClass,
3079    pub activate: Option<unsafe extern "C" fn(*mut GtkEntry)>,
3080    pub padding: [gpointer; 8],
3081}
3082
3083impl ::std::fmt::Debug for GtkEntryClass {
3084    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3085        f.debug_struct(&format!("GtkEntryClass @ {self:p}"))
3086            .field("parent_class", &self.parent_class)
3087            .field("activate", &self.activate)
3088            .finish()
3089    }
3090}
3091
3092#[repr(C)]
3093#[allow(dead_code)]
3094pub struct _GtkEventControllerClass {
3095    _data: [u8; 0],
3096    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3097}
3098
3099pub type GtkEventControllerClass = _GtkEventControllerClass;
3100
3101#[repr(C)]
3102#[allow(dead_code)]
3103pub struct _GtkEventControllerFocusClass {
3104    _data: [u8; 0],
3105    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3106}
3107
3108pub type GtkEventControllerFocusClass = _GtkEventControllerFocusClass;
3109
3110#[repr(C)]
3111#[allow(dead_code)]
3112pub struct _GtkEventControllerKeyClass {
3113    _data: [u8; 0],
3114    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3115}
3116
3117pub type GtkEventControllerKeyClass = _GtkEventControllerKeyClass;
3118
3119#[repr(C)]
3120#[allow(dead_code)]
3121pub struct _GtkEventControllerLegacyClass {
3122    _data: [u8; 0],
3123    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3124}
3125
3126pub type GtkEventControllerLegacyClass = _GtkEventControllerLegacyClass;
3127
3128#[repr(C)]
3129#[allow(dead_code)]
3130pub struct _GtkEventControllerMotionClass {
3131    _data: [u8; 0],
3132    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3133}
3134
3135pub type GtkEventControllerMotionClass = _GtkEventControllerMotionClass;
3136
3137#[repr(C)]
3138#[allow(dead_code)]
3139pub struct _GtkEventControllerScrollClass {
3140    _data: [u8; 0],
3141    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3142}
3143
3144pub type GtkEventControllerScrollClass = _GtkEventControllerScrollClass;
3145
3146#[repr(C)]
3147#[allow(dead_code)]
3148pub struct _GtkEveryFilterClass {
3149    _data: [u8; 0],
3150    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3151}
3152
3153pub type GtkEveryFilterClass = _GtkEveryFilterClass;
3154
3155#[repr(C)]
3156#[allow(dead_code)]
3157pub struct GtkExpressionWatch {
3158    _data: [u8; 0],
3159    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3160}
3161
3162impl ::std::fmt::Debug for GtkExpressionWatch {
3163    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3164        f.debug_struct(&format!("GtkExpressionWatch @ {self:p}"))
3165            .finish()
3166    }
3167}
3168
3169#[derive(Copy, Clone)]
3170#[repr(C)]
3171pub struct GtkFileChooserNativeClass {
3172    pub parent_class: GtkNativeDialogClass,
3173}
3174
3175impl ::std::fmt::Debug for GtkFileChooserNativeClass {
3176    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3177        f.debug_struct(&format!("GtkFileChooserNativeClass @ {self:p}"))
3178            .field("parent_class", &self.parent_class)
3179            .finish()
3180    }
3181}
3182
3183#[derive(Copy, Clone)]
3184#[repr(C)]
3185pub struct GtkFileDialogClass {
3186    pub parent_class: gobject::GObjectClass,
3187}
3188
3189impl ::std::fmt::Debug for GtkFileDialogClass {
3190    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3191        f.debug_struct(&format!("GtkFileDialogClass @ {self:p}"))
3192            .field("parent_class", &self.parent_class)
3193            .finish()
3194    }
3195}
3196
3197#[derive(Copy, Clone)]
3198#[repr(C)]
3199pub struct GtkFileLauncherClass {
3200    pub parent_class: gobject::GObjectClass,
3201}
3202
3203impl ::std::fmt::Debug for GtkFileLauncherClass {
3204    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3205        f.debug_struct(&format!("GtkFileLauncherClass @ {self:p}"))
3206            .field("parent_class", &self.parent_class)
3207            .finish()
3208    }
3209}
3210
3211#[derive(Copy, Clone)]
3212#[repr(C)]
3213pub struct GtkFilterClass {
3214    pub parent_class: gobject::GObjectClass,
3215    pub match_: Option<unsafe extern "C" fn(*mut GtkFilter, *mut gobject::GObject) -> gboolean>,
3216    pub get_strictness: Option<unsafe extern "C" fn(*mut GtkFilter) -> GtkFilterMatch>,
3217    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3218    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3219    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3220    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3221    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3222    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3223    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3224    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3225}
3226
3227impl ::std::fmt::Debug for GtkFilterClass {
3228    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3229        f.debug_struct(&format!("GtkFilterClass @ {self:p}"))
3230            .field("parent_class", &self.parent_class)
3231            .field("match_", &self.match_)
3232            .field("get_strictness", &self.get_strictness)
3233            .field("_gtk_reserved1", &self._gtk_reserved1)
3234            .field("_gtk_reserved2", &self._gtk_reserved2)
3235            .field("_gtk_reserved3", &self._gtk_reserved3)
3236            .field("_gtk_reserved4", &self._gtk_reserved4)
3237            .field("_gtk_reserved5", &self._gtk_reserved5)
3238            .field("_gtk_reserved6", &self._gtk_reserved6)
3239            .field("_gtk_reserved7", &self._gtk_reserved7)
3240            .field("_gtk_reserved8", &self._gtk_reserved8)
3241            .finish()
3242    }
3243}
3244
3245#[derive(Copy, Clone)]
3246#[repr(C)]
3247pub struct GtkFilterListModelClass {
3248    pub parent_class: gobject::GObjectClass,
3249}
3250
3251impl ::std::fmt::Debug for GtkFilterListModelClass {
3252    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3253        f.debug_struct(&format!("GtkFilterListModelClass @ {self:p}"))
3254            .field("parent_class", &self.parent_class)
3255            .finish()
3256    }
3257}
3258
3259#[derive(Copy, Clone)]
3260#[repr(C)]
3261pub struct GtkFixedClass {
3262    pub parent_class: GtkWidgetClass,
3263    pub padding: [gpointer; 8],
3264}
3265
3266impl ::std::fmt::Debug for GtkFixedClass {
3267    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3268        f.debug_struct(&format!("GtkFixedClass @ {self:p}"))
3269            .field("parent_class", &self.parent_class)
3270            .finish()
3271    }
3272}
3273
3274#[derive(Copy, Clone)]
3275#[repr(C)]
3276pub struct GtkFixedLayoutChildClass {
3277    pub parent_class: GtkLayoutChildClass,
3278}
3279
3280impl ::std::fmt::Debug for GtkFixedLayoutChildClass {
3281    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3282        f.debug_struct(&format!("GtkFixedLayoutChildClass @ {self:p}"))
3283            .field("parent_class", &self.parent_class)
3284            .finish()
3285    }
3286}
3287
3288#[derive(Copy, Clone)]
3289#[repr(C)]
3290pub struct GtkFixedLayoutClass {
3291    pub parent_class: GtkLayoutManagerClass,
3292}
3293
3294impl ::std::fmt::Debug for GtkFixedLayoutClass {
3295    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3296        f.debug_struct(&format!("GtkFixedLayoutClass @ {self:p}"))
3297            .field("parent_class", &self.parent_class)
3298            .finish()
3299    }
3300}
3301
3302#[derive(Copy, Clone)]
3303#[repr(C)]
3304pub struct GtkFlattenListModelClass {
3305    pub parent_class: gobject::GObjectClass,
3306}
3307
3308impl ::std::fmt::Debug for GtkFlattenListModelClass {
3309    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3310        f.debug_struct(&format!("GtkFlattenListModelClass @ {self:p}"))
3311            .field("parent_class", &self.parent_class)
3312            .finish()
3313    }
3314}
3315
3316#[derive(Copy, Clone)]
3317#[repr(C)]
3318pub struct GtkFlowBoxChildClass {
3319    pub parent_class: GtkWidgetClass,
3320    pub activate: Option<unsafe extern "C" fn(*mut GtkFlowBoxChild)>,
3321    pub padding: [gpointer; 8],
3322}
3323
3324impl ::std::fmt::Debug for GtkFlowBoxChildClass {
3325    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3326        f.debug_struct(&format!("GtkFlowBoxChildClass @ {self:p}"))
3327            .field("activate", &self.activate)
3328            .finish()
3329    }
3330}
3331
3332#[derive(Copy, Clone)]
3333#[repr(C)]
3334pub struct GtkFontChooserIface {
3335    pub base_iface: gobject::GTypeInterface,
3336    pub get_font_family:
3337        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFamily>,
3338    pub get_font_face:
3339        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFace>,
3340    pub get_font_size: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> c_int>,
3341    pub set_filter_func: Option<
3342        unsafe extern "C" fn(
3343            *mut GtkFontChooser,
3344            GtkFontFilterFunc,
3345            gpointer,
3346            glib::GDestroyNotify,
3347        ),
3348    >,
3349    pub font_activated: Option<unsafe extern "C" fn(*mut GtkFontChooser, *const c_char)>,
3350    pub set_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser, *mut pango::PangoFontMap)>,
3351    pub get_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontMap>,
3352    pub padding: [gpointer; 10],
3353}
3354
3355impl ::std::fmt::Debug for GtkFontChooserIface {
3356    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3357        f.debug_struct(&format!("GtkFontChooserIface @ {self:p}"))
3358            .field("base_iface", &self.base_iface)
3359            .field("get_font_family", &self.get_font_family)
3360            .field("get_font_face", &self.get_font_face)
3361            .field("get_font_size", &self.get_font_size)
3362            .field("set_filter_func", &self.set_filter_func)
3363            .field("font_activated", &self.font_activated)
3364            .field("set_font_map", &self.set_font_map)
3365            .field("get_font_map", &self.get_font_map)
3366            .finish()
3367    }
3368}
3369
3370#[derive(Copy, Clone)]
3371#[repr(C)]
3372pub struct GtkFontDialogButtonClass {
3373    pub parent_class: GtkWidgetClass,
3374}
3375
3376impl ::std::fmt::Debug for GtkFontDialogButtonClass {
3377    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3378        f.debug_struct(&format!("GtkFontDialogButtonClass @ {self:p}"))
3379            .field("parent_class", &self.parent_class)
3380            .finish()
3381    }
3382}
3383
3384#[derive(Copy, Clone)]
3385#[repr(C)]
3386pub struct GtkFontDialogClass {
3387    pub parent_class: gobject::GObjectClass,
3388}
3389
3390impl ::std::fmt::Debug for GtkFontDialogClass {
3391    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3392        f.debug_struct(&format!("GtkFontDialogClass @ {self:p}"))
3393            .field("parent_class", &self.parent_class)
3394            .finish()
3395    }
3396}
3397
3398#[derive(Copy, Clone)]
3399#[repr(C)]
3400pub struct GtkFrameClass {
3401    pub parent_class: GtkWidgetClass,
3402    pub compute_child_allocation: Option<unsafe extern "C" fn(*mut GtkFrame, *mut GtkAllocation)>,
3403    pub padding: [gpointer; 8],
3404}
3405
3406impl ::std::fmt::Debug for GtkFrameClass {
3407    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3408        f.debug_struct(&format!("GtkFrameClass @ {self:p}"))
3409            .field("parent_class", &self.parent_class)
3410            .field("compute_child_allocation", &self.compute_child_allocation)
3411            .finish()
3412    }
3413}
3414
3415#[derive(Copy, Clone)]
3416#[repr(C)]
3417pub struct GtkGLAreaClass {
3418    pub parent_class: GtkWidgetClass,
3419    pub render: Option<unsafe extern "C" fn(*mut GtkGLArea, *mut gdk::GdkGLContext) -> gboolean>,
3420    pub resize: Option<unsafe extern "C" fn(*mut GtkGLArea, c_int, c_int)>,
3421    pub create_context: Option<unsafe extern "C" fn(*mut GtkGLArea) -> *mut gdk::GdkGLContext>,
3422    pub _padding: [gpointer; 8],
3423}
3424
3425impl ::std::fmt::Debug for GtkGLAreaClass {
3426    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3427        f.debug_struct(&format!("GtkGLAreaClass @ {self:p}"))
3428            .field("render", &self.render)
3429            .field("resize", &self.resize)
3430            .field("create_context", &self.create_context)
3431            .finish()
3432    }
3433}
3434
3435#[repr(C)]
3436#[allow(dead_code)]
3437pub struct _GtkGestureClass {
3438    _data: [u8; 0],
3439    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3440}
3441
3442pub type GtkGestureClass = _GtkGestureClass;
3443
3444#[repr(C)]
3445#[allow(dead_code)]
3446pub struct _GtkGestureClickClass {
3447    _data: [u8; 0],
3448    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3449}
3450
3451pub type GtkGestureClickClass = _GtkGestureClickClass;
3452
3453#[repr(C)]
3454#[allow(dead_code)]
3455pub struct _GtkGestureDragClass {
3456    _data: [u8; 0],
3457    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3458}
3459
3460pub type GtkGestureDragClass = _GtkGestureDragClass;
3461
3462#[repr(C)]
3463#[allow(dead_code)]
3464pub struct _GtkGestureLongPressClass {
3465    _data: [u8; 0],
3466    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3467}
3468
3469pub type GtkGestureLongPressClass = _GtkGestureLongPressClass;
3470
3471#[repr(C)]
3472#[allow(dead_code)]
3473pub struct _GtkGesturePanClass {
3474    _data: [u8; 0],
3475    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3476}
3477
3478pub type GtkGesturePanClass = _GtkGesturePanClass;
3479
3480#[repr(C)]
3481#[allow(dead_code)]
3482pub struct _GtkGestureRotateClass {
3483    _data: [u8; 0],
3484    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3485}
3486
3487pub type GtkGestureRotateClass = _GtkGestureRotateClass;
3488
3489#[repr(C)]
3490#[allow(dead_code)]
3491pub struct _GtkGestureSingleClass {
3492    _data: [u8; 0],
3493    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3494}
3495
3496pub type GtkGestureSingleClass = _GtkGestureSingleClass;
3497
3498#[repr(C)]
3499#[allow(dead_code)]
3500pub struct _GtkGestureStylusClass {
3501    _data: [u8; 0],
3502    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3503}
3504
3505pub type GtkGestureStylusClass = _GtkGestureStylusClass;
3506
3507#[repr(C)]
3508#[allow(dead_code)]
3509pub struct _GtkGestureSwipeClass {
3510    _data: [u8; 0],
3511    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3512}
3513
3514pub type GtkGestureSwipeClass = _GtkGestureSwipeClass;
3515
3516#[repr(C)]
3517#[allow(dead_code)]
3518pub struct _GtkGestureZoomClass {
3519    _data: [u8; 0],
3520    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3521}
3522
3523pub type GtkGestureZoomClass = _GtkGestureZoomClass;
3524
3525#[derive(Copy, Clone)]
3526#[repr(C)]
3527pub struct GtkGraphicsOffloadClass {
3528    pub parent_class: GtkWidgetClass,
3529}
3530
3531impl ::std::fmt::Debug for GtkGraphicsOffloadClass {
3532    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3533        f.debug_struct(&format!("GtkGraphicsOffloadClass @ {self:p}"))
3534            .field("parent_class", &self.parent_class)
3535            .finish()
3536    }
3537}
3538
3539#[derive(Copy, Clone)]
3540#[repr(C)]
3541pub struct GtkGridClass {
3542    pub parent_class: GtkWidgetClass,
3543    pub padding: [gpointer; 8],
3544}
3545
3546impl ::std::fmt::Debug for GtkGridClass {
3547    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3548        f.debug_struct(&format!("GtkGridClass @ {self:p}"))
3549            .field("parent_class", &self.parent_class)
3550            .finish()
3551    }
3552}
3553
3554#[derive(Copy, Clone)]
3555#[repr(C)]
3556pub struct GtkGridLayoutChildClass {
3557    pub parent_class: GtkLayoutChildClass,
3558}
3559
3560impl ::std::fmt::Debug for GtkGridLayoutChildClass {
3561    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3562        f.debug_struct(&format!("GtkGridLayoutChildClass @ {self:p}"))
3563            .field("parent_class", &self.parent_class)
3564            .finish()
3565    }
3566}
3567
3568#[derive(Copy, Clone)]
3569#[repr(C)]
3570pub struct GtkGridLayoutClass {
3571    pub parent_class: GtkLayoutManagerClass,
3572}
3573
3574impl ::std::fmt::Debug for GtkGridLayoutClass {
3575    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3576        f.debug_struct(&format!("GtkGridLayoutClass @ {self:p}"))
3577            .field("parent_class", &self.parent_class)
3578            .finish()
3579    }
3580}
3581
3582#[repr(C)]
3583#[allow(dead_code)]
3584pub struct _GtkGridViewClass {
3585    _data: [u8; 0],
3586    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3587}
3588
3589pub type GtkGridViewClass = _GtkGridViewClass;
3590
3591#[derive(Copy, Clone)]
3592#[repr(C)]
3593pub struct GtkIMContextClass {
3594    pub parent_class: gobject::GObjectClass,
3595    pub preedit_start: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3596    pub preedit_end: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3597    pub preedit_changed: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3598    pub commit: Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char)>,
3599    pub retrieve_surrounding: Option<unsafe extern "C" fn(*mut GtkIMContext) -> gboolean>,
3600    pub delete_surrounding:
3601        Option<unsafe extern "C" fn(*mut GtkIMContext, c_int, c_int) -> gboolean>,
3602    pub set_client_widget: Option<unsafe extern "C" fn(*mut GtkIMContext, *mut GtkWidget)>,
3603    pub get_preedit_string: Option<
3604        unsafe extern "C" fn(
3605            *mut GtkIMContext,
3606            *mut *mut c_char,
3607            *mut *mut pango::PangoAttrList,
3608            *mut c_int,
3609        ),
3610    >,
3611    pub filter_keypress:
3612        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEvent) -> gboolean>,
3613    pub focus_in: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3614    pub focus_out: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3615    pub reset: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3616    pub set_cursor_location:
3617        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkRectangle)>,
3618    pub set_use_preedit: Option<unsafe extern "C" fn(*mut GtkIMContext, gboolean)>,
3619    pub set_surrounding:
3620        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int)>,
3621    pub get_surrounding:
3622        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut *mut c_char, *mut c_int) -> gboolean>,
3623    pub set_surrounding_with_selection:
3624        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int, c_int)>,
3625    pub get_surrounding_with_selection: Option<
3626        unsafe extern "C" fn(
3627            *mut GtkIMContext,
3628            *mut *mut c_char,
3629            *mut c_int,
3630            *mut c_int,
3631        ) -> gboolean,
3632    >,
3633    pub activate_osk: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3634    pub activate_osk_with_event:
3635        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEvent) -> gboolean>,
3636    pub invalid_composition:
3637        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char) -> gboolean>,
3638    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3639    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3640}
3641
3642impl ::std::fmt::Debug for GtkIMContextClass {
3643    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3644        f.debug_struct(&format!("GtkIMContextClass @ {self:p}"))
3645            .field("preedit_start", &self.preedit_start)
3646            .field("preedit_end", &self.preedit_end)
3647            .field("preedit_changed", &self.preedit_changed)
3648            .field("commit", &self.commit)
3649            .field("retrieve_surrounding", &self.retrieve_surrounding)
3650            .field("delete_surrounding", &self.delete_surrounding)
3651            .field("set_client_widget", &self.set_client_widget)
3652            .field("get_preedit_string", &self.get_preedit_string)
3653            .field("filter_keypress", &self.filter_keypress)
3654            .field("focus_in", &self.focus_in)
3655            .field("focus_out", &self.focus_out)
3656            .field("reset", &self.reset)
3657            .field("set_cursor_location", &self.set_cursor_location)
3658            .field("set_use_preedit", &self.set_use_preedit)
3659            .field("set_surrounding", &self.set_surrounding)
3660            .field("get_surrounding", &self.get_surrounding)
3661            .field(
3662                "set_surrounding_with_selection",
3663                &self.set_surrounding_with_selection,
3664            )
3665            .field(
3666                "get_surrounding_with_selection",
3667                &self.get_surrounding_with_selection,
3668            )
3669            .field("activate_osk", &self.activate_osk)
3670            .field("activate_osk_with_event", &self.activate_osk_with_event)
3671            .field("invalid_composition", &self.invalid_composition)
3672            .field("_gtk_reserved3", &self._gtk_reserved3)
3673            .field("_gtk_reserved4", &self._gtk_reserved4)
3674            .finish()
3675    }
3676}
3677
3678#[derive(Copy, Clone)]
3679#[repr(C)]
3680pub struct GtkIMContextSimpleClass {
3681    pub parent_class: GtkIMContextClass,
3682}
3683
3684impl ::std::fmt::Debug for GtkIMContextSimpleClass {
3685    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3686        f.debug_struct(&format!("GtkIMContextSimpleClass @ {self:p}"))
3687            .field("parent_class", &self.parent_class)
3688            .finish()
3689    }
3690}
3691
3692#[repr(C)]
3693#[allow(dead_code)]
3694pub struct _GtkIMContextSimplePrivate {
3695    _data: [u8; 0],
3696    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3697}
3698
3699pub type GtkIMContextSimplePrivate = _GtkIMContextSimplePrivate;
3700
3701#[derive(Copy, Clone)]
3702#[repr(C)]
3703pub struct GtkIMMulticontextClass {
3704    pub parent_class: GtkIMContextClass,
3705    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3706    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3707    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3708    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3709}
3710
3711impl ::std::fmt::Debug for GtkIMMulticontextClass {
3712    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3713        f.debug_struct(&format!("GtkIMMulticontextClass @ {self:p}"))
3714            .field("parent_class", &self.parent_class)
3715            .field("_gtk_reserved1", &self._gtk_reserved1)
3716            .field("_gtk_reserved2", &self._gtk_reserved2)
3717            .field("_gtk_reserved3", &self._gtk_reserved3)
3718            .field("_gtk_reserved4", &self._gtk_reserved4)
3719            .finish()
3720    }
3721}
3722
3723#[repr(C)]
3724#[allow(dead_code)]
3725pub struct _GtkIMMulticontextPrivate {
3726    _data: [u8; 0],
3727    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3728}
3729
3730pub type GtkIMMulticontextPrivate = _GtkIMMulticontextPrivate;
3731
3732#[derive(Copy, Clone)]
3733#[repr(C)]
3734pub struct GtkIconPaintableClass {
3735    pub parent_class: gobject::GObjectClass,
3736}
3737
3738impl ::std::fmt::Debug for GtkIconPaintableClass {
3739    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3740        f.debug_struct(&format!("GtkIconPaintableClass @ {self:p}"))
3741            .field("parent_class", &self.parent_class)
3742            .finish()
3743    }
3744}
3745
3746#[derive(Copy, Clone)]
3747#[repr(C)]
3748pub struct GtkInscriptionClass {
3749    pub parent_class: GtkWidgetClass,
3750}
3751
3752impl ::std::fmt::Debug for GtkInscriptionClass {
3753    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3754        f.debug_struct(&format!("GtkInscriptionClass @ {self:p}"))
3755            .field("parent_class", &self.parent_class)
3756            .finish()
3757    }
3758}
3759
3760#[repr(C)]
3761#[allow(dead_code)]
3762pub struct _GtkKeyvalTriggerClass {
3763    _data: [u8; 0],
3764    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3765}
3766
3767pub type GtkKeyvalTriggerClass = _GtkKeyvalTriggerClass;
3768
3769#[derive(Copy, Clone)]
3770#[repr(C)]
3771pub struct GtkLayoutChildClass {
3772    pub parent_class: gobject::GObjectClass,
3773}
3774
3775impl ::std::fmt::Debug for GtkLayoutChildClass {
3776    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3777        f.debug_struct(&format!("GtkLayoutChildClass @ {self:p}"))
3778            .finish()
3779    }
3780}
3781
3782#[derive(Copy, Clone)]
3783#[repr(C)]
3784pub struct GtkLayoutManagerClass {
3785    pub parent_class: gobject::GObjectClass,
3786    pub get_request_mode:
3787        Option<unsafe extern "C" fn(*mut GtkLayoutManager, *mut GtkWidget) -> GtkSizeRequestMode>,
3788    pub measure: Option<
3789        unsafe extern "C" fn(
3790            *mut GtkLayoutManager,
3791            *mut GtkWidget,
3792            GtkOrientation,
3793            c_int,
3794            *mut c_int,
3795            *mut c_int,
3796            *mut c_int,
3797            *mut c_int,
3798        ),
3799    >,
3800    pub allocate:
3801        Option<unsafe extern "C" fn(*mut GtkLayoutManager, *mut GtkWidget, c_int, c_int, c_int)>,
3802    pub layout_child_type: GType,
3803    pub create_layout_child: Option<
3804        unsafe extern "C" fn(
3805            *mut GtkLayoutManager,
3806            *mut GtkWidget,
3807            *mut GtkWidget,
3808        ) -> *mut GtkLayoutChild,
3809    >,
3810    pub root: Option<unsafe extern "C" fn(*mut GtkLayoutManager)>,
3811    pub unroot: Option<unsafe extern "C" fn(*mut GtkLayoutManager)>,
3812    pub _padding: [gpointer; 16],
3813}
3814
3815impl ::std::fmt::Debug for GtkLayoutManagerClass {
3816    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3817        f.debug_struct(&format!("GtkLayoutManagerClass @ {self:p}"))
3818            .field("get_request_mode", &self.get_request_mode)
3819            .field("measure", &self.measure)
3820            .field("allocate", &self.allocate)
3821            .field("layout_child_type", &self.layout_child_type)
3822            .field("create_layout_child", &self.create_layout_child)
3823            .field("root", &self.root)
3824            .field("unroot", &self.unroot)
3825            .finish()
3826    }
3827}
3828
3829#[repr(C)]
3830#[allow(dead_code)]
3831pub struct _GtkListBaseClass {
3832    _data: [u8; 0],
3833    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3834}
3835
3836pub type GtkListBaseClass = _GtkListBaseClass;
3837
3838#[derive(Copy, Clone)]
3839#[repr(C)]
3840pub struct GtkListBoxRowClass {
3841    pub parent_class: GtkWidgetClass,
3842    pub activate: Option<unsafe extern "C" fn(*mut GtkListBoxRow)>,
3843    pub padding: [gpointer; 8],
3844}
3845
3846impl ::std::fmt::Debug for GtkListBoxRowClass {
3847    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3848        f.debug_struct(&format!("GtkListBoxRowClass @ {self:p}"))
3849            .field("parent_class", &self.parent_class)
3850            .field("activate", &self.activate)
3851            .finish()
3852    }
3853}
3854
3855#[repr(C)]
3856#[allow(dead_code)]
3857pub struct _GtkListHeaderClass {
3858    _data: [u8; 0],
3859    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3860}
3861
3862pub type GtkListHeaderClass = _GtkListHeaderClass;
3863
3864#[repr(C)]
3865#[allow(dead_code)]
3866pub struct _GtkListItemClass {
3867    _data: [u8; 0],
3868    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3869}
3870
3871pub type GtkListItemClass = _GtkListItemClass;
3872
3873#[repr(C)]
3874#[allow(dead_code)]
3875pub struct _GtkListItemFactoryClass {
3876    _data: [u8; 0],
3877    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3878}
3879
3880pub type GtkListItemFactoryClass = _GtkListItemFactoryClass;
3881
3882#[derive(Copy, Clone)]
3883#[repr(C)]
3884pub struct GtkListStoreClass {
3885    pub parent_class: gobject::GObjectClass,
3886    pub padding: [gpointer; 8],
3887}
3888
3889impl ::std::fmt::Debug for GtkListStoreClass {
3890    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3891        f.debug_struct(&format!("GtkListStoreClass @ {self:p}"))
3892            .field("parent_class", &self.parent_class)
3893            .finish()
3894    }
3895}
3896
3897#[repr(C)]
3898#[allow(dead_code)]
3899pub struct _GtkListStorePrivate {
3900    _data: [u8; 0],
3901    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3902}
3903
3904pub type GtkListStorePrivate = _GtkListStorePrivate;
3905
3906#[repr(C)]
3907#[allow(dead_code)]
3908pub struct _GtkListViewClass {
3909    _data: [u8; 0],
3910    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3911}
3912
3913pub type GtkListViewClass = _GtkListViewClass;
3914
3915#[derive(Copy, Clone)]
3916#[repr(C)]
3917pub struct GtkMapListModelClass {
3918    pub parent_class: gobject::GObjectClass,
3919}
3920
3921impl ::std::fmt::Debug for GtkMapListModelClass {
3922    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3923        f.debug_struct(&format!("GtkMapListModelClass @ {self:p}"))
3924            .field("parent_class", &self.parent_class)
3925            .finish()
3926    }
3927}
3928
3929#[derive(Copy, Clone)]
3930#[repr(C)]
3931pub struct GtkMediaControlsClass {
3932    pub parent_class: GtkWidgetClass,
3933}
3934
3935impl ::std::fmt::Debug for GtkMediaControlsClass {
3936    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3937        f.debug_struct(&format!("GtkMediaControlsClass @ {self:p}"))
3938            .field("parent_class", &self.parent_class)
3939            .finish()
3940    }
3941}
3942
3943#[derive(Copy, Clone)]
3944#[repr(C)]
3945pub struct GtkMediaFileClass {
3946    pub parent_class: GtkMediaStreamClass,
3947    pub open: Option<unsafe extern "C" fn(*mut GtkMediaFile)>,
3948    pub close: Option<unsafe extern "C" fn(*mut GtkMediaFile)>,
3949    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3950    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3951    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3952    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3953}
3954
3955impl ::std::fmt::Debug for GtkMediaFileClass {
3956    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3957        f.debug_struct(&format!("GtkMediaFileClass @ {self:p}"))
3958            .field("parent_class", &self.parent_class)
3959            .field("open", &self.open)
3960            .field("close", &self.close)
3961            .field("_gtk_reserved1", &self._gtk_reserved1)
3962            .field("_gtk_reserved2", &self._gtk_reserved2)
3963            .field("_gtk_reserved3", &self._gtk_reserved3)
3964            .field("_gtk_reserved4", &self._gtk_reserved4)
3965            .finish()
3966    }
3967}
3968
3969#[derive(Copy, Clone)]
3970#[repr(C)]
3971pub struct GtkMediaStreamClass {
3972    pub parent_class: gobject::GObjectClass,
3973    pub play: Option<unsafe extern "C" fn(*mut GtkMediaStream) -> gboolean>,
3974    pub pause: Option<unsafe extern "C" fn(*mut GtkMediaStream)>,
3975    pub seek: Option<unsafe extern "C" fn(*mut GtkMediaStream, i64)>,
3976    pub update_audio: Option<unsafe extern "C" fn(*mut GtkMediaStream, gboolean, c_double)>,
3977    pub realize: Option<unsafe extern "C" fn(*mut GtkMediaStream, *mut gdk::GdkSurface)>,
3978    pub unrealize: Option<unsafe extern "C" fn(*mut GtkMediaStream, *mut gdk::GdkSurface)>,
3979    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3980    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3981    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3982    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3983    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3984    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3985    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3986    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3987}
3988
3989impl ::std::fmt::Debug for GtkMediaStreamClass {
3990    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3991        f.debug_struct(&format!("GtkMediaStreamClass @ {self:p}"))
3992            .field("parent_class", &self.parent_class)
3993            .field("play", &self.play)
3994            .field("pause", &self.pause)
3995            .field("seek", &self.seek)
3996            .field("update_audio", &self.update_audio)
3997            .field("realize", &self.realize)
3998            .field("unrealize", &self.unrealize)
3999            .field("_gtk_reserved1", &self._gtk_reserved1)
4000            .field("_gtk_reserved2", &self._gtk_reserved2)
4001            .field("_gtk_reserved3", &self._gtk_reserved3)
4002            .field("_gtk_reserved4", &self._gtk_reserved4)
4003            .field("_gtk_reserved5", &self._gtk_reserved5)
4004            .field("_gtk_reserved6", &self._gtk_reserved6)
4005            .field("_gtk_reserved7", &self._gtk_reserved7)
4006            .field("_gtk_reserved8", &self._gtk_reserved8)
4007            .finish()
4008    }
4009}
4010
4011#[repr(C)]
4012#[allow(dead_code)]
4013pub struct _GtkMessageDialogClass {
4014    _data: [u8; 0],
4015    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4016}
4017
4018pub type GtkMessageDialogClass = _GtkMessageDialogClass;
4019
4020#[repr(C)]
4021#[allow(dead_code)]
4022pub struct _GtkMnemonicActionClass {
4023    _data: [u8; 0],
4024    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4025}
4026
4027pub type GtkMnemonicActionClass = _GtkMnemonicActionClass;
4028
4029#[repr(C)]
4030#[allow(dead_code)]
4031pub struct _GtkMnemonicTriggerClass {
4032    _data: [u8; 0],
4033    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4034}
4035
4036pub type GtkMnemonicTriggerClass = _GtkMnemonicTriggerClass;
4037
4038#[derive(Copy, Clone)]
4039#[repr(C)]
4040pub struct GtkMountOperationClass {
4041    pub parent_class: gio::GMountOperationClass,
4042    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4043    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4044    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4045    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4046}
4047
4048impl ::std::fmt::Debug for GtkMountOperationClass {
4049    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4050        f.debug_struct(&format!("GtkMountOperationClass @ {self:p}"))
4051            .field("parent_class", &self.parent_class)
4052            .field("_gtk_reserved1", &self._gtk_reserved1)
4053            .field("_gtk_reserved2", &self._gtk_reserved2)
4054            .field("_gtk_reserved3", &self._gtk_reserved3)
4055            .field("_gtk_reserved4", &self._gtk_reserved4)
4056            .finish()
4057    }
4058}
4059
4060#[repr(C)]
4061#[allow(dead_code)]
4062pub struct _GtkMountOperationPrivate {
4063    _data: [u8; 0],
4064    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4065}
4066
4067pub type GtkMountOperationPrivate = _GtkMountOperationPrivate;
4068
4069#[repr(C)]
4070#[allow(dead_code)]
4071pub struct _GtkMultiFilterClass {
4072    _data: [u8; 0],
4073    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4074}
4075
4076pub type GtkMultiFilterClass = _GtkMultiFilterClass;
4077
4078#[derive(Copy, Clone)]
4079#[repr(C)]
4080pub struct GtkMultiSelectionClass {
4081    pub parent_class: gobject::GObjectClass,
4082}
4083
4084impl ::std::fmt::Debug for GtkMultiSelectionClass {
4085    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4086        f.debug_struct(&format!("GtkMultiSelectionClass @ {self:p}"))
4087            .field("parent_class", &self.parent_class)
4088            .finish()
4089    }
4090}
4091
4092#[derive(Copy, Clone)]
4093#[repr(C)]
4094pub struct GtkMultiSorterClass {
4095    pub parent_class: GtkSorterClass,
4096}
4097
4098impl ::std::fmt::Debug for GtkMultiSorterClass {
4099    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4100        f.debug_struct(&format!("GtkMultiSorterClass @ {self:p}"))
4101            .field("parent_class", &self.parent_class)
4102            .finish()
4103    }
4104}
4105
4106#[repr(C)]
4107#[allow(dead_code)]
4108pub struct _GtkNamedActionClass {
4109    _data: [u8; 0],
4110    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4111}
4112
4113pub type GtkNamedActionClass = _GtkNamedActionClass;
4114
4115#[derive(Copy, Clone)]
4116#[repr(C)]
4117pub struct GtkNativeDialogClass {
4118    pub parent_class: gobject::GObjectClass,
4119    pub response: Option<unsafe extern "C" fn(*mut GtkNativeDialog, GtkResponseType)>,
4120    pub show: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
4121    pub hide: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
4122    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4123    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4124    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4125    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4126}
4127
4128impl ::std::fmt::Debug for GtkNativeDialogClass {
4129    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4130        f.debug_struct(&format!("GtkNativeDialogClass @ {self:p}"))
4131            .field("response", &self.response)
4132            .field("show", &self.show)
4133            .field("hide", &self.hide)
4134            .field("_gtk_reserved1", &self._gtk_reserved1)
4135            .field("_gtk_reserved2", &self._gtk_reserved2)
4136            .field("_gtk_reserved3", &self._gtk_reserved3)
4137            .field("_gtk_reserved4", &self._gtk_reserved4)
4138            .finish()
4139    }
4140}
4141
4142#[repr(C)]
4143#[allow(dead_code)]
4144pub struct _GtkNativeInterface {
4145    _data: [u8; 0],
4146    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4147}
4148
4149pub type GtkNativeInterface = _GtkNativeInterface;
4150
4151#[repr(C)]
4152#[allow(dead_code)]
4153pub struct _GtkNeverTriggerClass {
4154    _data: [u8; 0],
4155    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4156}
4157
4158pub type GtkNeverTriggerClass = _GtkNeverTriggerClass;
4159
4160#[derive(Copy, Clone)]
4161#[repr(C)]
4162pub struct GtkNoSelectionClass {
4163    pub parent_class: gobject::GObjectClass,
4164}
4165
4166impl ::std::fmt::Debug for GtkNoSelectionClass {
4167    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4168        f.debug_struct(&format!("GtkNoSelectionClass @ {self:p}"))
4169            .field("parent_class", &self.parent_class)
4170            .finish()
4171    }
4172}
4173
4174#[repr(C)]
4175#[allow(dead_code)]
4176pub struct _GtkNothingActionClass {
4177    _data: [u8; 0],
4178    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4179}
4180
4181pub type GtkNothingActionClass = _GtkNothingActionClass;
4182
4183#[derive(Copy, Clone)]
4184#[repr(C)]
4185pub struct GtkNumericSorterClass {
4186    pub parent_class: GtkSorterClass,
4187}
4188
4189impl ::std::fmt::Debug for GtkNumericSorterClass {
4190    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4191        f.debug_struct(&format!("GtkNumericSorterClass @ {self:p}"))
4192            .field("parent_class", &self.parent_class)
4193            .finish()
4194    }
4195}
4196
4197#[derive(Copy, Clone)]
4198#[repr(C)]
4199pub struct GtkOrientableIface {
4200    pub base_iface: gobject::GTypeInterface,
4201}
4202
4203impl ::std::fmt::Debug for GtkOrientableIface {
4204    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4205        f.debug_struct(&format!("GtkOrientableIface @ {self:p}"))
4206            .field("base_iface", &self.base_iface)
4207            .finish()
4208    }
4209}
4210
4211#[derive(Copy, Clone)]
4212#[repr(C)]
4213pub struct GtkOverlayLayoutChildClass {
4214    pub parent_class: GtkLayoutChildClass,
4215}
4216
4217impl ::std::fmt::Debug for GtkOverlayLayoutChildClass {
4218    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4219        f.debug_struct(&format!("GtkOverlayLayoutChildClass @ {self:p}"))
4220            .field("parent_class", &self.parent_class)
4221            .finish()
4222    }
4223}
4224
4225#[derive(Copy, Clone)]
4226#[repr(C)]
4227pub struct GtkOverlayLayoutClass {
4228    pub parent_class: GtkLayoutManagerClass,
4229}
4230
4231impl ::std::fmt::Debug for GtkOverlayLayoutClass {
4232    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4233        f.debug_struct(&format!("GtkOverlayLayoutClass @ {self:p}"))
4234            .field("parent_class", &self.parent_class)
4235            .finish()
4236    }
4237}
4238
4239#[derive(Copy, Clone)]
4240#[repr(C)]
4241pub struct GtkPadActionEntry {
4242    pub type_: GtkPadActionType,
4243    pub index: c_int,
4244    pub mode: c_int,
4245    pub label: *const c_char,
4246    pub action_name: *const c_char,
4247}
4248
4249impl ::std::fmt::Debug for GtkPadActionEntry {
4250    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4251        f.debug_struct(&format!("GtkPadActionEntry @ {self:p}"))
4252            .field("type_", &self.type_)
4253            .field("index", &self.index)
4254            .field("mode", &self.mode)
4255            .field("label", &self.label)
4256            .field("action_name", &self.action_name)
4257            .finish()
4258    }
4259}
4260
4261#[repr(C)]
4262#[allow(dead_code)]
4263pub struct _GtkPadControllerClass {
4264    _data: [u8; 0],
4265    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4266}
4267
4268pub type GtkPadControllerClass = _GtkPadControllerClass;
4269
4270#[derive(Copy, Clone)]
4271#[repr(C)]
4272pub struct GtkPageRange {
4273    pub start: c_int,
4274    pub end: c_int,
4275}
4276
4277impl ::std::fmt::Debug for GtkPageRange {
4278    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4279        f.debug_struct(&format!("GtkPageRange @ {self:p}"))
4280            .field("start", &self.start)
4281            .field("end", &self.end)
4282            .finish()
4283    }
4284}
4285
4286#[repr(C)]
4287#[allow(dead_code)]
4288pub struct GtkPaperSize {
4289    _data: [u8; 0],
4290    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4291}
4292
4293impl ::std::fmt::Debug for GtkPaperSize {
4294    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4295        f.debug_struct(&format!("GtkPaperSize @ {self:p}")).finish()
4296    }
4297}
4298
4299#[derive(Copy, Clone)]
4300#[repr(C)]
4301pub struct GtkPasswordEntryBufferClass {
4302    pub parent_class: GtkEntryBufferClass,
4303}
4304
4305impl ::std::fmt::Debug for GtkPasswordEntryBufferClass {
4306    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4307        f.debug_struct(&format!("GtkPasswordEntryBufferClass @ {self:p}"))
4308            .field("parent_class", &self.parent_class)
4309            .finish()
4310    }
4311}
4312
4313#[repr(C)]
4314#[allow(dead_code)]
4315pub struct _GtkPasswordEntryClass {
4316    _data: [u8; 0],
4317    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4318}
4319
4320pub type GtkPasswordEntryClass = _GtkPasswordEntryClass;
4321
4322#[derive(Copy, Clone)]
4323#[repr(C)]
4324pub struct GtkPictureClass {
4325    pub parent_class: GtkWidgetClass,
4326}
4327
4328impl ::std::fmt::Debug for GtkPictureClass {
4329    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4330        f.debug_struct(&format!("GtkPictureClass @ {self:p}"))
4331            .field("parent_class", &self.parent_class)
4332            .finish()
4333    }
4334}
4335
4336#[derive(Copy, Clone)]
4337#[repr(C)]
4338pub struct GtkPopoverClass {
4339    pub parent_class: GtkWidgetClass,
4340    pub closed: Option<unsafe extern "C" fn(*mut GtkPopover)>,
4341    pub activate_default: Option<unsafe extern "C" fn(*mut GtkPopover)>,
4342    pub reserved: [gpointer; 8],
4343}
4344
4345impl ::std::fmt::Debug for GtkPopoverClass {
4346    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4347        f.debug_struct(&format!("GtkPopoverClass @ {self:p}"))
4348            .field("parent_class", &self.parent_class)
4349            .field("closed", &self.closed)
4350            .field("activate_default", &self.activate_default)
4351            .finish()
4352    }
4353}
4354
4355#[repr(C)]
4356#[allow(dead_code)]
4357pub struct _GtkPrintBackend {
4358    _data: [u8; 0],
4359    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4360}
4361
4362pub type GtkPrintBackend = _GtkPrintBackend;
4363
4364#[derive(Copy, Clone)]
4365#[repr(C)]
4366pub struct GtkPrintDialogClass {
4367    pub parent_class: gobject::GObjectClass,
4368}
4369
4370impl ::std::fmt::Debug for GtkPrintDialogClass {
4371    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4372        f.debug_struct(&format!("GtkPrintDialogClass @ {self:p}"))
4373            .field("parent_class", &self.parent_class)
4374            .finish()
4375    }
4376}
4377
4378#[derive(Copy, Clone)]
4379#[repr(C)]
4380pub struct GtkPrintOperationClass {
4381    pub parent_class: gobject::GObjectClass,
4382    pub done: Option<unsafe extern "C" fn(*mut GtkPrintOperation, GtkPrintOperationResult)>,
4383    pub begin_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
4384    pub paginate:
4385        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext) -> gboolean>,
4386    pub request_page_setup: Option<
4387        unsafe extern "C" fn(
4388            *mut GtkPrintOperation,
4389            *mut GtkPrintContext,
4390            c_int,
4391            *mut GtkPageSetup,
4392        ),
4393    >,
4394    pub draw_page:
4395        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext, c_int)>,
4396    pub end_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
4397    pub status_changed: Option<unsafe extern "C" fn(*mut GtkPrintOperation)>,
4398    pub create_custom_widget:
4399        Option<unsafe extern "C" fn(*mut GtkPrintOperation) -> *mut GtkWidget>,
4400    pub custom_widget_apply: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkWidget)>,
4401    pub preview: Option<
4402        unsafe extern "C" fn(
4403            *mut GtkPrintOperation,
4404            *mut GtkPrintOperationPreview,
4405            *mut GtkPrintContext,
4406            *mut GtkWindow,
4407        ) -> gboolean,
4408    >,
4409    pub update_custom_widget: Option<
4410        unsafe extern "C" fn(
4411            *mut GtkPrintOperation,
4412            *mut GtkWidget,
4413            *mut GtkPageSetup,
4414            *mut GtkPrintSettings,
4415        ),
4416    >,
4417    pub padding: [gpointer; 8],
4418}
4419
4420impl ::std::fmt::Debug for GtkPrintOperationClass {
4421    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4422        f.debug_struct(&format!("GtkPrintOperationClass @ {self:p}"))
4423            .field("parent_class", &self.parent_class)
4424            .field("done", &self.done)
4425            .field("begin_print", &self.begin_print)
4426            .field("paginate", &self.paginate)
4427            .field("request_page_setup", &self.request_page_setup)
4428            .field("draw_page", &self.draw_page)
4429            .field("end_print", &self.end_print)
4430            .field("status_changed", &self.status_changed)
4431            .field("create_custom_widget", &self.create_custom_widget)
4432            .field("custom_widget_apply", &self.custom_widget_apply)
4433            .field("preview", &self.preview)
4434            .field("update_custom_widget", &self.update_custom_widget)
4435            .finish()
4436    }
4437}
4438
4439#[derive(Copy, Clone)]
4440#[repr(C)]
4441pub struct GtkPrintOperationPreviewIface {
4442    pub g_iface: gobject::GTypeInterface,
4443    pub ready: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, *mut GtkPrintContext)>,
4444    pub got_page_size: Option<
4445        unsafe extern "C" fn(
4446            *mut GtkPrintOperationPreview,
4447            *mut GtkPrintContext,
4448            *mut GtkPageSetup,
4449        ),
4450    >,
4451    pub render_page: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int)>,
4452    pub is_selected: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int) -> gboolean>,
4453    pub end_preview: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview)>,
4454    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4455    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4456    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4457    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4458    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4459    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4460    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4461    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4462}
4463
4464impl ::std::fmt::Debug for GtkPrintOperationPreviewIface {
4465    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4466        f.debug_struct(&format!("GtkPrintOperationPreviewIface @ {self:p}"))
4467            .field("g_iface", &self.g_iface)
4468            .field("ready", &self.ready)
4469            .field("got_page_size", &self.got_page_size)
4470            .field("render_page", &self.render_page)
4471            .field("is_selected", &self.is_selected)
4472            .field("end_preview", &self.end_preview)
4473            .field("_gtk_reserved1", &self._gtk_reserved1)
4474            .field("_gtk_reserved2", &self._gtk_reserved2)
4475            .field("_gtk_reserved3", &self._gtk_reserved3)
4476            .field("_gtk_reserved4", &self._gtk_reserved4)
4477            .field("_gtk_reserved5", &self._gtk_reserved5)
4478            .field("_gtk_reserved6", &self._gtk_reserved6)
4479            .field("_gtk_reserved7", &self._gtk_reserved7)
4480            .field("_gtk_reserved8", &self._gtk_reserved8)
4481            .finish()
4482    }
4483}
4484
4485#[repr(C)]
4486#[allow(dead_code)]
4487pub struct _GtkPrintOperationPrivate {
4488    _data: [u8; 0],
4489    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4490}
4491
4492pub type GtkPrintOperationPrivate = _GtkPrintOperationPrivate;
4493
4494#[repr(C)]
4495#[allow(dead_code)]
4496pub struct GtkPrintSetup {
4497    _data: [u8; 0],
4498    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4499}
4500
4501impl ::std::fmt::Debug for GtkPrintSetup {
4502    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4503        f.debug_struct(&format!("GtkPrintSetup @ {self:p}"))
4504            .finish()
4505    }
4506}
4507
4508#[derive(Copy, Clone)]
4509#[repr(C)]
4510pub struct GtkRangeClass {
4511    pub parent_class: GtkWidgetClass,
4512    pub value_changed: Option<unsafe extern "C" fn(*mut GtkRange)>,
4513    pub adjust_bounds: Option<unsafe extern "C" fn(*mut GtkRange, c_double)>,
4514    pub move_slider: Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType)>,
4515    pub get_range_border: Option<unsafe extern "C" fn(*mut GtkRange, *mut GtkBorder)>,
4516    pub change_value:
4517        Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType, c_double) -> gboolean>,
4518    pub padding: [gpointer; 8],
4519}
4520
4521impl ::std::fmt::Debug for GtkRangeClass {
4522    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4523        f.debug_struct(&format!("GtkRangeClass @ {self:p}"))
4524            .field("parent_class", &self.parent_class)
4525            .field("value_changed", &self.value_changed)
4526            .field("adjust_bounds", &self.adjust_bounds)
4527            .field("move_slider", &self.move_slider)
4528            .field("get_range_border", &self.get_range_border)
4529            .field("change_value", &self.change_value)
4530            .finish()
4531    }
4532}
4533
4534#[derive(Copy, Clone)]
4535#[repr(C)]
4536pub struct GtkRecentData {
4537    pub display_name: *mut c_char,
4538    pub description: *mut c_char,
4539    pub mime_type: *mut c_char,
4540    pub app_name: *mut c_char,
4541    pub app_exec: *mut c_char,
4542    pub groups: *mut *mut c_char,
4543    pub is_private: gboolean,
4544}
4545
4546impl ::std::fmt::Debug for GtkRecentData {
4547    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4548        f.debug_struct(&format!("GtkRecentData @ {self:p}"))
4549            .field("display_name", &self.display_name)
4550            .field("description", &self.description)
4551            .field("mime_type", &self.mime_type)
4552            .field("app_name", &self.app_name)
4553            .field("app_exec", &self.app_exec)
4554            .field("groups", &self.groups)
4555            .field("is_private", &self.is_private)
4556            .finish()
4557    }
4558}
4559
4560#[repr(C)]
4561#[allow(dead_code)]
4562pub struct GtkRecentInfo {
4563    _data: [u8; 0],
4564    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4565}
4566
4567impl ::std::fmt::Debug for GtkRecentInfo {
4568    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4569        f.debug_struct(&format!("GtkRecentInfo @ {self:p}"))
4570            .finish()
4571    }
4572}
4573
4574#[derive(Copy, Clone)]
4575#[repr(C)]
4576pub struct GtkRecentManagerClass {
4577    pub parent_class: gobject::GObjectClass,
4578    pub changed: Option<unsafe extern "C" fn(*mut GtkRecentManager)>,
4579    pub _gtk_recent1: Option<unsafe extern "C" fn()>,
4580    pub _gtk_recent2: Option<unsafe extern "C" fn()>,
4581    pub _gtk_recent3: Option<unsafe extern "C" fn()>,
4582    pub _gtk_recent4: Option<unsafe extern "C" fn()>,
4583}
4584
4585impl ::std::fmt::Debug for GtkRecentManagerClass {
4586    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4587        f.debug_struct(&format!("GtkRecentManagerClass @ {self:p}"))
4588            .field("changed", &self.changed)
4589            .field("_gtk_recent1", &self._gtk_recent1)
4590            .field("_gtk_recent2", &self._gtk_recent2)
4591            .field("_gtk_recent3", &self._gtk_recent3)
4592            .field("_gtk_recent4", &self._gtk_recent4)
4593            .finish()
4594    }
4595}
4596
4597#[repr(C)]
4598#[allow(dead_code)]
4599pub struct _GtkRecentManagerPrivate {
4600    _data: [u8; 0],
4601    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4602}
4603
4604pub type GtkRecentManagerPrivate = _GtkRecentManagerPrivate;
4605
4606#[derive(Copy, Clone)]
4607#[repr(C)]
4608pub struct GtkRequestedSize {
4609    pub data: gpointer,
4610    pub minimum_size: c_int,
4611    pub natural_size: c_int,
4612}
4613
4614impl ::std::fmt::Debug for GtkRequestedSize {
4615    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4616        f.debug_struct(&format!("GtkRequestedSize @ {self:p}"))
4617            .field("data", &self.data)
4618            .field("minimum_size", &self.minimum_size)
4619            .field("natural_size", &self.natural_size)
4620            .finish()
4621    }
4622}
4623
4624#[derive(Copy, Clone)]
4625#[repr(C)]
4626pub struct GtkRequisition {
4627    pub width: c_int,
4628    pub height: c_int,
4629}
4630
4631impl ::std::fmt::Debug for GtkRequisition {
4632    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4633        f.debug_struct(&format!("GtkRequisition @ {self:p}"))
4634            .field("width", &self.width)
4635            .field("height", &self.height)
4636            .finish()
4637    }
4638}
4639
4640#[repr(C)]
4641#[allow(dead_code)]
4642pub struct _GtkRootInterface {
4643    _data: [u8; 0],
4644    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4645}
4646
4647pub type GtkRootInterface = _GtkRootInterface;
4648
4649#[derive(Copy, Clone)]
4650#[repr(C)]
4651pub struct GtkScaleButtonClass {
4652    pub parent_class: GtkWidgetClass,
4653    pub value_changed: Option<unsafe extern "C" fn(*mut GtkScaleButton, c_double)>,
4654    pub padding: [gpointer; 8],
4655}
4656
4657impl ::std::fmt::Debug for GtkScaleButtonClass {
4658    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4659        f.debug_struct(&format!("GtkScaleButtonClass @ {self:p}"))
4660            .field("parent_class", &self.parent_class)
4661            .field("value_changed", &self.value_changed)
4662            .finish()
4663    }
4664}
4665
4666#[derive(Copy, Clone)]
4667#[repr(C)]
4668pub struct GtkScaleClass {
4669    pub parent_class: GtkRangeClass,
4670    pub get_layout_offsets: Option<unsafe extern "C" fn(*mut GtkScale, *mut c_int, *mut c_int)>,
4671    pub padding: [gpointer; 8],
4672}
4673
4674impl ::std::fmt::Debug for GtkScaleClass {
4675    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4676        f.debug_struct(&format!("GtkScaleClass @ {self:p}"))
4677            .field("parent_class", &self.parent_class)
4678            .field("get_layout_offsets", &self.get_layout_offsets)
4679            .finish()
4680    }
4681}
4682
4683#[repr(C)]
4684#[allow(dead_code)]
4685pub struct GtkScrollInfo {
4686    _data: [u8; 0],
4687    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4688}
4689
4690impl ::std::fmt::Debug for GtkScrollInfo {
4691    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4692        f.debug_struct(&format!("GtkScrollInfo @ {self:p}"))
4693            .finish()
4694    }
4695}
4696
4697#[derive(Copy, Clone)]
4698#[repr(C)]
4699pub struct GtkScrollableInterface {
4700    pub base_iface: gobject::GTypeInterface,
4701    pub get_border: Option<unsafe extern "C" fn(*mut GtkScrollable, *mut GtkBorder) -> gboolean>,
4702}
4703
4704impl ::std::fmt::Debug for GtkScrollableInterface {
4705    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4706        f.debug_struct(&format!("GtkScrollableInterface @ {self:p}"))
4707            .field("base_iface", &self.base_iface)
4708            .field("get_border", &self.get_border)
4709            .finish()
4710    }
4711}
4712
4713#[derive(Copy, Clone)]
4714#[repr(C)]
4715pub struct GtkSectionModelInterface {
4716    pub g_iface: gobject::GTypeInterface,
4717    pub get_section:
4718        Option<unsafe extern "C" fn(*mut GtkSectionModel, c_uint, *mut c_uint, *mut c_uint)>,
4719}
4720
4721impl ::std::fmt::Debug for GtkSectionModelInterface {
4722    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4723        f.debug_struct(&format!("GtkSectionModelInterface @ {self:p}"))
4724            .field("get_section", &self.get_section)
4725            .finish()
4726    }
4727}
4728
4729#[derive(Copy, Clone)]
4730#[repr(C)]
4731pub struct GtkSelectionFilterModelClass {
4732    pub parent_class: gobject::GObjectClass,
4733}
4734
4735impl ::std::fmt::Debug for GtkSelectionFilterModelClass {
4736    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4737        f.debug_struct(&format!("GtkSelectionFilterModelClass @ {self:p}"))
4738            .field("parent_class", &self.parent_class)
4739            .finish()
4740    }
4741}
4742
4743#[derive(Copy, Clone)]
4744#[repr(C)]
4745pub struct GtkSelectionModelInterface {
4746    pub g_iface: gobject::GTypeInterface,
4747    pub is_selected: Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint) -> gboolean>,
4748    pub get_selection_in_range:
4749        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint) -> *mut GtkBitset>,
4750    pub select_item:
4751        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, gboolean) -> gboolean>,
4752    pub unselect_item: Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint) -> gboolean>,
4753    pub select_range:
4754        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint, gboolean) -> gboolean>,
4755    pub unselect_range:
4756        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint) -> gboolean>,
4757    pub select_all: Option<unsafe extern "C" fn(*mut GtkSelectionModel) -> gboolean>,
4758    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkSelectionModel) -> gboolean>,
4759    pub set_selection: Option<
4760        unsafe extern "C" fn(*mut GtkSelectionModel, *mut GtkBitset, *mut GtkBitset) -> gboolean,
4761    >,
4762}
4763
4764impl ::std::fmt::Debug for GtkSelectionModelInterface {
4765    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4766        f.debug_struct(&format!("GtkSelectionModelInterface @ {self:p}"))
4767            .field("is_selected", &self.is_selected)
4768            .field("get_selection_in_range", &self.get_selection_in_range)
4769            .field("select_item", &self.select_item)
4770            .field("unselect_item", &self.unselect_item)
4771            .field("select_range", &self.select_range)
4772            .field("unselect_range", &self.unselect_range)
4773            .field("select_all", &self.select_all)
4774            .field("unselect_all", &self.unselect_all)
4775            .field("set_selection", &self.set_selection)
4776            .finish()
4777    }
4778}
4779
4780#[repr(C)]
4781#[allow(dead_code)]
4782pub struct _GtkShortcutActionClass {
4783    _data: [u8; 0],
4784    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4785}
4786
4787pub type GtkShortcutActionClass = _GtkShortcutActionClass;
4788
4789#[derive(Copy, Clone)]
4790#[repr(C)]
4791pub struct GtkShortcutClass {
4792    pub parent_class: gobject::GObjectClass,
4793}
4794
4795impl ::std::fmt::Debug for GtkShortcutClass {
4796    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4797        f.debug_struct(&format!("GtkShortcutClass @ {self:p}"))
4798            .field("parent_class", &self.parent_class)
4799            .finish()
4800    }
4801}
4802
4803#[repr(C)]
4804#[allow(dead_code)]
4805pub struct _GtkShortcutControllerClass {
4806    _data: [u8; 0],
4807    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4808}
4809
4810pub type GtkShortcutControllerClass = _GtkShortcutControllerClass;
4811
4812#[repr(C)]
4813#[allow(dead_code)]
4814pub struct _GtkShortcutLabelClass {
4815    _data: [u8; 0],
4816    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4817}
4818
4819pub type GtkShortcutLabelClass = _GtkShortcutLabelClass;
4820
4821#[derive(Copy, Clone)]
4822#[repr(C)]
4823pub struct GtkShortcutManagerInterface {
4824    pub g_iface: gobject::GTypeInterface,
4825    pub add_controller:
4826        Option<unsafe extern "C" fn(*mut GtkShortcutManager, *mut GtkShortcutController)>,
4827    pub remove_controller:
4828        Option<unsafe extern "C" fn(*mut GtkShortcutManager, *mut GtkShortcutController)>,
4829}
4830
4831impl ::std::fmt::Debug for GtkShortcutManagerInterface {
4832    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4833        f.debug_struct(&format!("GtkShortcutManagerInterface @ {self:p}"))
4834            .field("add_controller", &self.add_controller)
4835            .field("remove_controller", &self.remove_controller)
4836            .finish()
4837    }
4838}
4839
4840#[repr(C)]
4841#[allow(dead_code)]
4842pub struct _GtkShortcutTriggerClass {
4843    _data: [u8; 0],
4844    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4845}
4846
4847pub type GtkShortcutTriggerClass = _GtkShortcutTriggerClass;
4848
4849#[repr(C)]
4850#[allow(dead_code)]
4851pub struct _GtkShortcutsGroupClass {
4852    _data: [u8; 0],
4853    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4854}
4855
4856pub type GtkShortcutsGroupClass = _GtkShortcutsGroupClass;
4857
4858#[repr(C)]
4859#[allow(dead_code)]
4860pub struct _GtkShortcutsSectionClass {
4861    _data: [u8; 0],
4862    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4863}
4864
4865pub type GtkShortcutsSectionClass = _GtkShortcutsSectionClass;
4866
4867#[repr(C)]
4868#[allow(dead_code)]
4869pub struct _GtkShortcutsShortcutClass {
4870    _data: [u8; 0],
4871    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4872}
4873
4874pub type GtkShortcutsShortcutClass = _GtkShortcutsShortcutClass;
4875
4876#[repr(C)]
4877#[allow(dead_code)]
4878pub struct _GtkSignalActionClass {
4879    _data: [u8; 0],
4880    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4881}
4882
4883pub type GtkSignalActionClass = _GtkSignalActionClass;
4884
4885#[repr(C)]
4886#[allow(dead_code)]
4887pub struct _GtkSignalListItemFactoryClass {
4888    _data: [u8; 0],
4889    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4890}
4891
4892pub type GtkSignalListItemFactoryClass = _GtkSignalListItemFactoryClass;
4893
4894#[derive(Copy, Clone)]
4895#[repr(C)]
4896pub struct GtkSingleSelectionClass {
4897    pub parent_class: gobject::GObjectClass,
4898}
4899
4900impl ::std::fmt::Debug for GtkSingleSelectionClass {
4901    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4902        f.debug_struct(&format!("GtkSingleSelectionClass @ {self:p}"))
4903            .field("parent_class", &self.parent_class)
4904            .finish()
4905    }
4906}
4907
4908#[derive(Copy, Clone)]
4909#[repr(C)]
4910pub struct GtkSliceListModelClass {
4911    pub parent_class: gobject::GObjectClass,
4912}
4913
4914impl ::std::fmt::Debug for GtkSliceListModelClass {
4915    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4916        f.debug_struct(&format!("GtkSliceListModelClass @ {self:p}"))
4917            .field("parent_class", &self.parent_class)
4918            .finish()
4919    }
4920}
4921
4922#[repr(C)]
4923#[allow(dead_code)]
4924pub struct _GtkSnapshotClass {
4925    _data: [u8; 0],
4926    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4927}
4928
4929pub type GtkSnapshotClass = _GtkSnapshotClass;
4930
4931#[derive(Copy, Clone)]
4932#[repr(C)]
4933pub struct GtkSortListModelClass {
4934    pub parent_class: gobject::GObjectClass,
4935}
4936
4937impl ::std::fmt::Debug for GtkSortListModelClass {
4938    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4939        f.debug_struct(&format!("GtkSortListModelClass @ {self:p}"))
4940            .field("parent_class", &self.parent_class)
4941            .finish()
4942    }
4943}
4944
4945#[derive(Copy, Clone)]
4946#[repr(C)]
4947pub struct GtkSorterClass {
4948    pub parent_class: gobject::GObjectClass,
4949    pub compare: Option<
4950        unsafe extern "C" fn(
4951            *mut GtkSorter,
4952            *mut gobject::GObject,
4953            *mut gobject::GObject,
4954        ) -> GtkOrdering,
4955    >,
4956    pub get_order: Option<unsafe extern "C" fn(*mut GtkSorter) -> GtkSorterOrder>,
4957    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4958    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4959    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4960    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4961    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4962    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4963    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4964    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4965}
4966
4967impl ::std::fmt::Debug for GtkSorterClass {
4968    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4969        f.debug_struct(&format!("GtkSorterClass @ {self:p}"))
4970            .field("parent_class", &self.parent_class)
4971            .field("compare", &self.compare)
4972            .field("get_order", &self.get_order)
4973            .field("_gtk_reserved1", &self._gtk_reserved1)
4974            .field("_gtk_reserved2", &self._gtk_reserved2)
4975            .field("_gtk_reserved3", &self._gtk_reserved3)
4976            .field("_gtk_reserved4", &self._gtk_reserved4)
4977            .field("_gtk_reserved5", &self._gtk_reserved5)
4978            .field("_gtk_reserved6", &self._gtk_reserved6)
4979            .field("_gtk_reserved7", &self._gtk_reserved7)
4980            .field("_gtk_reserved8", &self._gtk_reserved8)
4981            .finish()
4982    }
4983}
4984
4985#[derive(Copy, Clone)]
4986#[repr(C)]
4987pub struct GtkStringFilterClass {
4988    pub parent_class: GtkFilterClass,
4989}
4990
4991impl ::std::fmt::Debug for GtkStringFilterClass {
4992    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4993        f.debug_struct(&format!("GtkStringFilterClass @ {self:p}"))
4994            .field("parent_class", &self.parent_class)
4995            .finish()
4996    }
4997}
4998
4999#[derive(Copy, Clone)]
5000#[repr(C)]
5001pub struct GtkStringListClass {
5002    pub parent_class: gobject::GObjectClass,
5003}
5004
5005impl ::std::fmt::Debug for GtkStringListClass {
5006    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5007        f.debug_struct(&format!("GtkStringListClass @ {self:p}"))
5008            .field("parent_class", &self.parent_class)
5009            .finish()
5010    }
5011}
5012
5013#[derive(Copy, Clone)]
5014#[repr(C)]
5015pub struct GtkStringObjectClass {
5016    pub parent_class: gobject::GObjectClass,
5017}
5018
5019impl ::std::fmt::Debug for GtkStringObjectClass {
5020    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5021        f.debug_struct(&format!("GtkStringObjectClass @ {self:p}"))
5022            .field("parent_class", &self.parent_class)
5023            .finish()
5024    }
5025}
5026
5027#[derive(Copy, Clone)]
5028#[repr(C)]
5029pub struct GtkStringSorterClass {
5030    pub parent_class: GtkSorterClass,
5031}
5032
5033impl ::std::fmt::Debug for GtkStringSorterClass {
5034    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5035        f.debug_struct(&format!("GtkStringSorterClass @ {self:p}"))
5036            .field("parent_class", &self.parent_class)
5037            .finish()
5038    }
5039}
5040
5041#[derive(Copy, Clone)]
5042#[repr(C)]
5043pub struct GtkStyleContextClass {
5044    pub parent_class: gobject::GObjectClass,
5045    pub changed: Option<unsafe extern "C" fn(*mut GtkStyleContext)>,
5046    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5047    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5048    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5049    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5050}
5051
5052impl ::std::fmt::Debug for GtkStyleContextClass {
5053    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5054        f.debug_struct(&format!("GtkStyleContextClass @ {self:p}"))
5055            .field("parent_class", &self.parent_class)
5056            .field("changed", &self.changed)
5057            .field("_gtk_reserved1", &self._gtk_reserved1)
5058            .field("_gtk_reserved2", &self._gtk_reserved2)
5059            .field("_gtk_reserved3", &self._gtk_reserved3)
5060            .field("_gtk_reserved4", &self._gtk_reserved4)
5061            .finish()
5062    }
5063}
5064
5065#[derive(Copy, Clone)]
5066#[repr(C)]
5067pub struct GtkSvgClass {
5068    pub parent_class: gobject::GObjectClass,
5069}
5070
5071impl ::std::fmt::Debug for GtkSvgClass {
5072    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5073        f.debug_struct(&format!("GtkSvgClass @ {self:p}"))
5074            .field("parent_class", &self.parent_class)
5075            .finish()
5076    }
5077}
5078
5079#[derive(Copy, Clone)]
5080#[repr(C)]
5081pub struct GtkSvgLocation {
5082    pub bytes: size_t,
5083    pub lines: size_t,
5084    pub line_chars: size_t,
5085}
5086
5087impl ::std::fmt::Debug for GtkSvgLocation {
5088    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5089        f.debug_struct(&format!("GtkSvgLocation @ {self:p}"))
5090            .field("bytes", &self.bytes)
5091            .field("lines", &self.lines)
5092            .field("line_chars", &self.line_chars)
5093            .finish()
5094    }
5095}
5096
5097#[derive(Copy, Clone)]
5098#[repr(C)]
5099pub struct GtkSymbolicPaintableInterface {
5100    pub g_iface: gobject::GTypeInterface,
5101    pub snapshot_symbolic: Option<
5102        unsafe extern "C" fn(
5103            *mut GtkSymbolicPaintable,
5104            *mut gdk::GdkSnapshot,
5105            c_double,
5106            c_double,
5107            *const gdk::GdkRGBA,
5108            size_t,
5109        ),
5110    >,
5111    pub snapshot_with_weight: Option<
5112        unsafe extern "C" fn(
5113            *mut GtkSymbolicPaintable,
5114            *mut gdk::GdkSnapshot,
5115            c_double,
5116            c_double,
5117            *const gdk::GdkRGBA,
5118            size_t,
5119            c_double,
5120        ),
5121    >,
5122}
5123
5124impl ::std::fmt::Debug for GtkSymbolicPaintableInterface {
5125    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5126        f.debug_struct(&format!("GtkSymbolicPaintableInterface @ {self:p}"))
5127            .field("snapshot_symbolic", &self.snapshot_symbolic)
5128            .field("snapshot_with_weight", &self.snapshot_with_weight)
5129            .finish()
5130    }
5131}
5132
5133#[derive(Copy, Clone)]
5134#[repr(C)]
5135pub struct GtkTextBufferClass {
5136    pub parent_class: gobject::GObjectClass,
5137    pub insert_text:
5138        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *const c_char, c_int)>,
5139    pub insert_paintable:
5140        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut gdk::GdkPaintable)>,
5141    pub insert_child_anchor:
5142        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextChildAnchor)>,
5143    pub delete_range:
5144        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextIter)>,
5145    pub changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5146    pub modified_changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5147    pub mark_set:
5148        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *const GtkTextIter, *mut GtkTextMark)>,
5149    pub mark_deleted: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextMark)>,
5150    pub apply_tag: Option<
5151        unsafe extern "C" fn(
5152            *mut GtkTextBuffer,
5153            *mut GtkTextTag,
5154            *const GtkTextIter,
5155            *const GtkTextIter,
5156        ),
5157    >,
5158    pub remove_tag: Option<
5159        unsafe extern "C" fn(
5160            *mut GtkTextBuffer,
5161            *mut GtkTextTag,
5162            *const GtkTextIter,
5163            *const GtkTextIter,
5164        ),
5165    >,
5166    pub begin_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5167    pub end_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5168    pub paste_done: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut gdk::GdkClipboard)>,
5169    pub undo: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5170    pub redo: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5171    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5172    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5173    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5174    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5175}
5176
5177impl ::std::fmt::Debug for GtkTextBufferClass {
5178    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5179        f.debug_struct(&format!("GtkTextBufferClass @ {self:p}"))
5180            .field("parent_class", &self.parent_class)
5181            .field("insert_text", &self.insert_text)
5182            .field("insert_paintable", &self.insert_paintable)
5183            .field("insert_child_anchor", &self.insert_child_anchor)
5184            .field("delete_range", &self.delete_range)
5185            .field("changed", &self.changed)
5186            .field("modified_changed", &self.modified_changed)
5187            .field("mark_set", &self.mark_set)
5188            .field("mark_deleted", &self.mark_deleted)
5189            .field("apply_tag", &self.apply_tag)
5190            .field("remove_tag", &self.remove_tag)
5191            .field("begin_user_action", &self.begin_user_action)
5192            .field("end_user_action", &self.end_user_action)
5193            .field("paste_done", &self.paste_done)
5194            .field("undo", &self.undo)
5195            .field("redo", &self.redo)
5196            .field("_gtk_reserved1", &self._gtk_reserved1)
5197            .field("_gtk_reserved2", &self._gtk_reserved2)
5198            .field("_gtk_reserved3", &self._gtk_reserved3)
5199            .field("_gtk_reserved4", &self._gtk_reserved4)
5200            .finish()
5201    }
5202}
5203
5204#[repr(C)]
5205#[allow(dead_code)]
5206pub struct _GtkTextBufferPrivate {
5207    _data: [u8; 0],
5208    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5209}
5210
5211pub type GtkTextBufferPrivate = _GtkTextBufferPrivate;
5212
5213#[derive(Copy, Clone)]
5214#[repr(C)]
5215pub struct GtkTextChildAnchorClass {
5216    pub parent_class: gobject::GObjectClass,
5217    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5218    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5219    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5220    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5221}
5222
5223impl ::std::fmt::Debug for GtkTextChildAnchorClass {
5224    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5225        f.debug_struct(&format!("GtkTextChildAnchorClass @ {self:p}"))
5226            .field("parent_class", &self.parent_class)
5227            .field("_gtk_reserved1", &self._gtk_reserved1)
5228            .field("_gtk_reserved2", &self._gtk_reserved2)
5229            .field("_gtk_reserved3", &self._gtk_reserved3)
5230            .field("_gtk_reserved4", &self._gtk_reserved4)
5231            .finish()
5232    }
5233}
5234
5235#[derive(Copy, Clone)]
5236#[repr(C)]
5237pub struct GtkTextIter {
5238    pub dummy1: gpointer,
5239    pub dummy2: gpointer,
5240    pub dummy3: c_int,
5241    pub dummy4: c_int,
5242    pub dummy5: c_int,
5243    pub dummy6: c_int,
5244    pub dummy7: c_int,
5245    pub dummy8: c_int,
5246    pub dummy9: gpointer,
5247    pub dummy10: gpointer,
5248    pub dummy11: c_int,
5249    pub dummy12: c_int,
5250    pub dummy13: c_int,
5251    pub dummy14: gpointer,
5252}
5253
5254impl ::std::fmt::Debug for GtkTextIter {
5255    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5256        f.debug_struct(&format!("GtkTextIter @ {self:p}")).finish()
5257    }
5258}
5259
5260#[derive(Copy, Clone)]
5261#[repr(C)]
5262pub struct GtkTextMarkClass {
5263    pub parent_class: gobject::GObjectClass,
5264    pub padding: [gpointer; 8],
5265}
5266
5267impl ::std::fmt::Debug for GtkTextMarkClass {
5268    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5269        f.debug_struct(&format!("GtkTextMarkClass @ {self:p}"))
5270            .field("parent_class", &self.parent_class)
5271            .finish()
5272    }
5273}
5274
5275#[derive(Copy, Clone)]
5276#[repr(C)]
5277pub struct GtkTextTagClass {
5278    pub parent_class: gobject::GObjectClass,
5279    pub padding: [gpointer; 8],
5280}
5281
5282impl ::std::fmt::Debug for GtkTextTagClass {
5283    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5284        f.debug_struct(&format!("GtkTextTagClass @ {self:p}"))
5285            .field("parent_class", &self.parent_class)
5286            .finish()
5287    }
5288}
5289
5290#[repr(C)]
5291#[allow(dead_code)]
5292pub struct _GtkTextTagPrivate {
5293    _data: [u8; 0],
5294    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5295}
5296
5297pub type GtkTextTagPrivate = _GtkTextTagPrivate;
5298
5299#[derive(Copy, Clone)]
5300#[repr(C)]
5301pub struct GtkTextViewClass {
5302    pub parent_class: GtkWidgetClass,
5303    pub move_cursor:
5304        Option<unsafe extern "C" fn(*mut GtkTextView, GtkMovementStep, c_int, gboolean)>,
5305    pub set_anchor: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5306    pub insert_at_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, *const c_char)>,
5307    pub delete_from_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, GtkDeleteType, c_int)>,
5308    pub backspace: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5309    pub cut_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5310    pub copy_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5311    pub paste_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5312    pub toggle_overwrite: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5313    pub create_buffer: Option<unsafe extern "C" fn(*mut GtkTextView) -> *mut GtkTextBuffer>,
5314    pub snapshot_layer:
5315        Option<unsafe extern "C" fn(*mut GtkTextView, GtkTextViewLayer, *mut GtkSnapshot)>,
5316    pub extend_selection: Option<
5317        unsafe extern "C" fn(
5318            *mut GtkTextView,
5319            GtkTextExtendSelection,
5320            *const GtkTextIter,
5321            *mut GtkTextIter,
5322            *mut GtkTextIter,
5323        ) -> gboolean,
5324    >,
5325    pub insert_emoji: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5326    pub padding: [gpointer; 8],
5327}
5328
5329impl ::std::fmt::Debug for GtkTextViewClass {
5330    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5331        f.debug_struct(&format!("GtkTextViewClass @ {self:p}"))
5332            .field("parent_class", &self.parent_class)
5333            .field("move_cursor", &self.move_cursor)
5334            .field("set_anchor", &self.set_anchor)
5335            .field("insert_at_cursor", &self.insert_at_cursor)
5336            .field("delete_from_cursor", &self.delete_from_cursor)
5337            .field("backspace", &self.backspace)
5338            .field("cut_clipboard", &self.cut_clipboard)
5339            .field("copy_clipboard", &self.copy_clipboard)
5340            .field("paste_clipboard", &self.paste_clipboard)
5341            .field("toggle_overwrite", &self.toggle_overwrite)
5342            .field("create_buffer", &self.create_buffer)
5343            .field("snapshot_layer", &self.snapshot_layer)
5344            .field("extend_selection", &self.extend_selection)
5345            .field("insert_emoji", &self.insert_emoji)
5346            .finish()
5347    }
5348}
5349
5350#[repr(C)]
5351#[allow(dead_code)]
5352pub struct _GtkTextViewPrivate {
5353    _data: [u8; 0],
5354    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5355}
5356
5357pub type GtkTextViewPrivate = _GtkTextViewPrivate;
5358
5359#[derive(Copy, Clone)]
5360#[repr(C)]
5361pub struct GtkToggleButtonClass {
5362    pub parent_class: GtkButtonClass,
5363    pub toggled: Option<unsafe extern "C" fn(*mut GtkToggleButton)>,
5364    pub padding: [gpointer; 8],
5365}
5366
5367impl ::std::fmt::Debug for GtkToggleButtonClass {
5368    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5369        f.debug_struct(&format!("GtkToggleButtonClass @ {self:p}"))
5370            .field("parent_class", &self.parent_class)
5371            .field("toggled", &self.toggled)
5372            .finish()
5373    }
5374}
5375
5376#[derive(Copy, Clone)]
5377#[repr(C)]
5378pub struct GtkTreeDragDestIface {
5379    pub g_iface: gobject::GTypeInterface,
5380    pub drag_data_received: Option<
5381        unsafe extern "C" fn(
5382            *mut GtkTreeDragDest,
5383            *mut GtkTreePath,
5384            *const gobject::GValue,
5385        ) -> gboolean,
5386    >,
5387    pub row_drop_possible: Option<
5388        unsafe extern "C" fn(
5389            *mut GtkTreeDragDest,
5390            *mut GtkTreePath,
5391            *const gobject::GValue,
5392        ) -> gboolean,
5393    >,
5394}
5395
5396impl ::std::fmt::Debug for GtkTreeDragDestIface {
5397    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5398        f.debug_struct(&format!("GtkTreeDragDestIface @ {self:p}"))
5399            .field("drag_data_received", &self.drag_data_received)
5400            .field("row_drop_possible", &self.row_drop_possible)
5401            .finish()
5402    }
5403}
5404
5405#[derive(Copy, Clone)]
5406#[repr(C)]
5407pub struct GtkTreeDragSourceIface {
5408    pub g_iface: gobject::GTypeInterface,
5409    pub row_draggable:
5410        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
5411    pub drag_data_get: Option<
5412        unsafe extern "C" fn(
5413            *mut GtkTreeDragSource,
5414            *mut GtkTreePath,
5415        ) -> *mut gdk::GdkContentProvider,
5416    >,
5417    pub drag_data_delete:
5418        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
5419}
5420
5421impl ::std::fmt::Debug for GtkTreeDragSourceIface {
5422    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5423        f.debug_struct(&format!("GtkTreeDragSourceIface @ {self:p}"))
5424            .field("row_draggable", &self.row_draggable)
5425            .field("drag_data_get", &self.drag_data_get)
5426            .field("drag_data_delete", &self.drag_data_delete)
5427            .finish()
5428    }
5429}
5430
5431#[derive(Copy, Clone)]
5432#[repr(C)]
5433pub struct GtkTreeExpanderClass {
5434    pub parent_class: GtkWidgetClass,
5435}
5436
5437impl ::std::fmt::Debug for GtkTreeExpanderClass {
5438    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5439        f.debug_struct(&format!("GtkTreeExpanderClass @ {self:p}"))
5440            .field("parent_class", &self.parent_class)
5441            .finish()
5442    }
5443}
5444
5445#[derive(Copy, Clone)]
5446#[repr(C)]
5447pub struct GtkTreeIter {
5448    pub stamp: c_int,
5449    pub user_data: gpointer,
5450    pub user_data2: gpointer,
5451    pub user_data3: gpointer,
5452}
5453
5454impl ::std::fmt::Debug for GtkTreeIter {
5455    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5456        f.debug_struct(&format!("GtkTreeIter @ {self:p}"))
5457            .field("stamp", &self.stamp)
5458            .field("user_data", &self.user_data)
5459            .field("user_data2", &self.user_data2)
5460            .field("user_data3", &self.user_data3)
5461            .finish()
5462    }
5463}
5464
5465#[derive(Copy, Clone)]
5466#[repr(C)]
5467pub struct GtkTreeListModelClass {
5468    pub parent_class: gobject::GObjectClass,
5469}
5470
5471impl ::std::fmt::Debug for GtkTreeListModelClass {
5472    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5473        f.debug_struct(&format!("GtkTreeListModelClass @ {self:p}"))
5474            .field("parent_class", &self.parent_class)
5475            .finish()
5476    }
5477}
5478
5479#[derive(Copy, Clone)]
5480#[repr(C)]
5481pub struct GtkTreeListRowClass {
5482    pub parent_class: gobject::GObjectClass,
5483}
5484
5485impl ::std::fmt::Debug for GtkTreeListRowClass {
5486    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5487        f.debug_struct(&format!("GtkTreeListRowClass @ {self:p}"))
5488            .field("parent_class", &self.parent_class)
5489            .finish()
5490    }
5491}
5492
5493#[derive(Copy, Clone)]
5494#[repr(C)]
5495pub struct GtkTreeListRowSorterClass {
5496    pub parent_class: GtkSorterClass,
5497}
5498
5499impl ::std::fmt::Debug for GtkTreeListRowSorterClass {
5500    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5501        f.debug_struct(&format!("GtkTreeListRowSorterClass @ {self:p}"))
5502            .field("parent_class", &self.parent_class)
5503            .finish()
5504    }
5505}
5506
5507#[derive(Copy, Clone)]
5508#[repr(C)]
5509pub struct GtkTreeModelFilterClass {
5510    pub parent_class: gobject::GObjectClass,
5511    pub visible: Option<
5512        unsafe extern "C" fn(
5513            *mut GtkTreeModelFilter,
5514            *mut GtkTreeModel,
5515            *mut GtkTreeIter,
5516        ) -> gboolean,
5517    >,
5518    pub modify: Option<
5519        unsafe extern "C" fn(
5520            *mut GtkTreeModelFilter,
5521            *mut GtkTreeModel,
5522            *mut GtkTreeIter,
5523            *mut gobject::GValue,
5524            c_int,
5525        ),
5526    >,
5527    pub padding: [gpointer; 8],
5528}
5529
5530impl ::std::fmt::Debug for GtkTreeModelFilterClass {
5531    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5532        f.debug_struct(&format!("GtkTreeModelFilterClass @ {self:p}"))
5533            .field("parent_class", &self.parent_class)
5534            .field("visible", &self.visible)
5535            .field("modify", &self.modify)
5536            .finish()
5537    }
5538}
5539
5540#[repr(C)]
5541#[allow(dead_code)]
5542pub struct _GtkTreeModelFilterPrivate {
5543    _data: [u8; 0],
5544    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5545}
5546
5547pub type GtkTreeModelFilterPrivate = _GtkTreeModelFilterPrivate;
5548
5549#[derive(Copy, Clone)]
5550#[repr(C)]
5551pub struct GtkTreeModelIface {
5552    pub g_iface: gobject::GTypeInterface,
5553    pub row_changed:
5554        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5555    pub row_inserted:
5556        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5557    pub row_has_child_toggled:
5558        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5559    pub row_deleted: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath)>,
5560    pub rows_reordered: Option<
5561        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, *mut c_int),
5562    >,
5563    pub get_flags: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> GtkTreeModelFlags>,
5564    pub get_n_columns: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> c_int>,
5565    pub get_column_type: Option<unsafe extern "C" fn(*mut GtkTreeModel, c_int) -> GType>,
5566    pub get_iter: Option<
5567        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5568    >,
5569    pub get_path:
5570        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> *mut GtkTreePath>,
5571    pub get_value: Option<
5572        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, c_int, *mut gobject::GValue),
5573    >,
5574    pub iter_next: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5575    pub iter_previous:
5576        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5577    pub iter_children: Option<
5578        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
5579    >,
5580    pub iter_has_child:
5581        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5582    pub iter_n_children: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> c_int>,
5583    pub iter_nth_child: Option<
5584        unsafe extern "C" fn(
5585            *mut GtkTreeModel,
5586            *mut GtkTreeIter,
5587            *mut GtkTreeIter,
5588            c_int,
5589        ) -> gboolean,
5590    >,
5591    pub iter_parent: Option<
5592        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
5593    >,
5594    pub ref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
5595    pub unref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
5596}
5597
5598impl ::std::fmt::Debug for GtkTreeModelIface {
5599    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5600        f.debug_struct(&format!("GtkTreeModelIface @ {self:p}"))
5601            .field("row_changed", &self.row_changed)
5602            .field("row_inserted", &self.row_inserted)
5603            .field("row_has_child_toggled", &self.row_has_child_toggled)
5604            .field("row_deleted", &self.row_deleted)
5605            .field("rows_reordered", &self.rows_reordered)
5606            .field("get_flags", &self.get_flags)
5607            .field("get_n_columns", &self.get_n_columns)
5608            .field("get_column_type", &self.get_column_type)
5609            .field("get_iter", &self.get_iter)
5610            .field("get_path", &self.get_path)
5611            .field("get_value", &self.get_value)
5612            .field("iter_next", &self.iter_next)
5613            .field("iter_previous", &self.iter_previous)
5614            .field("iter_children", &self.iter_children)
5615            .field("iter_has_child", &self.iter_has_child)
5616            .field("iter_n_children", &self.iter_n_children)
5617            .field("iter_nth_child", &self.iter_nth_child)
5618            .field("iter_parent", &self.iter_parent)
5619            .field("ref_node", &self.ref_node)
5620            .field("unref_node", &self.unref_node)
5621            .finish()
5622    }
5623}
5624
5625#[derive(Copy, Clone)]
5626#[repr(C)]
5627pub struct GtkTreeModelSortClass {
5628    pub parent_class: gobject::GObjectClass,
5629    pub padding: [gpointer; 8],
5630}
5631
5632impl ::std::fmt::Debug for GtkTreeModelSortClass {
5633    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5634        f.debug_struct(&format!("GtkTreeModelSortClass @ {self:p}"))
5635            .field("parent_class", &self.parent_class)
5636            .finish()
5637    }
5638}
5639
5640#[repr(C)]
5641#[allow(dead_code)]
5642pub struct _GtkTreeModelSortPrivate {
5643    _data: [u8; 0],
5644    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5645}
5646
5647pub type GtkTreeModelSortPrivate = _GtkTreeModelSortPrivate;
5648
5649#[repr(C)]
5650#[allow(dead_code)]
5651pub struct GtkTreePath {
5652    _data: [u8; 0],
5653    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5654}
5655
5656impl ::std::fmt::Debug for GtkTreePath {
5657    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5658        f.debug_struct(&format!("GtkTreePath @ {self:p}")).finish()
5659    }
5660}
5661
5662#[repr(C)]
5663#[allow(dead_code)]
5664pub struct GtkTreeRowReference {
5665    _data: [u8; 0],
5666    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5667}
5668
5669impl ::std::fmt::Debug for GtkTreeRowReference {
5670    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5671        f.debug_struct(&format!("GtkTreeRowReference @ {self:p}"))
5672            .finish()
5673    }
5674}
5675
5676#[derive(Copy, Clone)]
5677#[repr(C)]
5678pub struct GtkTreeSortableIface {
5679    pub g_iface: gobject::GTypeInterface,
5680    pub sort_column_changed: Option<unsafe extern "C" fn(*mut GtkTreeSortable)>,
5681    pub get_sort_column_id: Option<
5682        unsafe extern "C" fn(*mut GtkTreeSortable, *mut c_int, *mut GtkSortType) -> gboolean,
5683    >,
5684    pub set_sort_column_id: Option<unsafe extern "C" fn(*mut GtkTreeSortable, c_int, GtkSortType)>,
5685    pub set_sort_func: Option<
5686        unsafe extern "C" fn(
5687            *mut GtkTreeSortable,
5688            c_int,
5689            GtkTreeIterCompareFunc,
5690            gpointer,
5691            glib::GDestroyNotify,
5692        ),
5693    >,
5694    pub set_default_sort_func: Option<
5695        unsafe extern "C" fn(
5696            *mut GtkTreeSortable,
5697            GtkTreeIterCompareFunc,
5698            gpointer,
5699            glib::GDestroyNotify,
5700        ),
5701    >,
5702    pub has_default_sort_func: Option<unsafe extern "C" fn(*mut GtkTreeSortable) -> gboolean>,
5703}
5704
5705impl ::std::fmt::Debug for GtkTreeSortableIface {
5706    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5707        f.debug_struct(&format!("GtkTreeSortableIface @ {self:p}"))
5708            .field("sort_column_changed", &self.sort_column_changed)
5709            .field("get_sort_column_id", &self.get_sort_column_id)
5710            .field("set_sort_column_id", &self.set_sort_column_id)
5711            .field("set_sort_func", &self.set_sort_func)
5712            .field("set_default_sort_func", &self.set_default_sort_func)
5713            .field("has_default_sort_func", &self.has_default_sort_func)
5714            .finish()
5715    }
5716}
5717
5718#[derive(Copy, Clone)]
5719#[repr(C)]
5720pub struct GtkTreeStoreClass {
5721    pub parent_class: gobject::GObjectClass,
5722    pub padding: [gpointer; 8],
5723}
5724
5725impl ::std::fmt::Debug for GtkTreeStoreClass {
5726    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5727        f.debug_struct(&format!("GtkTreeStoreClass @ {self:p}"))
5728            .field("parent_class", &self.parent_class)
5729            .finish()
5730    }
5731}
5732
5733#[repr(C)]
5734#[allow(dead_code)]
5735pub struct _GtkTreeStorePrivate {
5736    _data: [u8; 0],
5737    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5738}
5739
5740pub type GtkTreeStorePrivate = _GtkTreeStorePrivate;
5741
5742#[derive(Copy, Clone)]
5743#[repr(C)]
5744pub struct GtkTreeViewClass {
5745    pub parent_class: GtkWidgetClass,
5746    pub row_activated:
5747        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, *mut GtkTreeViewColumn)>,
5748    pub test_expand_row: Option<
5749        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5750    >,
5751    pub test_collapse_row: Option<
5752        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5753    >,
5754    pub row_expanded:
5755        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
5756    pub row_collapsed:
5757        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
5758    pub columns_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
5759    pub cursor_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
5760    pub move_cursor: Option<
5761        unsafe extern "C" fn(
5762            *mut GtkTreeView,
5763            GtkMovementStep,
5764            c_int,
5765            gboolean,
5766            gboolean,
5767        ) -> gboolean,
5768    >,
5769    pub select_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5770    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5771    pub select_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean) -> gboolean>,
5772    pub toggle_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5773    pub expand_collapse_cursor_row:
5774        Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean, gboolean, gboolean) -> gboolean>,
5775    pub select_cursor_parent: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5776    pub start_interactive_search: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5777    pub _reserved: [gpointer; 16],
5778}
5779
5780impl ::std::fmt::Debug for GtkTreeViewClass {
5781    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5782        f.debug_struct(&format!("GtkTreeViewClass @ {self:p}"))
5783            .field("parent_class", &self.parent_class)
5784            .field("row_activated", &self.row_activated)
5785            .field("test_expand_row", &self.test_expand_row)
5786            .field("test_collapse_row", &self.test_collapse_row)
5787            .field("row_expanded", &self.row_expanded)
5788            .field("row_collapsed", &self.row_collapsed)
5789            .field("columns_changed", &self.columns_changed)
5790            .field("cursor_changed", &self.cursor_changed)
5791            .field("move_cursor", &self.move_cursor)
5792            .field("select_all", &self.select_all)
5793            .field("unselect_all", &self.unselect_all)
5794            .field("select_cursor_row", &self.select_cursor_row)
5795            .field("toggle_cursor_row", &self.toggle_cursor_row)
5796            .field(
5797                "expand_collapse_cursor_row",
5798                &self.expand_collapse_cursor_row,
5799            )
5800            .field("select_cursor_parent", &self.select_cursor_parent)
5801            .field("start_interactive_search", &self.start_interactive_search)
5802            .finish()
5803    }
5804}
5805
5806#[derive(Copy, Clone)]
5807#[repr(C)]
5808pub struct GtkUriLauncherClass {
5809    pub parent_class: gobject::GObjectClass,
5810}
5811
5812impl ::std::fmt::Debug for GtkUriLauncherClass {
5813    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5814        f.debug_struct(&format!("GtkUriLauncherClass @ {self:p}"))
5815            .field("parent_class", &self.parent_class)
5816            .finish()
5817    }
5818}
5819
5820#[derive(Copy, Clone)]
5821#[repr(C)]
5822pub struct GtkVideoClass {
5823    pub parent_class: GtkWidgetClass,
5824}
5825
5826impl ::std::fmt::Debug for GtkVideoClass {
5827    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5828        f.debug_struct(&format!("GtkVideoClass @ {self:p}"))
5829            .field("parent_class", &self.parent_class)
5830            .finish()
5831    }
5832}
5833
5834#[derive(Copy, Clone)]
5835#[repr(C)]
5836pub struct GtkWidgetClass {
5837    pub parent_class: gobject::GInitiallyUnownedClass,
5838    pub show: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5839    pub hide: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5840    pub map: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5841    pub unmap: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5842    pub realize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5843    pub unrealize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5844    pub root: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5845    pub unroot: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5846    pub size_allocate: Option<unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, c_int)>,
5847    pub state_flags_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkStateFlags)>,
5848    pub direction_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkTextDirection)>,
5849    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>,
5850    pub measure: Option<
5851        unsafe extern "C" fn(
5852            *mut GtkWidget,
5853            GtkOrientation,
5854            c_int,
5855            *mut c_int,
5856            *mut c_int,
5857            *mut c_int,
5858            *mut c_int,
5859        ),
5860    >,
5861    pub mnemonic_activate: Option<unsafe extern "C" fn(*mut GtkWidget, gboolean) -> gboolean>,
5862    pub grab_focus: Option<unsafe extern "C" fn(*mut GtkWidget) -> gboolean>,
5863    pub focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
5864    pub set_focus_child: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkWidget)>,
5865    pub move_focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType)>,
5866    pub keynav_failed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
5867    pub query_tooltip: Option<
5868        unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, gboolean, *mut GtkTooltip) -> gboolean,
5869    >,
5870    pub compute_expand: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gboolean, *mut gboolean)>,
5871    pub css_changed: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkCssStyleChange)>,
5872    pub system_setting_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkSystemSetting)>,
5873    pub snapshot: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkSnapshot)>,
5874    pub contains: Option<unsafe extern "C" fn(*mut GtkWidget, c_double, c_double) -> gboolean>,
5875    pub priv_: *mut GtkWidgetClassPrivate,
5876    pub padding: [gpointer; 8],
5877}
5878
5879impl ::std::fmt::Debug for GtkWidgetClass {
5880    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5881        f.debug_struct(&format!("GtkWidgetClass @ {self:p}"))
5882            .field("parent_class", &self.parent_class)
5883            .field("show", &self.show)
5884            .field("hide", &self.hide)
5885            .field("map", &self.map)
5886            .field("unmap", &self.unmap)
5887            .field("realize", &self.realize)
5888            .field("unrealize", &self.unrealize)
5889            .field("root", &self.root)
5890            .field("unroot", &self.unroot)
5891            .field("size_allocate", &self.size_allocate)
5892            .field("state_flags_changed", &self.state_flags_changed)
5893            .field("direction_changed", &self.direction_changed)
5894            .field("get_request_mode", &self.get_request_mode)
5895            .field("measure", &self.measure)
5896            .field("mnemonic_activate", &self.mnemonic_activate)
5897            .field("grab_focus", &self.grab_focus)
5898            .field("focus", &self.focus)
5899            .field("set_focus_child", &self.set_focus_child)
5900            .field("move_focus", &self.move_focus)
5901            .field("keynav_failed", &self.keynav_failed)
5902            .field("query_tooltip", &self.query_tooltip)
5903            .field("compute_expand", &self.compute_expand)
5904            .field("css_changed", &self.css_changed)
5905            .field("system_setting_changed", &self.system_setting_changed)
5906            .field("snapshot", &self.snapshot)
5907            .field("contains", &self.contains)
5908            .finish()
5909    }
5910}
5911
5912#[repr(C)]
5913#[allow(dead_code)]
5914pub struct _GtkWidgetClassPrivate {
5915    _data: [u8; 0],
5916    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5917}
5918
5919pub type GtkWidgetClassPrivate = _GtkWidgetClassPrivate;
5920
5921#[derive(Copy, Clone)]
5922#[repr(C)]
5923pub struct GtkWidgetPaintableClass {
5924    pub parent_class: gobject::GObjectClass,
5925}
5926
5927impl ::std::fmt::Debug for GtkWidgetPaintableClass {
5928    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5929        f.debug_struct(&format!("GtkWidgetPaintableClass @ {self:p}"))
5930            .field("parent_class", &self.parent_class)
5931            .finish()
5932    }
5933}
5934
5935#[repr(C)]
5936#[allow(dead_code)]
5937pub struct _GtkWidgetPrivate {
5938    _data: [u8; 0],
5939    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5940}
5941
5942pub type GtkWidgetPrivate = _GtkWidgetPrivate;
5943
5944#[derive(Copy, Clone)]
5945#[repr(C)]
5946pub struct GtkWindowClass {
5947    pub parent_class: GtkWidgetClass,
5948    pub activate_focus: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5949    pub activate_default: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5950    pub keys_changed: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5951    pub enable_debugging: Option<unsafe extern "C" fn(*mut GtkWindow, gboolean) -> gboolean>,
5952    pub close_request: Option<unsafe extern "C" fn(*mut GtkWindow) -> gboolean>,
5953    pub padding: [gpointer; 8],
5954}
5955
5956impl ::std::fmt::Debug for GtkWindowClass {
5957    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5958        f.debug_struct(&format!("GtkWindowClass @ {self:p}"))
5959            .field("parent_class", &self.parent_class)
5960            .field("activate_focus", &self.activate_focus)
5961            .field("activate_default", &self.activate_default)
5962            .field("keys_changed", &self.keys_changed)
5963            .field("enable_debugging", &self.enable_debugging)
5964            .field("close_request", &self.close_request)
5965            .finish()
5966    }
5967}
5968
5969#[derive(Copy, Clone)]
5970#[repr(C)]
5971pub struct GtkWindowControlsClass {
5972    pub parent_class: GtkWidgetClass,
5973}
5974
5975impl ::std::fmt::Debug for GtkWindowControlsClass {
5976    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5977        f.debug_struct(&format!("GtkWindowControlsClass @ {self:p}"))
5978            .field("parent_class", &self.parent_class)
5979            .finish()
5980    }
5981}
5982
5983#[derive(Copy, Clone)]
5984#[repr(C)]
5985pub struct GtkWindowGroupClass {
5986    pub parent_class: gobject::GObjectClass,
5987    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5988    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5989    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5990    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5991}
5992
5993impl ::std::fmt::Debug for GtkWindowGroupClass {
5994    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5995        f.debug_struct(&format!("GtkWindowGroupClass @ {self:p}"))
5996            .field("parent_class", &self.parent_class)
5997            .field("_gtk_reserved1", &self._gtk_reserved1)
5998            .field("_gtk_reserved2", &self._gtk_reserved2)
5999            .field("_gtk_reserved3", &self._gtk_reserved3)
6000            .field("_gtk_reserved4", &self._gtk_reserved4)
6001            .finish()
6002    }
6003}
6004
6005#[repr(C)]
6006#[allow(dead_code)]
6007pub struct _GtkWindowGroupPrivate {
6008    _data: [u8; 0],
6009    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6010}
6011
6012pub type GtkWindowGroupPrivate = _GtkWindowGroupPrivate;
6013
6014#[derive(Copy, Clone)]
6015#[repr(C)]
6016pub struct GtkWindowHandleClass {
6017    pub parent_class: GtkWidgetClass,
6018}
6019
6020impl ::std::fmt::Debug for GtkWindowHandleClass {
6021    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6022        f.debug_struct(&format!("GtkWindowHandleClass @ {self:p}"))
6023            .field("parent_class", &self.parent_class)
6024            .finish()
6025    }
6026}
6027
6028// Classes
6029#[repr(C)]
6030#[allow(dead_code)]
6031pub struct GtkATContext {
6032    _data: [u8; 0],
6033    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6034}
6035
6036impl ::std::fmt::Debug for GtkATContext {
6037    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6038        f.debug_struct(&format!("GtkATContext @ {self:p}")).finish()
6039    }
6040}
6041
6042#[repr(C)]
6043#[allow(dead_code)]
6044pub struct GtkAboutDialog {
6045    _data: [u8; 0],
6046    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6047}
6048
6049impl ::std::fmt::Debug for GtkAboutDialog {
6050    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6051        f.debug_struct(&format!("GtkAboutDialog @ {self:p}"))
6052            .finish()
6053    }
6054}
6055
6056#[repr(C)]
6057#[allow(dead_code)]
6058pub struct GtkAccessibleHyperlink {
6059    _data: [u8; 0],
6060    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6061}
6062
6063impl ::std::fmt::Debug for GtkAccessibleHyperlink {
6064    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6065        f.debug_struct(&format!("GtkAccessibleHyperlink @ {self:p}"))
6066            .finish()
6067    }
6068}
6069
6070#[repr(C)]
6071#[allow(dead_code)]
6072pub struct GtkActionBar {
6073    _data: [u8; 0],
6074    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6075}
6076
6077impl ::std::fmt::Debug for GtkActionBar {
6078    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6079        f.debug_struct(&format!("GtkActionBar @ {self:p}")).finish()
6080    }
6081}
6082
6083#[repr(C)]
6084#[allow(dead_code)]
6085pub struct GtkActivateAction {
6086    _data: [u8; 0],
6087    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6088}
6089
6090impl ::std::fmt::Debug for GtkActivateAction {
6091    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6092        f.debug_struct(&format!("GtkActivateAction @ {self:p}"))
6093            .finish()
6094    }
6095}
6096
6097#[derive(Copy, Clone)]
6098#[repr(C)]
6099pub struct GtkAdjustment {
6100    pub parent_instance: gobject::GInitiallyUnowned,
6101}
6102
6103impl ::std::fmt::Debug for GtkAdjustment {
6104    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6105        f.debug_struct(&format!("GtkAdjustment @ {self:p}"))
6106            .field("parent_instance", &self.parent_instance)
6107            .finish()
6108    }
6109}
6110
6111#[repr(C)]
6112#[allow(dead_code)]
6113pub struct GtkAlertDialog {
6114    _data: [u8; 0],
6115    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6116}
6117
6118impl ::std::fmt::Debug for GtkAlertDialog {
6119    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6120        f.debug_struct(&format!("GtkAlertDialog @ {self:p}"))
6121            .finish()
6122    }
6123}
6124
6125#[repr(C)]
6126#[allow(dead_code)]
6127pub struct GtkAlternativeTrigger {
6128    _data: [u8; 0],
6129    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6130}
6131
6132impl ::std::fmt::Debug for GtkAlternativeTrigger {
6133    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6134        f.debug_struct(&format!("GtkAlternativeTrigger @ {self:p}"))
6135            .finish()
6136    }
6137}
6138
6139#[repr(C)]
6140#[allow(dead_code)]
6141pub struct GtkAnyFilter {
6142    _data: [u8; 0],
6143    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6144}
6145
6146impl ::std::fmt::Debug for GtkAnyFilter {
6147    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6148        f.debug_struct(&format!("GtkAnyFilter @ {self:p}")).finish()
6149    }
6150}
6151
6152#[repr(C)]
6153#[allow(dead_code)]
6154pub struct GtkAppChooserButton {
6155    _data: [u8; 0],
6156    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6157}
6158
6159impl ::std::fmt::Debug for GtkAppChooserButton {
6160    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6161        f.debug_struct(&format!("GtkAppChooserButton @ {self:p}"))
6162            .finish()
6163    }
6164}
6165
6166#[repr(C)]
6167#[allow(dead_code)]
6168pub struct GtkAppChooserDialog {
6169    _data: [u8; 0],
6170    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6171}
6172
6173impl ::std::fmt::Debug for GtkAppChooserDialog {
6174    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6175        f.debug_struct(&format!("GtkAppChooserDialog @ {self:p}"))
6176            .finish()
6177    }
6178}
6179
6180#[repr(C)]
6181#[allow(dead_code)]
6182pub struct GtkAppChooserWidget {
6183    _data: [u8; 0],
6184    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6185}
6186
6187impl ::std::fmt::Debug for GtkAppChooserWidget {
6188    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6189        f.debug_struct(&format!("GtkAppChooserWidget @ {self:p}"))
6190            .finish()
6191    }
6192}
6193
6194#[derive(Copy, Clone)]
6195#[repr(C)]
6196pub struct GtkApplication {
6197    pub parent_instance: gio::GApplication,
6198}
6199
6200impl ::std::fmt::Debug for GtkApplication {
6201    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6202        f.debug_struct(&format!("GtkApplication @ {self:p}"))
6203            .field("parent_instance", &self.parent_instance)
6204            .finish()
6205    }
6206}
6207
6208#[derive(Copy, Clone)]
6209#[repr(C)]
6210pub struct GtkApplicationWindow {
6211    pub parent_instance: GtkWindow,
6212}
6213
6214impl ::std::fmt::Debug for GtkApplicationWindow {
6215    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6216        f.debug_struct(&format!("GtkApplicationWindow @ {self:p}"))
6217            .field("parent_instance", &self.parent_instance)
6218            .finish()
6219    }
6220}
6221
6222#[repr(C)]
6223#[allow(dead_code)]
6224pub struct GtkAspectFrame {
6225    _data: [u8; 0],
6226    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6227}
6228
6229impl ::std::fmt::Debug for GtkAspectFrame {
6230    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6231        f.debug_struct(&format!("GtkAspectFrame @ {self:p}"))
6232            .finish()
6233    }
6234}
6235
6236#[repr(C)]
6237#[allow(dead_code)]
6238pub struct GtkAssistant {
6239    _data: [u8; 0],
6240    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6241}
6242
6243impl ::std::fmt::Debug for GtkAssistant {
6244    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6245        f.debug_struct(&format!("GtkAssistant @ {self:p}")).finish()
6246    }
6247}
6248
6249#[repr(C)]
6250#[allow(dead_code)]
6251pub struct GtkAssistantPage {
6252    _data: [u8; 0],
6253    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6254}
6255
6256impl ::std::fmt::Debug for GtkAssistantPage {
6257    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6258        f.debug_struct(&format!("GtkAssistantPage @ {self:p}"))
6259            .finish()
6260    }
6261}
6262
6263#[repr(C)]
6264#[allow(dead_code)]
6265pub struct GtkBinLayout {
6266    _data: [u8; 0],
6267    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6268}
6269
6270impl ::std::fmt::Debug for GtkBinLayout {
6271    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6272        f.debug_struct(&format!("GtkBinLayout @ {self:p}")).finish()
6273    }
6274}
6275
6276#[repr(C)]
6277#[allow(dead_code)]
6278pub struct GtkBookmarkList {
6279    _data: [u8; 0],
6280    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6281}
6282
6283impl ::std::fmt::Debug for GtkBookmarkList {
6284    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6285        f.debug_struct(&format!("GtkBookmarkList @ {self:p}"))
6286            .finish()
6287    }
6288}
6289
6290#[repr(C)]
6291#[allow(dead_code)]
6292pub struct GtkBoolFilter {
6293    _data: [u8; 0],
6294    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6295}
6296
6297impl ::std::fmt::Debug for GtkBoolFilter {
6298    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6299        f.debug_struct(&format!("GtkBoolFilter @ {self:p}"))
6300            .finish()
6301    }
6302}
6303
6304#[derive(Copy, Clone)]
6305#[repr(C)]
6306pub struct GtkBox {
6307    pub parent_instance: GtkWidget,
6308}
6309
6310impl ::std::fmt::Debug for GtkBox {
6311    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6312        f.debug_struct(&format!("GtkBox @ {self:p}"))
6313            .field("parent_instance", &self.parent_instance)
6314            .finish()
6315    }
6316}
6317
6318#[repr(C)]
6319#[allow(dead_code)]
6320pub struct GtkBoxLayout {
6321    _data: [u8; 0],
6322    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6323}
6324
6325impl ::std::fmt::Debug for GtkBoxLayout {
6326    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6327        f.debug_struct(&format!("GtkBoxLayout @ {self:p}")).finish()
6328    }
6329}
6330
6331#[repr(C)]
6332#[allow(dead_code)]
6333pub struct GtkBuilder {
6334    _data: [u8; 0],
6335    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6336}
6337
6338impl ::std::fmt::Debug for GtkBuilder {
6339    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6340        f.debug_struct(&format!("GtkBuilder @ {self:p}")).finish()
6341    }
6342}
6343
6344#[derive(Copy, Clone)]
6345#[repr(C)]
6346pub struct GtkBuilderCScope {
6347    pub parent_instance: gobject::GObject,
6348}
6349
6350impl ::std::fmt::Debug for GtkBuilderCScope {
6351    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6352        f.debug_struct(&format!("GtkBuilderCScope @ {self:p}"))
6353            .field("parent_instance", &self.parent_instance)
6354            .finish()
6355    }
6356}
6357
6358#[repr(C)]
6359#[allow(dead_code)]
6360pub struct GtkBuilderListItemFactory {
6361    _data: [u8; 0],
6362    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6363}
6364
6365impl ::std::fmt::Debug for GtkBuilderListItemFactory {
6366    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6367        f.debug_struct(&format!("GtkBuilderListItemFactory @ {self:p}"))
6368            .finish()
6369    }
6370}
6371
6372#[derive(Copy, Clone)]
6373#[repr(C)]
6374pub struct GtkButton {
6375    pub parent_instance: GtkWidget,
6376}
6377
6378impl ::std::fmt::Debug for GtkButton {
6379    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6380        f.debug_struct(&format!("GtkButton @ {self:p}")).finish()
6381    }
6382}
6383
6384#[repr(C)]
6385#[allow(dead_code)]
6386pub struct GtkCClosureExpression {
6387    _data: [u8; 0],
6388    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6389}
6390
6391impl ::std::fmt::Debug for GtkCClosureExpression {
6392    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6393        f.debug_struct(&format!("GtkCClosureExpression @ {self:p}"))
6394            .finish()
6395    }
6396}
6397
6398#[repr(C)]
6399#[allow(dead_code)]
6400pub struct GtkCalendar {
6401    _data: [u8; 0],
6402    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6403}
6404
6405impl ::std::fmt::Debug for GtkCalendar {
6406    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6407        f.debug_struct(&format!("GtkCalendar @ {self:p}")).finish()
6408    }
6409}
6410
6411#[repr(C)]
6412#[allow(dead_code)]
6413pub struct GtkCallbackAction {
6414    _data: [u8; 0],
6415    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6416}
6417
6418impl ::std::fmt::Debug for GtkCallbackAction {
6419    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6420        f.debug_struct(&format!("GtkCallbackAction @ {self:p}"))
6421            .finish()
6422    }
6423}
6424
6425#[derive(Copy, Clone)]
6426#[repr(C)]
6427pub struct GtkCellArea {
6428    pub parent_instance: gobject::GInitiallyUnowned,
6429}
6430
6431impl ::std::fmt::Debug for GtkCellArea {
6432    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6433        f.debug_struct(&format!("GtkCellArea @ {self:p}")).finish()
6434    }
6435}
6436
6437#[repr(C)]
6438#[allow(dead_code)]
6439pub struct GtkCellAreaBox {
6440    _data: [u8; 0],
6441    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6442}
6443
6444impl ::std::fmt::Debug for GtkCellAreaBox {
6445    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6446        f.debug_struct(&format!("GtkCellAreaBox @ {self:p}"))
6447            .finish()
6448    }
6449}
6450
6451#[derive(Copy, Clone)]
6452#[repr(C)]
6453pub struct GtkCellAreaContext {
6454    pub parent_instance: gobject::GObject,
6455}
6456
6457impl ::std::fmt::Debug for GtkCellAreaContext {
6458    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6459        f.debug_struct(&format!("GtkCellAreaContext @ {self:p}"))
6460            .finish()
6461    }
6462}
6463
6464#[derive(Copy, Clone)]
6465#[repr(C)]
6466pub struct GtkCellRenderer {
6467    pub parent_instance: gobject::GInitiallyUnowned,
6468    pub priv_: *mut GtkCellRendererPrivate,
6469}
6470
6471impl ::std::fmt::Debug for GtkCellRenderer {
6472    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6473        f.debug_struct(&format!("GtkCellRenderer @ {self:p}"))
6474            .field("parent_instance", &self.parent_instance)
6475            .finish()
6476    }
6477}
6478
6479#[repr(C)]
6480#[allow(dead_code)]
6481pub struct GtkCellRendererAccel {
6482    _data: [u8; 0],
6483    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6484}
6485
6486impl ::std::fmt::Debug for GtkCellRendererAccel {
6487    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6488        f.debug_struct(&format!("GtkCellRendererAccel @ {self:p}"))
6489            .finish()
6490    }
6491}
6492
6493#[repr(C)]
6494#[allow(dead_code)]
6495pub struct GtkCellRendererCombo {
6496    _data: [u8; 0],
6497    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6498}
6499
6500impl ::std::fmt::Debug for GtkCellRendererCombo {
6501    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6502        f.debug_struct(&format!("GtkCellRendererCombo @ {self:p}"))
6503            .finish()
6504    }
6505}
6506
6507#[repr(C)]
6508#[allow(dead_code)]
6509pub struct GtkCellRendererPixbuf {
6510    _data: [u8; 0],
6511    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6512}
6513
6514impl ::std::fmt::Debug for GtkCellRendererPixbuf {
6515    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6516        f.debug_struct(&format!("GtkCellRendererPixbuf @ {self:p}"))
6517            .finish()
6518    }
6519}
6520
6521#[repr(C)]
6522#[allow(dead_code)]
6523pub struct GtkCellRendererProgress {
6524    _data: [u8; 0],
6525    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6526}
6527
6528impl ::std::fmt::Debug for GtkCellRendererProgress {
6529    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6530        f.debug_struct(&format!("GtkCellRendererProgress @ {self:p}"))
6531            .finish()
6532    }
6533}
6534
6535#[repr(C)]
6536#[allow(dead_code)]
6537pub struct GtkCellRendererSpin {
6538    _data: [u8; 0],
6539    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6540}
6541
6542impl ::std::fmt::Debug for GtkCellRendererSpin {
6543    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6544        f.debug_struct(&format!("GtkCellRendererSpin @ {self:p}"))
6545            .finish()
6546    }
6547}
6548
6549#[repr(C)]
6550#[allow(dead_code)]
6551pub struct GtkCellRendererSpinner {
6552    _data: [u8; 0],
6553    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6554}
6555
6556impl ::std::fmt::Debug for GtkCellRendererSpinner {
6557    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6558        f.debug_struct(&format!("GtkCellRendererSpinner @ {self:p}"))
6559            .finish()
6560    }
6561}
6562
6563#[derive(Copy, Clone)]
6564#[repr(C)]
6565pub struct GtkCellRendererText {
6566    pub parent: GtkCellRenderer,
6567}
6568
6569impl ::std::fmt::Debug for GtkCellRendererText {
6570    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6571        f.debug_struct(&format!("GtkCellRendererText @ {self:p}"))
6572            .field("parent", &self.parent)
6573            .finish()
6574    }
6575}
6576
6577#[repr(C)]
6578#[allow(dead_code)]
6579pub struct GtkCellRendererToggle {
6580    _data: [u8; 0],
6581    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6582}
6583
6584impl ::std::fmt::Debug for GtkCellRendererToggle {
6585    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6586        f.debug_struct(&format!("GtkCellRendererToggle @ {self:p}"))
6587            .finish()
6588    }
6589}
6590
6591#[repr(C)]
6592#[allow(dead_code)]
6593pub struct GtkCellView {
6594    _data: [u8; 0],
6595    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6596}
6597
6598impl ::std::fmt::Debug for GtkCellView {
6599    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6600        f.debug_struct(&format!("GtkCellView @ {self:p}")).finish()
6601    }
6602}
6603
6604#[repr(C)]
6605#[allow(dead_code)]
6606pub struct GtkCenterBox {
6607    _data: [u8; 0],
6608    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6609}
6610
6611impl ::std::fmt::Debug for GtkCenterBox {
6612    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6613        f.debug_struct(&format!("GtkCenterBox @ {self:p}")).finish()
6614    }
6615}
6616
6617#[repr(C)]
6618#[allow(dead_code)]
6619pub struct GtkCenterLayout {
6620    _data: [u8; 0],
6621    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6622}
6623
6624impl ::std::fmt::Debug for GtkCenterLayout {
6625    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6626        f.debug_struct(&format!("GtkCenterLayout @ {self:p}"))
6627            .finish()
6628    }
6629}
6630
6631#[derive(Copy, Clone)]
6632#[repr(C)]
6633pub struct GtkCheckButton {
6634    pub parent_instance: GtkWidget,
6635}
6636
6637impl ::std::fmt::Debug for GtkCheckButton {
6638    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6639        f.debug_struct(&format!("GtkCheckButton @ {self:p}"))
6640            .field("parent_instance", &self.parent_instance)
6641            .finish()
6642    }
6643}
6644
6645#[repr(C)]
6646#[allow(dead_code)]
6647pub struct GtkClosureExpression {
6648    _data: [u8; 0],
6649    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6650}
6651
6652impl ::std::fmt::Debug for GtkClosureExpression {
6653    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6654        f.debug_struct(&format!("GtkClosureExpression @ {self:p}"))
6655            .finish()
6656    }
6657}
6658
6659#[repr(C)]
6660#[allow(dead_code)]
6661pub struct GtkColorButton {
6662    _data: [u8; 0],
6663    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6664}
6665
6666impl ::std::fmt::Debug for GtkColorButton {
6667    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6668        f.debug_struct(&format!("GtkColorButton @ {self:p}"))
6669            .finish()
6670    }
6671}
6672
6673#[repr(C)]
6674#[allow(dead_code)]
6675pub struct GtkColorChooserDialog {
6676    _data: [u8; 0],
6677    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6678}
6679
6680impl ::std::fmt::Debug for GtkColorChooserDialog {
6681    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6682        f.debug_struct(&format!("GtkColorChooserDialog @ {self:p}"))
6683            .finish()
6684    }
6685}
6686
6687#[repr(C)]
6688#[allow(dead_code)]
6689pub struct GtkColorChooserWidget {
6690    _data: [u8; 0],
6691    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6692}
6693
6694impl ::std::fmt::Debug for GtkColorChooserWidget {
6695    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6696        f.debug_struct(&format!("GtkColorChooserWidget @ {self:p}"))
6697            .finish()
6698    }
6699}
6700
6701#[repr(C)]
6702#[allow(dead_code)]
6703pub struct GtkColorDialog {
6704    _data: [u8; 0],
6705    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6706}
6707
6708impl ::std::fmt::Debug for GtkColorDialog {
6709    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6710        f.debug_struct(&format!("GtkColorDialog @ {self:p}"))
6711            .finish()
6712    }
6713}
6714
6715#[repr(C)]
6716#[allow(dead_code)]
6717pub struct GtkColorDialogButton {
6718    _data: [u8; 0],
6719    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6720}
6721
6722impl ::std::fmt::Debug for GtkColorDialogButton {
6723    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6724        f.debug_struct(&format!("GtkColorDialogButton @ {self:p}"))
6725            .finish()
6726    }
6727}
6728
6729#[repr(C)]
6730#[allow(dead_code)]
6731pub struct GtkColumnView {
6732    _data: [u8; 0],
6733    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6734}
6735
6736impl ::std::fmt::Debug for GtkColumnView {
6737    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6738        f.debug_struct(&format!("GtkColumnView @ {self:p}"))
6739            .finish()
6740    }
6741}
6742
6743#[repr(C)]
6744#[allow(dead_code)]
6745pub struct GtkColumnViewCell {
6746    _data: [u8; 0],
6747    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6748}
6749
6750impl ::std::fmt::Debug for GtkColumnViewCell {
6751    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6752        f.debug_struct(&format!("GtkColumnViewCell @ {self:p}"))
6753            .finish()
6754    }
6755}
6756
6757#[repr(C)]
6758#[allow(dead_code)]
6759pub struct GtkColumnViewColumn {
6760    _data: [u8; 0],
6761    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6762}
6763
6764impl ::std::fmt::Debug for GtkColumnViewColumn {
6765    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6766        f.debug_struct(&format!("GtkColumnViewColumn @ {self:p}"))
6767            .finish()
6768    }
6769}
6770
6771#[repr(C)]
6772#[allow(dead_code)]
6773pub struct GtkColumnViewRow {
6774    _data: [u8; 0],
6775    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6776}
6777
6778impl ::std::fmt::Debug for GtkColumnViewRow {
6779    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6780        f.debug_struct(&format!("GtkColumnViewRow @ {self:p}"))
6781            .finish()
6782    }
6783}
6784
6785#[repr(C)]
6786#[allow(dead_code)]
6787pub struct GtkColumnViewSorter {
6788    _data: [u8; 0],
6789    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6790}
6791
6792impl ::std::fmt::Debug for GtkColumnViewSorter {
6793    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6794        f.debug_struct(&format!("GtkColumnViewSorter @ {self:p}"))
6795            .finish()
6796    }
6797}
6798
6799#[derive(Copy, Clone)]
6800#[repr(C)]
6801pub struct GtkComboBox {
6802    pub parent_instance: GtkWidget,
6803}
6804
6805impl ::std::fmt::Debug for GtkComboBox {
6806    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6807        f.debug_struct(&format!("GtkComboBox @ {self:p}"))
6808            .field("parent_instance", &self.parent_instance)
6809            .finish()
6810    }
6811}
6812
6813#[repr(C)]
6814#[allow(dead_code)]
6815pub struct GtkComboBoxText {
6816    _data: [u8; 0],
6817    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6818}
6819
6820impl ::std::fmt::Debug for GtkComboBoxText {
6821    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6822        f.debug_struct(&format!("GtkComboBoxText @ {self:p}"))
6823            .finish()
6824    }
6825}
6826
6827#[repr(C)]
6828#[allow(dead_code)]
6829pub struct GtkConstantExpression {
6830    _data: [u8; 0],
6831    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6832}
6833
6834impl ::std::fmt::Debug for GtkConstantExpression {
6835    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6836        f.debug_struct(&format!("GtkConstantExpression @ {self:p}"))
6837            .finish()
6838    }
6839}
6840
6841#[repr(C)]
6842#[allow(dead_code)]
6843pub struct GtkConstraint {
6844    _data: [u8; 0],
6845    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6846}
6847
6848impl ::std::fmt::Debug for GtkConstraint {
6849    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6850        f.debug_struct(&format!("GtkConstraint @ {self:p}"))
6851            .finish()
6852    }
6853}
6854
6855#[repr(C)]
6856#[allow(dead_code)]
6857pub struct GtkConstraintGuide {
6858    _data: [u8; 0],
6859    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6860}
6861
6862impl ::std::fmt::Debug for GtkConstraintGuide {
6863    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6864        f.debug_struct(&format!("GtkConstraintGuide @ {self:p}"))
6865            .finish()
6866    }
6867}
6868
6869#[repr(C)]
6870#[allow(dead_code)]
6871pub struct GtkConstraintLayout {
6872    _data: [u8; 0],
6873    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6874}
6875
6876impl ::std::fmt::Debug for GtkConstraintLayout {
6877    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6878        f.debug_struct(&format!("GtkConstraintLayout @ {self:p}"))
6879            .finish()
6880    }
6881}
6882
6883#[repr(C)]
6884#[allow(dead_code)]
6885pub struct GtkConstraintLayoutChild {
6886    _data: [u8; 0],
6887    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6888}
6889
6890impl ::std::fmt::Debug for GtkConstraintLayoutChild {
6891    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6892        f.debug_struct(&format!("GtkConstraintLayoutChild @ {self:p}"))
6893            .finish()
6894    }
6895}
6896
6897#[derive(Copy, Clone)]
6898#[repr(C)]
6899pub struct GtkCssProvider {
6900    pub parent_instance: gobject::GObject,
6901}
6902
6903impl ::std::fmt::Debug for GtkCssProvider {
6904    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6905        f.debug_struct(&format!("GtkCssProvider @ {self:p}"))
6906            .field("parent_instance", &self.parent_instance)
6907            .finish()
6908    }
6909}
6910
6911#[repr(C)]
6912#[allow(dead_code)]
6913pub struct GtkCustomFilter {
6914    _data: [u8; 0],
6915    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6916}
6917
6918impl ::std::fmt::Debug for GtkCustomFilter {
6919    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6920        f.debug_struct(&format!("GtkCustomFilter @ {self:p}"))
6921            .finish()
6922    }
6923}
6924
6925#[repr(C)]
6926#[allow(dead_code)]
6927pub struct GtkCustomLayout {
6928    _data: [u8; 0],
6929    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6930}
6931
6932impl ::std::fmt::Debug for GtkCustomLayout {
6933    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6934        f.debug_struct(&format!("GtkCustomLayout @ {self:p}"))
6935            .finish()
6936    }
6937}
6938
6939#[repr(C)]
6940#[allow(dead_code)]
6941pub struct GtkCustomSorter {
6942    _data: [u8; 0],
6943    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6944}
6945
6946impl ::std::fmt::Debug for GtkCustomSorter {
6947    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6948        f.debug_struct(&format!("GtkCustomSorter @ {self:p}"))
6949            .finish()
6950    }
6951}
6952
6953#[derive(Copy, Clone)]
6954#[repr(C)]
6955pub struct GtkDialog {
6956    pub parent_instance: GtkWindow,
6957}
6958
6959impl ::std::fmt::Debug for GtkDialog {
6960    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6961        f.debug_struct(&format!("GtkDialog @ {self:p}"))
6962            .field("parent_instance", &self.parent_instance)
6963            .finish()
6964    }
6965}
6966
6967#[repr(C)]
6968#[allow(dead_code)]
6969pub struct GtkDirectoryList {
6970    _data: [u8; 0],
6971    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6972}
6973
6974impl ::std::fmt::Debug for GtkDirectoryList {
6975    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6976        f.debug_struct(&format!("GtkDirectoryList @ {self:p}"))
6977            .finish()
6978    }
6979}
6980
6981#[repr(C)]
6982#[allow(dead_code)]
6983pub struct GtkDragIcon {
6984    _data: [u8; 0],
6985    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6986}
6987
6988impl ::std::fmt::Debug for GtkDragIcon {
6989    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6990        f.debug_struct(&format!("GtkDragIcon @ {self:p}")).finish()
6991    }
6992}
6993
6994#[repr(C)]
6995#[allow(dead_code)]
6996pub struct GtkDragSource {
6997    _data: [u8; 0],
6998    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6999}
7000
7001impl ::std::fmt::Debug for GtkDragSource {
7002    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7003        f.debug_struct(&format!("GtkDragSource @ {self:p}"))
7004            .finish()
7005    }
7006}
7007
7008#[derive(Copy, Clone)]
7009#[repr(C)]
7010pub struct GtkDrawingArea {
7011    pub widget: GtkWidget,
7012}
7013
7014impl ::std::fmt::Debug for GtkDrawingArea {
7015    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7016        f.debug_struct(&format!("GtkDrawingArea @ {self:p}"))
7017            .field("widget", &self.widget)
7018            .finish()
7019    }
7020}
7021
7022#[repr(C)]
7023#[allow(dead_code)]
7024pub struct GtkDropControllerMotion {
7025    _data: [u8; 0],
7026    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7027}
7028
7029impl ::std::fmt::Debug for GtkDropControllerMotion {
7030    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7031        f.debug_struct(&format!("GtkDropControllerMotion @ {self:p}"))
7032            .finish()
7033    }
7034}
7035
7036#[repr(C)]
7037#[allow(dead_code)]
7038pub struct GtkDropDown {
7039    _data: [u8; 0],
7040    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7041}
7042
7043impl ::std::fmt::Debug for GtkDropDown {
7044    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7045        f.debug_struct(&format!("GtkDropDown @ {self:p}")).finish()
7046    }
7047}
7048
7049#[repr(C)]
7050#[allow(dead_code)]
7051pub struct GtkDropTarget {
7052    _data: [u8; 0],
7053    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7054}
7055
7056impl ::std::fmt::Debug for GtkDropTarget {
7057    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7058        f.debug_struct(&format!("GtkDropTarget @ {self:p}"))
7059            .finish()
7060    }
7061}
7062
7063#[repr(C)]
7064#[allow(dead_code)]
7065pub struct GtkDropTargetAsync {
7066    _data: [u8; 0],
7067    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7068}
7069
7070impl ::std::fmt::Debug for GtkDropTargetAsync {
7071    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7072        f.debug_struct(&format!("GtkDropTargetAsync @ {self:p}"))
7073            .finish()
7074    }
7075}
7076
7077#[repr(C)]
7078#[allow(dead_code)]
7079pub struct GtkEditableLabel {
7080    _data: [u8; 0],
7081    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7082}
7083
7084impl ::std::fmt::Debug for GtkEditableLabel {
7085    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7086        f.debug_struct(&format!("GtkEditableLabel @ {self:p}"))
7087            .finish()
7088    }
7089}
7090
7091#[repr(C)]
7092#[allow(dead_code)]
7093pub struct GtkEmojiChooser {
7094    _data: [u8; 0],
7095    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7096}
7097
7098impl ::std::fmt::Debug for GtkEmojiChooser {
7099    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7100        f.debug_struct(&format!("GtkEmojiChooser @ {self:p}"))
7101            .finish()
7102    }
7103}
7104
7105#[derive(Copy, Clone)]
7106#[repr(C)]
7107pub struct GtkEntry {
7108    pub parent_instance: GtkWidget,
7109}
7110
7111impl ::std::fmt::Debug for GtkEntry {
7112    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7113        f.debug_struct(&format!("GtkEntry @ {self:p}")).finish()
7114    }
7115}
7116
7117#[derive(Copy, Clone)]
7118#[repr(C)]
7119pub struct GtkEntryBuffer {
7120    pub parent_instance: gobject::GObject,
7121}
7122
7123impl ::std::fmt::Debug for GtkEntryBuffer {
7124    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7125        f.debug_struct(&format!("GtkEntryBuffer @ {self:p}"))
7126            .field("parent_instance", &self.parent_instance)
7127            .finish()
7128    }
7129}
7130
7131#[repr(C)]
7132#[allow(dead_code)]
7133pub struct GtkEntryCompletion {
7134    _data: [u8; 0],
7135    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7136}
7137
7138impl ::std::fmt::Debug for GtkEntryCompletion {
7139    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7140        f.debug_struct(&format!("GtkEntryCompletion @ {self:p}"))
7141            .finish()
7142    }
7143}
7144
7145#[repr(C)]
7146#[allow(dead_code)]
7147pub struct GtkEventController {
7148    _data: [u8; 0],
7149    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7150}
7151
7152impl ::std::fmt::Debug for GtkEventController {
7153    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7154        f.debug_struct(&format!("GtkEventController @ {self:p}"))
7155            .finish()
7156    }
7157}
7158
7159#[repr(C)]
7160#[allow(dead_code)]
7161pub struct GtkEventControllerFocus {
7162    _data: [u8; 0],
7163    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7164}
7165
7166impl ::std::fmt::Debug for GtkEventControllerFocus {
7167    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7168        f.debug_struct(&format!("GtkEventControllerFocus @ {self:p}"))
7169            .finish()
7170    }
7171}
7172
7173#[repr(C)]
7174#[allow(dead_code)]
7175pub struct GtkEventControllerKey {
7176    _data: [u8; 0],
7177    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7178}
7179
7180impl ::std::fmt::Debug for GtkEventControllerKey {
7181    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7182        f.debug_struct(&format!("GtkEventControllerKey @ {self:p}"))
7183            .finish()
7184    }
7185}
7186
7187#[repr(C)]
7188#[allow(dead_code)]
7189pub struct GtkEventControllerLegacy {
7190    _data: [u8; 0],
7191    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7192}
7193
7194impl ::std::fmt::Debug for GtkEventControllerLegacy {
7195    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7196        f.debug_struct(&format!("GtkEventControllerLegacy @ {self:p}"))
7197            .finish()
7198    }
7199}
7200
7201#[repr(C)]
7202#[allow(dead_code)]
7203pub struct GtkEventControllerMotion {
7204    _data: [u8; 0],
7205    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7206}
7207
7208impl ::std::fmt::Debug for GtkEventControllerMotion {
7209    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7210        f.debug_struct(&format!("GtkEventControllerMotion @ {self:p}"))
7211            .finish()
7212    }
7213}
7214
7215#[repr(C)]
7216#[allow(dead_code)]
7217pub struct GtkEventControllerScroll {
7218    _data: [u8; 0],
7219    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7220}
7221
7222impl ::std::fmt::Debug for GtkEventControllerScroll {
7223    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7224        f.debug_struct(&format!("GtkEventControllerScroll @ {self:p}"))
7225            .finish()
7226    }
7227}
7228
7229#[repr(C)]
7230#[allow(dead_code)]
7231pub struct GtkEveryFilter {
7232    _data: [u8; 0],
7233    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7234}
7235
7236impl ::std::fmt::Debug for GtkEveryFilter {
7237    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7238        f.debug_struct(&format!("GtkEveryFilter @ {self:p}"))
7239            .finish()
7240    }
7241}
7242
7243#[repr(C)]
7244#[allow(dead_code)]
7245pub struct GtkExpander {
7246    _data: [u8; 0],
7247    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7248}
7249
7250impl ::std::fmt::Debug for GtkExpander {
7251    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7252        f.debug_struct(&format!("GtkExpander @ {self:p}")).finish()
7253    }
7254}
7255
7256#[repr(C)]
7257#[allow(dead_code)]
7258pub struct GtkExpression {
7259    _data: [u8; 0],
7260    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7261}
7262
7263impl ::std::fmt::Debug for GtkExpression {
7264    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7265        f.debug_struct(&format!("GtkExpression @ {self:p}"))
7266            .finish()
7267    }
7268}
7269
7270#[repr(C)]
7271#[allow(dead_code)]
7272pub struct GtkFileChooserDialog {
7273    _data: [u8; 0],
7274    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7275}
7276
7277impl ::std::fmt::Debug for GtkFileChooserDialog {
7278    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7279        f.debug_struct(&format!("GtkFileChooserDialog @ {self:p}"))
7280            .finish()
7281    }
7282}
7283
7284#[repr(C)]
7285#[allow(dead_code)]
7286pub struct GtkFileChooserNative {
7287    _data: [u8; 0],
7288    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7289}
7290
7291impl ::std::fmt::Debug for GtkFileChooserNative {
7292    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7293        f.debug_struct(&format!("GtkFileChooserNative @ {self:p}"))
7294            .finish()
7295    }
7296}
7297
7298#[repr(C)]
7299#[allow(dead_code)]
7300pub struct GtkFileChooserWidget {
7301    _data: [u8; 0],
7302    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7303}
7304
7305impl ::std::fmt::Debug for GtkFileChooserWidget {
7306    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7307        f.debug_struct(&format!("GtkFileChooserWidget @ {self:p}"))
7308            .finish()
7309    }
7310}
7311
7312#[repr(C)]
7313#[allow(dead_code)]
7314pub struct GtkFileDialog {
7315    _data: [u8; 0],
7316    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7317}
7318
7319impl ::std::fmt::Debug for GtkFileDialog {
7320    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7321        f.debug_struct(&format!("GtkFileDialog @ {self:p}"))
7322            .finish()
7323    }
7324}
7325
7326#[repr(C)]
7327#[allow(dead_code)]
7328pub struct GtkFileFilter {
7329    _data: [u8; 0],
7330    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7331}
7332
7333impl ::std::fmt::Debug for GtkFileFilter {
7334    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7335        f.debug_struct(&format!("GtkFileFilter @ {self:p}"))
7336            .finish()
7337    }
7338}
7339
7340#[repr(C)]
7341#[allow(dead_code)]
7342pub struct GtkFileLauncher {
7343    _data: [u8; 0],
7344    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7345}
7346
7347impl ::std::fmt::Debug for GtkFileLauncher {
7348    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7349        f.debug_struct(&format!("GtkFileLauncher @ {self:p}"))
7350            .finish()
7351    }
7352}
7353
7354#[derive(Copy, Clone)]
7355#[repr(C)]
7356pub struct GtkFilter {
7357    pub parent_instance: gobject::GObject,
7358}
7359
7360impl ::std::fmt::Debug for GtkFilter {
7361    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7362        f.debug_struct(&format!("GtkFilter @ {self:p}"))
7363            .field("parent_instance", &self.parent_instance)
7364            .finish()
7365    }
7366}
7367
7368#[repr(C)]
7369#[allow(dead_code)]
7370pub struct GtkFilterListModel {
7371    _data: [u8; 0],
7372    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7373}
7374
7375impl ::std::fmt::Debug for GtkFilterListModel {
7376    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7377        f.debug_struct(&format!("GtkFilterListModel @ {self:p}"))
7378            .finish()
7379    }
7380}
7381
7382#[derive(Copy, Clone)]
7383#[repr(C)]
7384pub struct GtkFixed {
7385    pub parent_instance: GtkWidget,
7386}
7387
7388impl ::std::fmt::Debug for GtkFixed {
7389    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7390        f.debug_struct(&format!("GtkFixed @ {self:p}"))
7391            .field("parent_instance", &self.parent_instance)
7392            .finish()
7393    }
7394}
7395
7396#[repr(C)]
7397#[allow(dead_code)]
7398pub struct GtkFixedLayout {
7399    _data: [u8; 0],
7400    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7401}
7402
7403impl ::std::fmt::Debug for GtkFixedLayout {
7404    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7405        f.debug_struct(&format!("GtkFixedLayout @ {self:p}"))
7406            .finish()
7407    }
7408}
7409
7410#[repr(C)]
7411#[allow(dead_code)]
7412pub struct GtkFixedLayoutChild {
7413    _data: [u8; 0],
7414    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7415}
7416
7417impl ::std::fmt::Debug for GtkFixedLayoutChild {
7418    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7419        f.debug_struct(&format!("GtkFixedLayoutChild @ {self:p}"))
7420            .finish()
7421    }
7422}
7423
7424#[repr(C)]
7425#[allow(dead_code)]
7426pub struct GtkFlattenListModel {
7427    _data: [u8; 0],
7428    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7429}
7430
7431impl ::std::fmt::Debug for GtkFlattenListModel {
7432    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7433        f.debug_struct(&format!("GtkFlattenListModel @ {self:p}"))
7434            .finish()
7435    }
7436}
7437
7438#[repr(C)]
7439#[allow(dead_code)]
7440pub struct GtkFlowBox {
7441    _data: [u8; 0],
7442    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7443}
7444
7445impl ::std::fmt::Debug for GtkFlowBox {
7446    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7447        f.debug_struct(&format!("GtkFlowBox @ {self:p}")).finish()
7448    }
7449}
7450
7451#[derive(Copy, Clone)]
7452#[repr(C)]
7453pub struct GtkFlowBoxChild {
7454    pub parent_instance: GtkWidget,
7455}
7456
7457impl ::std::fmt::Debug for GtkFlowBoxChild {
7458    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7459        f.debug_struct(&format!("GtkFlowBoxChild @ {self:p}"))
7460            .finish()
7461    }
7462}
7463
7464#[repr(C)]
7465#[allow(dead_code)]
7466pub struct GtkFontButton {
7467    _data: [u8; 0],
7468    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7469}
7470
7471impl ::std::fmt::Debug for GtkFontButton {
7472    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7473        f.debug_struct(&format!("GtkFontButton @ {self:p}"))
7474            .finish()
7475    }
7476}
7477
7478#[repr(C)]
7479#[allow(dead_code)]
7480pub struct GtkFontChooserDialog {
7481    _data: [u8; 0],
7482    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7483}
7484
7485impl ::std::fmt::Debug for GtkFontChooserDialog {
7486    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7487        f.debug_struct(&format!("GtkFontChooserDialog @ {self:p}"))
7488            .finish()
7489    }
7490}
7491
7492#[repr(C)]
7493#[allow(dead_code)]
7494pub struct GtkFontChooserWidget {
7495    _data: [u8; 0],
7496    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7497}
7498
7499impl ::std::fmt::Debug for GtkFontChooserWidget {
7500    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7501        f.debug_struct(&format!("GtkFontChooserWidget @ {self:p}"))
7502            .finish()
7503    }
7504}
7505
7506#[repr(C)]
7507#[allow(dead_code)]
7508pub struct GtkFontDialog {
7509    _data: [u8; 0],
7510    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7511}
7512
7513impl ::std::fmt::Debug for GtkFontDialog {
7514    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7515        f.debug_struct(&format!("GtkFontDialog @ {self:p}"))
7516            .finish()
7517    }
7518}
7519
7520#[repr(C)]
7521#[allow(dead_code)]
7522pub struct GtkFontDialogButton {
7523    _data: [u8; 0],
7524    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7525}
7526
7527impl ::std::fmt::Debug for GtkFontDialogButton {
7528    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7529        f.debug_struct(&format!("GtkFontDialogButton @ {self:p}"))
7530            .finish()
7531    }
7532}
7533
7534#[derive(Copy, Clone)]
7535#[repr(C)]
7536pub struct GtkFrame {
7537    pub parent_instance: GtkWidget,
7538}
7539
7540impl ::std::fmt::Debug for GtkFrame {
7541    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7542        f.debug_struct(&format!("GtkFrame @ {self:p}"))
7543            .field("parent_instance", &self.parent_instance)
7544            .finish()
7545    }
7546}
7547
7548#[derive(Copy, Clone)]
7549#[repr(C)]
7550pub struct GtkGLArea {
7551    pub parent_instance: GtkWidget,
7552}
7553
7554impl ::std::fmt::Debug for GtkGLArea {
7555    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7556        f.debug_struct(&format!("GtkGLArea @ {self:p}")).finish()
7557    }
7558}
7559
7560#[repr(C)]
7561#[allow(dead_code)]
7562pub struct GtkGesture {
7563    _data: [u8; 0],
7564    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7565}
7566
7567impl ::std::fmt::Debug for GtkGesture {
7568    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7569        f.debug_struct(&format!("GtkGesture @ {self:p}")).finish()
7570    }
7571}
7572
7573#[repr(C)]
7574#[allow(dead_code)]
7575pub struct GtkGestureClick {
7576    _data: [u8; 0],
7577    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7578}
7579
7580impl ::std::fmt::Debug for GtkGestureClick {
7581    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7582        f.debug_struct(&format!("GtkGestureClick @ {self:p}"))
7583            .finish()
7584    }
7585}
7586
7587#[repr(C)]
7588#[allow(dead_code)]
7589pub struct GtkGestureDrag {
7590    _data: [u8; 0],
7591    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7592}
7593
7594impl ::std::fmt::Debug for GtkGestureDrag {
7595    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7596        f.debug_struct(&format!("GtkGestureDrag @ {self:p}"))
7597            .finish()
7598    }
7599}
7600
7601#[repr(C)]
7602#[allow(dead_code)]
7603pub struct GtkGestureLongPress {
7604    _data: [u8; 0],
7605    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7606}
7607
7608impl ::std::fmt::Debug for GtkGestureLongPress {
7609    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7610        f.debug_struct(&format!("GtkGestureLongPress @ {self:p}"))
7611            .finish()
7612    }
7613}
7614
7615#[repr(C)]
7616#[allow(dead_code)]
7617pub struct GtkGesturePan {
7618    _data: [u8; 0],
7619    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7620}
7621
7622impl ::std::fmt::Debug for GtkGesturePan {
7623    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7624        f.debug_struct(&format!("GtkGesturePan @ {self:p}"))
7625            .finish()
7626    }
7627}
7628
7629#[repr(C)]
7630#[allow(dead_code)]
7631pub struct GtkGestureRotate {
7632    _data: [u8; 0],
7633    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7634}
7635
7636impl ::std::fmt::Debug for GtkGestureRotate {
7637    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7638        f.debug_struct(&format!("GtkGestureRotate @ {self:p}"))
7639            .finish()
7640    }
7641}
7642
7643#[repr(C)]
7644#[allow(dead_code)]
7645pub struct GtkGestureSingle {
7646    _data: [u8; 0],
7647    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7648}
7649
7650impl ::std::fmt::Debug for GtkGestureSingle {
7651    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7652        f.debug_struct(&format!("GtkGestureSingle @ {self:p}"))
7653            .finish()
7654    }
7655}
7656
7657#[repr(C)]
7658#[allow(dead_code)]
7659pub struct GtkGestureStylus {
7660    _data: [u8; 0],
7661    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7662}
7663
7664impl ::std::fmt::Debug for GtkGestureStylus {
7665    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7666        f.debug_struct(&format!("GtkGestureStylus @ {self:p}"))
7667            .finish()
7668    }
7669}
7670
7671#[repr(C)]
7672#[allow(dead_code)]
7673pub struct GtkGestureSwipe {
7674    _data: [u8; 0],
7675    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7676}
7677
7678impl ::std::fmt::Debug for GtkGestureSwipe {
7679    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7680        f.debug_struct(&format!("GtkGestureSwipe @ {self:p}"))
7681            .finish()
7682    }
7683}
7684
7685#[repr(C)]
7686#[allow(dead_code)]
7687pub struct GtkGestureZoom {
7688    _data: [u8; 0],
7689    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7690}
7691
7692impl ::std::fmt::Debug for GtkGestureZoom {
7693    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7694        f.debug_struct(&format!("GtkGestureZoom @ {self:p}"))
7695            .finish()
7696    }
7697}
7698
7699#[repr(C)]
7700#[allow(dead_code)]
7701pub struct GtkGraphicsOffload {
7702    _data: [u8; 0],
7703    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7704}
7705
7706impl ::std::fmt::Debug for GtkGraphicsOffload {
7707    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7708        f.debug_struct(&format!("GtkGraphicsOffload @ {self:p}"))
7709            .finish()
7710    }
7711}
7712
7713#[derive(Copy, Clone)]
7714#[repr(C)]
7715pub struct GtkGrid {
7716    pub parent_instance: GtkWidget,
7717}
7718
7719impl ::std::fmt::Debug for GtkGrid {
7720    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7721        f.debug_struct(&format!("GtkGrid @ {self:p}")).finish()
7722    }
7723}
7724
7725#[repr(C)]
7726#[allow(dead_code)]
7727pub struct GtkGridLayout {
7728    _data: [u8; 0],
7729    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7730}
7731
7732impl ::std::fmt::Debug for GtkGridLayout {
7733    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7734        f.debug_struct(&format!("GtkGridLayout @ {self:p}"))
7735            .finish()
7736    }
7737}
7738
7739#[repr(C)]
7740#[allow(dead_code)]
7741pub struct GtkGridLayoutChild {
7742    _data: [u8; 0],
7743    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7744}
7745
7746impl ::std::fmt::Debug for GtkGridLayoutChild {
7747    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7748        f.debug_struct(&format!("GtkGridLayoutChild @ {self:p}"))
7749            .finish()
7750    }
7751}
7752
7753#[repr(C)]
7754#[allow(dead_code)]
7755pub struct GtkGridView {
7756    _data: [u8; 0],
7757    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7758}
7759
7760impl ::std::fmt::Debug for GtkGridView {
7761    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7762        f.debug_struct(&format!("GtkGridView @ {self:p}")).finish()
7763    }
7764}
7765
7766#[repr(C)]
7767#[allow(dead_code)]
7768pub struct GtkHeaderBar {
7769    _data: [u8; 0],
7770    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7771}
7772
7773impl ::std::fmt::Debug for GtkHeaderBar {
7774    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7775        f.debug_struct(&format!("GtkHeaderBar @ {self:p}")).finish()
7776    }
7777}
7778
7779#[derive(Copy, Clone)]
7780#[repr(C)]
7781pub struct GtkIMContext {
7782    pub parent_instance: gobject::GObject,
7783}
7784
7785impl ::std::fmt::Debug for GtkIMContext {
7786    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7787        f.debug_struct(&format!("GtkIMContext @ {self:p}"))
7788            .field("parent_instance", &self.parent_instance)
7789            .finish()
7790    }
7791}
7792
7793#[derive(Copy, Clone)]
7794#[repr(C)]
7795pub struct GtkIMContextSimple {
7796    pub object: GtkIMContext,
7797    pub priv_: *mut GtkIMContextSimplePrivate,
7798}
7799
7800impl ::std::fmt::Debug for GtkIMContextSimple {
7801    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7802        f.debug_struct(&format!("GtkIMContextSimple @ {self:p}"))
7803            .field("object", &self.object)
7804            .finish()
7805    }
7806}
7807
7808#[derive(Copy, Clone)]
7809#[repr(C)]
7810pub struct GtkIMMulticontext {
7811    pub object: GtkIMContext,
7812    pub priv_: *mut GtkIMMulticontextPrivate,
7813}
7814
7815impl ::std::fmt::Debug for GtkIMMulticontext {
7816    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7817        f.debug_struct(&format!("GtkIMMulticontext @ {self:p}"))
7818            .field("object", &self.object)
7819            .finish()
7820    }
7821}
7822
7823#[repr(C)]
7824#[allow(dead_code)]
7825pub struct GtkIconPaintable {
7826    _data: [u8; 0],
7827    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7828}
7829
7830impl ::std::fmt::Debug for GtkIconPaintable {
7831    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7832        f.debug_struct(&format!("GtkIconPaintable @ {self:p}"))
7833            .finish()
7834    }
7835}
7836
7837#[repr(C)]
7838#[allow(dead_code)]
7839pub struct GtkIconTheme {
7840    _data: [u8; 0],
7841    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7842}
7843
7844impl ::std::fmt::Debug for GtkIconTheme {
7845    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7846        f.debug_struct(&format!("GtkIconTheme @ {self:p}")).finish()
7847    }
7848}
7849
7850#[repr(C)]
7851#[allow(dead_code)]
7852pub struct GtkIconView {
7853    _data: [u8; 0],
7854    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7855}
7856
7857impl ::std::fmt::Debug for GtkIconView {
7858    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7859        f.debug_struct(&format!("GtkIconView @ {self:p}")).finish()
7860    }
7861}
7862
7863#[repr(C)]
7864#[allow(dead_code)]
7865pub struct GtkImage {
7866    _data: [u8; 0],
7867    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7868}
7869
7870impl ::std::fmt::Debug for GtkImage {
7871    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7872        f.debug_struct(&format!("GtkImage @ {self:p}")).finish()
7873    }
7874}
7875
7876#[repr(C)]
7877#[allow(dead_code)]
7878pub struct GtkInfoBar {
7879    _data: [u8; 0],
7880    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7881}
7882
7883impl ::std::fmt::Debug for GtkInfoBar {
7884    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7885        f.debug_struct(&format!("GtkInfoBar @ {self:p}")).finish()
7886    }
7887}
7888
7889#[repr(C)]
7890#[allow(dead_code)]
7891pub struct GtkInscription {
7892    _data: [u8; 0],
7893    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7894}
7895
7896impl ::std::fmt::Debug for GtkInscription {
7897    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7898        f.debug_struct(&format!("GtkInscription @ {self:p}"))
7899            .finish()
7900    }
7901}
7902
7903#[repr(C)]
7904#[allow(dead_code)]
7905pub struct GtkKeyvalTrigger {
7906    _data: [u8; 0],
7907    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7908}
7909
7910impl ::std::fmt::Debug for GtkKeyvalTrigger {
7911    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7912        f.debug_struct(&format!("GtkKeyvalTrigger @ {self:p}"))
7913            .finish()
7914    }
7915}
7916
7917#[repr(C)]
7918#[allow(dead_code)]
7919pub struct GtkLabel {
7920    _data: [u8; 0],
7921    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7922}
7923
7924impl ::std::fmt::Debug for GtkLabel {
7925    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7926        f.debug_struct(&format!("GtkLabel @ {self:p}")).finish()
7927    }
7928}
7929
7930#[derive(Copy, Clone)]
7931#[repr(C)]
7932pub struct GtkLayoutChild {
7933    pub parent_instance: gobject::GObject,
7934}
7935
7936impl ::std::fmt::Debug for GtkLayoutChild {
7937    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7938        f.debug_struct(&format!("GtkLayoutChild @ {self:p}"))
7939            .field("parent_instance", &self.parent_instance)
7940            .finish()
7941    }
7942}
7943
7944#[derive(Copy, Clone)]
7945#[repr(C)]
7946pub struct GtkLayoutManager {
7947    pub parent_instance: gobject::GObject,
7948}
7949
7950impl ::std::fmt::Debug for GtkLayoutManager {
7951    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7952        f.debug_struct(&format!("GtkLayoutManager @ {self:p}"))
7953            .field("parent_instance", &self.parent_instance)
7954            .finish()
7955    }
7956}
7957
7958#[repr(C)]
7959#[allow(dead_code)]
7960pub struct GtkLevelBar {
7961    _data: [u8; 0],
7962    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7963}
7964
7965impl ::std::fmt::Debug for GtkLevelBar {
7966    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7967        f.debug_struct(&format!("GtkLevelBar @ {self:p}")).finish()
7968    }
7969}
7970
7971#[repr(C)]
7972#[allow(dead_code)]
7973pub struct GtkLinkButton {
7974    _data: [u8; 0],
7975    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7976}
7977
7978impl ::std::fmt::Debug for GtkLinkButton {
7979    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7980        f.debug_struct(&format!("GtkLinkButton @ {self:p}"))
7981            .finish()
7982    }
7983}
7984
7985#[repr(C)]
7986#[allow(dead_code)]
7987pub struct GtkListBase {
7988    _data: [u8; 0],
7989    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7990}
7991
7992impl ::std::fmt::Debug for GtkListBase {
7993    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7994        f.debug_struct(&format!("GtkListBase @ {self:p}")).finish()
7995    }
7996}
7997
7998#[repr(C)]
7999#[allow(dead_code)]
8000pub struct GtkListBox {
8001    _data: [u8; 0],
8002    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8003}
8004
8005impl ::std::fmt::Debug for GtkListBox {
8006    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8007        f.debug_struct(&format!("GtkListBox @ {self:p}")).finish()
8008    }
8009}
8010
8011#[derive(Copy, Clone)]
8012#[repr(C)]
8013pub struct GtkListBoxRow {
8014    pub parent_instance: GtkWidget,
8015}
8016
8017impl ::std::fmt::Debug for GtkListBoxRow {
8018    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8019        f.debug_struct(&format!("GtkListBoxRow @ {self:p}"))
8020            .field("parent_instance", &self.parent_instance)
8021            .finish()
8022    }
8023}
8024
8025#[repr(C)]
8026#[allow(dead_code)]
8027pub struct GtkListHeader {
8028    _data: [u8; 0],
8029    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8030}
8031
8032impl ::std::fmt::Debug for GtkListHeader {
8033    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8034        f.debug_struct(&format!("GtkListHeader @ {self:p}"))
8035            .finish()
8036    }
8037}
8038
8039#[repr(C)]
8040#[allow(dead_code)]
8041pub struct GtkListItem {
8042    _data: [u8; 0],
8043    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8044}
8045
8046impl ::std::fmt::Debug for GtkListItem {
8047    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8048        f.debug_struct(&format!("GtkListItem @ {self:p}")).finish()
8049    }
8050}
8051
8052#[repr(C)]
8053#[allow(dead_code)]
8054pub struct GtkListItemFactory {
8055    _data: [u8; 0],
8056    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8057}
8058
8059impl ::std::fmt::Debug for GtkListItemFactory {
8060    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8061        f.debug_struct(&format!("GtkListItemFactory @ {self:p}"))
8062            .finish()
8063    }
8064}
8065
8066#[derive(Copy, Clone)]
8067#[repr(C)]
8068pub struct GtkListStore {
8069    pub parent: gobject::GObject,
8070    pub priv_: *mut GtkListStorePrivate,
8071}
8072
8073impl ::std::fmt::Debug for GtkListStore {
8074    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8075        f.debug_struct(&format!("GtkListStore @ {self:p}"))
8076            .field("parent", &self.parent)
8077            .finish()
8078    }
8079}
8080
8081#[repr(C)]
8082#[allow(dead_code)]
8083pub struct GtkListView {
8084    _data: [u8; 0],
8085    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8086}
8087
8088impl ::std::fmt::Debug for GtkListView {
8089    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8090        f.debug_struct(&format!("GtkListView @ {self:p}")).finish()
8091    }
8092}
8093
8094#[repr(C)]
8095#[allow(dead_code)]
8096pub struct GtkLockButton {
8097    _data: [u8; 0],
8098    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8099}
8100
8101impl ::std::fmt::Debug for GtkLockButton {
8102    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8103        f.debug_struct(&format!("GtkLockButton @ {self:p}"))
8104            .finish()
8105    }
8106}
8107
8108#[repr(C)]
8109#[allow(dead_code)]
8110pub struct GtkMapListModel {
8111    _data: [u8; 0],
8112    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8113}
8114
8115impl ::std::fmt::Debug for GtkMapListModel {
8116    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8117        f.debug_struct(&format!("GtkMapListModel @ {self:p}"))
8118            .finish()
8119    }
8120}
8121
8122#[repr(C)]
8123#[allow(dead_code)]
8124pub struct GtkMediaControls {
8125    _data: [u8; 0],
8126    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8127}
8128
8129impl ::std::fmt::Debug for GtkMediaControls {
8130    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8131        f.debug_struct(&format!("GtkMediaControls @ {self:p}"))
8132            .finish()
8133    }
8134}
8135
8136#[derive(Copy, Clone)]
8137#[repr(C)]
8138pub struct GtkMediaFile {
8139    pub parent_instance: GtkMediaStream,
8140}
8141
8142impl ::std::fmt::Debug for GtkMediaFile {
8143    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8144        f.debug_struct(&format!("GtkMediaFile @ {self:p}"))
8145            .field("parent_instance", &self.parent_instance)
8146            .finish()
8147    }
8148}
8149
8150#[derive(Copy, Clone)]
8151#[repr(C)]
8152pub struct GtkMediaStream {
8153    pub parent_instance: gobject::GObject,
8154}
8155
8156impl ::std::fmt::Debug for GtkMediaStream {
8157    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8158        f.debug_struct(&format!("GtkMediaStream @ {self:p}"))
8159            .field("parent_instance", &self.parent_instance)
8160            .finish()
8161    }
8162}
8163
8164#[repr(C)]
8165#[allow(dead_code)]
8166pub struct GtkMenuButton {
8167    _data: [u8; 0],
8168    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8169}
8170
8171impl ::std::fmt::Debug for GtkMenuButton {
8172    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8173        f.debug_struct(&format!("GtkMenuButton @ {self:p}"))
8174            .finish()
8175    }
8176}
8177
8178#[derive(Copy, Clone)]
8179#[repr(C)]
8180pub struct GtkMessageDialog {
8181    pub parent_instance: GtkDialog,
8182}
8183
8184impl ::std::fmt::Debug for GtkMessageDialog {
8185    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8186        f.debug_struct(&format!("GtkMessageDialog @ {self:p}"))
8187            .field("parent_instance", &self.parent_instance)
8188            .finish()
8189    }
8190}
8191
8192#[repr(C)]
8193#[allow(dead_code)]
8194pub struct GtkMnemonicAction {
8195    _data: [u8; 0],
8196    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8197}
8198
8199impl ::std::fmt::Debug for GtkMnemonicAction {
8200    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8201        f.debug_struct(&format!("GtkMnemonicAction @ {self:p}"))
8202            .finish()
8203    }
8204}
8205
8206#[repr(C)]
8207#[allow(dead_code)]
8208pub struct GtkMnemonicTrigger {
8209    _data: [u8; 0],
8210    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8211}
8212
8213impl ::std::fmt::Debug for GtkMnemonicTrigger {
8214    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8215        f.debug_struct(&format!("GtkMnemonicTrigger @ {self:p}"))
8216            .finish()
8217    }
8218}
8219
8220#[derive(Copy, Clone)]
8221#[repr(C)]
8222pub struct GtkMountOperation {
8223    pub parent_instance: gio::GMountOperation,
8224    pub priv_: *mut GtkMountOperationPrivate,
8225}
8226
8227impl ::std::fmt::Debug for GtkMountOperation {
8228    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8229        f.debug_struct(&format!("GtkMountOperation @ {self:p}"))
8230            .field("parent_instance", &self.parent_instance)
8231            .field("priv_", &self.priv_)
8232            .finish()
8233    }
8234}
8235
8236#[repr(C)]
8237#[allow(dead_code)]
8238pub struct GtkMultiFilter {
8239    _data: [u8; 0],
8240    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8241}
8242
8243impl ::std::fmt::Debug for GtkMultiFilter {
8244    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8245        f.debug_struct(&format!("GtkMultiFilter @ {self:p}"))
8246            .finish()
8247    }
8248}
8249
8250#[repr(C)]
8251#[allow(dead_code)]
8252pub struct GtkMultiSelection {
8253    _data: [u8; 0],
8254    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8255}
8256
8257impl ::std::fmt::Debug for GtkMultiSelection {
8258    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8259        f.debug_struct(&format!("GtkMultiSelection @ {self:p}"))
8260            .finish()
8261    }
8262}
8263
8264#[repr(C)]
8265#[allow(dead_code)]
8266pub struct GtkMultiSorter {
8267    _data: [u8; 0],
8268    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8269}
8270
8271impl ::std::fmt::Debug for GtkMultiSorter {
8272    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8273        f.debug_struct(&format!("GtkMultiSorter @ {self:p}"))
8274            .finish()
8275    }
8276}
8277
8278#[repr(C)]
8279#[allow(dead_code)]
8280pub struct GtkNamedAction {
8281    _data: [u8; 0],
8282    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8283}
8284
8285impl ::std::fmt::Debug for GtkNamedAction {
8286    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8287        f.debug_struct(&format!("GtkNamedAction @ {self:p}"))
8288            .finish()
8289    }
8290}
8291
8292#[derive(Copy, Clone)]
8293#[repr(C)]
8294pub struct GtkNativeDialog {
8295    pub parent_instance: gobject::GObject,
8296}
8297
8298impl ::std::fmt::Debug for GtkNativeDialog {
8299    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8300        f.debug_struct(&format!("GtkNativeDialog @ {self:p}"))
8301            .field("parent_instance", &self.parent_instance)
8302            .finish()
8303    }
8304}
8305
8306#[repr(C)]
8307#[allow(dead_code)]
8308pub struct GtkNeverTrigger {
8309    _data: [u8; 0],
8310    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8311}
8312
8313impl ::std::fmt::Debug for GtkNeverTrigger {
8314    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8315        f.debug_struct(&format!("GtkNeverTrigger @ {self:p}"))
8316            .finish()
8317    }
8318}
8319
8320#[repr(C)]
8321#[allow(dead_code)]
8322pub struct GtkNoSelection {
8323    _data: [u8; 0],
8324    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8325}
8326
8327impl ::std::fmt::Debug for GtkNoSelection {
8328    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8329        f.debug_struct(&format!("GtkNoSelection @ {self:p}"))
8330            .finish()
8331    }
8332}
8333
8334#[repr(C)]
8335#[allow(dead_code)]
8336pub struct GtkNotebook {
8337    _data: [u8; 0],
8338    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8339}
8340
8341impl ::std::fmt::Debug for GtkNotebook {
8342    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8343        f.debug_struct(&format!("GtkNotebook @ {self:p}")).finish()
8344    }
8345}
8346
8347#[repr(C)]
8348#[allow(dead_code)]
8349pub struct GtkNotebookPage {
8350    _data: [u8; 0],
8351    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8352}
8353
8354impl ::std::fmt::Debug for GtkNotebookPage {
8355    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8356        f.debug_struct(&format!("GtkNotebookPage @ {self:p}"))
8357            .finish()
8358    }
8359}
8360
8361#[repr(C)]
8362#[allow(dead_code)]
8363pub struct GtkNothingAction {
8364    _data: [u8; 0],
8365    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8366}
8367
8368impl ::std::fmt::Debug for GtkNothingAction {
8369    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8370        f.debug_struct(&format!("GtkNothingAction @ {self:p}"))
8371            .finish()
8372    }
8373}
8374
8375#[repr(C)]
8376#[allow(dead_code)]
8377pub struct GtkNumericSorter {
8378    _data: [u8; 0],
8379    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8380}
8381
8382impl ::std::fmt::Debug for GtkNumericSorter {
8383    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8384        f.debug_struct(&format!("GtkNumericSorter @ {self:p}"))
8385            .finish()
8386    }
8387}
8388
8389#[repr(C)]
8390#[allow(dead_code)]
8391pub struct GtkObjectExpression {
8392    _data: [u8; 0],
8393    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8394}
8395
8396impl ::std::fmt::Debug for GtkObjectExpression {
8397    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8398        f.debug_struct(&format!("GtkObjectExpression @ {self:p}"))
8399            .finish()
8400    }
8401}
8402
8403#[repr(C)]
8404#[allow(dead_code)]
8405pub struct GtkOverlay {
8406    _data: [u8; 0],
8407    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8408}
8409
8410impl ::std::fmt::Debug for GtkOverlay {
8411    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8412        f.debug_struct(&format!("GtkOverlay @ {self:p}")).finish()
8413    }
8414}
8415
8416#[repr(C)]
8417#[allow(dead_code)]
8418pub struct GtkOverlayLayout {
8419    _data: [u8; 0],
8420    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8421}
8422
8423impl ::std::fmt::Debug for GtkOverlayLayout {
8424    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8425        f.debug_struct(&format!("GtkOverlayLayout @ {self:p}"))
8426            .finish()
8427    }
8428}
8429
8430#[repr(C)]
8431#[allow(dead_code)]
8432pub struct GtkOverlayLayoutChild {
8433    _data: [u8; 0],
8434    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8435}
8436
8437impl ::std::fmt::Debug for GtkOverlayLayoutChild {
8438    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8439        f.debug_struct(&format!("GtkOverlayLayoutChild @ {self:p}"))
8440            .finish()
8441    }
8442}
8443
8444#[repr(C)]
8445#[allow(dead_code)]
8446pub struct GtkPadController {
8447    _data: [u8; 0],
8448    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8449}
8450
8451impl ::std::fmt::Debug for GtkPadController {
8452    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8453        f.debug_struct(&format!("GtkPadController @ {self:p}"))
8454            .finish()
8455    }
8456}
8457
8458#[repr(C)]
8459#[allow(dead_code)]
8460pub struct GtkPageSetup {
8461    _data: [u8; 0],
8462    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8463}
8464
8465impl ::std::fmt::Debug for GtkPageSetup {
8466    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8467        f.debug_struct(&format!("GtkPageSetup @ {self:p}")).finish()
8468    }
8469}
8470
8471#[repr(C)]
8472#[allow(dead_code)]
8473pub struct GtkPageSetupUnixDialog {
8474    _data: [u8; 0],
8475    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8476}
8477
8478impl ::std::fmt::Debug for GtkPageSetupUnixDialog {
8479    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8480        f.debug_struct(&format!("GtkPageSetupUnixDialog @ {self:p}"))
8481            .finish()
8482    }
8483}
8484
8485#[repr(C)]
8486#[allow(dead_code)]
8487pub struct GtkPaned {
8488    _data: [u8; 0],
8489    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8490}
8491
8492impl ::std::fmt::Debug for GtkPaned {
8493    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8494        f.debug_struct(&format!("GtkPaned @ {self:p}")).finish()
8495    }
8496}
8497
8498#[derive(Copy, Clone)]
8499#[repr(C)]
8500pub struct GtkParamSpecExpression {
8501    pub parent_instance: gobject::GParamSpec,
8502}
8503
8504impl ::std::fmt::Debug for GtkParamSpecExpression {
8505    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8506        f.debug_struct(&format!("GtkParamSpecExpression @ {self:p}"))
8507            .finish()
8508    }
8509}
8510
8511#[repr(C)]
8512#[allow(dead_code)]
8513pub struct GtkPasswordEntry {
8514    _data: [u8; 0],
8515    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8516}
8517
8518impl ::std::fmt::Debug for GtkPasswordEntry {
8519    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8520        f.debug_struct(&format!("GtkPasswordEntry @ {self:p}"))
8521            .finish()
8522    }
8523}
8524
8525#[repr(C)]
8526#[allow(dead_code)]
8527pub struct GtkPasswordEntryBuffer {
8528    _data: [u8; 0],
8529    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8530}
8531
8532impl ::std::fmt::Debug for GtkPasswordEntryBuffer {
8533    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8534        f.debug_struct(&format!("GtkPasswordEntryBuffer @ {self:p}"))
8535            .finish()
8536    }
8537}
8538
8539#[repr(C)]
8540#[allow(dead_code)]
8541pub struct GtkPicture {
8542    _data: [u8; 0],
8543    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8544}
8545
8546impl ::std::fmt::Debug for GtkPicture {
8547    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8548        f.debug_struct(&format!("GtkPicture @ {self:p}")).finish()
8549    }
8550}
8551
8552#[derive(Copy, Clone)]
8553#[repr(C)]
8554pub struct GtkPopover {
8555    pub parent: GtkWidget,
8556}
8557
8558impl ::std::fmt::Debug for GtkPopover {
8559    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8560        f.debug_struct(&format!("GtkPopover @ {self:p}"))
8561            .field("parent", &self.parent)
8562            .finish()
8563    }
8564}
8565
8566#[repr(C)]
8567#[allow(dead_code)]
8568pub struct GtkPopoverMenu {
8569    _data: [u8; 0],
8570    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8571}
8572
8573impl ::std::fmt::Debug for GtkPopoverMenu {
8574    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8575        f.debug_struct(&format!("GtkPopoverMenu @ {self:p}"))
8576            .finish()
8577    }
8578}
8579
8580#[repr(C)]
8581#[allow(dead_code)]
8582pub struct GtkPopoverMenuBar {
8583    _data: [u8; 0],
8584    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8585}
8586
8587impl ::std::fmt::Debug for GtkPopoverMenuBar {
8588    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8589        f.debug_struct(&format!("GtkPopoverMenuBar @ {self:p}"))
8590            .finish()
8591    }
8592}
8593
8594#[repr(C)]
8595#[allow(dead_code)]
8596pub struct GtkPrintContext {
8597    _data: [u8; 0],
8598    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8599}
8600
8601impl ::std::fmt::Debug for GtkPrintContext {
8602    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8603        f.debug_struct(&format!("GtkPrintContext @ {self:p}"))
8604            .finish()
8605    }
8606}
8607
8608#[repr(C)]
8609#[allow(dead_code)]
8610pub struct GtkPrintDialog {
8611    _data: [u8; 0],
8612    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8613}
8614
8615impl ::std::fmt::Debug for GtkPrintDialog {
8616    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8617        f.debug_struct(&format!("GtkPrintDialog @ {self:p}"))
8618            .finish()
8619    }
8620}
8621
8622#[repr(C)]
8623#[allow(dead_code)]
8624pub struct GtkPrintJob {
8625    _data: [u8; 0],
8626    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8627}
8628
8629impl ::std::fmt::Debug for GtkPrintJob {
8630    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8631        f.debug_struct(&format!("GtkPrintJob @ {self:p}")).finish()
8632    }
8633}
8634
8635#[derive(Copy, Clone)]
8636#[repr(C)]
8637pub struct GtkPrintOperation {
8638    pub parent_instance: gobject::GObject,
8639    pub priv_: *mut GtkPrintOperationPrivate,
8640}
8641
8642impl ::std::fmt::Debug for GtkPrintOperation {
8643    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8644        f.debug_struct(&format!("GtkPrintOperation @ {self:p}"))
8645            .field("parent_instance", &self.parent_instance)
8646            .finish()
8647    }
8648}
8649
8650#[repr(C)]
8651#[allow(dead_code)]
8652pub struct GtkPrintSettings {
8653    _data: [u8; 0],
8654    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8655}
8656
8657impl ::std::fmt::Debug for GtkPrintSettings {
8658    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8659        f.debug_struct(&format!("GtkPrintSettings @ {self:p}"))
8660            .finish()
8661    }
8662}
8663
8664#[repr(C)]
8665#[allow(dead_code)]
8666pub struct GtkPrintUnixDialog {
8667    _data: [u8; 0],
8668    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8669}
8670
8671impl ::std::fmt::Debug for GtkPrintUnixDialog {
8672    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8673        f.debug_struct(&format!("GtkPrintUnixDialog @ {self:p}"))
8674            .finish()
8675    }
8676}
8677
8678#[repr(C)]
8679#[allow(dead_code)]
8680pub struct GtkPrinter {
8681    _data: [u8; 0],
8682    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8683}
8684
8685impl ::std::fmt::Debug for GtkPrinter {
8686    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8687        f.debug_struct(&format!("GtkPrinter @ {self:p}")).finish()
8688    }
8689}
8690
8691#[repr(C)]
8692#[allow(dead_code)]
8693pub struct GtkProgressBar {
8694    _data: [u8; 0],
8695    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8696}
8697
8698impl ::std::fmt::Debug for GtkProgressBar {
8699    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8700        f.debug_struct(&format!("GtkProgressBar @ {self:p}"))
8701            .finish()
8702    }
8703}
8704
8705#[repr(C)]
8706#[allow(dead_code)]
8707pub struct GtkPropertyExpression {
8708    _data: [u8; 0],
8709    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8710}
8711
8712impl ::std::fmt::Debug for GtkPropertyExpression {
8713    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8714        f.debug_struct(&format!("GtkPropertyExpression @ {self:p}"))
8715            .finish()
8716    }
8717}
8718
8719#[derive(Copy, Clone)]
8720#[repr(C)]
8721pub struct GtkRange {
8722    pub parent_instance: GtkWidget,
8723}
8724
8725impl ::std::fmt::Debug for GtkRange {
8726    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8727        f.debug_struct(&format!("GtkRange @ {self:p}"))
8728            .field("parent_instance", &self.parent_instance)
8729            .finish()
8730    }
8731}
8732
8733#[derive(Copy, Clone)]
8734#[repr(C)]
8735pub struct GtkRecentManager {
8736    pub parent_instance: gobject::GObject,
8737    pub priv_: *mut GtkRecentManagerPrivate,
8738}
8739
8740impl ::std::fmt::Debug for GtkRecentManager {
8741    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8742        f.debug_struct(&format!("GtkRecentManager @ {self:p}"))
8743            .finish()
8744    }
8745}
8746
8747#[repr(C)]
8748#[allow(dead_code)]
8749pub struct GtkRevealer {
8750    _data: [u8; 0],
8751    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8752}
8753
8754impl ::std::fmt::Debug for GtkRevealer {
8755    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8756        f.debug_struct(&format!("GtkRevealer @ {self:p}")).finish()
8757    }
8758}
8759
8760#[derive(Copy, Clone)]
8761#[repr(C)]
8762pub struct GtkScale {
8763    pub parent_instance: GtkRange,
8764}
8765
8766impl ::std::fmt::Debug for GtkScale {
8767    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8768        f.debug_struct(&format!("GtkScale @ {self:p}"))
8769            .field("parent_instance", &self.parent_instance)
8770            .finish()
8771    }
8772}
8773
8774#[derive(Copy, Clone)]
8775#[repr(C)]
8776pub struct GtkScaleButton {
8777    pub parent_instance: GtkWidget,
8778}
8779
8780impl ::std::fmt::Debug for GtkScaleButton {
8781    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8782        f.debug_struct(&format!("GtkScaleButton @ {self:p}"))
8783            .field("parent_instance", &self.parent_instance)
8784            .finish()
8785    }
8786}
8787
8788#[repr(C)]
8789#[allow(dead_code)]
8790pub struct GtkScrollbar {
8791    _data: [u8; 0],
8792    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8793}
8794
8795impl ::std::fmt::Debug for GtkScrollbar {
8796    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8797        f.debug_struct(&format!("GtkScrollbar @ {self:p}")).finish()
8798    }
8799}
8800
8801#[repr(C)]
8802#[allow(dead_code)]
8803pub struct GtkScrolledWindow {
8804    _data: [u8; 0],
8805    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8806}
8807
8808impl ::std::fmt::Debug for GtkScrolledWindow {
8809    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8810        f.debug_struct(&format!("GtkScrolledWindow @ {self:p}"))
8811            .finish()
8812    }
8813}
8814
8815#[repr(C)]
8816#[allow(dead_code)]
8817pub struct GtkSearchBar {
8818    _data: [u8; 0],
8819    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8820}
8821
8822impl ::std::fmt::Debug for GtkSearchBar {
8823    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8824        f.debug_struct(&format!("GtkSearchBar @ {self:p}")).finish()
8825    }
8826}
8827
8828#[repr(C)]
8829#[allow(dead_code)]
8830pub struct GtkSearchEntry {
8831    _data: [u8; 0],
8832    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8833}
8834
8835impl ::std::fmt::Debug for GtkSearchEntry {
8836    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8837        f.debug_struct(&format!("GtkSearchEntry @ {self:p}"))
8838            .finish()
8839    }
8840}
8841
8842#[repr(C)]
8843#[allow(dead_code)]
8844pub struct GtkSelectionFilterModel {
8845    _data: [u8; 0],
8846    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8847}
8848
8849impl ::std::fmt::Debug for GtkSelectionFilterModel {
8850    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8851        f.debug_struct(&format!("GtkSelectionFilterModel @ {self:p}"))
8852            .finish()
8853    }
8854}
8855
8856#[repr(C)]
8857#[allow(dead_code)]
8858pub struct GtkSeparator {
8859    _data: [u8; 0],
8860    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8861}
8862
8863impl ::std::fmt::Debug for GtkSeparator {
8864    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8865        f.debug_struct(&format!("GtkSeparator @ {self:p}")).finish()
8866    }
8867}
8868
8869#[repr(C)]
8870#[allow(dead_code)]
8871pub struct GtkSettings {
8872    _data: [u8; 0],
8873    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8874}
8875
8876impl ::std::fmt::Debug for GtkSettings {
8877    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8878        f.debug_struct(&format!("GtkSettings @ {self:p}")).finish()
8879    }
8880}
8881
8882#[repr(C)]
8883#[allow(dead_code)]
8884pub struct GtkShortcut {
8885    _data: [u8; 0],
8886    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8887}
8888
8889impl ::std::fmt::Debug for GtkShortcut {
8890    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8891        f.debug_struct(&format!("GtkShortcut @ {self:p}")).finish()
8892    }
8893}
8894
8895#[repr(C)]
8896#[allow(dead_code)]
8897pub struct GtkShortcutAction {
8898    _data: [u8; 0],
8899    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8900}
8901
8902impl ::std::fmt::Debug for GtkShortcutAction {
8903    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8904        f.debug_struct(&format!("GtkShortcutAction @ {self:p}"))
8905            .finish()
8906    }
8907}
8908
8909#[repr(C)]
8910#[allow(dead_code)]
8911pub struct GtkShortcutController {
8912    _data: [u8; 0],
8913    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8914}
8915
8916impl ::std::fmt::Debug for GtkShortcutController {
8917    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8918        f.debug_struct(&format!("GtkShortcutController @ {self:p}"))
8919            .finish()
8920    }
8921}
8922
8923#[repr(C)]
8924#[allow(dead_code)]
8925pub struct GtkShortcutLabel {
8926    _data: [u8; 0],
8927    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8928}
8929
8930impl ::std::fmt::Debug for GtkShortcutLabel {
8931    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8932        f.debug_struct(&format!("GtkShortcutLabel @ {self:p}"))
8933            .finish()
8934    }
8935}
8936
8937#[repr(C)]
8938#[allow(dead_code)]
8939pub struct GtkShortcutTrigger {
8940    _data: [u8; 0],
8941    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8942}
8943
8944impl ::std::fmt::Debug for GtkShortcutTrigger {
8945    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8946        f.debug_struct(&format!("GtkShortcutTrigger @ {self:p}"))
8947            .finish()
8948    }
8949}
8950
8951#[repr(C)]
8952#[allow(dead_code)]
8953pub struct GtkShortcutsGroup {
8954    _data: [u8; 0],
8955    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8956}
8957
8958impl ::std::fmt::Debug for GtkShortcutsGroup {
8959    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8960        f.debug_struct(&format!("GtkShortcutsGroup @ {self:p}"))
8961            .finish()
8962    }
8963}
8964
8965#[repr(C)]
8966#[allow(dead_code)]
8967pub struct GtkShortcutsSection {
8968    _data: [u8; 0],
8969    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8970}
8971
8972impl ::std::fmt::Debug for GtkShortcutsSection {
8973    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8974        f.debug_struct(&format!("GtkShortcutsSection @ {self:p}"))
8975            .finish()
8976    }
8977}
8978
8979#[repr(C)]
8980#[allow(dead_code)]
8981pub struct GtkShortcutsShortcut {
8982    _data: [u8; 0],
8983    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8984}
8985
8986impl ::std::fmt::Debug for GtkShortcutsShortcut {
8987    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8988        f.debug_struct(&format!("GtkShortcutsShortcut @ {self:p}"))
8989            .finish()
8990    }
8991}
8992
8993#[repr(C)]
8994#[allow(dead_code)]
8995pub struct GtkShortcutsWindow {
8996    _data: [u8; 0],
8997    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8998}
8999
9000impl ::std::fmt::Debug for GtkShortcutsWindow {
9001    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9002        f.debug_struct(&format!("GtkShortcutsWindow @ {self:p}"))
9003            .finish()
9004    }
9005}
9006
9007#[repr(C)]
9008#[allow(dead_code)]
9009pub struct GtkSignalAction {
9010    _data: [u8; 0],
9011    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9012}
9013
9014impl ::std::fmt::Debug for GtkSignalAction {
9015    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9016        f.debug_struct(&format!("GtkSignalAction @ {self:p}"))
9017            .finish()
9018    }
9019}
9020
9021#[repr(C)]
9022#[allow(dead_code)]
9023pub struct GtkSignalListItemFactory {
9024    _data: [u8; 0],
9025    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9026}
9027
9028impl ::std::fmt::Debug for GtkSignalListItemFactory {
9029    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9030        f.debug_struct(&format!("GtkSignalListItemFactory @ {self:p}"))
9031            .finish()
9032    }
9033}
9034
9035#[repr(C)]
9036#[allow(dead_code)]
9037pub struct GtkSingleSelection {
9038    _data: [u8; 0],
9039    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9040}
9041
9042impl ::std::fmt::Debug for GtkSingleSelection {
9043    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9044        f.debug_struct(&format!("GtkSingleSelection @ {self:p}"))
9045            .finish()
9046    }
9047}
9048
9049#[derive(Copy, Clone)]
9050#[repr(C)]
9051pub struct GtkSizeGroup {
9052    pub parent_instance: gobject::GObject,
9053}
9054
9055impl ::std::fmt::Debug for GtkSizeGroup {
9056    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9057        f.debug_struct(&format!("GtkSizeGroup @ {self:p}"))
9058            .field("parent_instance", &self.parent_instance)
9059            .finish()
9060    }
9061}
9062
9063#[repr(C)]
9064#[allow(dead_code)]
9065pub struct GtkSliceListModel {
9066    _data: [u8; 0],
9067    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9068}
9069
9070impl ::std::fmt::Debug for GtkSliceListModel {
9071    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9072        f.debug_struct(&format!("GtkSliceListModel @ {self:p}"))
9073            .finish()
9074    }
9075}
9076
9077#[repr(C)]
9078#[allow(dead_code)]
9079pub struct GtkSnapshot {
9080    _data: [u8; 0],
9081    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9082}
9083
9084impl ::std::fmt::Debug for GtkSnapshot {
9085    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9086        f.debug_struct(&format!("GtkSnapshot @ {self:p}")).finish()
9087    }
9088}
9089
9090#[repr(C)]
9091#[allow(dead_code)]
9092pub struct GtkSortListModel {
9093    _data: [u8; 0],
9094    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9095}
9096
9097impl ::std::fmt::Debug for GtkSortListModel {
9098    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9099        f.debug_struct(&format!("GtkSortListModel @ {self:p}"))
9100            .finish()
9101    }
9102}
9103
9104#[derive(Copy, Clone)]
9105#[repr(C)]
9106pub struct GtkSorter {
9107    pub parent_instance: gobject::GObject,
9108}
9109
9110impl ::std::fmt::Debug for GtkSorter {
9111    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9112        f.debug_struct(&format!("GtkSorter @ {self:p}"))
9113            .field("parent_instance", &self.parent_instance)
9114            .finish()
9115    }
9116}
9117
9118#[repr(C)]
9119#[allow(dead_code)]
9120pub struct GtkSpinButton {
9121    _data: [u8; 0],
9122    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9123}
9124
9125impl ::std::fmt::Debug for GtkSpinButton {
9126    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9127        f.debug_struct(&format!("GtkSpinButton @ {self:p}"))
9128            .finish()
9129    }
9130}
9131
9132#[repr(C)]
9133#[allow(dead_code)]
9134pub struct GtkSpinner {
9135    _data: [u8; 0],
9136    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9137}
9138
9139impl ::std::fmt::Debug for GtkSpinner {
9140    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9141        f.debug_struct(&format!("GtkSpinner @ {self:p}")).finish()
9142    }
9143}
9144
9145#[repr(C)]
9146#[allow(dead_code)]
9147pub struct GtkStack {
9148    _data: [u8; 0],
9149    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9150}
9151
9152impl ::std::fmt::Debug for GtkStack {
9153    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9154        f.debug_struct(&format!("GtkStack @ {self:p}")).finish()
9155    }
9156}
9157
9158#[repr(C)]
9159#[allow(dead_code)]
9160pub struct GtkStackPage {
9161    _data: [u8; 0],
9162    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9163}
9164
9165impl ::std::fmt::Debug for GtkStackPage {
9166    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9167        f.debug_struct(&format!("GtkStackPage @ {self:p}")).finish()
9168    }
9169}
9170
9171#[repr(C)]
9172#[allow(dead_code)]
9173pub struct GtkStackSidebar {
9174    _data: [u8; 0],
9175    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9176}
9177
9178impl ::std::fmt::Debug for GtkStackSidebar {
9179    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9180        f.debug_struct(&format!("GtkStackSidebar @ {self:p}"))
9181            .finish()
9182    }
9183}
9184
9185#[repr(C)]
9186#[allow(dead_code)]
9187pub struct GtkStackSwitcher {
9188    _data: [u8; 0],
9189    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9190}
9191
9192impl ::std::fmt::Debug for GtkStackSwitcher {
9193    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9194        f.debug_struct(&format!("GtkStackSwitcher @ {self:p}"))
9195            .finish()
9196    }
9197}
9198
9199#[repr(C)]
9200#[allow(dead_code)]
9201pub struct GtkStatusbar {
9202    _data: [u8; 0],
9203    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9204}
9205
9206impl ::std::fmt::Debug for GtkStatusbar {
9207    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9208        f.debug_struct(&format!("GtkStatusbar @ {self:p}")).finish()
9209    }
9210}
9211
9212#[repr(C)]
9213#[allow(dead_code)]
9214pub struct GtkStringFilter {
9215    _data: [u8; 0],
9216    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9217}
9218
9219impl ::std::fmt::Debug for GtkStringFilter {
9220    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9221        f.debug_struct(&format!("GtkStringFilter @ {self:p}"))
9222            .finish()
9223    }
9224}
9225
9226#[repr(C)]
9227#[allow(dead_code)]
9228pub struct GtkStringList {
9229    _data: [u8; 0],
9230    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9231}
9232
9233impl ::std::fmt::Debug for GtkStringList {
9234    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9235        f.debug_struct(&format!("GtkStringList @ {self:p}"))
9236            .finish()
9237    }
9238}
9239
9240#[repr(C)]
9241#[allow(dead_code)]
9242pub struct GtkStringObject {
9243    _data: [u8; 0],
9244    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9245}
9246
9247impl ::std::fmt::Debug for GtkStringObject {
9248    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9249        f.debug_struct(&format!("GtkStringObject @ {self:p}"))
9250            .finish()
9251    }
9252}
9253
9254#[repr(C)]
9255#[allow(dead_code)]
9256pub struct GtkStringSorter {
9257    _data: [u8; 0],
9258    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9259}
9260
9261impl ::std::fmt::Debug for GtkStringSorter {
9262    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9263        f.debug_struct(&format!("GtkStringSorter @ {self:p}"))
9264            .finish()
9265    }
9266}
9267
9268#[derive(Copy, Clone)]
9269#[repr(C)]
9270pub struct GtkStyleContext {
9271    pub parent_object: gobject::GObject,
9272}
9273
9274impl ::std::fmt::Debug for GtkStyleContext {
9275    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9276        f.debug_struct(&format!("GtkStyleContext @ {self:p}"))
9277            .field("parent_object", &self.parent_object)
9278            .finish()
9279    }
9280}
9281
9282#[repr(C)]
9283#[allow(dead_code)]
9284pub struct GtkSvg {
9285    _data: [u8; 0],
9286    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9287}
9288
9289impl ::std::fmt::Debug for GtkSvg {
9290    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9291        f.debug_struct(&format!("GtkSvg @ {self:p}")).finish()
9292    }
9293}
9294
9295#[repr(C)]
9296#[allow(dead_code)]
9297pub struct GtkSwitch {
9298    _data: [u8; 0],
9299    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9300}
9301
9302impl ::std::fmt::Debug for GtkSwitch {
9303    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9304        f.debug_struct(&format!("GtkSwitch @ {self:p}")).finish()
9305    }
9306}
9307
9308#[derive(Copy, Clone)]
9309#[repr(C)]
9310pub struct GtkText {
9311    pub parent_instance: GtkWidget,
9312}
9313
9314impl ::std::fmt::Debug for GtkText {
9315    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9316        f.debug_struct(&format!("GtkText @ {self:p}")).finish()
9317    }
9318}
9319
9320#[derive(Copy, Clone)]
9321#[repr(C)]
9322pub struct GtkTextBuffer {
9323    pub parent_instance: gobject::GObject,
9324    pub priv_: *mut GtkTextBufferPrivate,
9325}
9326
9327impl ::std::fmt::Debug for GtkTextBuffer {
9328    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9329        f.debug_struct(&format!("GtkTextBuffer @ {self:p}"))
9330            .field("parent_instance", &self.parent_instance)
9331            .field("priv_", &self.priv_)
9332            .finish()
9333    }
9334}
9335
9336#[derive(Copy, Clone)]
9337#[repr(C)]
9338pub struct GtkTextChildAnchor {
9339    pub parent_instance: gobject::GObject,
9340    pub segment: gpointer,
9341}
9342
9343impl ::std::fmt::Debug for GtkTextChildAnchor {
9344    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9345        f.debug_struct(&format!("GtkTextChildAnchor @ {self:p}"))
9346            .field("parent_instance", &self.parent_instance)
9347            .finish()
9348    }
9349}
9350
9351#[derive(Copy, Clone)]
9352#[repr(C)]
9353pub struct GtkTextMark {
9354    pub parent_instance: gobject::GObject,
9355    pub segment: gpointer,
9356}
9357
9358impl ::std::fmt::Debug for GtkTextMark {
9359    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9360        f.debug_struct(&format!("GtkTextMark @ {self:p}"))
9361            .field("parent_instance", &self.parent_instance)
9362            .finish()
9363    }
9364}
9365
9366#[derive(Copy, Clone)]
9367#[repr(C)]
9368pub struct GtkTextTag {
9369    pub parent_instance: gobject::GObject,
9370    pub priv_: *mut GtkTextTagPrivate,
9371}
9372
9373impl ::std::fmt::Debug for GtkTextTag {
9374    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9375        f.debug_struct(&format!("GtkTextTag @ {self:p}"))
9376            .field("parent_instance", &self.parent_instance)
9377            .field("priv_", &self.priv_)
9378            .finish()
9379    }
9380}
9381
9382#[repr(C)]
9383#[allow(dead_code)]
9384pub struct GtkTextTagTable {
9385    _data: [u8; 0],
9386    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9387}
9388
9389impl ::std::fmt::Debug for GtkTextTagTable {
9390    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9391        f.debug_struct(&format!("GtkTextTagTable @ {self:p}"))
9392            .finish()
9393    }
9394}
9395
9396#[derive(Copy, Clone)]
9397#[repr(C)]
9398pub struct GtkTextView {
9399    pub parent_instance: GtkWidget,
9400    pub priv_: *mut GtkTextViewPrivate,
9401}
9402
9403impl ::std::fmt::Debug for GtkTextView {
9404    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9405        f.debug_struct(&format!("GtkTextView @ {self:p}"))
9406            .field("parent_instance", &self.parent_instance)
9407            .finish()
9408    }
9409}
9410
9411#[derive(Copy, Clone)]
9412#[repr(C)]
9413pub struct GtkToggleButton {
9414    pub button: GtkButton,
9415}
9416
9417impl ::std::fmt::Debug for GtkToggleButton {
9418    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9419        f.debug_struct(&format!("GtkToggleButton @ {self:p}"))
9420            .finish()
9421    }
9422}
9423
9424#[repr(C)]
9425#[allow(dead_code)]
9426pub struct GtkTooltip {
9427    _data: [u8; 0],
9428    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9429}
9430
9431impl ::std::fmt::Debug for GtkTooltip {
9432    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9433        f.debug_struct(&format!("GtkTooltip @ {self:p}")).finish()
9434    }
9435}
9436
9437#[repr(C)]
9438#[allow(dead_code)]
9439pub struct GtkTreeExpander {
9440    _data: [u8; 0],
9441    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9442}
9443
9444impl ::std::fmt::Debug for GtkTreeExpander {
9445    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9446        f.debug_struct(&format!("GtkTreeExpander @ {self:p}"))
9447            .finish()
9448    }
9449}
9450
9451#[repr(C)]
9452#[allow(dead_code)]
9453pub struct GtkTreeListModel {
9454    _data: [u8; 0],
9455    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9456}
9457
9458impl ::std::fmt::Debug for GtkTreeListModel {
9459    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9460        f.debug_struct(&format!("GtkTreeListModel @ {self:p}"))
9461            .finish()
9462    }
9463}
9464
9465#[repr(C)]
9466#[allow(dead_code)]
9467pub struct GtkTreeListRow {
9468    _data: [u8; 0],
9469    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9470}
9471
9472impl ::std::fmt::Debug for GtkTreeListRow {
9473    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9474        f.debug_struct(&format!("GtkTreeListRow @ {self:p}"))
9475            .finish()
9476    }
9477}
9478
9479#[repr(C)]
9480#[allow(dead_code)]
9481pub struct GtkTreeListRowSorter {
9482    _data: [u8; 0],
9483    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9484}
9485
9486impl ::std::fmt::Debug for GtkTreeListRowSorter {
9487    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9488        f.debug_struct(&format!("GtkTreeListRowSorter @ {self:p}"))
9489            .finish()
9490    }
9491}
9492
9493#[derive(Copy, Clone)]
9494#[repr(C)]
9495pub struct GtkTreeModelFilter {
9496    pub parent: gobject::GObject,
9497    pub priv_: *mut GtkTreeModelFilterPrivate,
9498}
9499
9500impl ::std::fmt::Debug for GtkTreeModelFilter {
9501    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9502        f.debug_struct(&format!("GtkTreeModelFilter @ {self:p}"))
9503            .field("parent", &self.parent)
9504            .finish()
9505    }
9506}
9507
9508#[derive(Copy, Clone)]
9509#[repr(C)]
9510pub struct GtkTreeModelSort {
9511    pub parent: gobject::GObject,
9512    pub priv_: *mut GtkTreeModelSortPrivate,
9513}
9514
9515impl ::std::fmt::Debug for GtkTreeModelSort {
9516    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9517        f.debug_struct(&format!("GtkTreeModelSort @ {self:p}"))
9518            .field("parent", &self.parent)
9519            .finish()
9520    }
9521}
9522
9523#[repr(C)]
9524#[allow(dead_code)]
9525pub struct GtkTreeSelection {
9526    _data: [u8; 0],
9527    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9528}
9529
9530impl ::std::fmt::Debug for GtkTreeSelection {
9531    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9532        f.debug_struct(&format!("GtkTreeSelection @ {self:p}"))
9533            .finish()
9534    }
9535}
9536
9537#[derive(Copy, Clone)]
9538#[repr(C)]
9539pub struct GtkTreeStore {
9540    pub parent: gobject::GObject,
9541    pub priv_: *mut GtkTreeStorePrivate,
9542}
9543
9544impl ::std::fmt::Debug for GtkTreeStore {
9545    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9546        f.debug_struct(&format!("GtkTreeStore @ {self:p}"))
9547            .field("parent", &self.parent)
9548            .field("priv_", &self.priv_)
9549            .finish()
9550    }
9551}
9552
9553#[derive(Copy, Clone)]
9554#[repr(C)]
9555pub struct GtkTreeView {
9556    pub parent_instance: GtkWidget,
9557}
9558
9559impl ::std::fmt::Debug for GtkTreeView {
9560    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9561        f.debug_struct(&format!("GtkTreeView @ {self:p}"))
9562            .field("parent_instance", &self.parent_instance)
9563            .finish()
9564    }
9565}
9566
9567#[repr(C)]
9568#[allow(dead_code)]
9569pub struct GtkTreeViewColumn {
9570    _data: [u8; 0],
9571    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9572}
9573
9574impl ::std::fmt::Debug for GtkTreeViewColumn {
9575    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9576        f.debug_struct(&format!("GtkTreeViewColumn @ {self:p}"))
9577            .finish()
9578    }
9579}
9580
9581#[repr(C)]
9582#[allow(dead_code)]
9583pub struct GtkUriLauncher {
9584    _data: [u8; 0],
9585    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9586}
9587
9588impl ::std::fmt::Debug for GtkUriLauncher {
9589    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9590        f.debug_struct(&format!("GtkUriLauncher @ {self:p}"))
9591            .finish()
9592    }
9593}
9594
9595#[repr(C)]
9596#[allow(dead_code)]
9597pub struct GtkVideo {
9598    _data: [u8; 0],
9599    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9600}
9601
9602impl ::std::fmt::Debug for GtkVideo {
9603    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9604        f.debug_struct(&format!("GtkVideo @ {self:p}")).finish()
9605    }
9606}
9607
9608#[repr(C)]
9609#[allow(dead_code)]
9610pub struct GtkViewport {
9611    _data: [u8; 0],
9612    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9613}
9614
9615impl ::std::fmt::Debug for GtkViewport {
9616    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9617        f.debug_struct(&format!("GtkViewport @ {self:p}")).finish()
9618    }
9619}
9620
9621#[derive(Copy, Clone)]
9622#[repr(C)]
9623pub struct GtkVolumeButton {
9624    pub parent: GtkScaleButton,
9625}
9626
9627impl ::std::fmt::Debug for GtkVolumeButton {
9628    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9629        f.debug_struct(&format!("GtkVolumeButton @ {self:p}"))
9630            .field("parent", &self.parent)
9631            .finish()
9632    }
9633}
9634
9635#[derive(Copy, Clone)]
9636#[repr(C)]
9637pub struct GtkWidget {
9638    pub parent_instance: gobject::GInitiallyUnowned,
9639    pub priv_: *mut GtkWidgetPrivate,
9640}
9641
9642impl ::std::fmt::Debug for GtkWidget {
9643    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9644        f.debug_struct(&format!("GtkWidget @ {self:p}"))
9645            .field("parent_instance", &self.parent_instance)
9646            .finish()
9647    }
9648}
9649
9650#[repr(C)]
9651#[allow(dead_code)]
9652pub struct GtkWidgetPaintable {
9653    _data: [u8; 0],
9654    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9655}
9656
9657impl ::std::fmt::Debug for GtkWidgetPaintable {
9658    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9659        f.debug_struct(&format!("GtkWidgetPaintable @ {self:p}"))
9660            .finish()
9661    }
9662}
9663
9664#[derive(Copy, Clone)]
9665#[repr(C)]
9666pub struct GtkWindow {
9667    pub parent_instance: GtkWidget,
9668}
9669
9670impl ::std::fmt::Debug for GtkWindow {
9671    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9672        f.debug_struct(&format!("GtkWindow @ {self:p}"))
9673            .field("parent_instance", &self.parent_instance)
9674            .finish()
9675    }
9676}
9677
9678#[repr(C)]
9679#[allow(dead_code)]
9680pub struct GtkWindowControls {
9681    _data: [u8; 0],
9682    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9683}
9684
9685impl ::std::fmt::Debug for GtkWindowControls {
9686    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9687        f.debug_struct(&format!("GtkWindowControls @ {self:p}"))
9688            .finish()
9689    }
9690}
9691
9692#[derive(Copy, Clone)]
9693#[repr(C)]
9694pub struct GtkWindowGroup {
9695    pub parent_instance: gobject::GObject,
9696    pub priv_: *mut GtkWindowGroupPrivate,
9697}
9698
9699impl ::std::fmt::Debug for GtkWindowGroup {
9700    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9701        f.debug_struct(&format!("GtkWindowGroup @ {self:p}"))
9702            .field("parent_instance", &self.parent_instance)
9703            .field("priv_", &self.priv_)
9704            .finish()
9705    }
9706}
9707
9708#[repr(C)]
9709#[allow(dead_code)]
9710pub struct GtkWindowHandle {
9711    _data: [u8; 0],
9712    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9713}
9714
9715impl ::std::fmt::Debug for GtkWindowHandle {
9716    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9717        f.debug_struct(&format!("GtkWindowHandle @ {self:p}"))
9718            .finish()
9719    }
9720}
9721
9722// Interfaces
9723#[repr(C)]
9724#[allow(dead_code)]
9725pub struct GtkAccessible {
9726    _data: [u8; 0],
9727    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9728}
9729
9730impl ::std::fmt::Debug for GtkAccessible {
9731    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9732        write!(f, "GtkAccessible @ {self:p}")
9733    }
9734}
9735
9736#[repr(C)]
9737#[allow(dead_code)]
9738pub struct GtkAccessibleHypertext {
9739    _data: [u8; 0],
9740    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9741}
9742
9743impl ::std::fmt::Debug for GtkAccessibleHypertext {
9744    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9745        write!(f, "GtkAccessibleHypertext @ {self:p}")
9746    }
9747}
9748
9749#[repr(C)]
9750#[allow(dead_code)]
9751pub struct GtkAccessibleRange {
9752    _data: [u8; 0],
9753    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9754}
9755
9756impl ::std::fmt::Debug for GtkAccessibleRange {
9757    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9758        write!(f, "GtkAccessibleRange @ {self:p}")
9759    }
9760}
9761
9762#[repr(C)]
9763#[allow(dead_code)]
9764pub struct GtkAccessibleText {
9765    _data: [u8; 0],
9766    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9767}
9768
9769impl ::std::fmt::Debug for GtkAccessibleText {
9770    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9771        write!(f, "GtkAccessibleText @ {self:p}")
9772    }
9773}
9774
9775#[repr(C)]
9776#[allow(dead_code)]
9777pub struct GtkActionable {
9778    _data: [u8; 0],
9779    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9780}
9781
9782impl ::std::fmt::Debug for GtkActionable {
9783    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9784        write!(f, "GtkActionable @ {self:p}")
9785    }
9786}
9787
9788#[repr(C)]
9789#[allow(dead_code)]
9790pub struct GtkAppChooser {
9791    _data: [u8; 0],
9792    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9793}
9794
9795impl ::std::fmt::Debug for GtkAppChooser {
9796    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9797        write!(f, "GtkAppChooser @ {self:p}")
9798    }
9799}
9800
9801#[repr(C)]
9802#[allow(dead_code)]
9803pub struct GtkBuildable {
9804    _data: [u8; 0],
9805    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9806}
9807
9808impl ::std::fmt::Debug for GtkBuildable {
9809    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9810        write!(f, "GtkBuildable @ {self:p}")
9811    }
9812}
9813
9814#[repr(C)]
9815#[allow(dead_code)]
9816pub struct GtkBuilderScope {
9817    _data: [u8; 0],
9818    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9819}
9820
9821impl ::std::fmt::Debug for GtkBuilderScope {
9822    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9823        write!(f, "GtkBuilderScope @ {self:p}")
9824    }
9825}
9826
9827#[repr(C)]
9828#[allow(dead_code)]
9829pub struct GtkCellEditable {
9830    _data: [u8; 0],
9831    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9832}
9833
9834impl ::std::fmt::Debug for GtkCellEditable {
9835    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9836        write!(f, "GtkCellEditable @ {self:p}")
9837    }
9838}
9839
9840#[repr(C)]
9841#[allow(dead_code)]
9842pub struct GtkCellLayout {
9843    _data: [u8; 0],
9844    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9845}
9846
9847impl ::std::fmt::Debug for GtkCellLayout {
9848    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9849        write!(f, "GtkCellLayout @ {self:p}")
9850    }
9851}
9852
9853#[repr(C)]
9854#[allow(dead_code)]
9855pub struct GtkColorChooser {
9856    _data: [u8; 0],
9857    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9858}
9859
9860impl ::std::fmt::Debug for GtkColorChooser {
9861    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9862        write!(f, "GtkColorChooser @ {self:p}")
9863    }
9864}
9865
9866#[repr(C)]
9867#[allow(dead_code)]
9868pub struct GtkConstraintTarget {
9869    _data: [u8; 0],
9870    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9871}
9872
9873impl ::std::fmt::Debug for GtkConstraintTarget {
9874    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9875        write!(f, "GtkConstraintTarget @ {self:p}")
9876    }
9877}
9878
9879#[repr(C)]
9880#[allow(dead_code)]
9881pub struct GtkEditable {
9882    _data: [u8; 0],
9883    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9884}
9885
9886impl ::std::fmt::Debug for GtkEditable {
9887    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9888        write!(f, "GtkEditable @ {self:p}")
9889    }
9890}
9891
9892#[repr(C)]
9893#[allow(dead_code)]
9894pub struct GtkFileChooser {
9895    _data: [u8; 0],
9896    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9897}
9898
9899impl ::std::fmt::Debug for GtkFileChooser {
9900    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9901        write!(f, "GtkFileChooser @ {self:p}")
9902    }
9903}
9904
9905#[repr(C)]
9906#[allow(dead_code)]
9907pub struct GtkFontChooser {
9908    _data: [u8; 0],
9909    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9910}
9911
9912impl ::std::fmt::Debug for GtkFontChooser {
9913    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9914        write!(f, "GtkFontChooser @ {self:p}")
9915    }
9916}
9917
9918#[repr(C)]
9919#[allow(dead_code)]
9920pub struct GtkNative {
9921    _data: [u8; 0],
9922    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9923}
9924
9925impl ::std::fmt::Debug for GtkNative {
9926    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9927        write!(f, "GtkNative @ {self:p}")
9928    }
9929}
9930
9931#[repr(C)]
9932#[allow(dead_code)]
9933pub struct GtkOrientable {
9934    _data: [u8; 0],
9935    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9936}
9937
9938impl ::std::fmt::Debug for GtkOrientable {
9939    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9940        write!(f, "GtkOrientable @ {self:p}")
9941    }
9942}
9943
9944#[repr(C)]
9945#[allow(dead_code)]
9946pub struct GtkPrintOperationPreview {
9947    _data: [u8; 0],
9948    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9949}
9950
9951impl ::std::fmt::Debug for GtkPrintOperationPreview {
9952    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9953        write!(f, "GtkPrintOperationPreview @ {self:p}")
9954    }
9955}
9956
9957#[repr(C)]
9958#[allow(dead_code)]
9959pub struct GtkRoot {
9960    _data: [u8; 0],
9961    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9962}
9963
9964impl ::std::fmt::Debug for GtkRoot {
9965    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9966        write!(f, "GtkRoot @ {self:p}")
9967    }
9968}
9969
9970#[repr(C)]
9971#[allow(dead_code)]
9972pub struct GtkScrollable {
9973    _data: [u8; 0],
9974    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9975}
9976
9977impl ::std::fmt::Debug for GtkScrollable {
9978    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9979        write!(f, "GtkScrollable @ {self:p}")
9980    }
9981}
9982
9983#[repr(C)]
9984#[allow(dead_code)]
9985pub struct GtkSectionModel {
9986    _data: [u8; 0],
9987    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9988}
9989
9990impl ::std::fmt::Debug for GtkSectionModel {
9991    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9992        write!(f, "GtkSectionModel @ {self:p}")
9993    }
9994}
9995
9996#[repr(C)]
9997#[allow(dead_code)]
9998pub struct GtkSelectionModel {
9999    _data: [u8; 0],
10000    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10001}
10002
10003impl ::std::fmt::Debug for GtkSelectionModel {
10004    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10005        write!(f, "GtkSelectionModel @ {self:p}")
10006    }
10007}
10008
10009#[repr(C)]
10010#[allow(dead_code)]
10011pub struct GtkShortcutManager {
10012    _data: [u8; 0],
10013    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10014}
10015
10016impl ::std::fmt::Debug for GtkShortcutManager {
10017    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10018        write!(f, "GtkShortcutManager @ {self:p}")
10019    }
10020}
10021
10022#[repr(C)]
10023#[allow(dead_code)]
10024pub struct GtkStyleProvider {
10025    _data: [u8; 0],
10026    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10027}
10028
10029impl ::std::fmt::Debug for GtkStyleProvider {
10030    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10031        write!(f, "GtkStyleProvider @ {self:p}")
10032    }
10033}
10034
10035#[repr(C)]
10036#[allow(dead_code)]
10037pub struct GtkSymbolicPaintable {
10038    _data: [u8; 0],
10039    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10040}
10041
10042impl ::std::fmt::Debug for GtkSymbolicPaintable {
10043    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10044        write!(f, "GtkSymbolicPaintable @ {self:p}")
10045    }
10046}
10047
10048#[repr(C)]
10049#[allow(dead_code)]
10050pub struct GtkTreeDragDest {
10051    _data: [u8; 0],
10052    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10053}
10054
10055impl ::std::fmt::Debug for GtkTreeDragDest {
10056    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10057        write!(f, "GtkTreeDragDest @ {self:p}")
10058    }
10059}
10060
10061#[repr(C)]
10062#[allow(dead_code)]
10063pub struct GtkTreeDragSource {
10064    _data: [u8; 0],
10065    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10066}
10067
10068impl ::std::fmt::Debug for GtkTreeDragSource {
10069    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10070        write!(f, "GtkTreeDragSource @ {self:p}")
10071    }
10072}
10073
10074#[repr(C)]
10075#[allow(dead_code)]
10076pub struct GtkTreeModel {
10077    _data: [u8; 0],
10078    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10079}
10080
10081impl ::std::fmt::Debug for GtkTreeModel {
10082    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10083        write!(f, "GtkTreeModel @ {self:p}")
10084    }
10085}
10086
10087#[repr(C)]
10088#[allow(dead_code)]
10089pub struct GtkTreeSortable {
10090    _data: [u8; 0],
10091    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10092}
10093
10094impl ::std::fmt::Debug for GtkTreeSortable {
10095    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10096        write!(f, "GtkTreeSortable @ {self:p}")
10097    }
10098}
10099
10100extern "C" {
10101
10102    //=========================================================================
10103    // GtkAccessibleAnnouncementPriority
10104    //=========================================================================
10105    #[cfg(feature = "v4_14")]
10106    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10107    pub fn gtk_accessible_announcement_priority_get_type() -> GType;
10108
10109    //=========================================================================
10110    // GtkAccessibleAutocomplete
10111    //=========================================================================
10112    pub fn gtk_accessible_autocomplete_get_type() -> GType;
10113
10114    //=========================================================================
10115    // GtkAccessibleInvalidState
10116    //=========================================================================
10117    pub fn gtk_accessible_invalid_state_get_type() -> GType;
10118
10119    //=========================================================================
10120    // GtkAccessiblePlatformState
10121    //=========================================================================
10122    #[cfg(feature = "v4_10")]
10123    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10124    pub fn gtk_accessible_platform_state_get_type() -> GType;
10125
10126    //=========================================================================
10127    // GtkAccessibleProperty
10128    //=========================================================================
10129    pub fn gtk_accessible_property_get_type() -> GType;
10130    pub fn gtk_accessible_property_init_value(
10131        property: GtkAccessibleProperty,
10132        value: *mut gobject::GValue,
10133    );
10134
10135    //=========================================================================
10136    // GtkAccessibleRelation
10137    //=========================================================================
10138    pub fn gtk_accessible_relation_get_type() -> GType;
10139    pub fn gtk_accessible_relation_init_value(
10140        relation: GtkAccessibleRelation,
10141        value: *mut gobject::GValue,
10142    );
10143
10144    //=========================================================================
10145    // GtkAccessibleRole
10146    //=========================================================================
10147    pub fn gtk_accessible_role_get_type() -> GType;
10148
10149    //=========================================================================
10150    // GtkAccessibleSort
10151    //=========================================================================
10152    pub fn gtk_accessible_sort_get_type() -> GType;
10153
10154    //=========================================================================
10155    // GtkAccessibleState
10156    //=========================================================================
10157    pub fn gtk_accessible_state_get_type() -> GType;
10158    pub fn gtk_accessible_state_init_value(state: GtkAccessibleState, value: *mut gobject::GValue);
10159
10160    //=========================================================================
10161    // GtkAccessibleTextContentChange
10162    //=========================================================================
10163    #[cfg(feature = "v4_14")]
10164    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10165    pub fn gtk_accessible_text_content_change_get_type() -> GType;
10166
10167    //=========================================================================
10168    // GtkAccessibleTextGranularity
10169    //=========================================================================
10170    #[cfg(feature = "v4_14")]
10171    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10172    pub fn gtk_accessible_text_granularity_get_type() -> GType;
10173
10174    //=========================================================================
10175    // GtkAccessibleTristate
10176    //=========================================================================
10177    pub fn gtk_accessible_tristate_get_type() -> GType;
10178
10179    //=========================================================================
10180    // GtkAlign
10181    //=========================================================================
10182    pub fn gtk_align_get_type() -> GType;
10183
10184    //=========================================================================
10185    // GtkArrowType
10186    //=========================================================================
10187    pub fn gtk_arrow_type_get_type() -> GType;
10188
10189    //=========================================================================
10190    // GtkAssistantPageType
10191    //=========================================================================
10192    pub fn gtk_assistant_page_type_get_type() -> GType;
10193
10194    //=========================================================================
10195    // GtkBaselinePosition
10196    //=========================================================================
10197    pub fn gtk_baseline_position_get_type() -> GType;
10198
10199    //=========================================================================
10200    // GtkBorderStyle
10201    //=========================================================================
10202    pub fn gtk_border_style_get_type() -> GType;
10203
10204    //=========================================================================
10205    // GtkBuilderError
10206    //=========================================================================
10207    pub fn gtk_builder_error_get_type() -> GType;
10208    pub fn gtk_builder_error_quark() -> glib::GQuark;
10209
10210    //=========================================================================
10211    // GtkButtonsType
10212    //=========================================================================
10213    pub fn gtk_buttons_type_get_type() -> GType;
10214
10215    //=========================================================================
10216    // GtkCellRendererAccelMode
10217    //=========================================================================
10218    pub fn gtk_cell_renderer_accel_mode_get_type() -> GType;
10219
10220    //=========================================================================
10221    // GtkCellRendererMode
10222    //=========================================================================
10223    pub fn gtk_cell_renderer_mode_get_type() -> GType;
10224
10225    //=========================================================================
10226    // GtkCollation
10227    //=========================================================================
10228    #[cfg(feature = "v4_10")]
10229    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10230    pub fn gtk_collation_get_type() -> GType;
10231
10232    //=========================================================================
10233    // GtkConstraintAttribute
10234    //=========================================================================
10235    pub fn gtk_constraint_attribute_get_type() -> GType;
10236
10237    //=========================================================================
10238    // GtkConstraintRelation
10239    //=========================================================================
10240    pub fn gtk_constraint_relation_get_type() -> GType;
10241
10242    //=========================================================================
10243    // GtkConstraintStrength
10244    //=========================================================================
10245    pub fn gtk_constraint_strength_get_type() -> GType;
10246
10247    //=========================================================================
10248    // GtkConstraintVflParserError
10249    //=========================================================================
10250    pub fn gtk_constraint_vfl_parser_error_get_type() -> GType;
10251    pub fn gtk_constraint_vfl_parser_error_quark() -> glib::GQuark;
10252
10253    //=========================================================================
10254    // GtkContentFit
10255    //=========================================================================
10256    #[cfg(feature = "v4_8")]
10257    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
10258    pub fn gtk_content_fit_get_type() -> GType;
10259
10260    //=========================================================================
10261    // GtkCornerType
10262    //=========================================================================
10263    pub fn gtk_corner_type_get_type() -> GType;
10264
10265    //=========================================================================
10266    // GtkDeleteType
10267    //=========================================================================
10268    pub fn gtk_delete_type_get_type() -> GType;
10269
10270    //=========================================================================
10271    // GtkDialogError
10272    //=========================================================================
10273    #[cfg(feature = "v4_10")]
10274    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10275    pub fn gtk_dialog_error_get_type() -> GType;
10276    #[cfg(feature = "v4_10")]
10277    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10278    pub fn gtk_dialog_error_quark() -> glib::GQuark;
10279
10280    //=========================================================================
10281    // GtkDirectionType
10282    //=========================================================================
10283    pub fn gtk_direction_type_get_type() -> GType;
10284
10285    //=========================================================================
10286    // GtkEditableProperties
10287    //=========================================================================
10288    pub fn gtk_editable_properties_get_type() -> GType;
10289
10290    //=========================================================================
10291    // GtkEntryIconPosition
10292    //=========================================================================
10293    pub fn gtk_entry_icon_position_get_type() -> GType;
10294
10295    //=========================================================================
10296    // GtkEventSequenceState
10297    //=========================================================================
10298    pub fn gtk_event_sequence_state_get_type() -> GType;
10299
10300    //=========================================================================
10301    // GtkFileChooserAction
10302    //=========================================================================
10303    pub fn gtk_file_chooser_action_get_type() -> GType;
10304
10305    //=========================================================================
10306    // GtkFileChooserError
10307    //=========================================================================
10308    pub fn gtk_file_chooser_error_get_type() -> GType;
10309    pub fn gtk_file_chooser_error_quark() -> glib::GQuark;
10310
10311    //=========================================================================
10312    // GtkFilterChange
10313    //=========================================================================
10314    pub fn gtk_filter_change_get_type() -> GType;
10315
10316    //=========================================================================
10317    // GtkFilterMatch
10318    //=========================================================================
10319    pub fn gtk_filter_match_get_type() -> GType;
10320
10321    //=========================================================================
10322    // GtkFontLevel
10323    //=========================================================================
10324    #[cfg(feature = "v4_10")]
10325    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10326    pub fn gtk_font_level_get_type() -> GType;
10327
10328    //=========================================================================
10329    // GtkFontRendering
10330    //=========================================================================
10331    #[cfg(feature = "v4_16")]
10332    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10333    pub fn gtk_font_rendering_get_type() -> GType;
10334
10335    //=========================================================================
10336    // GtkGraphicsOffloadEnabled
10337    //=========================================================================
10338    #[cfg(feature = "v4_14")]
10339    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10340    pub fn gtk_graphics_offload_enabled_get_type() -> GType;
10341
10342    //=========================================================================
10343    // GtkIconSize
10344    //=========================================================================
10345    pub fn gtk_icon_size_get_type() -> GType;
10346
10347    //=========================================================================
10348    // GtkIconThemeError
10349    //=========================================================================
10350    pub fn gtk_icon_theme_error_get_type() -> GType;
10351    pub fn gtk_icon_theme_error_quark() -> glib::GQuark;
10352
10353    //=========================================================================
10354    // GtkIconViewDropPosition
10355    //=========================================================================
10356    pub fn gtk_icon_view_drop_position_get_type() -> GType;
10357
10358    //=========================================================================
10359    // GtkImageType
10360    //=========================================================================
10361    pub fn gtk_image_type_get_type() -> GType;
10362
10363    //=========================================================================
10364    // GtkInputPurpose
10365    //=========================================================================
10366    pub fn gtk_input_purpose_get_type() -> GType;
10367
10368    //=========================================================================
10369    // GtkInscriptionOverflow
10370    //=========================================================================
10371    #[cfg(feature = "v4_8")]
10372    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
10373    pub fn gtk_inscription_overflow_get_type() -> GType;
10374
10375    //=========================================================================
10376    // GtkInterfaceColorScheme
10377    //=========================================================================
10378    #[cfg(feature = "v4_20")]
10379    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10380    pub fn gtk_interface_color_scheme_get_type() -> GType;
10381
10382    //=========================================================================
10383    // GtkInterfaceContrast
10384    //=========================================================================
10385    #[cfg(feature = "v4_20")]
10386    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10387    pub fn gtk_interface_contrast_get_type() -> GType;
10388
10389    //=========================================================================
10390    // GtkJustification
10391    //=========================================================================
10392    pub fn gtk_justification_get_type() -> GType;
10393
10394    //=========================================================================
10395    // GtkLevelBarMode
10396    //=========================================================================
10397    pub fn gtk_level_bar_mode_get_type() -> GType;
10398
10399    //=========================================================================
10400    // GtkLicense
10401    //=========================================================================
10402    pub fn gtk_license_get_type() -> GType;
10403
10404    //=========================================================================
10405    // GtkListTabBehavior
10406    //=========================================================================
10407    #[cfg(feature = "v4_12")]
10408    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10409    pub fn gtk_list_tab_behavior_get_type() -> GType;
10410
10411    //=========================================================================
10412    // GtkMessageType
10413    //=========================================================================
10414    pub fn gtk_message_type_get_type() -> GType;
10415
10416    //=========================================================================
10417    // GtkMovementStep
10418    //=========================================================================
10419    pub fn gtk_movement_step_get_type() -> GType;
10420
10421    //=========================================================================
10422    // GtkNaturalWrapMode
10423    //=========================================================================
10424    #[cfg(feature = "v4_6")]
10425    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
10426    pub fn gtk_natural_wrap_mode_get_type() -> GType;
10427
10428    //=========================================================================
10429    // GtkNotebookTab
10430    //=========================================================================
10431    pub fn gtk_notebook_tab_get_type() -> GType;
10432
10433    //=========================================================================
10434    // GtkNumberUpLayout
10435    //=========================================================================
10436    pub fn gtk_number_up_layout_get_type() -> GType;
10437
10438    //=========================================================================
10439    // GtkOrdering
10440    //=========================================================================
10441    pub fn gtk_ordering_get_type() -> GType;
10442    #[cfg(feature = "v4_2")]
10443    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
10444    pub fn gtk_ordering_from_cmpfunc(cmpfunc_result: c_int) -> GtkOrdering;
10445
10446    //=========================================================================
10447    // GtkOrientation
10448    //=========================================================================
10449    pub fn gtk_orientation_get_type() -> GType;
10450
10451    //=========================================================================
10452    // GtkOverflow
10453    //=========================================================================
10454    pub fn gtk_overflow_get_type() -> GType;
10455
10456    //=========================================================================
10457    // GtkPackType
10458    //=========================================================================
10459    pub fn gtk_pack_type_get_type() -> GType;
10460
10461    //=========================================================================
10462    // GtkPadActionType
10463    //=========================================================================
10464    pub fn gtk_pad_action_type_get_type() -> GType;
10465
10466    //=========================================================================
10467    // GtkPageOrientation
10468    //=========================================================================
10469    pub fn gtk_page_orientation_get_type() -> GType;
10470
10471    //=========================================================================
10472    // GtkPageSet
10473    //=========================================================================
10474    pub fn gtk_page_set_get_type() -> GType;
10475
10476    //=========================================================================
10477    // GtkPanDirection
10478    //=========================================================================
10479    pub fn gtk_pan_direction_get_type() -> GType;
10480
10481    //=========================================================================
10482    // GtkPolicyType
10483    //=========================================================================
10484    pub fn gtk_policy_type_get_type() -> GType;
10485
10486    //=========================================================================
10487    // GtkPositionType
10488    //=========================================================================
10489    pub fn gtk_position_type_get_type() -> GType;
10490
10491    //=========================================================================
10492    // GtkPrintDuplex
10493    //=========================================================================
10494    pub fn gtk_print_duplex_get_type() -> GType;
10495
10496    //=========================================================================
10497    // GtkPrintError
10498    //=========================================================================
10499    pub fn gtk_print_error_get_type() -> GType;
10500    pub fn gtk_print_error_quark() -> glib::GQuark;
10501
10502    //=========================================================================
10503    // GtkPrintOperationAction
10504    //=========================================================================
10505    pub fn gtk_print_operation_action_get_type() -> GType;
10506
10507    //=========================================================================
10508    // GtkPrintOperationResult
10509    //=========================================================================
10510    pub fn gtk_print_operation_result_get_type() -> GType;
10511
10512    //=========================================================================
10513    // GtkPrintPages
10514    //=========================================================================
10515    pub fn gtk_print_pages_get_type() -> GType;
10516
10517    //=========================================================================
10518    // GtkPrintQuality
10519    //=========================================================================
10520    pub fn gtk_print_quality_get_type() -> GType;
10521
10522    //=========================================================================
10523    // GtkPrintStatus
10524    //=========================================================================
10525    pub fn gtk_print_status_get_type() -> GType;
10526
10527    //=========================================================================
10528    // GtkPropagationLimit
10529    //=========================================================================
10530    pub fn gtk_propagation_limit_get_type() -> GType;
10531
10532    //=========================================================================
10533    // GtkPropagationPhase
10534    //=========================================================================
10535    pub fn gtk_propagation_phase_get_type() -> GType;
10536
10537    //=========================================================================
10538    // GtkRecentManagerError
10539    //=========================================================================
10540    pub fn gtk_recent_manager_error_get_type() -> GType;
10541    pub fn gtk_recent_manager_error_quark() -> glib::GQuark;
10542
10543    //=========================================================================
10544    // GtkReducedMotion
10545    //=========================================================================
10546    #[cfg(feature = "v4_22")]
10547    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10548    pub fn gtk_reduced_motion_get_type() -> GType;
10549
10550    //=========================================================================
10551    // GtkResponseType
10552    //=========================================================================
10553    pub fn gtk_response_type_get_type() -> GType;
10554
10555    //=========================================================================
10556    // GtkRestoreReason
10557    //=========================================================================
10558    #[cfg(feature = "v4_22")]
10559    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10560    pub fn gtk_restore_reason_get_type() -> GType;
10561
10562    //=========================================================================
10563    // GtkRevealerTransitionType
10564    //=========================================================================
10565    pub fn gtk_revealer_transition_type_get_type() -> GType;
10566
10567    //=========================================================================
10568    // GtkScrollStep
10569    //=========================================================================
10570    pub fn gtk_scroll_step_get_type() -> GType;
10571
10572    //=========================================================================
10573    // GtkScrollType
10574    //=========================================================================
10575    pub fn gtk_scroll_type_get_type() -> GType;
10576
10577    //=========================================================================
10578    // GtkScrollablePolicy
10579    //=========================================================================
10580    pub fn gtk_scrollable_policy_get_type() -> GType;
10581
10582    //=========================================================================
10583    // GtkSelectionMode
10584    //=========================================================================
10585    pub fn gtk_selection_mode_get_type() -> GType;
10586
10587    //=========================================================================
10588    // GtkSensitivityType
10589    //=========================================================================
10590    pub fn gtk_sensitivity_type_get_type() -> GType;
10591
10592    //=========================================================================
10593    // GtkShortcutScope
10594    //=========================================================================
10595    pub fn gtk_shortcut_scope_get_type() -> GType;
10596
10597    //=========================================================================
10598    // GtkShortcutType
10599    //=========================================================================
10600    pub fn gtk_shortcut_type_get_type() -> GType;
10601
10602    //=========================================================================
10603    // GtkSizeGroupMode
10604    //=========================================================================
10605    pub fn gtk_size_group_mode_get_type() -> GType;
10606
10607    //=========================================================================
10608    // GtkSizeRequestMode
10609    //=========================================================================
10610    pub fn gtk_size_request_mode_get_type() -> GType;
10611
10612    //=========================================================================
10613    // GtkSortType
10614    //=========================================================================
10615    pub fn gtk_sort_type_get_type() -> GType;
10616
10617    //=========================================================================
10618    // GtkSorterChange
10619    //=========================================================================
10620    pub fn gtk_sorter_change_get_type() -> GType;
10621
10622    //=========================================================================
10623    // GtkSorterOrder
10624    //=========================================================================
10625    pub fn gtk_sorter_order_get_type() -> GType;
10626
10627    //=========================================================================
10628    // GtkSpinButtonUpdatePolicy
10629    //=========================================================================
10630    pub fn gtk_spin_button_update_policy_get_type() -> GType;
10631
10632    //=========================================================================
10633    // GtkSpinType
10634    //=========================================================================
10635    pub fn gtk_spin_type_get_type() -> GType;
10636
10637    //=========================================================================
10638    // GtkStackTransitionType
10639    //=========================================================================
10640    pub fn gtk_stack_transition_type_get_type() -> GType;
10641
10642    //=========================================================================
10643    // GtkStringFilterMatchMode
10644    //=========================================================================
10645    pub fn gtk_string_filter_match_mode_get_type() -> GType;
10646
10647    //=========================================================================
10648    // GtkSvgError
10649    //=========================================================================
10650    #[cfg(feature = "v4_22")]
10651    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10652    pub fn gtk_svg_error_get_type() -> GType;
10653    #[cfg(feature = "v4_22")]
10654    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10655    pub fn gtk_svg_error_get_attribute(error: *const glib::GError) -> *const c_char;
10656    #[cfg(feature = "v4_22")]
10657    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10658    pub fn gtk_svg_error_get_element(error: *const glib::GError) -> *const c_char;
10659    #[cfg(feature = "v4_22")]
10660    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10661    pub fn gtk_svg_error_get_end(error: *const glib::GError) -> *const GtkSvgLocation;
10662    #[cfg(feature = "v4_22")]
10663    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10664    pub fn gtk_svg_error_get_start(error: *const glib::GError) -> *const GtkSvgLocation;
10665    #[cfg(feature = "v4_22")]
10666    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10667    pub fn gtk_svg_error_quark() -> glib::GQuark;
10668
10669    //=========================================================================
10670    // GtkSymbolicColor
10671    //=========================================================================
10672    #[cfg(feature = "v4_6")]
10673    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
10674    pub fn gtk_symbolic_color_get_type() -> GType;
10675
10676    //=========================================================================
10677    // GtkSystemSetting
10678    //=========================================================================
10679    pub fn gtk_system_setting_get_type() -> GType;
10680
10681    //=========================================================================
10682    // GtkTextDirection
10683    //=========================================================================
10684    pub fn gtk_text_direction_get_type() -> GType;
10685
10686    //=========================================================================
10687    // GtkTextExtendSelection
10688    //=========================================================================
10689    pub fn gtk_text_extend_selection_get_type() -> GType;
10690
10691    //=========================================================================
10692    // GtkTextViewLayer
10693    //=========================================================================
10694    pub fn gtk_text_view_layer_get_type() -> GType;
10695
10696    //=========================================================================
10697    // GtkTextWindowType
10698    //=========================================================================
10699    pub fn gtk_text_window_type_get_type() -> GType;
10700
10701    //=========================================================================
10702    // GtkTreeViewColumnSizing
10703    //=========================================================================
10704    pub fn gtk_tree_view_column_sizing_get_type() -> GType;
10705
10706    //=========================================================================
10707    // GtkTreeViewDropPosition
10708    //=========================================================================
10709    pub fn gtk_tree_view_drop_position_get_type() -> GType;
10710
10711    //=========================================================================
10712    // GtkTreeViewGridLines
10713    //=========================================================================
10714    pub fn gtk_tree_view_grid_lines_get_type() -> GType;
10715
10716    //=========================================================================
10717    // GtkUnit
10718    //=========================================================================
10719    pub fn gtk_unit_get_type() -> GType;
10720
10721    //=========================================================================
10722    // GtkWindowGravity
10723    //=========================================================================
10724    #[cfg(feature = "v4_20")]
10725    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10726    pub fn gtk_window_gravity_get_type() -> GType;
10727
10728    //=========================================================================
10729    // GtkWrapMode
10730    //=========================================================================
10731    pub fn gtk_wrap_mode_get_type() -> GType;
10732
10733    //=========================================================================
10734    // GtkApplicationInhibitFlags
10735    //=========================================================================
10736    pub fn gtk_application_inhibit_flags_get_type() -> GType;
10737
10738    //=========================================================================
10739    // GtkBuilderClosureFlags
10740    //=========================================================================
10741    pub fn gtk_builder_closure_flags_get_type() -> GType;
10742
10743    //=========================================================================
10744    // GtkCellRendererState
10745    //=========================================================================
10746    pub fn gtk_cell_renderer_state_get_type() -> GType;
10747
10748    //=========================================================================
10749    // GtkDebugFlags
10750    //=========================================================================
10751    pub fn gtk_debug_flags_get_type() -> GType;
10752
10753    //=========================================================================
10754    // GtkDialogFlags
10755    //=========================================================================
10756    pub fn gtk_dialog_flags_get_type() -> GType;
10757
10758    //=========================================================================
10759    // GtkEventControllerScrollFlags
10760    //=========================================================================
10761    pub fn gtk_event_controller_scroll_flags_get_type() -> GType;
10762
10763    //=========================================================================
10764    // GtkFontChooserLevel
10765    //=========================================================================
10766    pub fn gtk_font_chooser_level_get_type() -> GType;
10767
10768    //=========================================================================
10769    // GtkIconLookupFlags
10770    //=========================================================================
10771    pub fn gtk_icon_lookup_flags_get_type() -> GType;
10772
10773    //=========================================================================
10774    // GtkInputHints
10775    //=========================================================================
10776    pub fn gtk_input_hints_get_type() -> GType;
10777
10778    //=========================================================================
10779    // GtkListScrollFlags
10780    //=========================================================================
10781    #[cfg(feature = "v4_12")]
10782    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10783    pub fn gtk_list_scroll_flags_get_type() -> GType;
10784
10785    //=========================================================================
10786    // GtkPickFlags
10787    //=========================================================================
10788    pub fn gtk_pick_flags_get_type() -> GType;
10789
10790    //=========================================================================
10791    // GtkPopoverMenuFlags
10792    //=========================================================================
10793    pub fn gtk_popover_menu_flags_get_type() -> GType;
10794
10795    //=========================================================================
10796    // GtkPrintCapabilities
10797    //=========================================================================
10798    pub fn gtk_print_capabilities_get_type() -> GType;
10799
10800    //=========================================================================
10801    // GtkShortcutActionFlags
10802    //=========================================================================
10803    pub fn gtk_shortcut_action_flags_get_type() -> GType;
10804
10805    //=========================================================================
10806    // GtkStateFlags
10807    //=========================================================================
10808    pub fn gtk_state_flags_get_type() -> GType;
10809
10810    //=========================================================================
10811    // GtkStyleContextPrintFlags
10812    //=========================================================================
10813    pub fn gtk_style_context_print_flags_get_type() -> GType;
10814
10815    //=========================================================================
10816    // GtkTextBufferNotifyFlags
10817    //=========================================================================
10818    #[cfg(feature = "v4_16")]
10819    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10820    pub fn gtk_text_buffer_notify_flags_get_type() -> GType;
10821
10822    //=========================================================================
10823    // GtkTextSearchFlags
10824    //=========================================================================
10825    pub fn gtk_text_search_flags_get_type() -> GType;
10826
10827    //=========================================================================
10828    // GtkTreeModelFlags
10829    //=========================================================================
10830    pub fn gtk_tree_model_flags_get_type() -> GType;
10831
10832    //=========================================================================
10833    // GtkAccessibleList
10834    //=========================================================================
10835    #[cfg(feature = "v4_14")]
10836    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10837    pub fn gtk_accessible_list_get_type() -> GType;
10838    #[cfg(feature = "v4_14")]
10839    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10840    pub fn gtk_accessible_list_new_from_array(
10841        accessibles: *mut *mut GtkAccessible,
10842        n_accessibles: size_t,
10843    ) -> *mut GtkAccessibleList;
10844    #[cfg(feature = "v4_14")]
10845    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10846    pub fn gtk_accessible_list_new_from_list(list: *mut glib::GList) -> *mut GtkAccessibleList;
10847    #[cfg(feature = "v4_14")]
10848    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10849    pub fn gtk_accessible_list_get_objects(
10850        accessible_list: *mut GtkAccessibleList,
10851    ) -> *mut glib::GList;
10852
10853    //=========================================================================
10854    // GtkBitset
10855    //=========================================================================
10856    pub fn gtk_bitset_get_type() -> GType;
10857    pub fn gtk_bitset_new_empty() -> *mut GtkBitset;
10858    pub fn gtk_bitset_new_range(start: c_uint, n_items: c_uint) -> *mut GtkBitset;
10859    pub fn gtk_bitset_add(self_: *mut GtkBitset, value: c_uint) -> gboolean;
10860    pub fn gtk_bitset_add_range(self_: *mut GtkBitset, start: c_uint, n_items: c_uint);
10861    pub fn gtk_bitset_add_range_closed(self_: *mut GtkBitset, first: c_uint, last: c_uint);
10862    pub fn gtk_bitset_add_rectangle(
10863        self_: *mut GtkBitset,
10864        start: c_uint,
10865        width: c_uint,
10866        height: c_uint,
10867        stride: c_uint,
10868    );
10869    pub fn gtk_bitset_contains(self_: *const GtkBitset, value: c_uint) -> gboolean;
10870    pub fn gtk_bitset_copy(self_: *const GtkBitset) -> *mut GtkBitset;
10871    pub fn gtk_bitset_difference(self_: *mut GtkBitset, other: *const GtkBitset);
10872    pub fn gtk_bitset_equals(self_: *const GtkBitset, other: *const GtkBitset) -> gboolean;
10873    pub fn gtk_bitset_get_maximum(self_: *const GtkBitset) -> c_uint;
10874    pub fn gtk_bitset_get_minimum(self_: *const GtkBitset) -> c_uint;
10875    pub fn gtk_bitset_get_nth(self_: *const GtkBitset, nth: c_uint) -> c_uint;
10876    pub fn gtk_bitset_get_size(self_: *const GtkBitset) -> u64;
10877    pub fn gtk_bitset_get_size_in_range(
10878        self_: *const GtkBitset,
10879        first: c_uint,
10880        last: c_uint,
10881    ) -> u64;
10882    pub fn gtk_bitset_intersect(self_: *mut GtkBitset, other: *const GtkBitset);
10883    pub fn gtk_bitset_is_empty(self_: *const GtkBitset) -> gboolean;
10884    pub fn gtk_bitset_ref(self_: *mut GtkBitset) -> *mut GtkBitset;
10885    pub fn gtk_bitset_remove(self_: *mut GtkBitset, value: c_uint) -> gboolean;
10886    pub fn gtk_bitset_remove_all(self_: *mut GtkBitset);
10887    pub fn gtk_bitset_remove_range(self_: *mut GtkBitset, start: c_uint, n_items: c_uint);
10888    pub fn gtk_bitset_remove_range_closed(self_: *mut GtkBitset, first: c_uint, last: c_uint);
10889    pub fn gtk_bitset_remove_rectangle(
10890        self_: *mut GtkBitset,
10891        start: c_uint,
10892        width: c_uint,
10893        height: c_uint,
10894        stride: c_uint,
10895    );
10896    pub fn gtk_bitset_shift_left(self_: *mut GtkBitset, amount: c_uint);
10897    pub fn gtk_bitset_shift_right(self_: *mut GtkBitset, amount: c_uint);
10898    pub fn gtk_bitset_splice(
10899        self_: *mut GtkBitset,
10900        position: c_uint,
10901        removed: c_uint,
10902        added: c_uint,
10903    );
10904    pub fn gtk_bitset_subtract(self_: *mut GtkBitset, other: *const GtkBitset);
10905    pub fn gtk_bitset_union(self_: *mut GtkBitset, other: *const GtkBitset);
10906    pub fn gtk_bitset_unref(self_: *mut GtkBitset);
10907
10908    //=========================================================================
10909    // GtkBitsetIter
10910    //=========================================================================
10911    pub fn gtk_bitset_iter_get_type() -> GType;
10912    pub fn gtk_bitset_iter_get_value(iter: *const GtkBitsetIter) -> c_uint;
10913    pub fn gtk_bitset_iter_is_valid(iter: *const GtkBitsetIter) -> gboolean;
10914    pub fn gtk_bitset_iter_next(iter: *mut GtkBitsetIter, value: *mut c_uint) -> gboolean;
10915    pub fn gtk_bitset_iter_previous(iter: *mut GtkBitsetIter, value: *mut c_uint) -> gboolean;
10916    pub fn gtk_bitset_iter_init_at(
10917        iter: *mut GtkBitsetIter,
10918        set: *const GtkBitset,
10919        target: c_uint,
10920        value: *mut c_uint,
10921    ) -> gboolean;
10922    pub fn gtk_bitset_iter_init_first(
10923        iter: *mut GtkBitsetIter,
10924        set: *const GtkBitset,
10925        value: *mut c_uint,
10926    ) -> gboolean;
10927    pub fn gtk_bitset_iter_init_last(
10928        iter: *mut GtkBitsetIter,
10929        set: *const GtkBitset,
10930        value: *mut c_uint,
10931    ) -> gboolean;
10932
10933    //=========================================================================
10934    // GtkBorder
10935    //=========================================================================
10936    pub fn gtk_border_get_type() -> GType;
10937    pub fn gtk_border_new() -> *mut GtkBorder;
10938    pub fn gtk_border_copy(border_: *const GtkBorder) -> *mut GtkBorder;
10939    pub fn gtk_border_free(border_: *mut GtkBorder);
10940
10941    //=========================================================================
10942    // GtkBuildableParseContext
10943    //=========================================================================
10944    pub fn gtk_buildable_parse_context_get_element(
10945        context: *mut GtkBuildableParseContext,
10946    ) -> *const c_char;
10947    pub fn gtk_buildable_parse_context_get_element_stack(
10948        context: *mut GtkBuildableParseContext,
10949    ) -> *mut glib::GPtrArray;
10950    pub fn gtk_buildable_parse_context_get_position(
10951        context: *mut GtkBuildableParseContext,
10952        line_number: *mut c_int,
10953        char_number: *mut c_int,
10954    );
10955    pub fn gtk_buildable_parse_context_pop(context: *mut GtkBuildableParseContext) -> gpointer;
10956    pub fn gtk_buildable_parse_context_push(
10957        context: *mut GtkBuildableParseContext,
10958        parser: *const GtkBuildableParser,
10959        user_data: gpointer,
10960    );
10961
10962    //=========================================================================
10963    // GtkCellAreaClass
10964    //=========================================================================
10965    pub fn gtk_cell_area_class_find_cell_property(
10966        aclass: *mut GtkCellAreaClass,
10967        property_name: *const c_char,
10968    ) -> *mut gobject::GParamSpec;
10969    pub fn gtk_cell_area_class_install_cell_property(
10970        aclass: *mut GtkCellAreaClass,
10971        property_id: c_uint,
10972        pspec: *mut gobject::GParamSpec,
10973    );
10974    pub fn gtk_cell_area_class_list_cell_properties(
10975        aclass: *mut GtkCellAreaClass,
10976        n_properties: *mut c_uint,
10977    ) -> *mut *mut gobject::GParamSpec;
10978
10979    //=========================================================================
10980    // GtkCssSection
10981    //=========================================================================
10982    pub fn gtk_css_section_get_type() -> GType;
10983    pub fn gtk_css_section_new(
10984        file: *mut gio::GFile,
10985        start: *const GtkCssLocation,
10986        end: *const GtkCssLocation,
10987    ) -> *mut GtkCssSection;
10988    #[cfg(feature = "v4_16")]
10989    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10990    pub fn gtk_css_section_new_with_bytes(
10991        file: *mut gio::GFile,
10992        bytes: *mut glib::GBytes,
10993        start: *const GtkCssLocation,
10994        end: *const GtkCssLocation,
10995    ) -> *mut GtkCssSection;
10996    #[cfg(feature = "v4_16")]
10997    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10998    pub fn gtk_css_section_get_bytes(section: *const GtkCssSection) -> *mut glib::GBytes;
10999    pub fn gtk_css_section_get_end_location(section: *const GtkCssSection)
11000        -> *const GtkCssLocation;
11001    pub fn gtk_css_section_get_file(section: *const GtkCssSection) -> *mut gio::GFile;
11002    pub fn gtk_css_section_get_parent(section: *const GtkCssSection) -> *mut GtkCssSection;
11003    pub fn gtk_css_section_get_start_location(
11004        section: *const GtkCssSection,
11005    ) -> *const GtkCssLocation;
11006    pub fn gtk_css_section_print(section: *const GtkCssSection, string: *mut glib::GString);
11007    pub fn gtk_css_section_ref(section: *mut GtkCssSection) -> *mut GtkCssSection;
11008    pub fn gtk_css_section_to_string(section: *const GtkCssSection) -> *mut c_char;
11009    pub fn gtk_css_section_unref(section: *mut GtkCssSection);
11010
11011    //=========================================================================
11012    // GtkExpressionWatch
11013    //=========================================================================
11014    #[cfg(feature = "v4_2")]
11015    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
11016    pub fn gtk_expression_watch_get_type() -> GType;
11017    pub fn gtk_expression_watch_evaluate(
11018        watch: *mut GtkExpressionWatch,
11019        value: *mut gobject::GValue,
11020    ) -> gboolean;
11021    pub fn gtk_expression_watch_ref(watch: *mut GtkExpressionWatch) -> *mut GtkExpressionWatch;
11022    pub fn gtk_expression_watch_unref(watch: *mut GtkExpressionWatch);
11023    pub fn gtk_expression_watch_unwatch(watch: *mut GtkExpressionWatch);
11024
11025    //=========================================================================
11026    // GtkPaperSize
11027    //=========================================================================
11028    pub fn gtk_paper_size_get_type() -> GType;
11029    pub fn gtk_paper_size_new(name: *const c_char) -> *mut GtkPaperSize;
11030    pub fn gtk_paper_size_new_custom(
11031        name: *const c_char,
11032        display_name: *const c_char,
11033        width: c_double,
11034        height: c_double,
11035        unit: GtkUnit,
11036    ) -> *mut GtkPaperSize;
11037    pub fn gtk_paper_size_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPaperSize;
11038    pub fn gtk_paper_size_new_from_ipp(
11039        ipp_name: *const c_char,
11040        width: c_double,
11041        height: c_double,
11042    ) -> *mut GtkPaperSize;
11043    pub fn gtk_paper_size_new_from_key_file(
11044        key_file: *mut glib::GKeyFile,
11045        group_name: *const c_char,
11046        error: *mut *mut glib::GError,
11047    ) -> *mut GtkPaperSize;
11048    pub fn gtk_paper_size_new_from_ppd(
11049        ppd_name: *const c_char,
11050        ppd_display_name: *const c_char,
11051        width: c_double,
11052        height: c_double,
11053    ) -> *mut GtkPaperSize;
11054    pub fn gtk_paper_size_copy(other: *mut GtkPaperSize) -> *mut GtkPaperSize;
11055    pub fn gtk_paper_size_free(size: *mut GtkPaperSize);
11056    pub fn gtk_paper_size_get_default_bottom_margin(
11057        size: *mut GtkPaperSize,
11058        unit: GtkUnit,
11059    ) -> c_double;
11060    pub fn gtk_paper_size_get_default_left_margin(
11061        size: *mut GtkPaperSize,
11062        unit: GtkUnit,
11063    ) -> c_double;
11064    pub fn gtk_paper_size_get_default_right_margin(
11065        size: *mut GtkPaperSize,
11066        unit: GtkUnit,
11067    ) -> c_double;
11068    pub fn gtk_paper_size_get_default_top_margin(
11069        size: *mut GtkPaperSize,
11070        unit: GtkUnit,
11071    ) -> c_double;
11072    pub fn gtk_paper_size_get_display_name(size: *mut GtkPaperSize) -> *const c_char;
11073    pub fn gtk_paper_size_get_height(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
11074    pub fn gtk_paper_size_get_name(size: *mut GtkPaperSize) -> *const c_char;
11075    pub fn gtk_paper_size_get_ppd_name(size: *mut GtkPaperSize) -> *const c_char;
11076    pub fn gtk_paper_size_get_width(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
11077    pub fn gtk_paper_size_is_custom(size: *mut GtkPaperSize) -> gboolean;
11078    pub fn gtk_paper_size_is_equal(size1: *mut GtkPaperSize, size2: *mut GtkPaperSize) -> gboolean;
11079    pub fn gtk_paper_size_is_ipp(size: *mut GtkPaperSize) -> gboolean;
11080    pub fn gtk_paper_size_set_size(
11081        size: *mut GtkPaperSize,
11082        width: c_double,
11083        height: c_double,
11084        unit: GtkUnit,
11085    );
11086    pub fn gtk_paper_size_to_gvariant(paper_size: *mut GtkPaperSize) -> *mut glib::GVariant;
11087    pub fn gtk_paper_size_to_key_file(
11088        size: *mut GtkPaperSize,
11089        key_file: *mut glib::GKeyFile,
11090        group_name: *const c_char,
11091    );
11092    pub fn gtk_paper_size_get_default() -> *const c_char;
11093    pub fn gtk_paper_size_get_paper_sizes(include_custom: gboolean) -> *mut glib::GList;
11094
11095    //=========================================================================
11096    // GtkPrintSetup
11097    //=========================================================================
11098    #[cfg(feature = "v4_14")]
11099    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11100    pub fn gtk_print_setup_get_type() -> GType;
11101    #[cfg(feature = "v4_14")]
11102    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11103    pub fn gtk_print_setup_get_page_setup(setup: *mut GtkPrintSetup) -> *mut GtkPageSetup;
11104    #[cfg(feature = "v4_14")]
11105    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11106    pub fn gtk_print_setup_get_print_settings(setup: *mut GtkPrintSetup) -> *mut GtkPrintSettings;
11107    #[cfg(feature = "v4_14")]
11108    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11109    pub fn gtk_print_setup_ref(setup: *mut GtkPrintSetup) -> *mut GtkPrintSetup;
11110    #[cfg(feature = "v4_14")]
11111    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11112    pub fn gtk_print_setup_unref(setup: *mut GtkPrintSetup);
11113
11114    //=========================================================================
11115    // GtkRecentInfo
11116    //=========================================================================
11117    pub fn gtk_recent_info_get_type() -> GType;
11118    pub fn gtk_recent_info_create_app_info(
11119        info: *mut GtkRecentInfo,
11120        app_name: *const c_char,
11121        error: *mut *mut glib::GError,
11122    ) -> *mut gio::GAppInfo;
11123    pub fn gtk_recent_info_exists(info: *mut GtkRecentInfo) -> gboolean;
11124    pub fn gtk_recent_info_get_added(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
11125    pub fn gtk_recent_info_get_age(info: *mut GtkRecentInfo) -> c_int;
11126    pub fn gtk_recent_info_get_application_info(
11127        info: *mut GtkRecentInfo,
11128        app_name: *const c_char,
11129        app_exec: *mut *const c_char,
11130        count: *mut c_uint,
11131        stamp: *mut *mut glib::GDateTime,
11132    ) -> gboolean;
11133    pub fn gtk_recent_info_get_applications(
11134        info: *mut GtkRecentInfo,
11135        length: *mut size_t,
11136    ) -> *mut *mut c_char;
11137    pub fn gtk_recent_info_get_description(info: *mut GtkRecentInfo) -> *const c_char;
11138    pub fn gtk_recent_info_get_display_name(info: *mut GtkRecentInfo) -> *const c_char;
11139    pub fn gtk_recent_info_get_gicon(info: *mut GtkRecentInfo) -> *mut gio::GIcon;
11140    pub fn gtk_recent_info_get_groups(
11141        info: *mut GtkRecentInfo,
11142        length: *mut size_t,
11143    ) -> *mut *mut c_char;
11144    pub fn gtk_recent_info_get_mime_type(info: *mut GtkRecentInfo) -> *const c_char;
11145    pub fn gtk_recent_info_get_modified(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
11146    pub fn gtk_recent_info_get_private_hint(info: *mut GtkRecentInfo) -> gboolean;
11147    pub fn gtk_recent_info_get_short_name(info: *mut GtkRecentInfo) -> *mut c_char;
11148    pub fn gtk_recent_info_get_uri(info: *mut GtkRecentInfo) -> *const c_char;
11149    pub fn gtk_recent_info_get_uri_display(info: *mut GtkRecentInfo) -> *mut c_char;
11150    pub fn gtk_recent_info_get_visited(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
11151    pub fn gtk_recent_info_has_application(
11152        info: *mut GtkRecentInfo,
11153        app_name: *const c_char,
11154    ) -> gboolean;
11155    pub fn gtk_recent_info_has_group(
11156        info: *mut GtkRecentInfo,
11157        group_name: *const c_char,
11158    ) -> gboolean;
11159    pub fn gtk_recent_info_is_local(info: *mut GtkRecentInfo) -> gboolean;
11160    pub fn gtk_recent_info_last_application(info: *mut GtkRecentInfo) -> *mut c_char;
11161    pub fn gtk_recent_info_match(
11162        info_a: *mut GtkRecentInfo,
11163        info_b: *mut GtkRecentInfo,
11164    ) -> gboolean;
11165    pub fn gtk_recent_info_ref(info: *mut GtkRecentInfo) -> *mut GtkRecentInfo;
11166    pub fn gtk_recent_info_unref(info: *mut GtkRecentInfo);
11167
11168    //=========================================================================
11169    // GtkRequisition
11170    //=========================================================================
11171    pub fn gtk_requisition_get_type() -> GType;
11172    pub fn gtk_requisition_new() -> *mut GtkRequisition;
11173    pub fn gtk_requisition_copy(requisition: *const GtkRequisition) -> *mut GtkRequisition;
11174    pub fn gtk_requisition_free(requisition: *mut GtkRequisition);
11175
11176    //=========================================================================
11177    // GtkScrollInfo
11178    //=========================================================================
11179    #[cfg(feature = "v4_12")]
11180    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11181    pub fn gtk_scroll_info_get_type() -> GType;
11182    #[cfg(feature = "v4_12")]
11183    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11184    pub fn gtk_scroll_info_new() -> *mut GtkScrollInfo;
11185    #[cfg(feature = "v4_12")]
11186    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11187    pub fn gtk_scroll_info_get_enable_horizontal(self_: *mut GtkScrollInfo) -> gboolean;
11188    #[cfg(feature = "v4_12")]
11189    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11190    pub fn gtk_scroll_info_get_enable_vertical(self_: *mut GtkScrollInfo) -> gboolean;
11191    #[cfg(feature = "v4_12")]
11192    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11193    pub fn gtk_scroll_info_ref(self_: *mut GtkScrollInfo) -> *mut GtkScrollInfo;
11194    #[cfg(feature = "v4_12")]
11195    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11196    pub fn gtk_scroll_info_set_enable_horizontal(self_: *mut GtkScrollInfo, horizontal: gboolean);
11197    #[cfg(feature = "v4_12")]
11198    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11199    pub fn gtk_scroll_info_set_enable_vertical(self_: *mut GtkScrollInfo, vertical: gboolean);
11200    #[cfg(feature = "v4_12")]
11201    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11202    pub fn gtk_scroll_info_unref(self_: *mut GtkScrollInfo);
11203
11204    //=========================================================================
11205    // GtkTextIter
11206    //=========================================================================
11207    pub fn gtk_text_iter_get_type() -> GType;
11208    pub fn gtk_text_iter_assign(iter: *mut GtkTextIter, other: *const GtkTextIter);
11209    pub fn gtk_text_iter_backward_char(iter: *mut GtkTextIter) -> gboolean;
11210    pub fn gtk_text_iter_backward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11211    pub fn gtk_text_iter_backward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11212    pub fn gtk_text_iter_backward_cursor_positions(
11213        iter: *mut GtkTextIter,
11214        count: c_int,
11215    ) -> gboolean;
11216    pub fn gtk_text_iter_backward_find_char(
11217        iter: *mut GtkTextIter,
11218        pred: GtkTextCharPredicate,
11219        user_data: gpointer,
11220        limit: *const GtkTextIter,
11221    ) -> gboolean;
11222    pub fn gtk_text_iter_backward_line(iter: *mut GtkTextIter) -> gboolean;
11223    pub fn gtk_text_iter_backward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11224    pub fn gtk_text_iter_backward_search(
11225        iter: *const GtkTextIter,
11226        str: *const c_char,
11227        flags: GtkTextSearchFlags,
11228        match_start: *mut GtkTextIter,
11229        match_end: *mut GtkTextIter,
11230        limit: *const GtkTextIter,
11231    ) -> gboolean;
11232    pub fn gtk_text_iter_backward_sentence_start(iter: *mut GtkTextIter) -> gboolean;
11233    pub fn gtk_text_iter_backward_sentence_starts(iter: *mut GtkTextIter, count: c_int)
11234        -> gboolean;
11235    pub fn gtk_text_iter_backward_to_tag_toggle(
11236        iter: *mut GtkTextIter,
11237        tag: *mut GtkTextTag,
11238    ) -> gboolean;
11239    pub fn gtk_text_iter_backward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11240    pub fn gtk_text_iter_backward_visible_cursor_positions(
11241        iter: *mut GtkTextIter,
11242        count: c_int,
11243    ) -> gboolean;
11244    pub fn gtk_text_iter_backward_visible_line(iter: *mut GtkTextIter) -> gboolean;
11245    pub fn gtk_text_iter_backward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11246    pub fn gtk_text_iter_backward_visible_word_start(iter: *mut GtkTextIter) -> gboolean;
11247    pub fn gtk_text_iter_backward_visible_word_starts(
11248        iter: *mut GtkTextIter,
11249        count: c_int,
11250    ) -> gboolean;
11251    pub fn gtk_text_iter_backward_word_start(iter: *mut GtkTextIter) -> gboolean;
11252    pub fn gtk_text_iter_backward_word_starts(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11253    pub fn gtk_text_iter_can_insert(
11254        iter: *const GtkTextIter,
11255        default_editability: gboolean,
11256    ) -> gboolean;
11257    pub fn gtk_text_iter_compare(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> c_int;
11258    pub fn gtk_text_iter_copy(iter: *const GtkTextIter) -> *mut GtkTextIter;
11259    pub fn gtk_text_iter_editable(iter: *const GtkTextIter, default_setting: gboolean) -> gboolean;
11260    pub fn gtk_text_iter_ends_line(iter: *const GtkTextIter) -> gboolean;
11261    pub fn gtk_text_iter_ends_sentence(iter: *const GtkTextIter) -> gboolean;
11262    pub fn gtk_text_iter_ends_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11263    pub fn gtk_text_iter_ends_word(iter: *const GtkTextIter) -> gboolean;
11264    pub fn gtk_text_iter_equal(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> gboolean;
11265    pub fn gtk_text_iter_forward_char(iter: *mut GtkTextIter) -> gboolean;
11266    pub fn gtk_text_iter_forward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11267    pub fn gtk_text_iter_forward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11268    pub fn gtk_text_iter_forward_cursor_positions(iter: *mut GtkTextIter, count: c_int)
11269        -> gboolean;
11270    pub fn gtk_text_iter_forward_find_char(
11271        iter: *mut GtkTextIter,
11272        pred: GtkTextCharPredicate,
11273        user_data: gpointer,
11274        limit: *const GtkTextIter,
11275    ) -> gboolean;
11276    pub fn gtk_text_iter_forward_line(iter: *mut GtkTextIter) -> gboolean;
11277    pub fn gtk_text_iter_forward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11278    pub fn gtk_text_iter_forward_search(
11279        iter: *const GtkTextIter,
11280        str: *const c_char,
11281        flags: GtkTextSearchFlags,
11282        match_start: *mut GtkTextIter,
11283        match_end: *mut GtkTextIter,
11284        limit: *const GtkTextIter,
11285    ) -> gboolean;
11286    pub fn gtk_text_iter_forward_sentence_end(iter: *mut GtkTextIter) -> gboolean;
11287    pub fn gtk_text_iter_forward_sentence_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11288    pub fn gtk_text_iter_forward_to_end(iter: *mut GtkTextIter);
11289    pub fn gtk_text_iter_forward_to_line_end(iter: *mut GtkTextIter) -> gboolean;
11290    pub fn gtk_text_iter_forward_to_tag_toggle(
11291        iter: *mut GtkTextIter,
11292        tag: *mut GtkTextTag,
11293    ) -> gboolean;
11294    pub fn gtk_text_iter_forward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11295    pub fn gtk_text_iter_forward_visible_cursor_positions(
11296        iter: *mut GtkTextIter,
11297        count: c_int,
11298    ) -> gboolean;
11299    pub fn gtk_text_iter_forward_visible_line(iter: *mut GtkTextIter) -> gboolean;
11300    pub fn gtk_text_iter_forward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11301    pub fn gtk_text_iter_forward_visible_word_end(iter: *mut GtkTextIter) -> gboolean;
11302    pub fn gtk_text_iter_forward_visible_word_ends(
11303        iter: *mut GtkTextIter,
11304        count: c_int,
11305    ) -> gboolean;
11306    pub fn gtk_text_iter_forward_word_end(iter: *mut GtkTextIter) -> gboolean;
11307    pub fn gtk_text_iter_forward_word_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11308    pub fn gtk_text_iter_free(iter: *mut GtkTextIter);
11309    pub fn gtk_text_iter_get_buffer(iter: *const GtkTextIter) -> *mut GtkTextBuffer;
11310    pub fn gtk_text_iter_get_bytes_in_line(iter: *const GtkTextIter) -> c_int;
11311    pub fn gtk_text_iter_get_char(iter: *const GtkTextIter) -> u32;
11312    pub fn gtk_text_iter_get_chars_in_line(iter: *const GtkTextIter) -> c_int;
11313    pub fn gtk_text_iter_get_child_anchor(iter: *const GtkTextIter) -> *mut GtkTextChildAnchor;
11314    pub fn gtk_text_iter_get_language(iter: *const GtkTextIter) -> *mut pango::PangoLanguage;
11315    pub fn gtk_text_iter_get_line(iter: *const GtkTextIter) -> c_int;
11316    pub fn gtk_text_iter_get_line_index(iter: *const GtkTextIter) -> c_int;
11317    pub fn gtk_text_iter_get_line_offset(iter: *const GtkTextIter) -> c_int;
11318    pub fn gtk_text_iter_get_marks(iter: *const GtkTextIter) -> *mut glib::GSList;
11319    pub fn gtk_text_iter_get_offset(iter: *const GtkTextIter) -> c_int;
11320    pub fn gtk_text_iter_get_paintable(iter: *const GtkTextIter) -> *mut gdk::GdkPaintable;
11321    pub fn gtk_text_iter_get_slice(
11322        start: *const GtkTextIter,
11323        end: *const GtkTextIter,
11324    ) -> *mut c_char;
11325    pub fn gtk_text_iter_get_tags(iter: *const GtkTextIter) -> *mut glib::GSList;
11326    pub fn gtk_text_iter_get_text(
11327        start: *const GtkTextIter,
11328        end: *const GtkTextIter,
11329    ) -> *mut c_char;
11330    pub fn gtk_text_iter_get_toggled_tags(
11331        iter: *const GtkTextIter,
11332        toggled_on: gboolean,
11333    ) -> *mut glib::GSList;
11334    pub fn gtk_text_iter_get_visible_line_index(iter: *const GtkTextIter) -> c_int;
11335    pub fn gtk_text_iter_get_visible_line_offset(iter: *const GtkTextIter) -> c_int;
11336    pub fn gtk_text_iter_get_visible_slice(
11337        start: *const GtkTextIter,
11338        end: *const GtkTextIter,
11339    ) -> *mut c_char;
11340    pub fn gtk_text_iter_get_visible_text(
11341        start: *const GtkTextIter,
11342        end: *const GtkTextIter,
11343    ) -> *mut c_char;
11344    pub fn gtk_text_iter_has_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11345    pub fn gtk_text_iter_in_range(
11346        iter: *const GtkTextIter,
11347        start: *const GtkTextIter,
11348        end: *const GtkTextIter,
11349    ) -> gboolean;
11350    pub fn gtk_text_iter_inside_sentence(iter: *const GtkTextIter) -> gboolean;
11351    pub fn gtk_text_iter_inside_word(iter: *const GtkTextIter) -> gboolean;
11352    pub fn gtk_text_iter_is_cursor_position(iter: *const GtkTextIter) -> gboolean;
11353    pub fn gtk_text_iter_is_end(iter: *const GtkTextIter) -> gboolean;
11354    pub fn gtk_text_iter_is_start(iter: *const GtkTextIter) -> gboolean;
11355    pub fn gtk_text_iter_order(first: *mut GtkTextIter, second: *mut GtkTextIter);
11356    pub fn gtk_text_iter_set_line(iter: *mut GtkTextIter, line_number: c_int);
11357    pub fn gtk_text_iter_set_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
11358    pub fn gtk_text_iter_set_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
11359    pub fn gtk_text_iter_set_offset(iter: *mut GtkTextIter, char_offset: c_int);
11360    pub fn gtk_text_iter_set_visible_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
11361    pub fn gtk_text_iter_set_visible_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
11362    pub fn gtk_text_iter_starts_line(iter: *const GtkTextIter) -> gboolean;
11363    pub fn gtk_text_iter_starts_sentence(iter: *const GtkTextIter) -> gboolean;
11364    pub fn gtk_text_iter_starts_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11365    pub fn gtk_text_iter_starts_word(iter: *const GtkTextIter) -> gboolean;
11366    pub fn gtk_text_iter_toggles_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11367
11368    //=========================================================================
11369    // GtkTreeIter
11370    //=========================================================================
11371    pub fn gtk_tree_iter_get_type() -> GType;
11372    pub fn gtk_tree_iter_copy(iter: *mut GtkTreeIter) -> *mut GtkTreeIter;
11373    pub fn gtk_tree_iter_free(iter: *mut GtkTreeIter);
11374
11375    //=========================================================================
11376    // GtkTreePath
11377    //=========================================================================
11378    pub fn gtk_tree_path_get_type() -> GType;
11379    pub fn gtk_tree_path_new() -> *mut GtkTreePath;
11380    pub fn gtk_tree_path_new_first() -> *mut GtkTreePath;
11381    pub fn gtk_tree_path_new_from_indices(first_index: c_int, ...) -> *mut GtkTreePath;
11382    pub fn gtk_tree_path_new_from_indicesv(indices: *mut c_int, length: size_t)
11383        -> *mut GtkTreePath;
11384    pub fn gtk_tree_path_new_from_string(path: *const c_char) -> *mut GtkTreePath;
11385    pub fn gtk_tree_path_append_index(path: *mut GtkTreePath, index_: c_int);
11386    pub fn gtk_tree_path_compare(a: *const GtkTreePath, b: *const GtkTreePath) -> c_int;
11387    pub fn gtk_tree_path_copy(path: *const GtkTreePath) -> *mut GtkTreePath;
11388    pub fn gtk_tree_path_down(path: *mut GtkTreePath);
11389    pub fn gtk_tree_path_free(path: *mut GtkTreePath);
11390    pub fn gtk_tree_path_get_depth(path: *mut GtkTreePath) -> c_int;
11391    pub fn gtk_tree_path_get_indices(path: *mut GtkTreePath) -> *mut c_int;
11392    pub fn gtk_tree_path_get_indices_with_depth(
11393        path: *mut GtkTreePath,
11394        depth: *mut c_int,
11395    ) -> *mut c_int;
11396    pub fn gtk_tree_path_is_ancestor(
11397        path: *mut GtkTreePath,
11398        descendant: *mut GtkTreePath,
11399    ) -> gboolean;
11400    pub fn gtk_tree_path_is_descendant(
11401        path: *mut GtkTreePath,
11402        ancestor: *mut GtkTreePath,
11403    ) -> gboolean;
11404    pub fn gtk_tree_path_next(path: *mut GtkTreePath);
11405    pub fn gtk_tree_path_prepend_index(path: *mut GtkTreePath, index_: c_int);
11406    pub fn gtk_tree_path_prev(path: *mut GtkTreePath) -> gboolean;
11407    pub fn gtk_tree_path_to_string(path: *mut GtkTreePath) -> *mut c_char;
11408    pub fn gtk_tree_path_up(path: *mut GtkTreePath) -> gboolean;
11409
11410    //=========================================================================
11411    // GtkTreeRowReference
11412    //=========================================================================
11413    pub fn gtk_tree_row_reference_get_type() -> GType;
11414    pub fn gtk_tree_row_reference_new(
11415        model: *mut GtkTreeModel,
11416        path: *mut GtkTreePath,
11417    ) -> *mut GtkTreeRowReference;
11418    pub fn gtk_tree_row_reference_new_proxy(
11419        proxy: *mut gobject::GObject,
11420        model: *mut GtkTreeModel,
11421        path: *mut GtkTreePath,
11422    ) -> *mut GtkTreeRowReference;
11423    pub fn gtk_tree_row_reference_copy(
11424        reference: *mut GtkTreeRowReference,
11425    ) -> *mut GtkTreeRowReference;
11426    pub fn gtk_tree_row_reference_free(reference: *mut GtkTreeRowReference);
11427    pub fn gtk_tree_row_reference_get_model(
11428        reference: *mut GtkTreeRowReference,
11429    ) -> *mut GtkTreeModel;
11430    pub fn gtk_tree_row_reference_get_path(reference: *mut GtkTreeRowReference)
11431        -> *mut GtkTreePath;
11432    pub fn gtk_tree_row_reference_valid(reference: *mut GtkTreeRowReference) -> gboolean;
11433    pub fn gtk_tree_row_reference_deleted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
11434    pub fn gtk_tree_row_reference_inserted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
11435    pub fn gtk_tree_row_reference_reordered(
11436        proxy: *mut gobject::GObject,
11437        path: *mut GtkTreePath,
11438        iter: *mut GtkTreeIter,
11439        new_order: *mut c_int,
11440    );
11441
11442    //=========================================================================
11443    // GtkWidgetClass
11444    //=========================================================================
11445    pub fn gtk_widget_class_add_binding(
11446        widget_class: *mut GtkWidgetClass,
11447        keyval: c_uint,
11448        mods: gdk::GdkModifierType,
11449        callback: GtkShortcutFunc,
11450        format_string: *const c_char,
11451        ...
11452    );
11453    pub fn gtk_widget_class_add_binding_action(
11454        widget_class: *mut GtkWidgetClass,
11455        keyval: c_uint,
11456        mods: gdk::GdkModifierType,
11457        action_name: *const c_char,
11458        format_string: *const c_char,
11459        ...
11460    );
11461    pub fn gtk_widget_class_add_binding_signal(
11462        widget_class: *mut GtkWidgetClass,
11463        keyval: c_uint,
11464        mods: gdk::GdkModifierType,
11465        signal: *const c_char,
11466        format_string: *const c_char,
11467        ...
11468    );
11469    pub fn gtk_widget_class_add_shortcut(
11470        widget_class: *mut GtkWidgetClass,
11471        shortcut: *mut GtkShortcut,
11472    );
11473    pub fn gtk_widget_class_bind_template_callback_full(
11474        widget_class: *mut GtkWidgetClass,
11475        callback_name: *const c_char,
11476        callback_symbol: gobject::GCallback,
11477    );
11478    pub fn gtk_widget_class_bind_template_child_full(
11479        widget_class: *mut GtkWidgetClass,
11480        name: *const c_char,
11481        internal_child: gboolean,
11482        struct_offset: ssize_t,
11483    );
11484    pub fn gtk_widget_class_get_accessible_role(
11485        widget_class: *mut GtkWidgetClass,
11486    ) -> GtkAccessibleRole;
11487    pub fn gtk_widget_class_get_activate_signal(widget_class: *mut GtkWidgetClass) -> c_uint;
11488    pub fn gtk_widget_class_get_css_name(widget_class: *mut GtkWidgetClass) -> *const c_char;
11489    pub fn gtk_widget_class_get_layout_manager_type(widget_class: *mut GtkWidgetClass) -> GType;
11490    pub fn gtk_widget_class_install_action(
11491        widget_class: *mut GtkWidgetClass,
11492        action_name: *const c_char,
11493        parameter_type: *const c_char,
11494        activate: GtkWidgetActionActivateFunc,
11495    );
11496    pub fn gtk_widget_class_install_property_action(
11497        widget_class: *mut GtkWidgetClass,
11498        action_name: *const c_char,
11499        property_name: *const c_char,
11500    );
11501    pub fn gtk_widget_class_query_action(
11502        widget_class: *mut GtkWidgetClass,
11503        index_: c_uint,
11504        owner: *mut GType,
11505        action_name: *mut *const c_char,
11506        parameter_type: *mut *const glib::GVariantType,
11507        property_name: *mut *const c_char,
11508    ) -> gboolean;
11509    pub fn gtk_widget_class_set_accessible_role(
11510        widget_class: *mut GtkWidgetClass,
11511        accessible_role: GtkAccessibleRole,
11512    );
11513    pub fn gtk_widget_class_set_activate_signal(
11514        widget_class: *mut GtkWidgetClass,
11515        signal_id: c_uint,
11516    );
11517    pub fn gtk_widget_class_set_activate_signal_from_name(
11518        widget_class: *mut GtkWidgetClass,
11519        signal_name: *const c_char,
11520    );
11521    pub fn gtk_widget_class_set_css_name(widget_class: *mut GtkWidgetClass, name: *const c_char);
11522    pub fn gtk_widget_class_set_layout_manager_type(
11523        widget_class: *mut GtkWidgetClass,
11524        type_: GType,
11525    );
11526    pub fn gtk_widget_class_set_template(
11527        widget_class: *mut GtkWidgetClass,
11528        template_bytes: *mut glib::GBytes,
11529    );
11530    pub fn gtk_widget_class_set_template_from_resource(
11531        widget_class: *mut GtkWidgetClass,
11532        resource_name: *const c_char,
11533    );
11534    pub fn gtk_widget_class_set_template_scope(
11535        widget_class: *mut GtkWidgetClass,
11536        scope: *mut GtkBuilderScope,
11537    );
11538
11539    //=========================================================================
11540    // GtkATContext
11541    //=========================================================================
11542    pub fn gtk_at_context_get_type() -> GType;
11543    pub fn gtk_at_context_create(
11544        accessible_role: GtkAccessibleRole,
11545        accessible: *mut GtkAccessible,
11546        display: *mut gdk::GdkDisplay,
11547    ) -> *mut GtkATContext;
11548    pub fn gtk_at_context_get_accessible(self_: *mut GtkATContext) -> *mut GtkAccessible;
11549    pub fn gtk_at_context_get_accessible_role(self_: *mut GtkATContext) -> GtkAccessibleRole;
11550
11551    //=========================================================================
11552    // GtkAboutDialog
11553    //=========================================================================
11554    pub fn gtk_about_dialog_get_type() -> GType;
11555    pub fn gtk_about_dialog_new() -> *mut GtkWidget;
11556    pub fn gtk_about_dialog_add_credit_section(
11557        about: *mut GtkAboutDialog,
11558        section_name: *const c_char,
11559        people: *mut *const c_char,
11560    );
11561    pub fn gtk_about_dialog_get_artists(about: *mut GtkAboutDialog) -> *const *const c_char;
11562    pub fn gtk_about_dialog_get_authors(about: *mut GtkAboutDialog) -> *const *const c_char;
11563    pub fn gtk_about_dialog_get_comments(about: *mut GtkAboutDialog) -> *const c_char;
11564    pub fn gtk_about_dialog_get_copyright(about: *mut GtkAboutDialog) -> *const c_char;
11565    pub fn gtk_about_dialog_get_documenters(about: *mut GtkAboutDialog) -> *const *const c_char;
11566    pub fn gtk_about_dialog_get_license(about: *mut GtkAboutDialog) -> *const c_char;
11567    pub fn gtk_about_dialog_get_license_type(about: *mut GtkAboutDialog) -> GtkLicense;
11568    pub fn gtk_about_dialog_get_logo(about: *mut GtkAboutDialog) -> *mut gdk::GdkPaintable;
11569    pub fn gtk_about_dialog_get_logo_icon_name(about: *mut GtkAboutDialog) -> *const c_char;
11570    pub fn gtk_about_dialog_get_program_name(about: *mut GtkAboutDialog) -> *const c_char;
11571    pub fn gtk_about_dialog_get_system_information(about: *mut GtkAboutDialog) -> *const c_char;
11572    pub fn gtk_about_dialog_get_translator_credits(about: *mut GtkAboutDialog) -> *const c_char;
11573    pub fn gtk_about_dialog_get_version(about: *mut GtkAboutDialog) -> *const c_char;
11574    pub fn gtk_about_dialog_get_website(about: *mut GtkAboutDialog) -> *const c_char;
11575    pub fn gtk_about_dialog_get_website_label(about: *mut GtkAboutDialog) -> *const c_char;
11576    pub fn gtk_about_dialog_get_wrap_license(about: *mut GtkAboutDialog) -> gboolean;
11577    pub fn gtk_about_dialog_set_artists(about: *mut GtkAboutDialog, artists: *mut *const c_char);
11578    pub fn gtk_about_dialog_set_authors(about: *mut GtkAboutDialog, authors: *mut *const c_char);
11579    pub fn gtk_about_dialog_set_comments(about: *mut GtkAboutDialog, comments: *const c_char);
11580    pub fn gtk_about_dialog_set_copyright(about: *mut GtkAboutDialog, copyright: *const c_char);
11581    pub fn gtk_about_dialog_set_documenters(
11582        about: *mut GtkAboutDialog,
11583        documenters: *mut *const c_char,
11584    );
11585    pub fn gtk_about_dialog_set_license(about: *mut GtkAboutDialog, license: *const c_char);
11586    pub fn gtk_about_dialog_set_license_type(about: *mut GtkAboutDialog, license_type: GtkLicense);
11587    pub fn gtk_about_dialog_set_logo(about: *mut GtkAboutDialog, logo: *mut gdk::GdkPaintable);
11588    pub fn gtk_about_dialog_set_logo_icon_name(
11589        about: *mut GtkAboutDialog,
11590        icon_name: *const c_char,
11591    );
11592    pub fn gtk_about_dialog_set_program_name(about: *mut GtkAboutDialog, name: *const c_char);
11593    pub fn gtk_about_dialog_set_system_information(
11594        about: *mut GtkAboutDialog,
11595        system_information: *const c_char,
11596    );
11597    pub fn gtk_about_dialog_set_translator_credits(
11598        about: *mut GtkAboutDialog,
11599        translator_credits: *const c_char,
11600    );
11601    pub fn gtk_about_dialog_set_version(about: *mut GtkAboutDialog, version: *const c_char);
11602    pub fn gtk_about_dialog_set_website(about: *mut GtkAboutDialog, website: *const c_char);
11603    pub fn gtk_about_dialog_set_website_label(
11604        about: *mut GtkAboutDialog,
11605        website_label: *const c_char,
11606    );
11607    pub fn gtk_about_dialog_set_wrap_license(about: *mut GtkAboutDialog, wrap_license: gboolean);
11608
11609    //=========================================================================
11610    // GtkAccessibleHyperlink
11611    //=========================================================================
11612    #[cfg(feature = "v4_22")]
11613    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11614    pub fn gtk_accessible_hyperlink_get_type() -> GType;
11615    #[cfg(feature = "v4_22")]
11616    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11617    pub fn gtk_accessible_hyperlink_new(
11618        parent: *mut GtkAccessibleHypertext,
11619        index: c_uint,
11620        uri: *const c_char,
11621        bounds: *mut GtkAccessibleTextRange,
11622    ) -> *mut GtkAccessibleHyperlink;
11623    #[cfg(feature = "v4_22")]
11624    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11625    pub fn gtk_accessible_hyperlink_set_platform_state(
11626        self_: *mut GtkAccessibleHyperlink,
11627        state: GtkAccessiblePlatformState,
11628        enabled: gboolean,
11629    );
11630
11631    //=========================================================================
11632    // GtkActionBar
11633    //=========================================================================
11634    pub fn gtk_action_bar_get_type() -> GType;
11635    pub fn gtk_action_bar_new() -> *mut GtkWidget;
11636    pub fn gtk_action_bar_get_center_widget(action_bar: *mut GtkActionBar) -> *mut GtkWidget;
11637    pub fn gtk_action_bar_get_revealed(action_bar: *mut GtkActionBar) -> gboolean;
11638    pub fn gtk_action_bar_pack_end(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11639    pub fn gtk_action_bar_pack_start(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11640    pub fn gtk_action_bar_remove(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11641    pub fn gtk_action_bar_set_center_widget(
11642        action_bar: *mut GtkActionBar,
11643        center_widget: *mut GtkWidget,
11644    );
11645    pub fn gtk_action_bar_set_revealed(action_bar: *mut GtkActionBar, revealed: gboolean);
11646
11647    //=========================================================================
11648    // GtkActivateAction
11649    //=========================================================================
11650    pub fn gtk_activate_action_get_type() -> GType;
11651    pub fn gtk_activate_action_get() -> *mut GtkActivateAction;
11652
11653    //=========================================================================
11654    // GtkAdjustment
11655    //=========================================================================
11656    pub fn gtk_adjustment_get_type() -> GType;
11657    pub fn gtk_adjustment_new(
11658        value: c_double,
11659        lower: c_double,
11660        upper: c_double,
11661        step_increment: c_double,
11662        page_increment: c_double,
11663        page_size: c_double,
11664    ) -> *mut GtkAdjustment;
11665    pub fn gtk_adjustment_clamp_page(
11666        adjustment: *mut GtkAdjustment,
11667        lower: c_double,
11668        upper: c_double,
11669    );
11670    pub fn gtk_adjustment_configure(
11671        adjustment: *mut GtkAdjustment,
11672        value: c_double,
11673        lower: c_double,
11674        upper: c_double,
11675        step_increment: c_double,
11676        page_increment: c_double,
11677        page_size: c_double,
11678    );
11679    pub fn gtk_adjustment_get_lower(adjustment: *mut GtkAdjustment) -> c_double;
11680    pub fn gtk_adjustment_get_minimum_increment(adjustment: *mut GtkAdjustment) -> c_double;
11681    pub fn gtk_adjustment_get_page_increment(adjustment: *mut GtkAdjustment) -> c_double;
11682    pub fn gtk_adjustment_get_page_size(adjustment: *mut GtkAdjustment) -> c_double;
11683    pub fn gtk_adjustment_get_step_increment(adjustment: *mut GtkAdjustment) -> c_double;
11684    pub fn gtk_adjustment_get_upper(adjustment: *mut GtkAdjustment) -> c_double;
11685    pub fn gtk_adjustment_get_value(adjustment: *mut GtkAdjustment) -> c_double;
11686    pub fn gtk_adjustment_set_lower(adjustment: *mut GtkAdjustment, lower: c_double);
11687    pub fn gtk_adjustment_set_page_increment(
11688        adjustment: *mut GtkAdjustment,
11689        page_increment: c_double,
11690    );
11691    pub fn gtk_adjustment_set_page_size(adjustment: *mut GtkAdjustment, page_size: c_double);
11692    pub fn gtk_adjustment_set_step_increment(
11693        adjustment: *mut GtkAdjustment,
11694        step_increment: c_double,
11695    );
11696    pub fn gtk_adjustment_set_upper(adjustment: *mut GtkAdjustment, upper: c_double);
11697    pub fn gtk_adjustment_set_value(adjustment: *mut GtkAdjustment, value: c_double);
11698
11699    //=========================================================================
11700    // GtkAlertDialog
11701    //=========================================================================
11702    #[cfg(feature = "v4_10")]
11703    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11704    pub fn gtk_alert_dialog_get_type() -> GType;
11705    #[cfg(feature = "v4_10")]
11706    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11707    pub fn gtk_alert_dialog_new(format: *const c_char, ...) -> *mut GtkAlertDialog;
11708    #[cfg(feature = "v4_10")]
11709    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11710    pub fn gtk_alert_dialog_choose(
11711        self_: *mut GtkAlertDialog,
11712        parent: *mut GtkWindow,
11713        cancellable: *mut gio::GCancellable,
11714        callback: gio::GAsyncReadyCallback,
11715        user_data: gpointer,
11716    );
11717    #[cfg(feature = "v4_10")]
11718    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11719    pub fn gtk_alert_dialog_choose_finish(
11720        self_: *mut GtkAlertDialog,
11721        result: *mut gio::GAsyncResult,
11722        error: *mut *mut glib::GError,
11723    ) -> c_int;
11724    #[cfg(feature = "v4_10")]
11725    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11726    pub fn gtk_alert_dialog_get_buttons(self_: *mut GtkAlertDialog) -> *const *const c_char;
11727    #[cfg(feature = "v4_10")]
11728    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11729    pub fn gtk_alert_dialog_get_cancel_button(self_: *mut GtkAlertDialog) -> c_int;
11730    #[cfg(feature = "v4_10")]
11731    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11732    pub fn gtk_alert_dialog_get_default_button(self_: *mut GtkAlertDialog) -> c_int;
11733    #[cfg(feature = "v4_10")]
11734    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11735    pub fn gtk_alert_dialog_get_detail(self_: *mut GtkAlertDialog) -> *const c_char;
11736    #[cfg(feature = "v4_10")]
11737    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11738    pub fn gtk_alert_dialog_get_message(self_: *mut GtkAlertDialog) -> *const c_char;
11739    #[cfg(feature = "v4_10")]
11740    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11741    pub fn gtk_alert_dialog_get_modal(self_: *mut GtkAlertDialog) -> gboolean;
11742    #[cfg(feature = "v4_10")]
11743    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11744    pub fn gtk_alert_dialog_set_buttons(self_: *mut GtkAlertDialog, labels: *const *const c_char);
11745    #[cfg(feature = "v4_10")]
11746    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11747    pub fn gtk_alert_dialog_set_cancel_button(self_: *mut GtkAlertDialog, button: c_int);
11748    #[cfg(feature = "v4_10")]
11749    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11750    pub fn gtk_alert_dialog_set_default_button(self_: *mut GtkAlertDialog, button: c_int);
11751    #[cfg(feature = "v4_10")]
11752    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11753    pub fn gtk_alert_dialog_set_detail(self_: *mut GtkAlertDialog, detail: *const c_char);
11754    #[cfg(feature = "v4_10")]
11755    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11756    pub fn gtk_alert_dialog_set_message(self_: *mut GtkAlertDialog, message: *const c_char);
11757    #[cfg(feature = "v4_10")]
11758    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11759    pub fn gtk_alert_dialog_set_modal(self_: *mut GtkAlertDialog, modal: gboolean);
11760    #[cfg(feature = "v4_10")]
11761    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11762    pub fn gtk_alert_dialog_show(self_: *mut GtkAlertDialog, parent: *mut GtkWindow);
11763
11764    //=========================================================================
11765    // GtkAlternativeTrigger
11766    //=========================================================================
11767    pub fn gtk_alternative_trigger_get_type() -> GType;
11768    pub fn gtk_alternative_trigger_new(
11769        first: *mut GtkShortcutTrigger,
11770        second: *mut GtkShortcutTrigger,
11771    ) -> *mut GtkShortcutTrigger;
11772    pub fn gtk_alternative_trigger_get_first(
11773        self_: *mut GtkAlternativeTrigger,
11774    ) -> *mut GtkShortcutTrigger;
11775    pub fn gtk_alternative_trigger_get_second(
11776        self_: *mut GtkAlternativeTrigger,
11777    ) -> *mut GtkShortcutTrigger;
11778
11779    //=========================================================================
11780    // GtkAnyFilter
11781    //=========================================================================
11782    pub fn gtk_any_filter_get_type() -> GType;
11783    pub fn gtk_any_filter_new() -> *mut GtkAnyFilter;
11784
11785    //=========================================================================
11786    // GtkAppChooserButton
11787    //=========================================================================
11788    pub fn gtk_app_chooser_button_get_type() -> GType;
11789    pub fn gtk_app_chooser_button_new(content_type: *const c_char) -> *mut GtkWidget;
11790    pub fn gtk_app_chooser_button_append_custom_item(
11791        self_: *mut GtkAppChooserButton,
11792        name: *const c_char,
11793        label: *const c_char,
11794        icon: *mut gio::GIcon,
11795    );
11796    pub fn gtk_app_chooser_button_append_separator(self_: *mut GtkAppChooserButton);
11797    pub fn gtk_app_chooser_button_get_heading(self_: *mut GtkAppChooserButton) -> *const c_char;
11798    pub fn gtk_app_chooser_button_get_modal(self_: *mut GtkAppChooserButton) -> gboolean;
11799    pub fn gtk_app_chooser_button_get_show_default_item(
11800        self_: *mut GtkAppChooserButton,
11801    ) -> gboolean;
11802    pub fn gtk_app_chooser_button_get_show_dialog_item(self_: *mut GtkAppChooserButton)
11803        -> gboolean;
11804    pub fn gtk_app_chooser_button_set_active_custom_item(
11805        self_: *mut GtkAppChooserButton,
11806        name: *const c_char,
11807    );
11808    pub fn gtk_app_chooser_button_set_heading(
11809        self_: *mut GtkAppChooserButton,
11810        heading: *const c_char,
11811    );
11812    pub fn gtk_app_chooser_button_set_modal(self_: *mut GtkAppChooserButton, modal: gboolean);
11813    pub fn gtk_app_chooser_button_set_show_default_item(
11814        self_: *mut GtkAppChooserButton,
11815        setting: gboolean,
11816    );
11817    pub fn gtk_app_chooser_button_set_show_dialog_item(
11818        self_: *mut GtkAppChooserButton,
11819        setting: gboolean,
11820    );
11821
11822    //=========================================================================
11823    // GtkAppChooserDialog
11824    //=========================================================================
11825    pub fn gtk_app_chooser_dialog_get_type() -> GType;
11826    pub fn gtk_app_chooser_dialog_new(
11827        parent: *mut GtkWindow,
11828        flags: GtkDialogFlags,
11829        file: *mut gio::GFile,
11830    ) -> *mut GtkWidget;
11831    pub fn gtk_app_chooser_dialog_new_for_content_type(
11832        parent: *mut GtkWindow,
11833        flags: GtkDialogFlags,
11834        content_type: *const c_char,
11835    ) -> *mut GtkWidget;
11836    pub fn gtk_app_chooser_dialog_get_heading(self_: *mut GtkAppChooserDialog) -> *const c_char;
11837    pub fn gtk_app_chooser_dialog_get_widget(self_: *mut GtkAppChooserDialog) -> *mut GtkWidget;
11838    pub fn gtk_app_chooser_dialog_set_heading(
11839        self_: *mut GtkAppChooserDialog,
11840        heading: *const c_char,
11841    );
11842
11843    //=========================================================================
11844    // GtkAppChooserWidget
11845    //=========================================================================
11846    pub fn gtk_app_chooser_widget_get_type() -> GType;
11847    pub fn gtk_app_chooser_widget_new(content_type: *const c_char) -> *mut GtkWidget;
11848    pub fn gtk_app_chooser_widget_get_default_text(
11849        self_: *mut GtkAppChooserWidget,
11850    ) -> *const c_char;
11851    pub fn gtk_app_chooser_widget_get_show_all(self_: *mut GtkAppChooserWidget) -> gboolean;
11852    pub fn gtk_app_chooser_widget_get_show_default(self_: *mut GtkAppChooserWidget) -> gboolean;
11853    pub fn gtk_app_chooser_widget_get_show_fallback(self_: *mut GtkAppChooserWidget) -> gboolean;
11854    pub fn gtk_app_chooser_widget_get_show_other(self_: *mut GtkAppChooserWidget) -> gboolean;
11855    pub fn gtk_app_chooser_widget_get_show_recommended(self_: *mut GtkAppChooserWidget)
11856        -> gboolean;
11857    pub fn gtk_app_chooser_widget_set_default_text(
11858        self_: *mut GtkAppChooserWidget,
11859        text: *const c_char,
11860    );
11861    pub fn gtk_app_chooser_widget_set_show_all(self_: *mut GtkAppChooserWidget, setting: gboolean);
11862    pub fn gtk_app_chooser_widget_set_show_default(
11863        self_: *mut GtkAppChooserWidget,
11864        setting: gboolean,
11865    );
11866    pub fn gtk_app_chooser_widget_set_show_fallback(
11867        self_: *mut GtkAppChooserWidget,
11868        setting: gboolean,
11869    );
11870    pub fn gtk_app_chooser_widget_set_show_other(
11871        self_: *mut GtkAppChooserWidget,
11872        setting: gboolean,
11873    );
11874    pub fn gtk_app_chooser_widget_set_show_recommended(
11875        self_: *mut GtkAppChooserWidget,
11876        setting: gboolean,
11877    );
11878
11879    //=========================================================================
11880    // GtkApplication
11881    //=========================================================================
11882    pub fn gtk_application_get_type() -> GType;
11883    pub fn gtk_application_new(
11884        application_id: *const c_char,
11885        flags: gio::GApplicationFlags,
11886    ) -> *mut GtkApplication;
11887    pub fn gtk_application_add_window(application: *mut GtkApplication, window: *mut GtkWindow);
11888    #[cfg(feature = "v4_22")]
11889    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11890    pub fn gtk_application_forget(application: *mut GtkApplication);
11891    pub fn gtk_application_get_accels_for_action(
11892        application: *mut GtkApplication,
11893        detailed_action_name: *const c_char,
11894    ) -> *mut *mut c_char;
11895    pub fn gtk_application_get_actions_for_accel(
11896        application: *mut GtkApplication,
11897        accel: *const c_char,
11898    ) -> *mut *mut c_char;
11899    pub fn gtk_application_get_active_window(application: *mut GtkApplication) -> *mut GtkWindow;
11900    pub fn gtk_application_get_menu_by_id(
11901        application: *mut GtkApplication,
11902        id: *const c_char,
11903    ) -> *mut gio::GMenu;
11904    pub fn gtk_application_get_menubar(application: *mut GtkApplication) -> *mut gio::GMenuModel;
11905    pub fn gtk_application_get_window_by_id(
11906        application: *mut GtkApplication,
11907        id: c_uint,
11908    ) -> *mut GtkWindow;
11909    pub fn gtk_application_get_windows(application: *mut GtkApplication) -> *mut glib::GList;
11910    pub fn gtk_application_inhibit(
11911        application: *mut GtkApplication,
11912        window: *mut GtkWindow,
11913        flags: GtkApplicationInhibitFlags,
11914        reason: *const c_char,
11915    ) -> c_uint;
11916    pub fn gtk_application_list_action_descriptions(
11917        application: *mut GtkApplication,
11918    ) -> *mut *mut c_char;
11919    pub fn gtk_application_remove_window(application: *mut GtkApplication, window: *mut GtkWindow);
11920    #[cfg(feature = "v4_22")]
11921    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11922    pub fn gtk_application_save(application: *mut GtkApplication);
11923    pub fn gtk_application_set_accels_for_action(
11924        application: *mut GtkApplication,
11925        detailed_action_name: *const c_char,
11926        accels: *const *const c_char,
11927    );
11928    pub fn gtk_application_set_menubar(
11929        application: *mut GtkApplication,
11930        menubar: *mut gio::GMenuModel,
11931    );
11932    pub fn gtk_application_uninhibit(application: *mut GtkApplication, cookie: c_uint);
11933
11934    //=========================================================================
11935    // GtkApplicationWindow
11936    //=========================================================================
11937    pub fn gtk_application_window_get_type() -> GType;
11938    pub fn gtk_application_window_new(application: *mut GtkApplication) -> *mut GtkWidget;
11939    pub fn gtk_application_window_get_help_overlay(
11940        window: *mut GtkApplicationWindow,
11941    ) -> *mut GtkShortcutsWindow;
11942    pub fn gtk_application_window_get_id(window: *mut GtkApplicationWindow) -> c_uint;
11943    pub fn gtk_application_window_get_show_menubar(window: *mut GtkApplicationWindow) -> gboolean;
11944    pub fn gtk_application_window_set_help_overlay(
11945        window: *mut GtkApplicationWindow,
11946        help_overlay: *mut GtkShortcutsWindow,
11947    );
11948    pub fn gtk_application_window_set_show_menubar(
11949        window: *mut GtkApplicationWindow,
11950        show_menubar: gboolean,
11951    );
11952
11953    //=========================================================================
11954    // GtkAspectFrame
11955    //=========================================================================
11956    pub fn gtk_aspect_frame_get_type() -> GType;
11957    pub fn gtk_aspect_frame_new(
11958        xalign: c_float,
11959        yalign: c_float,
11960        ratio: c_float,
11961        obey_child: gboolean,
11962    ) -> *mut GtkWidget;
11963    pub fn gtk_aspect_frame_get_child(self_: *mut GtkAspectFrame) -> *mut GtkWidget;
11964    pub fn gtk_aspect_frame_get_obey_child(self_: *mut GtkAspectFrame) -> gboolean;
11965    pub fn gtk_aspect_frame_get_ratio(self_: *mut GtkAspectFrame) -> c_float;
11966    pub fn gtk_aspect_frame_get_xalign(self_: *mut GtkAspectFrame) -> c_float;
11967    pub fn gtk_aspect_frame_get_yalign(self_: *mut GtkAspectFrame) -> c_float;
11968    pub fn gtk_aspect_frame_set_child(self_: *mut GtkAspectFrame, child: *mut GtkWidget);
11969    pub fn gtk_aspect_frame_set_obey_child(self_: *mut GtkAspectFrame, obey_child: gboolean);
11970    pub fn gtk_aspect_frame_set_ratio(self_: *mut GtkAspectFrame, ratio: c_float);
11971    pub fn gtk_aspect_frame_set_xalign(self_: *mut GtkAspectFrame, xalign: c_float);
11972    pub fn gtk_aspect_frame_set_yalign(self_: *mut GtkAspectFrame, yalign: c_float);
11973
11974    //=========================================================================
11975    // GtkAssistant
11976    //=========================================================================
11977    pub fn gtk_assistant_get_type() -> GType;
11978    pub fn gtk_assistant_new() -> *mut GtkWidget;
11979    pub fn gtk_assistant_add_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
11980    pub fn gtk_assistant_append_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
11981    pub fn gtk_assistant_commit(assistant: *mut GtkAssistant);
11982    pub fn gtk_assistant_get_current_page(assistant: *mut GtkAssistant) -> c_int;
11983    pub fn gtk_assistant_get_n_pages(assistant: *mut GtkAssistant) -> c_int;
11984    pub fn gtk_assistant_get_nth_page(
11985        assistant: *mut GtkAssistant,
11986        page_num: c_int,
11987    ) -> *mut GtkWidget;
11988    pub fn gtk_assistant_get_page(
11989        assistant: *mut GtkAssistant,
11990        child: *mut GtkWidget,
11991    ) -> *mut GtkAssistantPage;
11992    pub fn gtk_assistant_get_page_complete(
11993        assistant: *mut GtkAssistant,
11994        page: *mut GtkWidget,
11995    ) -> gboolean;
11996    pub fn gtk_assistant_get_page_title(
11997        assistant: *mut GtkAssistant,
11998        page: *mut GtkWidget,
11999    ) -> *const c_char;
12000    pub fn gtk_assistant_get_page_type(
12001        assistant: *mut GtkAssistant,
12002        page: *mut GtkWidget,
12003    ) -> GtkAssistantPageType;
12004    pub fn gtk_assistant_get_pages(assistant: *mut GtkAssistant) -> *mut gio::GListModel;
12005    pub fn gtk_assistant_insert_page(
12006        assistant: *mut GtkAssistant,
12007        page: *mut GtkWidget,
12008        position: c_int,
12009    ) -> c_int;
12010    pub fn gtk_assistant_next_page(assistant: *mut GtkAssistant);
12011    pub fn gtk_assistant_prepend_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
12012    pub fn gtk_assistant_previous_page(assistant: *mut GtkAssistant);
12013    pub fn gtk_assistant_remove_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
12014    pub fn gtk_assistant_remove_page(assistant: *mut GtkAssistant, page_num: c_int);
12015    pub fn gtk_assistant_set_current_page(assistant: *mut GtkAssistant, page_num: c_int);
12016    pub fn gtk_assistant_set_forward_page_func(
12017        assistant: *mut GtkAssistant,
12018        page_func: GtkAssistantPageFunc,
12019        data: gpointer,
12020        destroy: glib::GDestroyNotify,
12021    );
12022    pub fn gtk_assistant_set_page_complete(
12023        assistant: *mut GtkAssistant,
12024        page: *mut GtkWidget,
12025        complete: gboolean,
12026    );
12027    pub fn gtk_assistant_set_page_title(
12028        assistant: *mut GtkAssistant,
12029        page: *mut GtkWidget,
12030        title: *const c_char,
12031    );
12032    pub fn gtk_assistant_set_page_type(
12033        assistant: *mut GtkAssistant,
12034        page: *mut GtkWidget,
12035        type_: GtkAssistantPageType,
12036    );
12037    pub fn gtk_assistant_update_buttons_state(assistant: *mut GtkAssistant);
12038
12039    //=========================================================================
12040    // GtkAssistantPage
12041    //=========================================================================
12042    pub fn gtk_assistant_page_get_type() -> GType;
12043    pub fn gtk_assistant_page_get_child(page: *mut GtkAssistantPage) -> *mut GtkWidget;
12044
12045    //=========================================================================
12046    // GtkBinLayout
12047    //=========================================================================
12048    pub fn gtk_bin_layout_get_type() -> GType;
12049    pub fn gtk_bin_layout_new() -> *mut GtkLayoutManager;
12050
12051    //=========================================================================
12052    // GtkBookmarkList
12053    //=========================================================================
12054    pub fn gtk_bookmark_list_get_type() -> GType;
12055    pub fn gtk_bookmark_list_new(
12056        filename: *const c_char,
12057        attributes: *const c_char,
12058    ) -> *mut GtkBookmarkList;
12059    pub fn gtk_bookmark_list_get_attributes(self_: *mut GtkBookmarkList) -> *const c_char;
12060    pub fn gtk_bookmark_list_get_filename(self_: *mut GtkBookmarkList) -> *const c_char;
12061    pub fn gtk_bookmark_list_get_io_priority(self_: *mut GtkBookmarkList) -> c_int;
12062    pub fn gtk_bookmark_list_is_loading(self_: *mut GtkBookmarkList) -> gboolean;
12063    pub fn gtk_bookmark_list_set_attributes(self_: *mut GtkBookmarkList, attributes: *const c_char);
12064    pub fn gtk_bookmark_list_set_io_priority(self_: *mut GtkBookmarkList, io_priority: c_int);
12065
12066    //=========================================================================
12067    // GtkBoolFilter
12068    //=========================================================================
12069    pub fn gtk_bool_filter_get_type() -> GType;
12070    pub fn gtk_bool_filter_new(expression: *mut GtkExpression) -> *mut GtkBoolFilter;
12071    pub fn gtk_bool_filter_get_expression(self_: *mut GtkBoolFilter) -> *mut GtkExpression;
12072    pub fn gtk_bool_filter_get_invert(self_: *mut GtkBoolFilter) -> gboolean;
12073    pub fn gtk_bool_filter_set_expression(
12074        self_: *mut GtkBoolFilter,
12075        expression: *mut GtkExpression,
12076    );
12077    pub fn gtk_bool_filter_set_invert(self_: *mut GtkBoolFilter, invert: gboolean);
12078
12079    //=========================================================================
12080    // GtkBox
12081    //=========================================================================
12082    pub fn gtk_box_get_type() -> GType;
12083    pub fn gtk_box_new(orientation: GtkOrientation, spacing: c_int) -> *mut GtkWidget;
12084    pub fn gtk_box_append(box_: *mut GtkBox, child: *mut GtkWidget);
12085    #[cfg(feature = "v4_12")]
12086    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12087    pub fn gtk_box_get_baseline_child(box_: *mut GtkBox) -> c_int;
12088    pub fn gtk_box_get_baseline_position(box_: *mut GtkBox) -> GtkBaselinePosition;
12089    pub fn gtk_box_get_homogeneous(box_: *mut GtkBox) -> gboolean;
12090    pub fn gtk_box_get_spacing(box_: *mut GtkBox) -> c_int;
12091    pub fn gtk_box_insert_child_after(
12092        box_: *mut GtkBox,
12093        child: *mut GtkWidget,
12094        sibling: *mut GtkWidget,
12095    );
12096    pub fn gtk_box_prepend(box_: *mut GtkBox, child: *mut GtkWidget);
12097    pub fn gtk_box_remove(box_: *mut GtkBox, child: *mut GtkWidget);
12098    pub fn gtk_box_reorder_child_after(
12099        box_: *mut GtkBox,
12100        child: *mut GtkWidget,
12101        sibling: *mut GtkWidget,
12102    );
12103    #[cfg(feature = "v4_12")]
12104    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12105    pub fn gtk_box_set_baseline_child(box_: *mut GtkBox, child: c_int);
12106    pub fn gtk_box_set_baseline_position(box_: *mut GtkBox, position: GtkBaselinePosition);
12107    pub fn gtk_box_set_homogeneous(box_: *mut GtkBox, homogeneous: gboolean);
12108    pub fn gtk_box_set_spacing(box_: *mut GtkBox, spacing: c_int);
12109
12110    //=========================================================================
12111    // GtkBoxLayout
12112    //=========================================================================
12113    pub fn gtk_box_layout_get_type() -> GType;
12114    pub fn gtk_box_layout_new(orientation: GtkOrientation) -> *mut GtkLayoutManager;
12115    #[cfg(feature = "v4_12")]
12116    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12117    pub fn gtk_box_layout_get_baseline_child(box_layout: *mut GtkBoxLayout) -> c_int;
12118    pub fn gtk_box_layout_get_baseline_position(
12119        box_layout: *mut GtkBoxLayout,
12120    ) -> GtkBaselinePosition;
12121    pub fn gtk_box_layout_get_homogeneous(box_layout: *mut GtkBoxLayout) -> gboolean;
12122    pub fn gtk_box_layout_get_spacing(box_layout: *mut GtkBoxLayout) -> c_uint;
12123    #[cfg(feature = "v4_12")]
12124    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12125    pub fn gtk_box_layout_set_baseline_child(box_layout: *mut GtkBoxLayout, child: c_int);
12126    pub fn gtk_box_layout_set_baseline_position(
12127        box_layout: *mut GtkBoxLayout,
12128        position: GtkBaselinePosition,
12129    );
12130    pub fn gtk_box_layout_set_homogeneous(box_layout: *mut GtkBoxLayout, homogeneous: gboolean);
12131    pub fn gtk_box_layout_set_spacing(box_layout: *mut GtkBoxLayout, spacing: c_uint);
12132
12133    //=========================================================================
12134    // GtkBuilder
12135    //=========================================================================
12136    pub fn gtk_builder_get_type() -> GType;
12137    pub fn gtk_builder_new() -> *mut GtkBuilder;
12138    pub fn gtk_builder_new_from_file(filename: *const c_char) -> *mut GtkBuilder;
12139    pub fn gtk_builder_new_from_resource(resource_path: *const c_char) -> *mut GtkBuilder;
12140    pub fn gtk_builder_new_from_string(string: *const c_char, length: ssize_t) -> *mut GtkBuilder;
12141    pub fn gtk_builder_add_from_file(
12142        builder: *mut GtkBuilder,
12143        filename: *const c_char,
12144        error: *mut *mut glib::GError,
12145    ) -> gboolean;
12146    pub fn gtk_builder_add_from_resource(
12147        builder: *mut GtkBuilder,
12148        resource_path: *const c_char,
12149        error: *mut *mut glib::GError,
12150    ) -> gboolean;
12151    pub fn gtk_builder_add_from_string(
12152        builder: *mut GtkBuilder,
12153        buffer: *const c_char,
12154        length: ssize_t,
12155        error: *mut *mut glib::GError,
12156    ) -> gboolean;
12157    pub fn gtk_builder_add_objects_from_file(
12158        builder: *mut GtkBuilder,
12159        filename: *const c_char,
12160        object_ids: *mut *const c_char,
12161        error: *mut *mut glib::GError,
12162    ) -> gboolean;
12163    pub fn gtk_builder_add_objects_from_resource(
12164        builder: *mut GtkBuilder,
12165        resource_path: *const c_char,
12166        object_ids: *mut *const c_char,
12167        error: *mut *mut glib::GError,
12168    ) -> gboolean;
12169    pub fn gtk_builder_add_objects_from_string(
12170        builder: *mut GtkBuilder,
12171        buffer: *const c_char,
12172        length: ssize_t,
12173        object_ids: *mut *const c_char,
12174        error: *mut *mut glib::GError,
12175    ) -> gboolean;
12176    pub fn gtk_builder_create_closure(
12177        builder: *mut GtkBuilder,
12178        function_name: *const c_char,
12179        flags: GtkBuilderClosureFlags,
12180        object: *mut gobject::GObject,
12181        error: *mut *mut glib::GError,
12182    ) -> *mut gobject::GClosure;
12183    pub fn gtk_builder_expose_object(
12184        builder: *mut GtkBuilder,
12185        name: *const c_char,
12186        object: *mut gobject::GObject,
12187    );
12188    pub fn gtk_builder_extend_with_template(
12189        builder: *mut GtkBuilder,
12190        object: *mut gobject::GObject,
12191        template_type: GType,
12192        buffer: *const c_char,
12193        length: ssize_t,
12194        error: *mut *mut glib::GError,
12195    ) -> gboolean;
12196    pub fn gtk_builder_get_current_object(builder: *mut GtkBuilder) -> *mut gobject::GObject;
12197    pub fn gtk_builder_get_object(
12198        builder: *mut GtkBuilder,
12199        name: *const c_char,
12200    ) -> *mut gobject::GObject;
12201    pub fn gtk_builder_get_objects(builder: *mut GtkBuilder) -> *mut glib::GSList;
12202    pub fn gtk_builder_get_scope(builder: *mut GtkBuilder) -> *mut GtkBuilderScope;
12203    pub fn gtk_builder_get_translation_domain(builder: *mut GtkBuilder) -> *const c_char;
12204    pub fn gtk_builder_get_type_from_name(
12205        builder: *mut GtkBuilder,
12206        type_name: *const c_char,
12207    ) -> GType;
12208    pub fn gtk_builder_set_current_object(
12209        builder: *mut GtkBuilder,
12210        current_object: *mut gobject::GObject,
12211    );
12212    pub fn gtk_builder_set_scope(builder: *mut GtkBuilder, scope: *mut GtkBuilderScope);
12213    pub fn gtk_builder_set_translation_domain(builder: *mut GtkBuilder, domain: *const c_char);
12214    pub fn gtk_builder_value_from_string(
12215        builder: *mut GtkBuilder,
12216        pspec: *mut gobject::GParamSpec,
12217        string: *const c_char,
12218        value: *mut gobject::GValue,
12219        error: *mut *mut glib::GError,
12220    ) -> gboolean;
12221    pub fn gtk_builder_value_from_string_type(
12222        builder: *mut GtkBuilder,
12223        type_: GType,
12224        string: *const c_char,
12225        value: *mut gobject::GValue,
12226        error: *mut *mut glib::GError,
12227    ) -> gboolean;
12228
12229    //=========================================================================
12230    // GtkBuilderCScope
12231    //=========================================================================
12232    pub fn gtk_builder_cscope_get_type() -> GType;
12233    pub fn gtk_builder_cscope_new() -> *mut GtkBuilderCScope;
12234    pub fn gtk_builder_cscope_add_callback_symbol(
12235        self_: *mut GtkBuilderCScope,
12236        callback_name: *const c_char,
12237        callback_symbol: gobject::GCallback,
12238    );
12239    pub fn gtk_builder_cscope_add_callback_symbols(
12240        self_: *mut GtkBuilderCScope,
12241        first_callback_name: *const c_char,
12242        first_callback_symbol: gobject::GCallback,
12243        ...
12244    );
12245    pub fn gtk_builder_cscope_lookup_callback_symbol(
12246        self_: *mut GtkBuilderCScope,
12247        callback_name: *const c_char,
12248    ) -> gobject::GCallback;
12249
12250    //=========================================================================
12251    // GtkBuilderListItemFactory
12252    //=========================================================================
12253    pub fn gtk_builder_list_item_factory_get_type() -> GType;
12254    pub fn gtk_builder_list_item_factory_new_from_bytes(
12255        scope: *mut GtkBuilderScope,
12256        bytes: *mut glib::GBytes,
12257    ) -> *mut GtkListItemFactory;
12258    pub fn gtk_builder_list_item_factory_new_from_resource(
12259        scope: *mut GtkBuilderScope,
12260        resource_path: *const c_char,
12261    ) -> *mut GtkListItemFactory;
12262    pub fn gtk_builder_list_item_factory_get_bytes(
12263        self_: *mut GtkBuilderListItemFactory,
12264    ) -> *mut glib::GBytes;
12265    pub fn gtk_builder_list_item_factory_get_resource(
12266        self_: *mut GtkBuilderListItemFactory,
12267    ) -> *const c_char;
12268    pub fn gtk_builder_list_item_factory_get_scope(
12269        self_: *mut GtkBuilderListItemFactory,
12270    ) -> *mut GtkBuilderScope;
12271
12272    //=========================================================================
12273    // GtkButton
12274    //=========================================================================
12275    pub fn gtk_button_get_type() -> GType;
12276    pub fn gtk_button_new() -> *mut GtkWidget;
12277    pub fn gtk_button_new_from_icon_name(icon_name: *const c_char) -> *mut GtkWidget;
12278    pub fn gtk_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
12279    pub fn gtk_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
12280    #[cfg(feature = "v4_12")]
12281    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12282    pub fn gtk_button_get_can_shrink(button: *mut GtkButton) -> gboolean;
12283    pub fn gtk_button_get_child(button: *mut GtkButton) -> *mut GtkWidget;
12284    pub fn gtk_button_get_has_frame(button: *mut GtkButton) -> gboolean;
12285    pub fn gtk_button_get_icon_name(button: *mut GtkButton) -> *const c_char;
12286    pub fn gtk_button_get_label(button: *mut GtkButton) -> *const c_char;
12287    pub fn gtk_button_get_use_underline(button: *mut GtkButton) -> gboolean;
12288    #[cfg(feature = "v4_12")]
12289    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12290    pub fn gtk_button_set_can_shrink(button: *mut GtkButton, can_shrink: gboolean);
12291    pub fn gtk_button_set_child(button: *mut GtkButton, child: *mut GtkWidget);
12292    pub fn gtk_button_set_has_frame(button: *mut GtkButton, has_frame: gboolean);
12293    pub fn gtk_button_set_icon_name(button: *mut GtkButton, icon_name: *const c_char);
12294    pub fn gtk_button_set_label(button: *mut GtkButton, label: *const c_char);
12295    pub fn gtk_button_set_use_underline(button: *mut GtkButton, use_underline: gboolean);
12296
12297    //=========================================================================
12298    // GtkCClosureExpression
12299    //=========================================================================
12300    pub fn gtk_cclosure_expression_get_type() -> GType;
12301    pub fn gtk_cclosure_expression_new(
12302        value_type: GType,
12303        marshal: gobject::GClosureMarshal,
12304        n_params: c_uint,
12305        params: *mut *mut GtkExpression,
12306        callback_func: gobject::GCallback,
12307        user_data: gpointer,
12308        user_destroy: gobject::GClosureNotify,
12309    ) -> *mut GtkCClosureExpression;
12310
12311    //=========================================================================
12312    // GtkCalendar
12313    //=========================================================================
12314    pub fn gtk_calendar_get_type() -> GType;
12315    pub fn gtk_calendar_new() -> *mut GtkWidget;
12316    pub fn gtk_calendar_clear_marks(calendar: *mut GtkCalendar);
12317    pub fn gtk_calendar_get_date(self_: *mut GtkCalendar) -> *mut glib::GDateTime;
12318    #[cfg(feature = "v4_14")]
12319    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12320    pub fn gtk_calendar_get_day(self_: *mut GtkCalendar) -> c_int;
12321    pub fn gtk_calendar_get_day_is_marked(calendar: *mut GtkCalendar, day: c_uint) -> gboolean;
12322    #[cfg(feature = "v4_14")]
12323    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12324    pub fn gtk_calendar_get_month(self_: *mut GtkCalendar) -> c_int;
12325    pub fn gtk_calendar_get_show_day_names(self_: *mut GtkCalendar) -> gboolean;
12326    pub fn gtk_calendar_get_show_heading(self_: *mut GtkCalendar) -> gboolean;
12327    pub fn gtk_calendar_get_show_week_numbers(self_: *mut GtkCalendar) -> gboolean;
12328    #[cfg(feature = "v4_14")]
12329    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12330    pub fn gtk_calendar_get_year(self_: *mut GtkCalendar) -> c_int;
12331    pub fn gtk_calendar_mark_day(calendar: *mut GtkCalendar, day: c_uint);
12332    pub fn gtk_calendar_select_day(self_: *mut GtkCalendar, date: *mut glib::GDateTime);
12333    #[cfg(feature = "v4_20")]
12334    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
12335    pub fn gtk_calendar_set_date(self_: *mut GtkCalendar, date: *mut glib::GDateTime);
12336    #[cfg(feature = "v4_14")]
12337    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12338    pub fn gtk_calendar_set_day(self_: *mut GtkCalendar, day: c_int);
12339    #[cfg(feature = "v4_14")]
12340    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12341    pub fn gtk_calendar_set_month(self_: *mut GtkCalendar, month: c_int);
12342    pub fn gtk_calendar_set_show_day_names(self_: *mut GtkCalendar, value: gboolean);
12343    pub fn gtk_calendar_set_show_heading(self_: *mut GtkCalendar, value: gboolean);
12344    pub fn gtk_calendar_set_show_week_numbers(self_: *mut GtkCalendar, value: gboolean);
12345    #[cfg(feature = "v4_14")]
12346    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12347    pub fn gtk_calendar_set_year(self_: *mut GtkCalendar, year: c_int);
12348    pub fn gtk_calendar_unmark_day(calendar: *mut GtkCalendar, day: c_uint);
12349
12350    //=========================================================================
12351    // GtkCallbackAction
12352    //=========================================================================
12353    pub fn gtk_callback_action_get_type() -> GType;
12354    pub fn gtk_callback_action_new(
12355        callback: GtkShortcutFunc,
12356        data: gpointer,
12357        destroy: glib::GDestroyNotify,
12358    ) -> *mut GtkCallbackAction;
12359
12360    //=========================================================================
12361    // GtkCellArea
12362    //=========================================================================
12363    pub fn gtk_cell_area_get_type() -> GType;
12364    pub fn gtk_cell_area_activate(
12365        area: *mut GtkCellArea,
12366        context: *mut GtkCellAreaContext,
12367        widget: *mut GtkWidget,
12368        cell_area: *const gdk::GdkRectangle,
12369        flags: GtkCellRendererState,
12370        edit_only: gboolean,
12371    ) -> gboolean;
12372    pub fn gtk_cell_area_activate_cell(
12373        area: *mut GtkCellArea,
12374        widget: *mut GtkWidget,
12375        renderer: *mut GtkCellRenderer,
12376        event: *mut gdk::GdkEvent,
12377        cell_area: *const gdk::GdkRectangle,
12378        flags: GtkCellRendererState,
12379    ) -> gboolean;
12380    pub fn gtk_cell_area_add(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12381    pub fn gtk_cell_area_add_focus_sibling(
12382        area: *mut GtkCellArea,
12383        renderer: *mut GtkCellRenderer,
12384        sibling: *mut GtkCellRenderer,
12385    );
12386    pub fn gtk_cell_area_add_with_properties(
12387        area: *mut GtkCellArea,
12388        renderer: *mut GtkCellRenderer,
12389        first_prop_name: *const c_char,
12390        ...
12391    );
12392    pub fn gtk_cell_area_apply_attributes(
12393        area: *mut GtkCellArea,
12394        tree_model: *mut GtkTreeModel,
12395        iter: *mut GtkTreeIter,
12396        is_expander: gboolean,
12397        is_expanded: gboolean,
12398    );
12399    pub fn gtk_cell_area_attribute_connect(
12400        area: *mut GtkCellArea,
12401        renderer: *mut GtkCellRenderer,
12402        attribute: *const c_char,
12403        column: c_int,
12404    );
12405    pub fn gtk_cell_area_attribute_disconnect(
12406        area: *mut GtkCellArea,
12407        renderer: *mut GtkCellRenderer,
12408        attribute: *const c_char,
12409    );
12410    pub fn gtk_cell_area_attribute_get_column(
12411        area: *mut GtkCellArea,
12412        renderer: *mut GtkCellRenderer,
12413        attribute: *const c_char,
12414    ) -> c_int;
12415    pub fn gtk_cell_area_cell_get(
12416        area: *mut GtkCellArea,
12417        renderer: *mut GtkCellRenderer,
12418        first_prop_name: *const c_char,
12419        ...
12420    );
12421    pub fn gtk_cell_area_cell_get_property(
12422        area: *mut GtkCellArea,
12423        renderer: *mut GtkCellRenderer,
12424        property_name: *const c_char,
12425        value: *mut gobject::GValue,
12426    );
12427    //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);
12428    pub fn gtk_cell_area_cell_set(
12429        area: *mut GtkCellArea,
12430        renderer: *mut GtkCellRenderer,
12431        first_prop_name: *const c_char,
12432        ...
12433    );
12434    pub fn gtk_cell_area_cell_set_property(
12435        area: *mut GtkCellArea,
12436        renderer: *mut GtkCellRenderer,
12437        property_name: *const c_char,
12438        value: *const gobject::GValue,
12439    );
12440    //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);
12441    pub fn gtk_cell_area_copy_context(
12442        area: *mut GtkCellArea,
12443        context: *mut GtkCellAreaContext,
12444    ) -> *mut GtkCellAreaContext;
12445    pub fn gtk_cell_area_create_context(area: *mut GtkCellArea) -> *mut GtkCellAreaContext;
12446    pub fn gtk_cell_area_event(
12447        area: *mut GtkCellArea,
12448        context: *mut GtkCellAreaContext,
12449        widget: *mut GtkWidget,
12450        event: *mut gdk::GdkEvent,
12451        cell_area: *const gdk::GdkRectangle,
12452        flags: GtkCellRendererState,
12453    ) -> c_int;
12454    pub fn gtk_cell_area_focus(area: *mut GtkCellArea, direction: GtkDirectionType) -> gboolean;
12455    pub fn gtk_cell_area_foreach(
12456        area: *mut GtkCellArea,
12457        callback: GtkCellCallback,
12458        callback_data: gpointer,
12459    );
12460    pub fn gtk_cell_area_foreach_alloc(
12461        area: *mut GtkCellArea,
12462        context: *mut GtkCellAreaContext,
12463        widget: *mut GtkWidget,
12464        cell_area: *const gdk::GdkRectangle,
12465        background_area: *const gdk::GdkRectangle,
12466        callback: GtkCellAllocCallback,
12467        callback_data: gpointer,
12468    );
12469    pub fn gtk_cell_area_get_cell_allocation(
12470        area: *mut GtkCellArea,
12471        context: *mut GtkCellAreaContext,
12472        widget: *mut GtkWidget,
12473        renderer: *mut GtkCellRenderer,
12474        cell_area: *const gdk::GdkRectangle,
12475        allocation: *mut gdk::GdkRectangle,
12476    );
12477    pub fn gtk_cell_area_get_cell_at_position(
12478        area: *mut GtkCellArea,
12479        context: *mut GtkCellAreaContext,
12480        widget: *mut GtkWidget,
12481        cell_area: *const gdk::GdkRectangle,
12482        x: c_int,
12483        y: c_int,
12484        alloc_area: *mut gdk::GdkRectangle,
12485    ) -> *mut GtkCellRenderer;
12486    pub fn gtk_cell_area_get_current_path_string(area: *mut GtkCellArea) -> *const c_char;
12487    pub fn gtk_cell_area_get_edit_widget(area: *mut GtkCellArea) -> *mut GtkCellEditable;
12488    pub fn gtk_cell_area_get_edited_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
12489    pub fn gtk_cell_area_get_focus_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
12490    pub fn gtk_cell_area_get_focus_from_sibling(
12491        area: *mut GtkCellArea,
12492        renderer: *mut GtkCellRenderer,
12493    ) -> *mut GtkCellRenderer;
12494    pub fn gtk_cell_area_get_focus_siblings(
12495        area: *mut GtkCellArea,
12496        renderer: *mut GtkCellRenderer,
12497    ) -> *const glib::GList;
12498    pub fn gtk_cell_area_get_preferred_height(
12499        area: *mut GtkCellArea,
12500        context: *mut GtkCellAreaContext,
12501        widget: *mut GtkWidget,
12502        minimum_height: *mut c_int,
12503        natural_height: *mut c_int,
12504    );
12505    pub fn gtk_cell_area_get_preferred_height_for_width(
12506        area: *mut GtkCellArea,
12507        context: *mut GtkCellAreaContext,
12508        widget: *mut GtkWidget,
12509        width: c_int,
12510        minimum_height: *mut c_int,
12511        natural_height: *mut c_int,
12512    );
12513    pub fn gtk_cell_area_get_preferred_width(
12514        area: *mut GtkCellArea,
12515        context: *mut GtkCellAreaContext,
12516        widget: *mut GtkWidget,
12517        minimum_width: *mut c_int,
12518        natural_width: *mut c_int,
12519    );
12520    pub fn gtk_cell_area_get_preferred_width_for_height(
12521        area: *mut GtkCellArea,
12522        context: *mut GtkCellAreaContext,
12523        widget: *mut GtkWidget,
12524        height: c_int,
12525        minimum_width: *mut c_int,
12526        natural_width: *mut c_int,
12527    );
12528    pub fn gtk_cell_area_get_request_mode(area: *mut GtkCellArea) -> GtkSizeRequestMode;
12529    pub fn gtk_cell_area_has_renderer(
12530        area: *mut GtkCellArea,
12531        renderer: *mut GtkCellRenderer,
12532    ) -> gboolean;
12533    pub fn gtk_cell_area_inner_cell_area(
12534        area: *mut GtkCellArea,
12535        widget: *mut GtkWidget,
12536        cell_area: *const gdk::GdkRectangle,
12537        inner_area: *mut gdk::GdkRectangle,
12538    );
12539    pub fn gtk_cell_area_is_activatable(area: *mut GtkCellArea) -> gboolean;
12540    pub fn gtk_cell_area_is_focus_sibling(
12541        area: *mut GtkCellArea,
12542        renderer: *mut GtkCellRenderer,
12543        sibling: *mut GtkCellRenderer,
12544    ) -> gboolean;
12545    pub fn gtk_cell_area_remove(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12546    pub fn gtk_cell_area_remove_focus_sibling(
12547        area: *mut GtkCellArea,
12548        renderer: *mut GtkCellRenderer,
12549        sibling: *mut GtkCellRenderer,
12550    );
12551    pub fn gtk_cell_area_request_renderer(
12552        area: *mut GtkCellArea,
12553        renderer: *mut GtkCellRenderer,
12554        orientation: GtkOrientation,
12555        widget: *mut GtkWidget,
12556        for_size: c_int,
12557        minimum_size: *mut c_int,
12558        natural_size: *mut c_int,
12559    );
12560    pub fn gtk_cell_area_set_focus_cell(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12561    pub fn gtk_cell_area_snapshot(
12562        area: *mut GtkCellArea,
12563        context: *mut GtkCellAreaContext,
12564        widget: *mut GtkWidget,
12565        snapshot: *mut GtkSnapshot,
12566        background_area: *const gdk::GdkRectangle,
12567        cell_area: *const gdk::GdkRectangle,
12568        flags: GtkCellRendererState,
12569        paint_focus: gboolean,
12570    );
12571    pub fn gtk_cell_area_stop_editing(area: *mut GtkCellArea, canceled: gboolean);
12572
12573    //=========================================================================
12574    // GtkCellAreaBox
12575    //=========================================================================
12576    pub fn gtk_cell_area_box_get_type() -> GType;
12577    pub fn gtk_cell_area_box_new() -> *mut GtkCellArea;
12578    pub fn gtk_cell_area_box_get_spacing(box_: *mut GtkCellAreaBox) -> c_int;
12579    pub fn gtk_cell_area_box_pack_end(
12580        box_: *mut GtkCellAreaBox,
12581        renderer: *mut GtkCellRenderer,
12582        expand: gboolean,
12583        align: gboolean,
12584        fixed: gboolean,
12585    );
12586    pub fn gtk_cell_area_box_pack_start(
12587        box_: *mut GtkCellAreaBox,
12588        renderer: *mut GtkCellRenderer,
12589        expand: gboolean,
12590        align: gboolean,
12591        fixed: gboolean,
12592    );
12593    pub fn gtk_cell_area_box_set_spacing(box_: *mut GtkCellAreaBox, spacing: c_int);
12594
12595    //=========================================================================
12596    // GtkCellAreaContext
12597    //=========================================================================
12598    pub fn gtk_cell_area_context_get_type() -> GType;
12599    pub fn gtk_cell_area_context_allocate(
12600        context: *mut GtkCellAreaContext,
12601        width: c_int,
12602        height: c_int,
12603    );
12604    pub fn gtk_cell_area_context_get_allocation(
12605        context: *mut GtkCellAreaContext,
12606        width: *mut c_int,
12607        height: *mut c_int,
12608    );
12609    pub fn gtk_cell_area_context_get_area(context: *mut GtkCellAreaContext) -> *mut GtkCellArea;
12610    pub fn gtk_cell_area_context_get_preferred_height(
12611        context: *mut GtkCellAreaContext,
12612        minimum_height: *mut c_int,
12613        natural_height: *mut c_int,
12614    );
12615    pub fn gtk_cell_area_context_get_preferred_height_for_width(
12616        context: *mut GtkCellAreaContext,
12617        width: c_int,
12618        minimum_height: *mut c_int,
12619        natural_height: *mut c_int,
12620    );
12621    pub fn gtk_cell_area_context_get_preferred_width(
12622        context: *mut GtkCellAreaContext,
12623        minimum_width: *mut c_int,
12624        natural_width: *mut c_int,
12625    );
12626    pub fn gtk_cell_area_context_get_preferred_width_for_height(
12627        context: *mut GtkCellAreaContext,
12628        height: c_int,
12629        minimum_width: *mut c_int,
12630        natural_width: *mut c_int,
12631    );
12632    pub fn gtk_cell_area_context_push_preferred_height(
12633        context: *mut GtkCellAreaContext,
12634        minimum_height: c_int,
12635        natural_height: c_int,
12636    );
12637    pub fn gtk_cell_area_context_push_preferred_width(
12638        context: *mut GtkCellAreaContext,
12639        minimum_width: c_int,
12640        natural_width: c_int,
12641    );
12642    pub fn gtk_cell_area_context_reset(context: *mut GtkCellAreaContext);
12643
12644    //=========================================================================
12645    // GtkCellRenderer
12646    //=========================================================================
12647    pub fn gtk_cell_renderer_get_type() -> GType;
12648    pub fn gtk_cell_renderer_activate(
12649        cell: *mut GtkCellRenderer,
12650        event: *mut gdk::GdkEvent,
12651        widget: *mut GtkWidget,
12652        path: *const c_char,
12653        background_area: *const gdk::GdkRectangle,
12654        cell_area: *const gdk::GdkRectangle,
12655        flags: GtkCellRendererState,
12656    ) -> gboolean;
12657    pub fn gtk_cell_renderer_get_aligned_area(
12658        cell: *mut GtkCellRenderer,
12659        widget: *mut GtkWidget,
12660        flags: GtkCellRendererState,
12661        cell_area: *const gdk::GdkRectangle,
12662        aligned_area: *mut gdk::GdkRectangle,
12663    );
12664    pub fn gtk_cell_renderer_get_alignment(
12665        cell: *mut GtkCellRenderer,
12666        xalign: *mut c_float,
12667        yalign: *mut c_float,
12668    );
12669    pub fn gtk_cell_renderer_get_fixed_size(
12670        cell: *mut GtkCellRenderer,
12671        width: *mut c_int,
12672        height: *mut c_int,
12673    );
12674    pub fn gtk_cell_renderer_get_is_expanded(cell: *mut GtkCellRenderer) -> gboolean;
12675    pub fn gtk_cell_renderer_get_is_expander(cell: *mut GtkCellRenderer) -> gboolean;
12676    pub fn gtk_cell_renderer_get_padding(
12677        cell: *mut GtkCellRenderer,
12678        xpad: *mut c_int,
12679        ypad: *mut c_int,
12680    );
12681    pub fn gtk_cell_renderer_get_preferred_height(
12682        cell: *mut GtkCellRenderer,
12683        widget: *mut GtkWidget,
12684        minimum_size: *mut c_int,
12685        natural_size: *mut c_int,
12686    );
12687    pub fn gtk_cell_renderer_get_preferred_height_for_width(
12688        cell: *mut GtkCellRenderer,
12689        widget: *mut GtkWidget,
12690        width: c_int,
12691        minimum_height: *mut c_int,
12692        natural_height: *mut c_int,
12693    );
12694    pub fn gtk_cell_renderer_get_preferred_size(
12695        cell: *mut GtkCellRenderer,
12696        widget: *mut GtkWidget,
12697        minimum_size: *mut GtkRequisition,
12698        natural_size: *mut GtkRequisition,
12699    );
12700    pub fn gtk_cell_renderer_get_preferred_width(
12701        cell: *mut GtkCellRenderer,
12702        widget: *mut GtkWidget,
12703        minimum_size: *mut c_int,
12704        natural_size: *mut c_int,
12705    );
12706    pub fn gtk_cell_renderer_get_preferred_width_for_height(
12707        cell: *mut GtkCellRenderer,
12708        widget: *mut GtkWidget,
12709        height: c_int,
12710        minimum_width: *mut c_int,
12711        natural_width: *mut c_int,
12712    );
12713    pub fn gtk_cell_renderer_get_request_mode(cell: *mut GtkCellRenderer) -> GtkSizeRequestMode;
12714    pub fn gtk_cell_renderer_get_sensitive(cell: *mut GtkCellRenderer) -> gboolean;
12715    pub fn gtk_cell_renderer_get_state(
12716        cell: *mut GtkCellRenderer,
12717        widget: *mut GtkWidget,
12718        cell_state: GtkCellRendererState,
12719    ) -> GtkStateFlags;
12720    pub fn gtk_cell_renderer_get_visible(cell: *mut GtkCellRenderer) -> gboolean;
12721    pub fn gtk_cell_renderer_is_activatable(cell: *mut GtkCellRenderer) -> gboolean;
12722    pub fn gtk_cell_renderer_set_alignment(
12723        cell: *mut GtkCellRenderer,
12724        xalign: c_float,
12725        yalign: c_float,
12726    );
12727    pub fn gtk_cell_renderer_set_fixed_size(
12728        cell: *mut GtkCellRenderer,
12729        width: c_int,
12730        height: c_int,
12731    );
12732    pub fn gtk_cell_renderer_set_is_expanded(cell: *mut GtkCellRenderer, is_expanded: gboolean);
12733    pub fn gtk_cell_renderer_set_is_expander(cell: *mut GtkCellRenderer, is_expander: gboolean);
12734    pub fn gtk_cell_renderer_set_padding(cell: *mut GtkCellRenderer, xpad: c_int, ypad: c_int);
12735    pub fn gtk_cell_renderer_set_sensitive(cell: *mut GtkCellRenderer, sensitive: gboolean);
12736    pub fn gtk_cell_renderer_set_visible(cell: *mut GtkCellRenderer, visible: gboolean);
12737    pub fn gtk_cell_renderer_snapshot(
12738        cell: *mut GtkCellRenderer,
12739        snapshot: *mut GtkSnapshot,
12740        widget: *mut GtkWidget,
12741        background_area: *const gdk::GdkRectangle,
12742        cell_area: *const gdk::GdkRectangle,
12743        flags: GtkCellRendererState,
12744    );
12745    pub fn gtk_cell_renderer_start_editing(
12746        cell: *mut GtkCellRenderer,
12747        event: *mut gdk::GdkEvent,
12748        widget: *mut GtkWidget,
12749        path: *const c_char,
12750        background_area: *const gdk::GdkRectangle,
12751        cell_area: *const gdk::GdkRectangle,
12752        flags: GtkCellRendererState,
12753    ) -> *mut GtkCellEditable;
12754    pub fn gtk_cell_renderer_stop_editing(cell: *mut GtkCellRenderer, canceled: gboolean);
12755
12756    //=========================================================================
12757    // GtkCellRendererAccel
12758    //=========================================================================
12759    pub fn gtk_cell_renderer_accel_get_type() -> GType;
12760    pub fn gtk_cell_renderer_accel_new() -> *mut GtkCellRenderer;
12761
12762    //=========================================================================
12763    // GtkCellRendererCombo
12764    //=========================================================================
12765    pub fn gtk_cell_renderer_combo_get_type() -> GType;
12766    pub fn gtk_cell_renderer_combo_new() -> *mut GtkCellRenderer;
12767
12768    //=========================================================================
12769    // GtkCellRendererPixbuf
12770    //=========================================================================
12771    pub fn gtk_cell_renderer_pixbuf_get_type() -> GType;
12772    pub fn gtk_cell_renderer_pixbuf_new() -> *mut GtkCellRenderer;
12773
12774    //=========================================================================
12775    // GtkCellRendererProgress
12776    //=========================================================================
12777    pub fn gtk_cell_renderer_progress_get_type() -> GType;
12778    pub fn gtk_cell_renderer_progress_new() -> *mut GtkCellRenderer;
12779
12780    //=========================================================================
12781    // GtkCellRendererSpin
12782    //=========================================================================
12783    pub fn gtk_cell_renderer_spin_get_type() -> GType;
12784    pub fn gtk_cell_renderer_spin_new() -> *mut GtkCellRenderer;
12785
12786    //=========================================================================
12787    // GtkCellRendererSpinner
12788    //=========================================================================
12789    pub fn gtk_cell_renderer_spinner_get_type() -> GType;
12790    pub fn gtk_cell_renderer_spinner_new() -> *mut GtkCellRenderer;
12791
12792    //=========================================================================
12793    // GtkCellRendererText
12794    //=========================================================================
12795    pub fn gtk_cell_renderer_text_get_type() -> GType;
12796    pub fn gtk_cell_renderer_text_new() -> *mut GtkCellRenderer;
12797    pub fn gtk_cell_renderer_text_set_fixed_height_from_font(
12798        renderer: *mut GtkCellRendererText,
12799        number_of_rows: c_int,
12800    );
12801
12802    //=========================================================================
12803    // GtkCellRendererToggle
12804    //=========================================================================
12805    pub fn gtk_cell_renderer_toggle_get_type() -> GType;
12806    pub fn gtk_cell_renderer_toggle_new() -> *mut GtkCellRenderer;
12807    pub fn gtk_cell_renderer_toggle_get_activatable(toggle: *mut GtkCellRendererToggle)
12808        -> gboolean;
12809    pub fn gtk_cell_renderer_toggle_get_active(toggle: *mut GtkCellRendererToggle) -> gboolean;
12810    pub fn gtk_cell_renderer_toggle_get_radio(toggle: *mut GtkCellRendererToggle) -> gboolean;
12811    pub fn gtk_cell_renderer_toggle_set_activatable(
12812        toggle: *mut GtkCellRendererToggle,
12813        setting: gboolean,
12814    );
12815    pub fn gtk_cell_renderer_toggle_set_active(
12816        toggle: *mut GtkCellRendererToggle,
12817        setting: gboolean,
12818    );
12819    pub fn gtk_cell_renderer_toggle_set_radio(toggle: *mut GtkCellRendererToggle, radio: gboolean);
12820
12821    //=========================================================================
12822    // GtkCellView
12823    //=========================================================================
12824    pub fn gtk_cell_view_get_type() -> GType;
12825    pub fn gtk_cell_view_new() -> *mut GtkWidget;
12826    pub fn gtk_cell_view_new_with_context(
12827        area: *mut GtkCellArea,
12828        context: *mut GtkCellAreaContext,
12829    ) -> *mut GtkWidget;
12830    pub fn gtk_cell_view_new_with_markup(markup: *const c_char) -> *mut GtkWidget;
12831    pub fn gtk_cell_view_new_with_text(text: *const c_char) -> *mut GtkWidget;
12832    pub fn gtk_cell_view_new_with_texture(texture: *mut gdk::GdkTexture) -> *mut GtkWidget;
12833    pub fn gtk_cell_view_get_displayed_row(cell_view: *mut GtkCellView) -> *mut GtkTreePath;
12834    pub fn gtk_cell_view_get_draw_sensitive(cell_view: *mut GtkCellView) -> gboolean;
12835    pub fn gtk_cell_view_get_fit_model(cell_view: *mut GtkCellView) -> gboolean;
12836    pub fn gtk_cell_view_get_model(cell_view: *mut GtkCellView) -> *mut GtkTreeModel;
12837    pub fn gtk_cell_view_set_displayed_row(cell_view: *mut GtkCellView, path: *mut GtkTreePath);
12838    pub fn gtk_cell_view_set_draw_sensitive(cell_view: *mut GtkCellView, draw_sensitive: gboolean);
12839    pub fn gtk_cell_view_set_fit_model(cell_view: *mut GtkCellView, fit_model: gboolean);
12840    pub fn gtk_cell_view_set_model(cell_view: *mut GtkCellView, model: *mut GtkTreeModel);
12841
12842    //=========================================================================
12843    // GtkCenterBox
12844    //=========================================================================
12845    pub fn gtk_center_box_get_type() -> GType;
12846    pub fn gtk_center_box_new() -> *mut GtkWidget;
12847    pub fn gtk_center_box_get_baseline_position(self_: *mut GtkCenterBox) -> GtkBaselinePosition;
12848    pub fn gtk_center_box_get_center_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12849    pub fn gtk_center_box_get_end_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12850    #[cfg(feature = "v4_12")]
12851    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12852    pub fn gtk_center_box_get_shrink_center_last(self_: *mut GtkCenterBox) -> gboolean;
12853    pub fn gtk_center_box_get_start_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12854    pub fn gtk_center_box_set_baseline_position(
12855        self_: *mut GtkCenterBox,
12856        position: GtkBaselinePosition,
12857    );
12858    pub fn gtk_center_box_set_center_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12859    pub fn gtk_center_box_set_end_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12860    #[cfg(feature = "v4_12")]
12861    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12862    pub fn gtk_center_box_set_shrink_center_last(
12863        self_: *mut GtkCenterBox,
12864        shrink_center_last: gboolean,
12865    );
12866    pub fn gtk_center_box_set_start_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12867
12868    //=========================================================================
12869    // GtkCenterLayout
12870    //=========================================================================
12871    pub fn gtk_center_layout_get_type() -> GType;
12872    pub fn gtk_center_layout_new() -> *mut GtkLayoutManager;
12873    pub fn gtk_center_layout_get_baseline_position(
12874        self_: *mut GtkCenterLayout,
12875    ) -> GtkBaselinePosition;
12876    pub fn gtk_center_layout_get_center_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12877    pub fn gtk_center_layout_get_end_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12878    pub fn gtk_center_layout_get_orientation(self_: *mut GtkCenterLayout) -> GtkOrientation;
12879    #[cfg(feature = "v4_12")]
12880    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12881    pub fn gtk_center_layout_get_shrink_center_last(self_: *mut GtkCenterLayout) -> gboolean;
12882    pub fn gtk_center_layout_get_start_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12883    pub fn gtk_center_layout_set_baseline_position(
12884        self_: *mut GtkCenterLayout,
12885        baseline_position: GtkBaselinePosition,
12886    );
12887    pub fn gtk_center_layout_set_center_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12888    pub fn gtk_center_layout_set_end_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12889    pub fn gtk_center_layout_set_orientation(
12890        self_: *mut GtkCenterLayout,
12891        orientation: GtkOrientation,
12892    );
12893    #[cfg(feature = "v4_12")]
12894    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12895    pub fn gtk_center_layout_set_shrink_center_last(
12896        self_: *mut GtkCenterLayout,
12897        shrink_center_last: gboolean,
12898    );
12899    pub fn gtk_center_layout_set_start_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12900
12901    //=========================================================================
12902    // GtkCheckButton
12903    //=========================================================================
12904    pub fn gtk_check_button_get_type() -> GType;
12905    pub fn gtk_check_button_new() -> *mut GtkWidget;
12906    pub fn gtk_check_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
12907    pub fn gtk_check_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
12908    pub fn gtk_check_button_get_active(self_: *mut GtkCheckButton) -> gboolean;
12909    #[cfg(feature = "v4_8")]
12910    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
12911    pub fn gtk_check_button_get_child(button: *mut GtkCheckButton) -> *mut GtkWidget;
12912    pub fn gtk_check_button_get_inconsistent(check_button: *mut GtkCheckButton) -> gboolean;
12913    pub fn gtk_check_button_get_label(self_: *mut GtkCheckButton) -> *const c_char;
12914    pub fn gtk_check_button_get_use_underline(self_: *mut GtkCheckButton) -> gboolean;
12915    pub fn gtk_check_button_set_active(self_: *mut GtkCheckButton, setting: gboolean);
12916    #[cfg(feature = "v4_8")]
12917    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
12918    pub fn gtk_check_button_set_child(button: *mut GtkCheckButton, child: *mut GtkWidget);
12919    pub fn gtk_check_button_set_group(self_: *mut GtkCheckButton, group: *mut GtkCheckButton);
12920    pub fn gtk_check_button_set_inconsistent(
12921        check_button: *mut GtkCheckButton,
12922        inconsistent: gboolean,
12923    );
12924    pub fn gtk_check_button_set_label(self_: *mut GtkCheckButton, label: *const c_char);
12925    pub fn gtk_check_button_set_use_underline(self_: *mut GtkCheckButton, setting: gboolean);
12926
12927    //=========================================================================
12928    // GtkClosureExpression
12929    //=========================================================================
12930    pub fn gtk_closure_expression_get_type() -> GType;
12931    pub fn gtk_closure_expression_new(
12932        value_type: GType,
12933        closure: *mut gobject::GClosure,
12934        n_params: c_uint,
12935        params: *mut *mut GtkExpression,
12936    ) -> *mut GtkClosureExpression;
12937
12938    //=========================================================================
12939    // GtkColorButton
12940    //=========================================================================
12941    pub fn gtk_color_button_get_type() -> GType;
12942    pub fn gtk_color_button_new() -> *mut GtkWidget;
12943    pub fn gtk_color_button_new_with_rgba(rgba: *const gdk::GdkRGBA) -> *mut GtkWidget;
12944    pub fn gtk_color_button_get_modal(button: *mut GtkColorButton) -> gboolean;
12945    pub fn gtk_color_button_get_title(button: *mut GtkColorButton) -> *const c_char;
12946    pub fn gtk_color_button_set_modal(button: *mut GtkColorButton, modal: gboolean);
12947    pub fn gtk_color_button_set_title(button: *mut GtkColorButton, title: *const c_char);
12948
12949    //=========================================================================
12950    // GtkColorChooserDialog
12951    //=========================================================================
12952    pub fn gtk_color_chooser_dialog_get_type() -> GType;
12953    pub fn gtk_color_chooser_dialog_new(
12954        title: *const c_char,
12955        parent: *mut GtkWindow,
12956    ) -> *mut GtkWidget;
12957
12958    //=========================================================================
12959    // GtkColorChooserWidget
12960    //=========================================================================
12961    pub fn gtk_color_chooser_widget_get_type() -> GType;
12962    pub fn gtk_color_chooser_widget_new() -> *mut GtkWidget;
12963
12964    //=========================================================================
12965    // GtkColorDialog
12966    //=========================================================================
12967    #[cfg(feature = "v4_10")]
12968    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12969    pub fn gtk_color_dialog_get_type() -> GType;
12970    #[cfg(feature = "v4_10")]
12971    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12972    pub fn gtk_color_dialog_new() -> *mut GtkColorDialog;
12973    #[cfg(feature = "v4_10")]
12974    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12975    pub fn gtk_color_dialog_choose_rgba(
12976        self_: *mut GtkColorDialog,
12977        parent: *mut GtkWindow,
12978        initial_color: *const gdk::GdkRGBA,
12979        cancellable: *mut gio::GCancellable,
12980        callback: gio::GAsyncReadyCallback,
12981        user_data: gpointer,
12982    );
12983    #[cfg(feature = "v4_10")]
12984    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12985    pub fn gtk_color_dialog_choose_rgba_finish(
12986        self_: *mut GtkColorDialog,
12987        result: *mut gio::GAsyncResult,
12988        error: *mut *mut glib::GError,
12989    ) -> *mut gdk::GdkRGBA;
12990    #[cfg(feature = "v4_10")]
12991    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12992    pub fn gtk_color_dialog_get_modal(self_: *mut GtkColorDialog) -> gboolean;
12993    #[cfg(feature = "v4_10")]
12994    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12995    pub fn gtk_color_dialog_get_title(self_: *mut GtkColorDialog) -> *const c_char;
12996    #[cfg(feature = "v4_10")]
12997    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12998    pub fn gtk_color_dialog_get_with_alpha(self_: *mut GtkColorDialog) -> gboolean;
12999    #[cfg(feature = "v4_10")]
13000    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13001    pub fn gtk_color_dialog_set_modal(self_: *mut GtkColorDialog, modal: gboolean);
13002    #[cfg(feature = "v4_10")]
13003    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13004    pub fn gtk_color_dialog_set_title(self_: *mut GtkColorDialog, title: *const c_char);
13005    #[cfg(feature = "v4_10")]
13006    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13007    pub fn gtk_color_dialog_set_with_alpha(self_: *mut GtkColorDialog, with_alpha: gboolean);
13008
13009    //=========================================================================
13010    // GtkColorDialogButton
13011    //=========================================================================
13012    #[cfg(feature = "v4_10")]
13013    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13014    pub fn gtk_color_dialog_button_get_type() -> GType;
13015    #[cfg(feature = "v4_10")]
13016    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13017    pub fn gtk_color_dialog_button_new(dialog: *mut GtkColorDialog) -> *mut GtkWidget;
13018    #[cfg(feature = "v4_10")]
13019    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13020    pub fn gtk_color_dialog_button_get_dialog(
13021        self_: *mut GtkColorDialogButton,
13022    ) -> *mut GtkColorDialog;
13023    #[cfg(feature = "v4_10")]
13024    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13025    pub fn gtk_color_dialog_button_get_rgba(
13026        self_: *mut GtkColorDialogButton,
13027    ) -> *const gdk::GdkRGBA;
13028    #[cfg(feature = "v4_10")]
13029    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13030    pub fn gtk_color_dialog_button_set_dialog(
13031        self_: *mut GtkColorDialogButton,
13032        dialog: *mut GtkColorDialog,
13033    );
13034    #[cfg(feature = "v4_10")]
13035    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13036    pub fn gtk_color_dialog_button_set_rgba(
13037        self_: *mut GtkColorDialogButton,
13038        color: *const gdk::GdkRGBA,
13039    );
13040
13041    //=========================================================================
13042    // GtkColumnView
13043    //=========================================================================
13044    pub fn gtk_column_view_get_type() -> GType;
13045    pub fn gtk_column_view_new(model: *mut GtkSelectionModel) -> *mut GtkWidget;
13046    pub fn gtk_column_view_append_column(
13047        self_: *mut GtkColumnView,
13048        column: *mut GtkColumnViewColumn,
13049    );
13050    pub fn gtk_column_view_get_columns(self_: *mut GtkColumnView) -> *mut gio::GListModel;
13051    pub fn gtk_column_view_get_enable_rubberband(self_: *mut GtkColumnView) -> gboolean;
13052    #[cfg(feature = "v4_12")]
13053    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13054    pub fn gtk_column_view_get_header_factory(self_: *mut GtkColumnView)
13055        -> *mut GtkListItemFactory;
13056    pub fn gtk_column_view_get_model(self_: *mut GtkColumnView) -> *mut GtkSelectionModel;
13057    pub fn gtk_column_view_get_reorderable(self_: *mut GtkColumnView) -> gboolean;
13058    #[cfg(feature = "v4_12")]
13059    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13060    pub fn gtk_column_view_get_row_factory(self_: *mut GtkColumnView) -> *mut GtkListItemFactory;
13061    pub fn gtk_column_view_get_show_column_separators(self_: *mut GtkColumnView) -> gboolean;
13062    pub fn gtk_column_view_get_show_row_separators(self_: *mut GtkColumnView) -> gboolean;
13063    pub fn gtk_column_view_get_single_click_activate(self_: *mut GtkColumnView) -> gboolean;
13064    pub fn gtk_column_view_get_sorter(self_: *mut GtkColumnView) -> *mut GtkSorter;
13065    #[cfg(feature = "v4_12")]
13066    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13067    pub fn gtk_column_view_get_tab_behavior(self_: *mut GtkColumnView) -> GtkListTabBehavior;
13068    pub fn gtk_column_view_insert_column(
13069        self_: *mut GtkColumnView,
13070        position: c_uint,
13071        column: *mut GtkColumnViewColumn,
13072    );
13073    pub fn gtk_column_view_remove_column(
13074        self_: *mut GtkColumnView,
13075        column: *mut GtkColumnViewColumn,
13076    );
13077    #[cfg(feature = "v4_12")]
13078    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13079    pub fn gtk_column_view_scroll_to(
13080        self_: *mut GtkColumnView,
13081        pos: c_uint,
13082        column: *mut GtkColumnViewColumn,
13083        flags: GtkListScrollFlags,
13084        scroll: *mut GtkScrollInfo,
13085    );
13086    pub fn gtk_column_view_set_enable_rubberband(
13087        self_: *mut GtkColumnView,
13088        enable_rubberband: gboolean,
13089    );
13090    #[cfg(feature = "v4_12")]
13091    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13092    pub fn gtk_column_view_set_header_factory(
13093        self_: *mut GtkColumnView,
13094        factory: *mut GtkListItemFactory,
13095    );
13096    pub fn gtk_column_view_set_model(self_: *mut GtkColumnView, model: *mut GtkSelectionModel);
13097    pub fn gtk_column_view_set_reorderable(self_: *mut GtkColumnView, reorderable: gboolean);
13098    #[cfg(feature = "v4_12")]
13099    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13100    pub fn gtk_column_view_set_row_factory(
13101        self_: *mut GtkColumnView,
13102        factory: *mut GtkListItemFactory,
13103    );
13104    pub fn gtk_column_view_set_show_column_separators(
13105        self_: *mut GtkColumnView,
13106        show_column_separators: gboolean,
13107    );
13108    pub fn gtk_column_view_set_show_row_separators(
13109        self_: *mut GtkColumnView,
13110        show_row_separators: gboolean,
13111    );
13112    pub fn gtk_column_view_set_single_click_activate(
13113        self_: *mut GtkColumnView,
13114        single_click_activate: gboolean,
13115    );
13116    #[cfg(feature = "v4_12")]
13117    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13118    pub fn gtk_column_view_set_tab_behavior(
13119        self_: *mut GtkColumnView,
13120        tab_behavior: GtkListTabBehavior,
13121    );
13122    pub fn gtk_column_view_sort_by_column(
13123        self_: *mut GtkColumnView,
13124        column: *mut GtkColumnViewColumn,
13125        direction: GtkSortType,
13126    );
13127
13128    //=========================================================================
13129    // GtkColumnViewCell
13130    //=========================================================================
13131    #[cfg(feature = "v4_12")]
13132    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13133    pub fn gtk_column_view_cell_get_type() -> GType;
13134    #[cfg(feature = "v4_12")]
13135    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13136    pub fn gtk_column_view_cell_get_child(self_: *mut GtkColumnViewCell) -> *mut GtkWidget;
13137    #[cfg(feature = "v4_12")]
13138    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13139    pub fn gtk_column_view_cell_get_focusable(self_: *mut GtkColumnViewCell) -> gboolean;
13140    #[cfg(feature = "v4_12")]
13141    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13142    pub fn gtk_column_view_cell_get_item(self_: *mut GtkColumnViewCell) -> *mut gobject::GObject;
13143    #[cfg(feature = "v4_12")]
13144    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13145    pub fn gtk_column_view_cell_get_position(self_: *mut GtkColumnViewCell) -> c_uint;
13146    #[cfg(feature = "v4_12")]
13147    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13148    pub fn gtk_column_view_cell_get_selected(self_: *mut GtkColumnViewCell) -> gboolean;
13149    #[cfg(feature = "v4_12")]
13150    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13151    pub fn gtk_column_view_cell_set_child(self_: *mut GtkColumnViewCell, child: *mut GtkWidget);
13152    #[cfg(feature = "v4_12")]
13153    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13154    pub fn gtk_column_view_cell_set_focusable(self_: *mut GtkColumnViewCell, focusable: gboolean);
13155
13156    //=========================================================================
13157    // GtkColumnViewColumn
13158    //=========================================================================
13159    pub fn gtk_column_view_column_get_type() -> GType;
13160    pub fn gtk_column_view_column_new(
13161        title: *const c_char,
13162        factory: *mut GtkListItemFactory,
13163    ) -> *mut GtkColumnViewColumn;
13164    pub fn gtk_column_view_column_get_column_view(
13165        self_: *mut GtkColumnViewColumn,
13166    ) -> *mut GtkColumnView;
13167    pub fn gtk_column_view_column_get_expand(self_: *mut GtkColumnViewColumn) -> gboolean;
13168    pub fn gtk_column_view_column_get_factory(
13169        self_: *mut GtkColumnViewColumn,
13170    ) -> *mut GtkListItemFactory;
13171    pub fn gtk_column_view_column_get_fixed_width(self_: *mut GtkColumnViewColumn) -> c_int;
13172    pub fn gtk_column_view_column_get_header_menu(
13173        self_: *mut GtkColumnViewColumn,
13174    ) -> *mut gio::GMenuModel;
13175    #[cfg(feature = "v4_10")]
13176    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13177    pub fn gtk_column_view_column_get_id(self_: *mut GtkColumnViewColumn) -> *const c_char;
13178    pub fn gtk_column_view_column_get_resizable(self_: *mut GtkColumnViewColumn) -> gboolean;
13179    pub fn gtk_column_view_column_get_sorter(self_: *mut GtkColumnViewColumn) -> *mut GtkSorter;
13180    pub fn gtk_column_view_column_get_title(self_: *mut GtkColumnViewColumn) -> *const c_char;
13181    pub fn gtk_column_view_column_get_visible(self_: *mut GtkColumnViewColumn) -> gboolean;
13182    pub fn gtk_column_view_column_set_expand(self_: *mut GtkColumnViewColumn, expand: gboolean);
13183    pub fn gtk_column_view_column_set_factory(
13184        self_: *mut GtkColumnViewColumn,
13185        factory: *mut GtkListItemFactory,
13186    );
13187    pub fn gtk_column_view_column_set_fixed_width(
13188        self_: *mut GtkColumnViewColumn,
13189        fixed_width: c_int,
13190    );
13191    pub fn gtk_column_view_column_set_header_menu(
13192        self_: *mut GtkColumnViewColumn,
13193        menu: *mut gio::GMenuModel,
13194    );
13195    #[cfg(feature = "v4_10")]
13196    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13197    pub fn gtk_column_view_column_set_id(self_: *mut GtkColumnViewColumn, id: *const c_char);
13198    pub fn gtk_column_view_column_set_resizable(
13199        self_: *mut GtkColumnViewColumn,
13200        resizable: gboolean,
13201    );
13202    pub fn gtk_column_view_column_set_sorter(
13203        self_: *mut GtkColumnViewColumn,
13204        sorter: *mut GtkSorter,
13205    );
13206    pub fn gtk_column_view_column_set_title(self_: *mut GtkColumnViewColumn, title: *const c_char);
13207    pub fn gtk_column_view_column_set_visible(self_: *mut GtkColumnViewColumn, visible: gboolean);
13208
13209    //=========================================================================
13210    // GtkColumnViewRow
13211    //=========================================================================
13212    #[cfg(feature = "v4_12")]
13213    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13214    pub fn gtk_column_view_row_get_type() -> GType;
13215    #[cfg(feature = "v4_12")]
13216    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13217    pub fn gtk_column_view_row_get_accessible_description(
13218        self_: *mut GtkColumnViewRow,
13219    ) -> *const c_char;
13220    #[cfg(feature = "v4_12")]
13221    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13222    pub fn gtk_column_view_row_get_accessible_label(self_: *mut GtkColumnViewRow) -> *const c_char;
13223    #[cfg(feature = "v4_12")]
13224    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13225    pub fn gtk_column_view_row_get_activatable(self_: *mut GtkColumnViewRow) -> gboolean;
13226    #[cfg(feature = "v4_12")]
13227    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13228    pub fn gtk_column_view_row_get_focusable(self_: *mut GtkColumnViewRow) -> gboolean;
13229    #[cfg(feature = "v4_12")]
13230    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13231    pub fn gtk_column_view_row_get_item(self_: *mut GtkColumnViewRow) -> *mut gobject::GObject;
13232    #[cfg(feature = "v4_12")]
13233    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13234    pub fn gtk_column_view_row_get_position(self_: *mut GtkColumnViewRow) -> c_uint;
13235    #[cfg(feature = "v4_12")]
13236    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13237    pub fn gtk_column_view_row_get_selectable(self_: *mut GtkColumnViewRow) -> gboolean;
13238    #[cfg(feature = "v4_12")]
13239    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13240    pub fn gtk_column_view_row_get_selected(self_: *mut GtkColumnViewRow) -> gboolean;
13241    #[cfg(feature = "v4_12")]
13242    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13243    pub fn gtk_column_view_row_set_accessible_description(
13244        self_: *mut GtkColumnViewRow,
13245        description: *const c_char,
13246    );
13247    #[cfg(feature = "v4_12")]
13248    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13249    pub fn gtk_column_view_row_set_accessible_label(
13250        self_: *mut GtkColumnViewRow,
13251        label: *const c_char,
13252    );
13253    #[cfg(feature = "v4_12")]
13254    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13255    pub fn gtk_column_view_row_set_activatable(self_: *mut GtkColumnViewRow, activatable: gboolean);
13256    #[cfg(feature = "v4_12")]
13257    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13258    pub fn gtk_column_view_row_set_focusable(self_: *mut GtkColumnViewRow, focusable: gboolean);
13259    #[cfg(feature = "v4_12")]
13260    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13261    pub fn gtk_column_view_row_set_selectable(self_: *mut GtkColumnViewRow, selectable: gboolean);
13262
13263    //=========================================================================
13264    // GtkColumnViewSorter
13265    //=========================================================================
13266    #[cfg(feature = "v4_10")]
13267    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13268    pub fn gtk_column_view_sorter_get_type() -> GType;
13269    #[cfg(feature = "v4_10")]
13270    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13271    pub fn gtk_column_view_sorter_get_n_sort_columns(self_: *mut GtkColumnViewSorter) -> c_uint;
13272    #[cfg(feature = "v4_10")]
13273    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13274    pub fn gtk_column_view_sorter_get_nth_sort_column(
13275        self_: *mut GtkColumnViewSorter,
13276        position: c_uint,
13277        sort_order: *mut GtkSortType,
13278    ) -> *mut GtkColumnViewColumn;
13279    #[cfg(feature = "v4_10")]
13280    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13281    pub fn gtk_column_view_sorter_get_primary_sort_column(
13282        self_: *mut GtkColumnViewSorter,
13283    ) -> *mut GtkColumnViewColumn;
13284    #[cfg(feature = "v4_10")]
13285    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13286    pub fn gtk_column_view_sorter_get_primary_sort_order(
13287        self_: *mut GtkColumnViewSorter,
13288    ) -> GtkSortType;
13289
13290    //=========================================================================
13291    // GtkComboBox
13292    //=========================================================================
13293    pub fn gtk_combo_box_get_type() -> GType;
13294    pub fn gtk_combo_box_new() -> *mut GtkWidget;
13295    pub fn gtk_combo_box_new_with_entry() -> *mut GtkWidget;
13296    pub fn gtk_combo_box_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
13297    pub fn gtk_combo_box_new_with_model_and_entry(model: *mut GtkTreeModel) -> *mut GtkWidget;
13298    pub fn gtk_combo_box_get_active(combo_box: *mut GtkComboBox) -> c_int;
13299    pub fn gtk_combo_box_get_active_id(combo_box: *mut GtkComboBox) -> *const c_char;
13300    pub fn gtk_combo_box_get_active_iter(
13301        combo_box: *mut GtkComboBox,
13302        iter: *mut GtkTreeIter,
13303    ) -> gboolean;
13304    pub fn gtk_combo_box_get_button_sensitivity(combo_box: *mut GtkComboBox) -> GtkSensitivityType;
13305    pub fn gtk_combo_box_get_child(combo_box: *mut GtkComboBox) -> *mut GtkWidget;
13306    pub fn gtk_combo_box_get_entry_text_column(combo_box: *mut GtkComboBox) -> c_int;
13307    pub fn gtk_combo_box_get_has_entry(combo_box: *mut GtkComboBox) -> gboolean;
13308    pub fn gtk_combo_box_get_id_column(combo_box: *mut GtkComboBox) -> c_int;
13309    pub fn gtk_combo_box_get_model(combo_box: *mut GtkComboBox) -> *mut GtkTreeModel;
13310    pub fn gtk_combo_box_get_popup_fixed_width(combo_box: *mut GtkComboBox) -> gboolean;
13311    pub fn gtk_combo_box_get_row_separator_func(
13312        combo_box: *mut GtkComboBox,
13313    ) -> GtkTreeViewRowSeparatorFunc;
13314    pub fn gtk_combo_box_popdown(combo_box: *mut GtkComboBox);
13315    pub fn gtk_combo_box_popup(combo_box: *mut GtkComboBox);
13316    pub fn gtk_combo_box_popup_for_device(combo_box: *mut GtkComboBox, device: *mut gdk::GdkDevice);
13317    pub fn gtk_combo_box_set_active(combo_box: *mut GtkComboBox, index_: c_int);
13318    pub fn gtk_combo_box_set_active_id(
13319        combo_box: *mut GtkComboBox,
13320        active_id: *const c_char,
13321    ) -> gboolean;
13322    pub fn gtk_combo_box_set_active_iter(combo_box: *mut GtkComboBox, iter: *mut GtkTreeIter);
13323    pub fn gtk_combo_box_set_button_sensitivity(
13324        combo_box: *mut GtkComboBox,
13325        sensitivity: GtkSensitivityType,
13326    );
13327    pub fn gtk_combo_box_set_child(combo_box: *mut GtkComboBox, child: *mut GtkWidget);
13328    pub fn gtk_combo_box_set_entry_text_column(combo_box: *mut GtkComboBox, text_column: c_int);
13329    pub fn gtk_combo_box_set_id_column(combo_box: *mut GtkComboBox, id_column: c_int);
13330    pub fn gtk_combo_box_set_model(combo_box: *mut GtkComboBox, model: *mut GtkTreeModel);
13331    pub fn gtk_combo_box_set_popup_fixed_width(combo_box: *mut GtkComboBox, fixed: gboolean);
13332    pub fn gtk_combo_box_set_row_separator_func(
13333        combo_box: *mut GtkComboBox,
13334        func: GtkTreeViewRowSeparatorFunc,
13335        data: gpointer,
13336        destroy: glib::GDestroyNotify,
13337    );
13338
13339    //=========================================================================
13340    // GtkComboBoxText
13341    //=========================================================================
13342    pub fn gtk_combo_box_text_get_type() -> GType;
13343    pub fn gtk_combo_box_text_new() -> *mut GtkWidget;
13344    pub fn gtk_combo_box_text_new_with_entry() -> *mut GtkWidget;
13345    pub fn gtk_combo_box_text_append(
13346        combo_box: *mut GtkComboBoxText,
13347        id: *const c_char,
13348        text: *const c_char,
13349    );
13350    pub fn gtk_combo_box_text_append_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
13351    pub fn gtk_combo_box_text_get_active_text(combo_box: *mut GtkComboBoxText) -> *mut c_char;
13352    pub fn gtk_combo_box_text_insert(
13353        combo_box: *mut GtkComboBoxText,
13354        position: c_int,
13355        id: *const c_char,
13356        text: *const c_char,
13357    );
13358    pub fn gtk_combo_box_text_insert_text(
13359        combo_box: *mut GtkComboBoxText,
13360        position: c_int,
13361        text: *const c_char,
13362    );
13363    pub fn gtk_combo_box_text_prepend(
13364        combo_box: *mut GtkComboBoxText,
13365        id: *const c_char,
13366        text: *const c_char,
13367    );
13368    pub fn gtk_combo_box_text_prepend_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
13369    pub fn gtk_combo_box_text_remove(combo_box: *mut GtkComboBoxText, position: c_int);
13370    pub fn gtk_combo_box_text_remove_all(combo_box: *mut GtkComboBoxText);
13371
13372    //=========================================================================
13373    // GtkConstantExpression
13374    //=========================================================================
13375    pub fn gtk_constant_expression_get_type() -> GType;
13376    pub fn gtk_constant_expression_new(value_type: GType, ...) -> *mut GtkConstantExpression;
13377    pub fn gtk_constant_expression_new_for_value(
13378        value: *const gobject::GValue,
13379    ) -> *mut GtkConstantExpression;
13380    pub fn gtk_constant_expression_get_value(
13381        expression: *mut GtkConstantExpression,
13382    ) -> *const gobject::GValue;
13383
13384    //=========================================================================
13385    // GtkConstraint
13386    //=========================================================================
13387    pub fn gtk_constraint_get_type() -> GType;
13388    pub fn gtk_constraint_new(
13389        target: *mut GtkConstraintTarget,
13390        target_attribute: GtkConstraintAttribute,
13391        relation: GtkConstraintRelation,
13392        source: *mut GtkConstraintTarget,
13393        source_attribute: GtkConstraintAttribute,
13394        multiplier: c_double,
13395        constant: c_double,
13396        strength: c_int,
13397    ) -> *mut GtkConstraint;
13398    pub fn gtk_constraint_new_constant(
13399        target: *mut GtkConstraintTarget,
13400        target_attribute: GtkConstraintAttribute,
13401        relation: GtkConstraintRelation,
13402        constant: c_double,
13403        strength: c_int,
13404    ) -> *mut GtkConstraint;
13405    pub fn gtk_constraint_get_constant(constraint: *mut GtkConstraint) -> c_double;
13406    pub fn gtk_constraint_get_multiplier(constraint: *mut GtkConstraint) -> c_double;
13407    pub fn gtk_constraint_get_relation(constraint: *mut GtkConstraint) -> GtkConstraintRelation;
13408    pub fn gtk_constraint_get_source(constraint: *mut GtkConstraint) -> *mut GtkConstraintTarget;
13409    pub fn gtk_constraint_get_source_attribute(
13410        constraint: *mut GtkConstraint,
13411    ) -> GtkConstraintAttribute;
13412    pub fn gtk_constraint_get_strength(constraint: *mut GtkConstraint) -> c_int;
13413    pub fn gtk_constraint_get_target(constraint: *mut GtkConstraint) -> *mut GtkConstraintTarget;
13414    pub fn gtk_constraint_get_target_attribute(
13415        constraint: *mut GtkConstraint,
13416    ) -> GtkConstraintAttribute;
13417    pub fn gtk_constraint_is_attached(constraint: *mut GtkConstraint) -> gboolean;
13418    pub fn gtk_constraint_is_constant(constraint: *mut GtkConstraint) -> gboolean;
13419    pub fn gtk_constraint_is_required(constraint: *mut GtkConstraint) -> gboolean;
13420
13421    //=========================================================================
13422    // GtkConstraintGuide
13423    //=========================================================================
13424    pub fn gtk_constraint_guide_get_type() -> GType;
13425    pub fn gtk_constraint_guide_new() -> *mut GtkConstraintGuide;
13426    pub fn gtk_constraint_guide_get_max_size(
13427        guide: *mut GtkConstraintGuide,
13428        width: *mut c_int,
13429        height: *mut c_int,
13430    );
13431    pub fn gtk_constraint_guide_get_min_size(
13432        guide: *mut GtkConstraintGuide,
13433        width: *mut c_int,
13434        height: *mut c_int,
13435    );
13436    pub fn gtk_constraint_guide_get_name(guide: *mut GtkConstraintGuide) -> *const c_char;
13437    pub fn gtk_constraint_guide_get_nat_size(
13438        guide: *mut GtkConstraintGuide,
13439        width: *mut c_int,
13440        height: *mut c_int,
13441    );
13442    pub fn gtk_constraint_guide_get_strength(
13443        guide: *mut GtkConstraintGuide,
13444    ) -> GtkConstraintStrength;
13445    pub fn gtk_constraint_guide_set_max_size(
13446        guide: *mut GtkConstraintGuide,
13447        width: c_int,
13448        height: c_int,
13449    );
13450    pub fn gtk_constraint_guide_set_min_size(
13451        guide: *mut GtkConstraintGuide,
13452        width: c_int,
13453        height: c_int,
13454    );
13455    pub fn gtk_constraint_guide_set_name(guide: *mut GtkConstraintGuide, name: *const c_char);
13456    pub fn gtk_constraint_guide_set_nat_size(
13457        guide: *mut GtkConstraintGuide,
13458        width: c_int,
13459        height: c_int,
13460    );
13461    pub fn gtk_constraint_guide_set_strength(
13462        guide: *mut GtkConstraintGuide,
13463        strength: GtkConstraintStrength,
13464    );
13465
13466    //=========================================================================
13467    // GtkConstraintLayout
13468    //=========================================================================
13469    pub fn gtk_constraint_layout_get_type() -> GType;
13470    pub fn gtk_constraint_layout_new() -> *mut GtkLayoutManager;
13471    pub fn gtk_constraint_layout_add_constraint(
13472        layout: *mut GtkConstraintLayout,
13473        constraint: *mut GtkConstraint,
13474    );
13475    pub fn gtk_constraint_layout_add_constraints_from_description(
13476        layout: *mut GtkConstraintLayout,
13477        lines: *const *const c_char,
13478        n_lines: size_t,
13479        hspacing: c_int,
13480        vspacing: c_int,
13481        error: *mut *mut glib::GError,
13482        first_view: *const c_char,
13483        ...
13484    ) -> *mut glib::GList;
13485    pub fn gtk_constraint_layout_add_constraints_from_descriptionv(
13486        layout: *mut GtkConstraintLayout,
13487        lines: *const *const c_char,
13488        n_lines: size_t,
13489        hspacing: c_int,
13490        vspacing: c_int,
13491        views: *mut glib::GHashTable,
13492        error: *mut *mut glib::GError,
13493    ) -> *mut glib::GList;
13494    pub fn gtk_constraint_layout_add_guide(
13495        layout: *mut GtkConstraintLayout,
13496        guide: *mut GtkConstraintGuide,
13497    );
13498    pub fn gtk_constraint_layout_observe_constraints(
13499        layout: *mut GtkConstraintLayout,
13500    ) -> *mut gio::GListModel;
13501    pub fn gtk_constraint_layout_observe_guides(
13502        layout: *mut GtkConstraintLayout,
13503    ) -> *mut gio::GListModel;
13504    pub fn gtk_constraint_layout_remove_all_constraints(layout: *mut GtkConstraintLayout);
13505    pub fn gtk_constraint_layout_remove_constraint(
13506        layout: *mut GtkConstraintLayout,
13507        constraint: *mut GtkConstraint,
13508    );
13509    pub fn gtk_constraint_layout_remove_guide(
13510        layout: *mut GtkConstraintLayout,
13511        guide: *mut GtkConstraintGuide,
13512    );
13513
13514    //=========================================================================
13515    // GtkConstraintLayoutChild
13516    //=========================================================================
13517    pub fn gtk_constraint_layout_child_get_type() -> GType;
13518
13519    //=========================================================================
13520    // GtkCssProvider
13521    //=========================================================================
13522    pub fn gtk_css_provider_get_type() -> GType;
13523    pub fn gtk_css_provider_new() -> *mut GtkCssProvider;
13524    #[cfg(feature = "v4_12")]
13525    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13526    pub fn gtk_css_provider_load_from_bytes(
13527        css_provider: *mut GtkCssProvider,
13528        data: *mut glib::GBytes,
13529    );
13530    pub fn gtk_css_provider_load_from_data(
13531        css_provider: *mut GtkCssProvider,
13532        data: *const c_char,
13533        length: ssize_t,
13534    );
13535    pub fn gtk_css_provider_load_from_file(
13536        css_provider: *mut GtkCssProvider,
13537        file: *mut gio::GFile,
13538    );
13539    pub fn gtk_css_provider_load_from_path(css_provider: *mut GtkCssProvider, path: *const c_char);
13540    pub fn gtk_css_provider_load_from_resource(
13541        css_provider: *mut GtkCssProvider,
13542        resource_path: *const c_char,
13543    );
13544    #[cfg(feature = "v4_12")]
13545    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13546    pub fn gtk_css_provider_load_from_string(
13547        css_provider: *mut GtkCssProvider,
13548        string: *const c_char,
13549    );
13550    pub fn gtk_css_provider_load_named(
13551        provider: *mut GtkCssProvider,
13552        name: *const c_char,
13553        variant: *const c_char,
13554    );
13555    pub fn gtk_css_provider_to_string(provider: *mut GtkCssProvider) -> *mut c_char;
13556
13557    //=========================================================================
13558    // GtkCustomFilter
13559    //=========================================================================
13560    pub fn gtk_custom_filter_get_type() -> GType;
13561    pub fn gtk_custom_filter_new(
13562        match_func: GtkCustomFilterFunc,
13563        user_data: gpointer,
13564        user_destroy: glib::GDestroyNotify,
13565    ) -> *mut GtkCustomFilter;
13566    pub fn gtk_custom_filter_set_filter_func(
13567        self_: *mut GtkCustomFilter,
13568        match_func: GtkCustomFilterFunc,
13569        user_data: gpointer,
13570        user_destroy: glib::GDestroyNotify,
13571    );
13572
13573    //=========================================================================
13574    // GtkCustomLayout
13575    //=========================================================================
13576    pub fn gtk_custom_layout_get_type() -> GType;
13577    pub fn gtk_custom_layout_new(
13578        request_mode: GtkCustomRequestModeFunc,
13579        measure: GtkCustomMeasureFunc,
13580        allocate: GtkCustomAllocateFunc,
13581    ) -> *mut GtkLayoutManager;
13582
13583    //=========================================================================
13584    // GtkCustomSorter
13585    //=========================================================================
13586    pub fn gtk_custom_sorter_get_type() -> GType;
13587    pub fn gtk_custom_sorter_new(
13588        sort_func: glib::GCompareDataFunc,
13589        user_data: gpointer,
13590        user_destroy: glib::GDestroyNotify,
13591    ) -> *mut GtkCustomSorter;
13592    pub fn gtk_custom_sorter_set_sort_func(
13593        self_: *mut GtkCustomSorter,
13594        sort_func: glib::GCompareDataFunc,
13595        user_data: gpointer,
13596        user_destroy: glib::GDestroyNotify,
13597    );
13598
13599    //=========================================================================
13600    // GtkDialog
13601    //=========================================================================
13602    pub fn gtk_dialog_get_type() -> GType;
13603    pub fn gtk_dialog_new() -> *mut GtkWidget;
13604    pub fn gtk_dialog_new_with_buttons(
13605        title: *const c_char,
13606        parent: *mut GtkWindow,
13607        flags: GtkDialogFlags,
13608        first_button_text: *const c_char,
13609        ...
13610    ) -> *mut GtkWidget;
13611    pub fn gtk_dialog_add_action_widget(
13612        dialog: *mut GtkDialog,
13613        child: *mut GtkWidget,
13614        response_id: GtkResponseType,
13615    );
13616    pub fn gtk_dialog_add_button(
13617        dialog: *mut GtkDialog,
13618        button_text: *const c_char,
13619        response_id: GtkResponseType,
13620    ) -> *mut GtkWidget;
13621    pub fn gtk_dialog_add_buttons(dialog: *mut GtkDialog, first_button_text: *const c_char, ...);
13622    pub fn gtk_dialog_get_content_area(dialog: *mut GtkDialog) -> *mut GtkBox;
13623    pub fn gtk_dialog_get_header_bar(dialog: *mut GtkDialog) -> *mut GtkHeaderBar;
13624    pub fn gtk_dialog_get_response_for_widget(
13625        dialog: *mut GtkDialog,
13626        widget: *mut GtkWidget,
13627    ) -> c_int;
13628    pub fn gtk_dialog_get_widget_for_response(
13629        dialog: *mut GtkDialog,
13630        response_id: GtkResponseType,
13631    ) -> *mut GtkWidget;
13632    pub fn gtk_dialog_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
13633    pub fn gtk_dialog_set_default_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
13634    pub fn gtk_dialog_set_response_sensitive(
13635        dialog: *mut GtkDialog,
13636        response_id: GtkResponseType,
13637        setting: gboolean,
13638    );
13639
13640    //=========================================================================
13641    // GtkDirectoryList
13642    //=========================================================================
13643    pub fn gtk_directory_list_get_type() -> GType;
13644    pub fn gtk_directory_list_new(
13645        attributes: *const c_char,
13646        file: *mut gio::GFile,
13647    ) -> *mut GtkDirectoryList;
13648    pub fn gtk_directory_list_get_attributes(self_: *mut GtkDirectoryList) -> *const c_char;
13649    pub fn gtk_directory_list_get_error(self_: *mut GtkDirectoryList) -> *const glib::GError;
13650    pub fn gtk_directory_list_get_file(self_: *mut GtkDirectoryList) -> *mut gio::GFile;
13651    pub fn gtk_directory_list_get_io_priority(self_: *mut GtkDirectoryList) -> c_int;
13652    pub fn gtk_directory_list_get_monitored(self_: *mut GtkDirectoryList) -> gboolean;
13653    pub fn gtk_directory_list_is_loading(self_: *mut GtkDirectoryList) -> gboolean;
13654    pub fn gtk_directory_list_set_attributes(
13655        self_: *mut GtkDirectoryList,
13656        attributes: *const c_char,
13657    );
13658    pub fn gtk_directory_list_set_file(self_: *mut GtkDirectoryList, file: *mut gio::GFile);
13659    pub fn gtk_directory_list_set_io_priority(self_: *mut GtkDirectoryList, io_priority: c_int);
13660    pub fn gtk_directory_list_set_monitored(self_: *mut GtkDirectoryList, monitored: gboolean);
13661
13662    //=========================================================================
13663    // GtkDragIcon
13664    //=========================================================================
13665    pub fn gtk_drag_icon_get_type() -> GType;
13666    pub fn gtk_drag_icon_get_for_drag(drag: *mut gdk::GdkDrag) -> *mut GtkWidget;
13667    pub fn gtk_drag_icon_create_widget_for_value(value: *const gobject::GValue) -> *mut GtkWidget;
13668    pub fn gtk_drag_icon_set_from_paintable(
13669        drag: *mut gdk::GdkDrag,
13670        paintable: *mut gdk::GdkPaintable,
13671        hot_x: c_int,
13672        hot_y: c_int,
13673    );
13674    pub fn gtk_drag_icon_get_child(self_: *mut GtkDragIcon) -> *mut GtkWidget;
13675    pub fn gtk_drag_icon_set_child(self_: *mut GtkDragIcon, child: *mut GtkWidget);
13676
13677    //=========================================================================
13678    // GtkDragSource
13679    //=========================================================================
13680    pub fn gtk_drag_source_get_type() -> GType;
13681    pub fn gtk_drag_source_new() -> *mut GtkDragSource;
13682    pub fn gtk_drag_source_drag_cancel(source: *mut GtkDragSource);
13683    pub fn gtk_drag_source_get_actions(source: *mut GtkDragSource) -> gdk::GdkDragAction;
13684    pub fn gtk_drag_source_get_content(source: *mut GtkDragSource) -> *mut gdk::GdkContentProvider;
13685    pub fn gtk_drag_source_get_drag(source: *mut GtkDragSource) -> *mut gdk::GdkDrag;
13686    pub fn gtk_drag_source_set_actions(source: *mut GtkDragSource, actions: gdk::GdkDragAction);
13687    pub fn gtk_drag_source_set_content(
13688        source: *mut GtkDragSource,
13689        content: *mut gdk::GdkContentProvider,
13690    );
13691    pub fn gtk_drag_source_set_icon(
13692        source: *mut GtkDragSource,
13693        paintable: *mut gdk::GdkPaintable,
13694        hot_x: c_int,
13695        hot_y: c_int,
13696    );
13697
13698    //=========================================================================
13699    // GtkDrawingArea
13700    //=========================================================================
13701    pub fn gtk_drawing_area_get_type() -> GType;
13702    pub fn gtk_drawing_area_new() -> *mut GtkWidget;
13703    pub fn gtk_drawing_area_get_content_height(self_: *mut GtkDrawingArea) -> c_int;
13704    pub fn gtk_drawing_area_get_content_width(self_: *mut GtkDrawingArea) -> c_int;
13705    pub fn gtk_drawing_area_set_content_height(self_: *mut GtkDrawingArea, height: c_int);
13706    pub fn gtk_drawing_area_set_content_width(self_: *mut GtkDrawingArea, width: c_int);
13707    pub fn gtk_drawing_area_set_draw_func(
13708        self_: *mut GtkDrawingArea,
13709        draw_func: GtkDrawingAreaDrawFunc,
13710        user_data: gpointer,
13711        destroy: glib::GDestroyNotify,
13712    );
13713
13714    //=========================================================================
13715    // GtkDropControllerMotion
13716    //=========================================================================
13717    pub fn gtk_drop_controller_motion_get_type() -> GType;
13718    pub fn gtk_drop_controller_motion_new() -> *mut GtkEventController;
13719    pub fn gtk_drop_controller_motion_contains_pointer(
13720        self_: *mut GtkDropControllerMotion,
13721    ) -> gboolean;
13722    pub fn gtk_drop_controller_motion_get_drop(
13723        self_: *mut GtkDropControllerMotion,
13724    ) -> *mut gdk::GdkDrop;
13725    pub fn gtk_drop_controller_motion_is_pointer(self_: *mut GtkDropControllerMotion) -> gboolean;
13726
13727    //=========================================================================
13728    // GtkDropDown
13729    //=========================================================================
13730    pub fn gtk_drop_down_get_type() -> GType;
13731    pub fn gtk_drop_down_new(
13732        model: *mut gio::GListModel,
13733        expression: *mut GtkExpression,
13734    ) -> *mut GtkWidget;
13735    pub fn gtk_drop_down_new_from_strings(strings: *const *const c_char) -> *mut GtkWidget;
13736    pub fn gtk_drop_down_get_enable_search(self_: *mut GtkDropDown) -> gboolean;
13737    pub fn gtk_drop_down_get_expression(self_: *mut GtkDropDown) -> *mut GtkExpression;
13738    pub fn gtk_drop_down_get_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13739    #[cfg(feature = "v4_12")]
13740    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13741    pub fn gtk_drop_down_get_header_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13742    pub fn gtk_drop_down_get_list_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13743    pub fn gtk_drop_down_get_model(self_: *mut GtkDropDown) -> *mut gio::GListModel;
13744    #[cfg(feature = "v4_12")]
13745    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13746    pub fn gtk_drop_down_get_search_match_mode(self_: *mut GtkDropDown)
13747        -> GtkStringFilterMatchMode;
13748    pub fn gtk_drop_down_get_selected(self_: *mut GtkDropDown) -> c_uint;
13749    pub fn gtk_drop_down_get_selected_item(self_: *mut GtkDropDown) -> *mut gobject::GObject;
13750    #[cfg(feature = "v4_6")]
13751    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13752    pub fn gtk_drop_down_get_show_arrow(self_: *mut GtkDropDown) -> gboolean;
13753    pub fn gtk_drop_down_set_enable_search(self_: *mut GtkDropDown, enable_search: gboolean);
13754    pub fn gtk_drop_down_set_expression(self_: *mut GtkDropDown, expression: *mut GtkExpression);
13755    pub fn gtk_drop_down_set_factory(self_: *mut GtkDropDown, factory: *mut GtkListItemFactory);
13756    #[cfg(feature = "v4_12")]
13757    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13758    pub fn gtk_drop_down_set_header_factory(
13759        self_: *mut GtkDropDown,
13760        factory: *mut GtkListItemFactory,
13761    );
13762    pub fn gtk_drop_down_set_list_factory(
13763        self_: *mut GtkDropDown,
13764        factory: *mut GtkListItemFactory,
13765    );
13766    pub fn gtk_drop_down_set_model(self_: *mut GtkDropDown, model: *mut gio::GListModel);
13767    #[cfg(feature = "v4_12")]
13768    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13769    pub fn gtk_drop_down_set_search_match_mode(
13770        self_: *mut GtkDropDown,
13771        search_match_mode: GtkStringFilterMatchMode,
13772    );
13773    pub fn gtk_drop_down_set_selected(self_: *mut GtkDropDown, position: c_uint);
13774    #[cfg(feature = "v4_6")]
13775    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13776    pub fn gtk_drop_down_set_show_arrow(self_: *mut GtkDropDown, show_arrow: gboolean);
13777
13778    //=========================================================================
13779    // GtkDropTarget
13780    //=========================================================================
13781    pub fn gtk_drop_target_get_type() -> GType;
13782    pub fn gtk_drop_target_new(type_: GType, actions: gdk::GdkDragAction) -> *mut GtkDropTarget;
13783    pub fn gtk_drop_target_get_actions(self_: *mut GtkDropTarget) -> gdk::GdkDragAction;
13784    #[cfg(feature = "v4_4")]
13785    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
13786    pub fn gtk_drop_target_get_current_drop(self_: *mut GtkDropTarget) -> *mut gdk::GdkDrop;
13787    pub fn gtk_drop_target_get_drop(self_: *mut GtkDropTarget) -> *mut gdk::GdkDrop;
13788    pub fn gtk_drop_target_get_formats(self_: *mut GtkDropTarget) -> *mut gdk::GdkContentFormats;
13789    pub fn gtk_drop_target_get_gtypes(
13790        self_: *mut GtkDropTarget,
13791        n_types: *mut size_t,
13792    ) -> *const GType;
13793    pub fn gtk_drop_target_get_preload(self_: *mut GtkDropTarget) -> gboolean;
13794    pub fn gtk_drop_target_get_value(self_: *mut GtkDropTarget) -> *const gobject::GValue;
13795    pub fn gtk_drop_target_reject(self_: *mut GtkDropTarget);
13796    pub fn gtk_drop_target_set_actions(self_: *mut GtkDropTarget, actions: gdk::GdkDragAction);
13797    pub fn gtk_drop_target_set_gtypes(
13798        self_: *mut GtkDropTarget,
13799        types: *mut GType,
13800        n_types: size_t,
13801    );
13802    pub fn gtk_drop_target_set_preload(self_: *mut GtkDropTarget, preload: gboolean);
13803
13804    //=========================================================================
13805    // GtkDropTargetAsync
13806    //=========================================================================
13807    pub fn gtk_drop_target_async_get_type() -> GType;
13808    pub fn gtk_drop_target_async_new(
13809        formats: *mut gdk::GdkContentFormats,
13810        actions: gdk::GdkDragAction,
13811    ) -> *mut GtkDropTargetAsync;
13812    pub fn gtk_drop_target_async_get_actions(self_: *mut GtkDropTargetAsync) -> gdk::GdkDragAction;
13813    pub fn gtk_drop_target_async_get_formats(
13814        self_: *mut GtkDropTargetAsync,
13815    ) -> *mut gdk::GdkContentFormats;
13816    pub fn gtk_drop_target_async_reject_drop(
13817        self_: *mut GtkDropTargetAsync,
13818        drop: *mut gdk::GdkDrop,
13819    );
13820    pub fn gtk_drop_target_async_set_actions(
13821        self_: *mut GtkDropTargetAsync,
13822        actions: gdk::GdkDragAction,
13823    );
13824    pub fn gtk_drop_target_async_set_formats(
13825        self_: *mut GtkDropTargetAsync,
13826        formats: *mut gdk::GdkContentFormats,
13827    );
13828
13829    //=========================================================================
13830    // GtkEditableLabel
13831    //=========================================================================
13832    pub fn gtk_editable_label_get_type() -> GType;
13833    pub fn gtk_editable_label_new(str: *const c_char) -> *mut GtkWidget;
13834    pub fn gtk_editable_label_get_editing(self_: *mut GtkEditableLabel) -> gboolean;
13835    pub fn gtk_editable_label_start_editing(self_: *mut GtkEditableLabel);
13836    pub fn gtk_editable_label_stop_editing(self_: *mut GtkEditableLabel, commit: gboolean);
13837
13838    //=========================================================================
13839    // GtkEmojiChooser
13840    //=========================================================================
13841    pub fn gtk_emoji_chooser_get_type() -> GType;
13842    pub fn gtk_emoji_chooser_new() -> *mut GtkWidget;
13843
13844    //=========================================================================
13845    // GtkEntry
13846    //=========================================================================
13847    pub fn gtk_entry_get_type() -> GType;
13848    pub fn gtk_entry_new() -> *mut GtkWidget;
13849    pub fn gtk_entry_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
13850    pub fn gtk_entry_get_activates_default(entry: *mut GtkEntry) -> gboolean;
13851    pub fn gtk_entry_get_alignment(entry: *mut GtkEntry) -> c_float;
13852    pub fn gtk_entry_get_attributes(entry: *mut GtkEntry) -> *mut pango::PangoAttrList;
13853    pub fn gtk_entry_get_buffer(entry: *mut GtkEntry) -> *mut GtkEntryBuffer;
13854    pub fn gtk_entry_get_completion(entry: *mut GtkEntry) -> *mut GtkEntryCompletion;
13855    pub fn gtk_entry_get_current_icon_drag_source(entry: *mut GtkEntry) -> c_int;
13856    pub fn gtk_entry_get_extra_menu(entry: *mut GtkEntry) -> *mut gio::GMenuModel;
13857    pub fn gtk_entry_get_has_frame(entry: *mut GtkEntry) -> gboolean;
13858    pub fn gtk_entry_get_icon_activatable(
13859        entry: *mut GtkEntry,
13860        icon_pos: GtkEntryIconPosition,
13861    ) -> gboolean;
13862    pub fn gtk_entry_get_icon_area(
13863        entry: *mut GtkEntry,
13864        icon_pos: GtkEntryIconPosition,
13865        icon_area: *mut gdk::GdkRectangle,
13866    );
13867    pub fn gtk_entry_get_icon_at_pos(entry: *mut GtkEntry, x: c_int, y: c_int) -> c_int;
13868    pub fn gtk_entry_get_icon_gicon(
13869        entry: *mut GtkEntry,
13870        icon_pos: GtkEntryIconPosition,
13871    ) -> *mut gio::GIcon;
13872    pub fn gtk_entry_get_icon_name(
13873        entry: *mut GtkEntry,
13874        icon_pos: GtkEntryIconPosition,
13875    ) -> *const c_char;
13876    pub fn gtk_entry_get_icon_paintable(
13877        entry: *mut GtkEntry,
13878        icon_pos: GtkEntryIconPosition,
13879    ) -> *mut gdk::GdkPaintable;
13880    pub fn gtk_entry_get_icon_sensitive(
13881        entry: *mut GtkEntry,
13882        icon_pos: GtkEntryIconPosition,
13883    ) -> gboolean;
13884    pub fn gtk_entry_get_icon_storage_type(
13885        entry: *mut GtkEntry,
13886        icon_pos: GtkEntryIconPosition,
13887    ) -> GtkImageType;
13888    pub fn gtk_entry_get_icon_tooltip_markup(
13889        entry: *mut GtkEntry,
13890        icon_pos: GtkEntryIconPosition,
13891    ) -> *mut c_char;
13892    pub fn gtk_entry_get_icon_tooltip_text(
13893        entry: *mut GtkEntry,
13894        icon_pos: GtkEntryIconPosition,
13895    ) -> *mut c_char;
13896    pub fn gtk_entry_get_input_hints(entry: *mut GtkEntry) -> GtkInputHints;
13897    pub fn gtk_entry_get_input_purpose(entry: *mut GtkEntry) -> GtkInputPurpose;
13898    pub fn gtk_entry_get_invisible_char(entry: *mut GtkEntry) -> u32;
13899    pub fn gtk_entry_get_max_length(entry: *mut GtkEntry) -> c_int;
13900    #[cfg(feature = "v4_20")]
13901    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
13902    pub fn gtk_entry_get_menu_entry_icon_text(
13903        entry: *mut GtkEntry,
13904        icon_pos: GtkEntryIconPosition,
13905    ) -> *const c_char;
13906    pub fn gtk_entry_get_overwrite_mode(entry: *mut GtkEntry) -> gboolean;
13907    pub fn gtk_entry_get_placeholder_text(entry: *mut GtkEntry) -> *const c_char;
13908    pub fn gtk_entry_get_progress_fraction(entry: *mut GtkEntry) -> c_double;
13909    pub fn gtk_entry_get_progress_pulse_step(entry: *mut GtkEntry) -> c_double;
13910    pub fn gtk_entry_get_tabs(entry: *mut GtkEntry) -> *mut pango::PangoTabArray;
13911    pub fn gtk_entry_get_text_length(entry: *mut GtkEntry) -> u16;
13912    pub fn gtk_entry_get_visibility(entry: *mut GtkEntry) -> gboolean;
13913    pub fn gtk_entry_grab_focus_without_selecting(entry: *mut GtkEntry) -> gboolean;
13914    pub fn gtk_entry_progress_pulse(entry: *mut GtkEntry);
13915    pub fn gtk_entry_reset_im_context(entry: *mut GtkEntry);
13916    pub fn gtk_entry_set_activates_default(entry: *mut GtkEntry, setting: gboolean);
13917    pub fn gtk_entry_set_alignment(entry: *mut GtkEntry, xalign: c_float);
13918    pub fn gtk_entry_set_attributes(entry: *mut GtkEntry, attrs: *mut pango::PangoAttrList);
13919    pub fn gtk_entry_set_buffer(entry: *mut GtkEntry, buffer: *mut GtkEntryBuffer);
13920    pub fn gtk_entry_set_completion(entry: *mut GtkEntry, completion: *mut GtkEntryCompletion);
13921    pub fn gtk_entry_set_extra_menu(entry: *mut GtkEntry, model: *mut gio::GMenuModel);
13922    pub fn gtk_entry_set_has_frame(entry: *mut GtkEntry, setting: gboolean);
13923    pub fn gtk_entry_set_icon_activatable(
13924        entry: *mut GtkEntry,
13925        icon_pos: GtkEntryIconPosition,
13926        activatable: gboolean,
13927    );
13928    pub fn gtk_entry_set_icon_drag_source(
13929        entry: *mut GtkEntry,
13930        icon_pos: GtkEntryIconPosition,
13931        provider: *mut gdk::GdkContentProvider,
13932        actions: gdk::GdkDragAction,
13933    );
13934    pub fn gtk_entry_set_icon_from_gicon(
13935        entry: *mut GtkEntry,
13936        icon_pos: GtkEntryIconPosition,
13937        icon: *mut gio::GIcon,
13938    );
13939    pub fn gtk_entry_set_icon_from_icon_name(
13940        entry: *mut GtkEntry,
13941        icon_pos: GtkEntryIconPosition,
13942        icon_name: *const c_char,
13943    );
13944    pub fn gtk_entry_set_icon_from_paintable(
13945        entry: *mut GtkEntry,
13946        icon_pos: GtkEntryIconPosition,
13947        paintable: *mut gdk::GdkPaintable,
13948    );
13949    pub fn gtk_entry_set_icon_sensitive(
13950        entry: *mut GtkEntry,
13951        icon_pos: GtkEntryIconPosition,
13952        sensitive: gboolean,
13953    );
13954    pub fn gtk_entry_set_icon_tooltip_markup(
13955        entry: *mut GtkEntry,
13956        icon_pos: GtkEntryIconPosition,
13957        tooltip: *const c_char,
13958    );
13959    pub fn gtk_entry_set_icon_tooltip_text(
13960        entry: *mut GtkEntry,
13961        icon_pos: GtkEntryIconPosition,
13962        tooltip: *const c_char,
13963    );
13964    pub fn gtk_entry_set_input_hints(entry: *mut GtkEntry, hints: GtkInputHints);
13965    pub fn gtk_entry_set_input_purpose(entry: *mut GtkEntry, purpose: GtkInputPurpose);
13966    pub fn gtk_entry_set_invisible_char(entry: *mut GtkEntry, ch: u32);
13967    pub fn gtk_entry_set_max_length(entry: *mut GtkEntry, max: c_int);
13968    #[cfg(feature = "v4_20")]
13969    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
13970    pub fn gtk_entry_set_menu_entry_icon_text(
13971        entry: *mut GtkEntry,
13972        icon_pos: GtkEntryIconPosition,
13973        text: *const c_char,
13974    );
13975    pub fn gtk_entry_set_overwrite_mode(entry: *mut GtkEntry, overwrite: gboolean);
13976    pub fn gtk_entry_set_placeholder_text(entry: *mut GtkEntry, text: *const c_char);
13977    pub fn gtk_entry_set_progress_fraction(entry: *mut GtkEntry, fraction: c_double);
13978    pub fn gtk_entry_set_progress_pulse_step(entry: *mut GtkEntry, fraction: c_double);
13979    pub fn gtk_entry_set_tabs(entry: *mut GtkEntry, tabs: *mut pango::PangoTabArray);
13980    pub fn gtk_entry_set_visibility(entry: *mut GtkEntry, visible: gboolean);
13981    pub fn gtk_entry_unset_invisible_char(entry: *mut GtkEntry);
13982
13983    //=========================================================================
13984    // GtkEntryBuffer
13985    //=========================================================================
13986    pub fn gtk_entry_buffer_get_type() -> GType;
13987    pub fn gtk_entry_buffer_new(
13988        initial_chars: *const c_char,
13989        n_initial_chars: c_int,
13990    ) -> *mut GtkEntryBuffer;
13991    pub fn gtk_entry_buffer_delete_text(
13992        buffer: *mut GtkEntryBuffer,
13993        position: c_uint,
13994        n_chars: c_int,
13995    ) -> c_uint;
13996    pub fn gtk_entry_buffer_emit_deleted_text(
13997        buffer: *mut GtkEntryBuffer,
13998        position: c_uint,
13999        n_chars: c_uint,
14000    );
14001    pub fn gtk_entry_buffer_emit_inserted_text(
14002        buffer: *mut GtkEntryBuffer,
14003        position: c_uint,
14004        chars: *const c_char,
14005        n_chars: c_uint,
14006    );
14007    pub fn gtk_entry_buffer_get_bytes(buffer: *mut GtkEntryBuffer) -> size_t;
14008    pub fn gtk_entry_buffer_get_length(buffer: *mut GtkEntryBuffer) -> c_uint;
14009    pub fn gtk_entry_buffer_get_max_length(buffer: *mut GtkEntryBuffer) -> c_int;
14010    pub fn gtk_entry_buffer_get_text(buffer: *mut GtkEntryBuffer) -> *const c_char;
14011    pub fn gtk_entry_buffer_insert_text(
14012        buffer: *mut GtkEntryBuffer,
14013        position: c_uint,
14014        chars: *const c_char,
14015        n_chars: c_int,
14016    ) -> c_uint;
14017    pub fn gtk_entry_buffer_set_max_length(buffer: *mut GtkEntryBuffer, max_length: c_int);
14018    pub fn gtk_entry_buffer_set_text(
14019        buffer: *mut GtkEntryBuffer,
14020        chars: *const c_char,
14021        n_chars: c_int,
14022    );
14023
14024    //=========================================================================
14025    // GtkEntryCompletion
14026    //=========================================================================
14027    pub fn gtk_entry_completion_get_type() -> GType;
14028    pub fn gtk_entry_completion_new() -> *mut GtkEntryCompletion;
14029    pub fn gtk_entry_completion_new_with_area(area: *mut GtkCellArea) -> *mut GtkEntryCompletion;
14030    pub fn gtk_entry_completion_complete(completion: *mut GtkEntryCompletion);
14031    pub fn gtk_entry_completion_compute_prefix(
14032        completion: *mut GtkEntryCompletion,
14033        key: *const c_char,
14034    ) -> *mut c_char;
14035    pub fn gtk_entry_completion_get_completion_prefix(
14036        completion: *mut GtkEntryCompletion,
14037    ) -> *const c_char;
14038    pub fn gtk_entry_completion_get_entry(completion: *mut GtkEntryCompletion) -> *mut GtkWidget;
14039    pub fn gtk_entry_completion_get_inline_completion(
14040        completion: *mut GtkEntryCompletion,
14041    ) -> gboolean;
14042    pub fn gtk_entry_completion_get_inline_selection(
14043        completion: *mut GtkEntryCompletion,
14044    ) -> gboolean;
14045    pub fn gtk_entry_completion_get_minimum_key_length(
14046        completion: *mut GtkEntryCompletion,
14047    ) -> c_int;
14048    pub fn gtk_entry_completion_get_model(completion: *mut GtkEntryCompletion)
14049        -> *mut GtkTreeModel;
14050    pub fn gtk_entry_completion_get_popup_completion(
14051        completion: *mut GtkEntryCompletion,
14052    ) -> gboolean;
14053    pub fn gtk_entry_completion_get_popup_set_width(
14054        completion: *mut GtkEntryCompletion,
14055    ) -> gboolean;
14056    pub fn gtk_entry_completion_get_popup_single_match(
14057        completion: *mut GtkEntryCompletion,
14058    ) -> gboolean;
14059    pub fn gtk_entry_completion_get_text_column(completion: *mut GtkEntryCompletion) -> c_int;
14060    pub fn gtk_entry_completion_insert_prefix(completion: *mut GtkEntryCompletion);
14061    pub fn gtk_entry_completion_set_inline_completion(
14062        completion: *mut GtkEntryCompletion,
14063        inline_completion: gboolean,
14064    );
14065    pub fn gtk_entry_completion_set_inline_selection(
14066        completion: *mut GtkEntryCompletion,
14067        inline_selection: gboolean,
14068    );
14069    pub fn gtk_entry_completion_set_match_func(
14070        completion: *mut GtkEntryCompletion,
14071        func: GtkEntryCompletionMatchFunc,
14072        func_data: gpointer,
14073        func_notify: glib::GDestroyNotify,
14074    );
14075    pub fn gtk_entry_completion_set_minimum_key_length(
14076        completion: *mut GtkEntryCompletion,
14077        length: c_int,
14078    );
14079    pub fn gtk_entry_completion_set_model(
14080        completion: *mut GtkEntryCompletion,
14081        model: *mut GtkTreeModel,
14082    );
14083    pub fn gtk_entry_completion_set_popup_completion(
14084        completion: *mut GtkEntryCompletion,
14085        popup_completion: gboolean,
14086    );
14087    pub fn gtk_entry_completion_set_popup_set_width(
14088        completion: *mut GtkEntryCompletion,
14089        popup_set_width: gboolean,
14090    );
14091    pub fn gtk_entry_completion_set_popup_single_match(
14092        completion: *mut GtkEntryCompletion,
14093        popup_single_match: gboolean,
14094    );
14095    pub fn gtk_entry_completion_set_text_column(completion: *mut GtkEntryCompletion, column: c_int);
14096
14097    //=========================================================================
14098    // GtkEventController
14099    //=========================================================================
14100    pub fn gtk_event_controller_get_type() -> GType;
14101    pub fn gtk_event_controller_get_current_event(
14102        controller: *mut GtkEventController,
14103    ) -> *mut gdk::GdkEvent;
14104    pub fn gtk_event_controller_get_current_event_device(
14105        controller: *mut GtkEventController,
14106    ) -> *mut gdk::GdkDevice;
14107    pub fn gtk_event_controller_get_current_event_state(
14108        controller: *mut GtkEventController,
14109    ) -> gdk::GdkModifierType;
14110    pub fn gtk_event_controller_get_current_event_time(controller: *mut GtkEventController) -> u32;
14111    pub fn gtk_event_controller_get_name(controller: *mut GtkEventController) -> *const c_char;
14112    pub fn gtk_event_controller_get_propagation_limit(
14113        controller: *mut GtkEventController,
14114    ) -> GtkPropagationLimit;
14115    pub fn gtk_event_controller_get_propagation_phase(
14116        controller: *mut GtkEventController,
14117    ) -> GtkPropagationPhase;
14118    pub fn gtk_event_controller_get_widget(controller: *mut GtkEventController) -> *mut GtkWidget;
14119    pub fn gtk_event_controller_reset(controller: *mut GtkEventController);
14120    pub fn gtk_event_controller_set_name(controller: *mut GtkEventController, name: *const c_char);
14121    pub fn gtk_event_controller_set_propagation_limit(
14122        controller: *mut GtkEventController,
14123        limit: GtkPropagationLimit,
14124    );
14125    pub fn gtk_event_controller_set_propagation_phase(
14126        controller: *mut GtkEventController,
14127        phase: GtkPropagationPhase,
14128    );
14129    #[cfg(feature = "v4_8")]
14130    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
14131    pub fn gtk_event_controller_set_static_name(
14132        controller: *mut GtkEventController,
14133        name: *const c_char,
14134    );
14135
14136    //=========================================================================
14137    // GtkEventControllerFocus
14138    //=========================================================================
14139    pub fn gtk_event_controller_focus_get_type() -> GType;
14140    pub fn gtk_event_controller_focus_new() -> *mut GtkEventController;
14141    pub fn gtk_event_controller_focus_contains_focus(
14142        self_: *mut GtkEventControllerFocus,
14143    ) -> gboolean;
14144    pub fn gtk_event_controller_focus_is_focus(self_: *mut GtkEventControllerFocus) -> gboolean;
14145
14146    //=========================================================================
14147    // GtkEventControllerKey
14148    //=========================================================================
14149    pub fn gtk_event_controller_key_get_type() -> GType;
14150    pub fn gtk_event_controller_key_new() -> *mut GtkEventController;
14151    pub fn gtk_event_controller_key_forward(
14152        controller: *mut GtkEventControllerKey,
14153        widget: *mut GtkWidget,
14154    ) -> gboolean;
14155    pub fn gtk_event_controller_key_get_group(controller: *mut GtkEventControllerKey) -> c_uint;
14156    pub fn gtk_event_controller_key_get_im_context(
14157        controller: *mut GtkEventControllerKey,
14158    ) -> *mut GtkIMContext;
14159    pub fn gtk_event_controller_key_set_im_context(
14160        controller: *mut GtkEventControllerKey,
14161        im_context: *mut GtkIMContext,
14162    );
14163
14164    //=========================================================================
14165    // GtkEventControllerLegacy
14166    //=========================================================================
14167    pub fn gtk_event_controller_legacy_get_type() -> GType;
14168    pub fn gtk_event_controller_legacy_new() -> *mut GtkEventController;
14169
14170    //=========================================================================
14171    // GtkEventControllerMotion
14172    //=========================================================================
14173    pub fn gtk_event_controller_motion_get_type() -> GType;
14174    pub fn gtk_event_controller_motion_new() -> *mut GtkEventController;
14175    pub fn gtk_event_controller_motion_contains_pointer(
14176        self_: *mut GtkEventControllerMotion,
14177    ) -> gboolean;
14178    pub fn gtk_event_controller_motion_is_pointer(self_: *mut GtkEventControllerMotion)
14179        -> gboolean;
14180
14181    //=========================================================================
14182    // GtkEventControllerScroll
14183    //=========================================================================
14184    pub fn gtk_event_controller_scroll_get_type() -> GType;
14185    pub fn gtk_event_controller_scroll_new(
14186        flags: GtkEventControllerScrollFlags,
14187    ) -> *mut GtkEventController;
14188    pub fn gtk_event_controller_scroll_get_flags(
14189        scroll: *mut GtkEventControllerScroll,
14190    ) -> GtkEventControllerScrollFlags;
14191    #[cfg(feature = "v4_8")]
14192    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
14193    pub fn gtk_event_controller_scroll_get_unit(
14194        scroll: *mut GtkEventControllerScroll,
14195    ) -> gdk::GdkScrollUnit;
14196    pub fn gtk_event_controller_scroll_set_flags(
14197        scroll: *mut GtkEventControllerScroll,
14198        flags: GtkEventControllerScrollFlags,
14199    );
14200
14201    //=========================================================================
14202    // GtkEveryFilter
14203    //=========================================================================
14204    pub fn gtk_every_filter_get_type() -> GType;
14205    pub fn gtk_every_filter_new() -> *mut GtkEveryFilter;
14206
14207    //=========================================================================
14208    // GtkExpander
14209    //=========================================================================
14210    pub fn gtk_expander_get_type() -> GType;
14211    pub fn gtk_expander_new(label: *const c_char) -> *mut GtkWidget;
14212    pub fn gtk_expander_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
14213    pub fn gtk_expander_get_child(expander: *mut GtkExpander) -> *mut GtkWidget;
14214    pub fn gtk_expander_get_expanded(expander: *mut GtkExpander) -> gboolean;
14215    pub fn gtk_expander_get_label(expander: *mut GtkExpander) -> *const c_char;
14216    pub fn gtk_expander_get_label_widget(expander: *mut GtkExpander) -> *mut GtkWidget;
14217    pub fn gtk_expander_get_resize_toplevel(expander: *mut GtkExpander) -> gboolean;
14218    pub fn gtk_expander_get_use_markup(expander: *mut GtkExpander) -> gboolean;
14219    pub fn gtk_expander_get_use_underline(expander: *mut GtkExpander) -> gboolean;
14220    pub fn gtk_expander_set_child(expander: *mut GtkExpander, child: *mut GtkWidget);
14221    pub fn gtk_expander_set_expanded(expander: *mut GtkExpander, expanded: gboolean);
14222    pub fn gtk_expander_set_label(expander: *mut GtkExpander, label: *const c_char);
14223    pub fn gtk_expander_set_label_widget(expander: *mut GtkExpander, label_widget: *mut GtkWidget);
14224    pub fn gtk_expander_set_resize_toplevel(expander: *mut GtkExpander, resize_toplevel: gboolean);
14225    pub fn gtk_expander_set_use_markup(expander: *mut GtkExpander, use_markup: gboolean);
14226    pub fn gtk_expander_set_use_underline(expander: *mut GtkExpander, use_underline: gboolean);
14227
14228    //=========================================================================
14229    // GtkExpression
14230    //=========================================================================
14231    pub fn gtk_expression_get_type() -> GType;
14232    pub fn gtk_expression_bind(
14233        self_: *mut GtkExpression,
14234        target: *mut gobject::GObject,
14235        property: *const c_char,
14236        this_: *mut gobject::GObject,
14237    ) -> *mut GtkExpressionWatch;
14238    pub fn gtk_expression_evaluate(
14239        self_: *mut GtkExpression,
14240        this_: *mut gobject::GObject,
14241        value: *mut gobject::GValue,
14242    ) -> gboolean;
14243    pub fn gtk_expression_get_value_type(self_: *mut GtkExpression) -> GType;
14244    pub fn gtk_expression_is_static(self_: *mut GtkExpression) -> gboolean;
14245    pub fn gtk_expression_ref(self_: *mut GtkExpression) -> *mut GtkExpression;
14246    pub fn gtk_expression_unref(self_: *mut GtkExpression);
14247    pub fn gtk_expression_watch(
14248        self_: *mut GtkExpression,
14249        this_: *mut gobject::GObject,
14250        notify: GtkExpressionNotify,
14251        user_data: gpointer,
14252        user_destroy: glib::GDestroyNotify,
14253    ) -> *mut GtkExpressionWatch;
14254
14255    //=========================================================================
14256    // GtkFileChooserDialog
14257    //=========================================================================
14258    pub fn gtk_file_chooser_dialog_get_type() -> GType;
14259    pub fn gtk_file_chooser_dialog_new(
14260        title: *const c_char,
14261        parent: *mut GtkWindow,
14262        action: GtkFileChooserAction,
14263        first_button_text: *const c_char,
14264        ...
14265    ) -> *mut GtkWidget;
14266
14267    //=========================================================================
14268    // GtkFileChooserNative
14269    //=========================================================================
14270    pub fn gtk_file_chooser_native_get_type() -> GType;
14271    pub fn gtk_file_chooser_native_new(
14272        title: *const c_char,
14273        parent: *mut GtkWindow,
14274        action: GtkFileChooserAction,
14275        accept_label: *const c_char,
14276        cancel_label: *const c_char,
14277    ) -> *mut GtkFileChooserNative;
14278    pub fn gtk_file_chooser_native_get_accept_label(
14279        self_: *mut GtkFileChooserNative,
14280    ) -> *const c_char;
14281    pub fn gtk_file_chooser_native_get_cancel_label(
14282        self_: *mut GtkFileChooserNative,
14283    ) -> *const c_char;
14284    pub fn gtk_file_chooser_native_set_accept_label(
14285        self_: *mut GtkFileChooserNative,
14286        accept_label: *const c_char,
14287    );
14288    pub fn gtk_file_chooser_native_set_cancel_label(
14289        self_: *mut GtkFileChooserNative,
14290        cancel_label: *const c_char,
14291    );
14292
14293    //=========================================================================
14294    // GtkFileChooserWidget
14295    //=========================================================================
14296    pub fn gtk_file_chooser_widget_get_type() -> GType;
14297    pub fn gtk_file_chooser_widget_new(action: GtkFileChooserAction) -> *mut GtkWidget;
14298
14299    //=========================================================================
14300    // GtkFileDialog
14301    //=========================================================================
14302    #[cfg(feature = "v4_10")]
14303    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14304    pub fn gtk_file_dialog_get_type() -> GType;
14305    #[cfg(feature = "v4_10")]
14306    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14307    pub fn gtk_file_dialog_new() -> *mut GtkFileDialog;
14308    #[cfg(feature = "v4_10")]
14309    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14310    pub fn gtk_file_dialog_get_accept_label(self_: *mut GtkFileDialog) -> *const c_char;
14311    #[cfg(feature = "v4_10")]
14312    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14313    pub fn gtk_file_dialog_get_default_filter(self_: *mut GtkFileDialog) -> *mut GtkFileFilter;
14314    #[cfg(feature = "v4_10")]
14315    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14316    pub fn gtk_file_dialog_get_filters(self_: *mut GtkFileDialog) -> *mut gio::GListModel;
14317    #[cfg(feature = "v4_10")]
14318    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14319    pub fn gtk_file_dialog_get_initial_file(self_: *mut GtkFileDialog) -> *mut gio::GFile;
14320    #[cfg(feature = "v4_10")]
14321    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14322    pub fn gtk_file_dialog_get_initial_folder(self_: *mut GtkFileDialog) -> *mut gio::GFile;
14323    #[cfg(feature = "v4_10")]
14324    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14325    pub fn gtk_file_dialog_get_initial_name(self_: *mut GtkFileDialog) -> *const c_char;
14326    #[cfg(feature = "v4_10")]
14327    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14328    pub fn gtk_file_dialog_get_modal(self_: *mut GtkFileDialog) -> gboolean;
14329    #[cfg(feature = "v4_10")]
14330    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14331    pub fn gtk_file_dialog_get_title(self_: *mut GtkFileDialog) -> *const c_char;
14332    #[cfg(feature = "v4_10")]
14333    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14334    pub fn gtk_file_dialog_open(
14335        self_: *mut GtkFileDialog,
14336        parent: *mut GtkWindow,
14337        cancellable: *mut gio::GCancellable,
14338        callback: gio::GAsyncReadyCallback,
14339        user_data: gpointer,
14340    );
14341    #[cfg(feature = "v4_10")]
14342    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14343    pub fn gtk_file_dialog_open_finish(
14344        self_: *mut GtkFileDialog,
14345        result: *mut gio::GAsyncResult,
14346        error: *mut *mut glib::GError,
14347    ) -> *mut gio::GFile;
14348    #[cfg(feature = "v4_10")]
14349    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14350    pub fn gtk_file_dialog_open_multiple(
14351        self_: *mut GtkFileDialog,
14352        parent: *mut GtkWindow,
14353        cancellable: *mut gio::GCancellable,
14354        callback: gio::GAsyncReadyCallback,
14355        user_data: gpointer,
14356    );
14357    #[cfg(feature = "v4_10")]
14358    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14359    pub fn gtk_file_dialog_open_multiple_finish(
14360        self_: *mut GtkFileDialog,
14361        result: *mut gio::GAsyncResult,
14362        error: *mut *mut glib::GError,
14363    ) -> *mut gio::GListModel;
14364    #[cfg(feature = "v4_18")]
14365    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14366    pub fn gtk_file_dialog_open_multiple_text_files(
14367        self_: *mut GtkFileDialog,
14368        parent: *mut GtkWindow,
14369        cancellable: *mut gio::GCancellable,
14370        callback: gio::GAsyncReadyCallback,
14371        user_data: gpointer,
14372    );
14373    #[cfg(feature = "v4_18")]
14374    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14375    pub fn gtk_file_dialog_open_multiple_text_files_finish(
14376        self_: *mut GtkFileDialog,
14377        result: *mut gio::GAsyncResult,
14378        encoding: *mut *const c_char,
14379        error: *mut *mut glib::GError,
14380    ) -> *mut gio::GListModel;
14381    #[cfg(feature = "v4_18")]
14382    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14383    pub fn gtk_file_dialog_open_text_file(
14384        self_: *mut GtkFileDialog,
14385        parent: *mut GtkWindow,
14386        cancellable: *mut gio::GCancellable,
14387        callback: gio::GAsyncReadyCallback,
14388        user_data: gpointer,
14389    );
14390    #[cfg(feature = "v4_18")]
14391    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14392    pub fn gtk_file_dialog_open_text_file_finish(
14393        self_: *mut GtkFileDialog,
14394        result: *mut gio::GAsyncResult,
14395        encoding: *mut *const c_char,
14396        error: *mut *mut glib::GError,
14397    ) -> *mut gio::GFile;
14398    #[cfg(feature = "v4_10")]
14399    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14400    pub fn gtk_file_dialog_save(
14401        self_: *mut GtkFileDialog,
14402        parent: *mut GtkWindow,
14403        cancellable: *mut gio::GCancellable,
14404        callback: gio::GAsyncReadyCallback,
14405        user_data: gpointer,
14406    );
14407    #[cfg(feature = "v4_10")]
14408    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14409    pub fn gtk_file_dialog_save_finish(
14410        self_: *mut GtkFileDialog,
14411        result: *mut gio::GAsyncResult,
14412        error: *mut *mut glib::GError,
14413    ) -> *mut gio::GFile;
14414    #[cfg(feature = "v4_18")]
14415    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14416    pub fn gtk_file_dialog_save_text_file(
14417        self_: *mut GtkFileDialog,
14418        parent: *mut GtkWindow,
14419        cancellable: *mut gio::GCancellable,
14420        callback: gio::GAsyncReadyCallback,
14421        user_data: gpointer,
14422    );
14423    #[cfg(feature = "v4_18")]
14424    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14425    pub fn gtk_file_dialog_save_text_file_finish(
14426        self_: *mut GtkFileDialog,
14427        result: *mut gio::GAsyncResult,
14428        encoding: *mut *const c_char,
14429        line_ending: *mut *const c_char,
14430        error: *mut *mut glib::GError,
14431    ) -> *mut gio::GFile;
14432    #[cfg(feature = "v4_10")]
14433    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14434    pub fn gtk_file_dialog_select_folder(
14435        self_: *mut GtkFileDialog,
14436        parent: *mut GtkWindow,
14437        cancellable: *mut gio::GCancellable,
14438        callback: gio::GAsyncReadyCallback,
14439        user_data: gpointer,
14440    );
14441    #[cfg(feature = "v4_10")]
14442    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14443    pub fn gtk_file_dialog_select_folder_finish(
14444        self_: *mut GtkFileDialog,
14445        result: *mut gio::GAsyncResult,
14446        error: *mut *mut glib::GError,
14447    ) -> *mut gio::GFile;
14448    #[cfg(feature = "v4_10")]
14449    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14450    pub fn gtk_file_dialog_select_multiple_folders(
14451        self_: *mut GtkFileDialog,
14452        parent: *mut GtkWindow,
14453        cancellable: *mut gio::GCancellable,
14454        callback: gio::GAsyncReadyCallback,
14455        user_data: gpointer,
14456    );
14457    #[cfg(feature = "v4_10")]
14458    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14459    pub fn gtk_file_dialog_select_multiple_folders_finish(
14460        self_: *mut GtkFileDialog,
14461        result: *mut gio::GAsyncResult,
14462        error: *mut *mut glib::GError,
14463    ) -> *mut gio::GListModel;
14464    #[cfg(feature = "v4_10")]
14465    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14466    pub fn gtk_file_dialog_set_accept_label(self_: *mut GtkFileDialog, accept_label: *const c_char);
14467    #[cfg(feature = "v4_10")]
14468    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14469    pub fn gtk_file_dialog_set_default_filter(
14470        self_: *mut GtkFileDialog,
14471        filter: *mut GtkFileFilter,
14472    );
14473    #[cfg(feature = "v4_10")]
14474    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14475    pub fn gtk_file_dialog_set_filters(self_: *mut GtkFileDialog, filters: *mut gio::GListModel);
14476    #[cfg(feature = "v4_10")]
14477    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14478    pub fn gtk_file_dialog_set_initial_file(self_: *mut GtkFileDialog, file: *mut gio::GFile);
14479    #[cfg(feature = "v4_10")]
14480    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14481    pub fn gtk_file_dialog_set_initial_folder(self_: *mut GtkFileDialog, folder: *mut gio::GFile);
14482    #[cfg(feature = "v4_10")]
14483    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14484    pub fn gtk_file_dialog_set_initial_name(self_: *mut GtkFileDialog, name: *const c_char);
14485    #[cfg(feature = "v4_10")]
14486    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14487    pub fn gtk_file_dialog_set_modal(self_: *mut GtkFileDialog, modal: gboolean);
14488    #[cfg(feature = "v4_10")]
14489    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14490    pub fn gtk_file_dialog_set_title(self_: *mut GtkFileDialog, title: *const c_char);
14491
14492    //=========================================================================
14493    // GtkFileFilter
14494    //=========================================================================
14495    pub fn gtk_file_filter_get_type() -> GType;
14496    pub fn gtk_file_filter_new() -> *mut GtkFileFilter;
14497    pub fn gtk_file_filter_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkFileFilter;
14498    pub fn gtk_file_filter_add_mime_type(filter: *mut GtkFileFilter, mime_type: *const c_char);
14499    pub fn gtk_file_filter_add_pattern(filter: *mut GtkFileFilter, pattern: *const c_char);
14500    pub fn gtk_file_filter_add_pixbuf_formats(filter: *mut GtkFileFilter);
14501    #[cfg(feature = "v4_4")]
14502    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
14503    pub fn gtk_file_filter_add_suffix(filter: *mut GtkFileFilter, suffix: *const c_char);
14504    pub fn gtk_file_filter_get_attributes(filter: *mut GtkFileFilter) -> *mut *const c_char;
14505    pub fn gtk_file_filter_get_name(filter: *mut GtkFileFilter) -> *const c_char;
14506    pub fn gtk_file_filter_set_name(filter: *mut GtkFileFilter, name: *const c_char);
14507    pub fn gtk_file_filter_to_gvariant(filter: *mut GtkFileFilter) -> *mut glib::GVariant;
14508
14509    //=========================================================================
14510    // GtkFileLauncher
14511    //=========================================================================
14512    #[cfg(feature = "v4_10")]
14513    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14514    pub fn gtk_file_launcher_get_type() -> GType;
14515    #[cfg(feature = "v4_10")]
14516    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14517    pub fn gtk_file_launcher_new(file: *mut gio::GFile) -> *mut GtkFileLauncher;
14518    #[cfg(feature = "v4_12")]
14519    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14520    pub fn gtk_file_launcher_get_always_ask(self_: *mut GtkFileLauncher) -> gboolean;
14521    #[cfg(feature = "v4_10")]
14522    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14523    pub fn gtk_file_launcher_get_file(self_: *mut GtkFileLauncher) -> *mut gio::GFile;
14524    #[cfg(feature = "v4_14")]
14525    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14526    pub fn gtk_file_launcher_get_writable(self_: *mut GtkFileLauncher) -> gboolean;
14527    #[cfg(feature = "v4_10")]
14528    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14529    pub fn gtk_file_launcher_launch(
14530        self_: *mut GtkFileLauncher,
14531        parent: *mut GtkWindow,
14532        cancellable: *mut gio::GCancellable,
14533        callback: gio::GAsyncReadyCallback,
14534        user_data: gpointer,
14535    );
14536    #[cfg(feature = "v4_10")]
14537    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14538    pub fn gtk_file_launcher_launch_finish(
14539        self_: *mut GtkFileLauncher,
14540        result: *mut gio::GAsyncResult,
14541        error: *mut *mut glib::GError,
14542    ) -> gboolean;
14543    #[cfg(feature = "v4_10")]
14544    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14545    pub fn gtk_file_launcher_open_containing_folder(
14546        self_: *mut GtkFileLauncher,
14547        parent: *mut GtkWindow,
14548        cancellable: *mut gio::GCancellable,
14549        callback: gio::GAsyncReadyCallback,
14550        user_data: gpointer,
14551    );
14552    #[cfg(feature = "v4_10")]
14553    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14554    pub fn gtk_file_launcher_open_containing_folder_finish(
14555        self_: *mut GtkFileLauncher,
14556        result: *mut gio::GAsyncResult,
14557        error: *mut *mut glib::GError,
14558    ) -> gboolean;
14559    #[cfg(feature = "v4_12")]
14560    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14561    pub fn gtk_file_launcher_set_always_ask(self_: *mut GtkFileLauncher, always_ask: gboolean);
14562    #[cfg(feature = "v4_10")]
14563    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14564    pub fn gtk_file_launcher_set_file(self_: *mut GtkFileLauncher, file: *mut gio::GFile);
14565    #[cfg(feature = "v4_14")]
14566    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14567    pub fn gtk_file_launcher_set_writable(self_: *mut GtkFileLauncher, writable: gboolean);
14568
14569    //=========================================================================
14570    // GtkFilter
14571    //=========================================================================
14572    pub fn gtk_filter_get_type() -> GType;
14573    pub fn gtk_filter_changed(self_: *mut GtkFilter, change: GtkFilterChange);
14574    pub fn gtk_filter_get_strictness(self_: *mut GtkFilter) -> GtkFilterMatch;
14575    pub fn gtk_filter_match(self_: *mut GtkFilter, item: *mut gobject::GObject) -> gboolean;
14576
14577    //=========================================================================
14578    // GtkFilterListModel
14579    //=========================================================================
14580    pub fn gtk_filter_list_model_get_type() -> GType;
14581    pub fn gtk_filter_list_model_new(
14582        model: *mut gio::GListModel,
14583        filter: *mut GtkFilter,
14584    ) -> *mut GtkFilterListModel;
14585    pub fn gtk_filter_list_model_get_filter(self_: *mut GtkFilterListModel) -> *mut GtkFilter;
14586    pub fn gtk_filter_list_model_get_incremental(self_: *mut GtkFilterListModel) -> gboolean;
14587    pub fn gtk_filter_list_model_get_model(self_: *mut GtkFilterListModel) -> *mut gio::GListModel;
14588    pub fn gtk_filter_list_model_get_pending(self_: *mut GtkFilterListModel) -> c_uint;
14589    #[cfg(feature = "v4_20")]
14590    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14591    pub fn gtk_filter_list_model_get_watch_items(self_: *mut GtkFilterListModel) -> gboolean;
14592    pub fn gtk_filter_list_model_set_filter(self_: *mut GtkFilterListModel, filter: *mut GtkFilter);
14593    pub fn gtk_filter_list_model_set_incremental(
14594        self_: *mut GtkFilterListModel,
14595        incremental: gboolean,
14596    );
14597    pub fn gtk_filter_list_model_set_model(
14598        self_: *mut GtkFilterListModel,
14599        model: *mut gio::GListModel,
14600    );
14601    #[cfg(feature = "v4_20")]
14602    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14603    pub fn gtk_filter_list_model_set_watch_items(
14604        self_: *mut GtkFilterListModel,
14605        watch_items: gboolean,
14606    );
14607
14608    //=========================================================================
14609    // GtkFixed
14610    //=========================================================================
14611    pub fn gtk_fixed_get_type() -> GType;
14612    pub fn gtk_fixed_new() -> *mut GtkWidget;
14613    pub fn gtk_fixed_get_child_position(
14614        fixed: *mut GtkFixed,
14615        widget: *mut GtkWidget,
14616        x: *mut c_double,
14617        y: *mut c_double,
14618    );
14619    pub fn gtk_fixed_get_child_transform(
14620        fixed: *mut GtkFixed,
14621        widget: *mut GtkWidget,
14622    ) -> *mut gsk::GskTransform;
14623    pub fn gtk_fixed_move(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_double, y: c_double);
14624    pub fn gtk_fixed_put(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_double, y: c_double);
14625    pub fn gtk_fixed_remove(fixed: *mut GtkFixed, widget: *mut GtkWidget);
14626    pub fn gtk_fixed_set_child_transform(
14627        fixed: *mut GtkFixed,
14628        widget: *mut GtkWidget,
14629        transform: *mut gsk::GskTransform,
14630    );
14631
14632    //=========================================================================
14633    // GtkFixedLayout
14634    //=========================================================================
14635    pub fn gtk_fixed_layout_get_type() -> GType;
14636    pub fn gtk_fixed_layout_new() -> *mut GtkLayoutManager;
14637
14638    //=========================================================================
14639    // GtkFixedLayoutChild
14640    //=========================================================================
14641    pub fn gtk_fixed_layout_child_get_type() -> GType;
14642    pub fn gtk_fixed_layout_child_get_transform(
14643        child: *mut GtkFixedLayoutChild,
14644    ) -> *mut gsk::GskTransform;
14645    pub fn gtk_fixed_layout_child_set_transform(
14646        child: *mut GtkFixedLayoutChild,
14647        transform: *mut gsk::GskTransform,
14648    );
14649
14650    //=========================================================================
14651    // GtkFlattenListModel
14652    //=========================================================================
14653    pub fn gtk_flatten_list_model_get_type() -> GType;
14654    pub fn gtk_flatten_list_model_new(model: *mut gio::GListModel) -> *mut GtkFlattenListModel;
14655    pub fn gtk_flatten_list_model_get_model(
14656        self_: *mut GtkFlattenListModel,
14657    ) -> *mut gio::GListModel;
14658    pub fn gtk_flatten_list_model_get_model_for_item(
14659        self_: *mut GtkFlattenListModel,
14660        position: c_uint,
14661    ) -> *mut gio::GListModel;
14662    pub fn gtk_flatten_list_model_set_model(
14663        self_: *mut GtkFlattenListModel,
14664        model: *mut gio::GListModel,
14665    );
14666
14667    //=========================================================================
14668    // GtkFlowBox
14669    //=========================================================================
14670    pub fn gtk_flow_box_get_type() -> GType;
14671    pub fn gtk_flow_box_new() -> *mut GtkWidget;
14672    #[cfg(feature = "v4_6")]
14673    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
14674    pub fn gtk_flow_box_append(self_: *mut GtkFlowBox, child: *mut GtkWidget);
14675    pub fn gtk_flow_box_bind_model(
14676        box_: *mut GtkFlowBox,
14677        model: *mut gio::GListModel,
14678        create_widget_func: GtkFlowBoxCreateWidgetFunc,
14679        user_data: gpointer,
14680        user_data_free_func: glib::GDestroyNotify,
14681    );
14682    pub fn gtk_flow_box_get_activate_on_single_click(box_: *mut GtkFlowBox) -> gboolean;
14683    pub fn gtk_flow_box_get_child_at_index(
14684        box_: *mut GtkFlowBox,
14685        idx: c_int,
14686    ) -> *mut GtkFlowBoxChild;
14687    pub fn gtk_flow_box_get_child_at_pos(
14688        box_: *mut GtkFlowBox,
14689        x: c_int,
14690        y: c_int,
14691    ) -> *mut GtkFlowBoxChild;
14692    pub fn gtk_flow_box_get_column_spacing(box_: *mut GtkFlowBox) -> c_uint;
14693    pub fn gtk_flow_box_get_homogeneous(box_: *mut GtkFlowBox) -> gboolean;
14694    pub fn gtk_flow_box_get_max_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
14695    pub fn gtk_flow_box_get_min_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
14696    pub fn gtk_flow_box_get_row_spacing(box_: *mut GtkFlowBox) -> c_uint;
14697    pub fn gtk_flow_box_get_selected_children(box_: *mut GtkFlowBox) -> *mut glib::GList;
14698    pub fn gtk_flow_box_get_selection_mode(box_: *mut GtkFlowBox) -> GtkSelectionMode;
14699    pub fn gtk_flow_box_insert(box_: *mut GtkFlowBox, widget: *mut GtkWidget, position: c_int);
14700    pub fn gtk_flow_box_invalidate_filter(box_: *mut GtkFlowBox);
14701    pub fn gtk_flow_box_invalidate_sort(box_: *mut GtkFlowBox);
14702    #[cfg(feature = "v4_6")]
14703    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
14704    pub fn gtk_flow_box_prepend(self_: *mut GtkFlowBox, child: *mut GtkWidget);
14705    pub fn gtk_flow_box_remove(box_: *mut GtkFlowBox, widget: *mut GtkWidget);
14706    #[cfg(feature = "v4_12")]
14707    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14708    pub fn gtk_flow_box_remove_all(box_: *mut GtkFlowBox);
14709    pub fn gtk_flow_box_select_all(box_: *mut GtkFlowBox);
14710    pub fn gtk_flow_box_select_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
14711    pub fn gtk_flow_box_selected_foreach(
14712        box_: *mut GtkFlowBox,
14713        func: GtkFlowBoxForeachFunc,
14714        data: gpointer,
14715    );
14716    pub fn gtk_flow_box_set_activate_on_single_click(box_: *mut GtkFlowBox, single: gboolean);
14717    pub fn gtk_flow_box_set_column_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
14718    pub fn gtk_flow_box_set_filter_func(
14719        box_: *mut GtkFlowBox,
14720        filter_func: GtkFlowBoxFilterFunc,
14721        user_data: gpointer,
14722        destroy: glib::GDestroyNotify,
14723    );
14724    pub fn gtk_flow_box_set_hadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
14725    pub fn gtk_flow_box_set_homogeneous(box_: *mut GtkFlowBox, homogeneous: gboolean);
14726    pub fn gtk_flow_box_set_max_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
14727    pub fn gtk_flow_box_set_min_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
14728    pub fn gtk_flow_box_set_row_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
14729    pub fn gtk_flow_box_set_selection_mode(box_: *mut GtkFlowBox, mode: GtkSelectionMode);
14730    pub fn gtk_flow_box_set_sort_func(
14731        box_: *mut GtkFlowBox,
14732        sort_func: GtkFlowBoxSortFunc,
14733        user_data: gpointer,
14734        destroy: glib::GDestroyNotify,
14735    );
14736    pub fn gtk_flow_box_set_vadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
14737    pub fn gtk_flow_box_unselect_all(box_: *mut GtkFlowBox);
14738    pub fn gtk_flow_box_unselect_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
14739
14740    //=========================================================================
14741    // GtkFlowBoxChild
14742    //=========================================================================
14743    pub fn gtk_flow_box_child_get_type() -> GType;
14744    pub fn gtk_flow_box_child_new() -> *mut GtkWidget;
14745    pub fn gtk_flow_box_child_changed(child: *mut GtkFlowBoxChild);
14746    pub fn gtk_flow_box_child_get_child(self_: *mut GtkFlowBoxChild) -> *mut GtkWidget;
14747    pub fn gtk_flow_box_child_get_index(child: *mut GtkFlowBoxChild) -> c_int;
14748    pub fn gtk_flow_box_child_is_selected(child: *mut GtkFlowBoxChild) -> gboolean;
14749    pub fn gtk_flow_box_child_set_child(self_: *mut GtkFlowBoxChild, child: *mut GtkWidget);
14750
14751    //=========================================================================
14752    // GtkFontButton
14753    //=========================================================================
14754    pub fn gtk_font_button_get_type() -> GType;
14755    pub fn gtk_font_button_new() -> *mut GtkWidget;
14756    pub fn gtk_font_button_new_with_font(fontname: *const c_char) -> *mut GtkWidget;
14757    pub fn gtk_font_button_get_modal(font_button: *mut GtkFontButton) -> gboolean;
14758    pub fn gtk_font_button_get_title(font_button: *mut GtkFontButton) -> *const c_char;
14759    pub fn gtk_font_button_get_use_font(font_button: *mut GtkFontButton) -> gboolean;
14760    pub fn gtk_font_button_get_use_size(font_button: *mut GtkFontButton) -> gboolean;
14761    pub fn gtk_font_button_set_modal(font_button: *mut GtkFontButton, modal: gboolean);
14762    pub fn gtk_font_button_set_title(font_button: *mut GtkFontButton, title: *const c_char);
14763    pub fn gtk_font_button_set_use_font(font_button: *mut GtkFontButton, use_font: gboolean);
14764    pub fn gtk_font_button_set_use_size(font_button: *mut GtkFontButton, use_size: gboolean);
14765
14766    //=========================================================================
14767    // GtkFontChooserDialog
14768    //=========================================================================
14769    pub fn gtk_font_chooser_dialog_get_type() -> GType;
14770    pub fn gtk_font_chooser_dialog_new(
14771        title: *const c_char,
14772        parent: *mut GtkWindow,
14773    ) -> *mut GtkWidget;
14774
14775    //=========================================================================
14776    // GtkFontChooserWidget
14777    //=========================================================================
14778    pub fn gtk_font_chooser_widget_get_type() -> GType;
14779    pub fn gtk_font_chooser_widget_new() -> *mut GtkWidget;
14780
14781    //=========================================================================
14782    // GtkFontDialog
14783    //=========================================================================
14784    #[cfg(feature = "v4_10")]
14785    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14786    pub fn gtk_font_dialog_get_type() -> GType;
14787    #[cfg(feature = "v4_10")]
14788    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14789    pub fn gtk_font_dialog_new() -> *mut GtkFontDialog;
14790    #[cfg(feature = "v4_10")]
14791    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14792    pub fn gtk_font_dialog_choose_face(
14793        self_: *mut GtkFontDialog,
14794        parent: *mut GtkWindow,
14795        initial_value: *mut pango::PangoFontFace,
14796        cancellable: *mut gio::GCancellable,
14797        callback: gio::GAsyncReadyCallback,
14798        user_data: gpointer,
14799    );
14800    #[cfg(feature = "v4_10")]
14801    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14802    pub fn gtk_font_dialog_choose_face_finish(
14803        self_: *mut GtkFontDialog,
14804        result: *mut gio::GAsyncResult,
14805        error: *mut *mut glib::GError,
14806    ) -> *mut pango::PangoFontFace;
14807    #[cfg(feature = "v4_10")]
14808    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14809    pub fn gtk_font_dialog_choose_family(
14810        self_: *mut GtkFontDialog,
14811        parent: *mut GtkWindow,
14812        initial_value: *mut pango::PangoFontFamily,
14813        cancellable: *mut gio::GCancellable,
14814        callback: gio::GAsyncReadyCallback,
14815        user_data: gpointer,
14816    );
14817    #[cfg(feature = "v4_10")]
14818    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14819    pub fn gtk_font_dialog_choose_family_finish(
14820        self_: *mut GtkFontDialog,
14821        result: *mut gio::GAsyncResult,
14822        error: *mut *mut glib::GError,
14823    ) -> *mut pango::PangoFontFamily;
14824    #[cfg(feature = "v4_10")]
14825    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14826    pub fn gtk_font_dialog_choose_font(
14827        self_: *mut GtkFontDialog,
14828        parent: *mut GtkWindow,
14829        initial_value: *mut pango::PangoFontDescription,
14830        cancellable: *mut gio::GCancellable,
14831        callback: gio::GAsyncReadyCallback,
14832        user_data: gpointer,
14833    );
14834    #[cfg(feature = "v4_10")]
14835    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14836    pub fn gtk_font_dialog_choose_font_and_features(
14837        self_: *mut GtkFontDialog,
14838        parent: *mut GtkWindow,
14839        initial_value: *mut pango::PangoFontDescription,
14840        cancellable: *mut gio::GCancellable,
14841        callback: gio::GAsyncReadyCallback,
14842        user_data: gpointer,
14843    );
14844    #[cfg(feature = "v4_10")]
14845    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14846    pub fn gtk_font_dialog_choose_font_and_features_finish(
14847        self_: *mut GtkFontDialog,
14848        result: *mut gio::GAsyncResult,
14849        font_desc: *mut *mut pango::PangoFontDescription,
14850        font_features: *mut *mut c_char,
14851        language: *mut *mut pango::PangoLanguage,
14852        error: *mut *mut glib::GError,
14853    ) -> gboolean;
14854    #[cfg(feature = "v4_10")]
14855    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14856    pub fn gtk_font_dialog_choose_font_finish(
14857        self_: *mut GtkFontDialog,
14858        result: *mut gio::GAsyncResult,
14859        error: *mut *mut glib::GError,
14860    ) -> *mut pango::PangoFontDescription;
14861    #[cfg(feature = "v4_10")]
14862    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14863    pub fn gtk_font_dialog_get_filter(self_: *mut GtkFontDialog) -> *mut GtkFilter;
14864    #[cfg(feature = "v4_10")]
14865    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14866    pub fn gtk_font_dialog_get_font_map(self_: *mut GtkFontDialog) -> *mut pango::PangoFontMap;
14867    #[cfg(feature = "v4_10")]
14868    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14869    pub fn gtk_font_dialog_get_language(self_: *mut GtkFontDialog) -> *mut pango::PangoLanguage;
14870    #[cfg(feature = "v4_10")]
14871    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14872    pub fn gtk_font_dialog_get_modal(self_: *mut GtkFontDialog) -> gboolean;
14873    #[cfg(feature = "v4_10")]
14874    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14875    pub fn gtk_font_dialog_get_title(self_: *mut GtkFontDialog) -> *const c_char;
14876    #[cfg(feature = "v4_10")]
14877    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14878    pub fn gtk_font_dialog_set_filter(self_: *mut GtkFontDialog, filter: *mut GtkFilter);
14879    #[cfg(feature = "v4_10")]
14880    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14881    pub fn gtk_font_dialog_set_font_map(
14882        self_: *mut GtkFontDialog,
14883        fontmap: *mut pango::PangoFontMap,
14884    );
14885    #[cfg(feature = "v4_10")]
14886    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14887    pub fn gtk_font_dialog_set_language(
14888        self_: *mut GtkFontDialog,
14889        language: *mut pango::PangoLanguage,
14890    );
14891    #[cfg(feature = "v4_10")]
14892    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14893    pub fn gtk_font_dialog_set_modal(self_: *mut GtkFontDialog, modal: gboolean);
14894    #[cfg(feature = "v4_10")]
14895    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14896    pub fn gtk_font_dialog_set_title(self_: *mut GtkFontDialog, title: *const c_char);
14897
14898    //=========================================================================
14899    // GtkFontDialogButton
14900    //=========================================================================
14901    #[cfg(feature = "v4_10")]
14902    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14903    pub fn gtk_font_dialog_button_get_type() -> GType;
14904    #[cfg(feature = "v4_10")]
14905    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14906    pub fn gtk_font_dialog_button_new(dialog: *mut GtkFontDialog) -> *mut GtkWidget;
14907    #[cfg(feature = "v4_10")]
14908    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14909    pub fn gtk_font_dialog_button_get_dialog(self_: *mut GtkFontDialogButton)
14910        -> *mut GtkFontDialog;
14911    #[cfg(feature = "v4_10")]
14912    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14913    pub fn gtk_font_dialog_button_get_font_desc(
14914        self_: *mut GtkFontDialogButton,
14915    ) -> *mut pango::PangoFontDescription;
14916    #[cfg(feature = "v4_10")]
14917    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14918    pub fn gtk_font_dialog_button_get_font_features(
14919        self_: *mut GtkFontDialogButton,
14920    ) -> *const c_char;
14921    #[cfg(feature = "v4_10")]
14922    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14923    pub fn gtk_font_dialog_button_get_language(
14924        self_: *mut GtkFontDialogButton,
14925    ) -> *mut pango::PangoLanguage;
14926    #[cfg(feature = "v4_10")]
14927    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14928    pub fn gtk_font_dialog_button_get_level(self_: *mut GtkFontDialogButton) -> GtkFontLevel;
14929    #[cfg(feature = "v4_10")]
14930    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14931    pub fn gtk_font_dialog_button_get_use_font(self_: *mut GtkFontDialogButton) -> gboolean;
14932    #[cfg(feature = "v4_10")]
14933    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14934    pub fn gtk_font_dialog_button_get_use_size(self_: *mut GtkFontDialogButton) -> gboolean;
14935    #[cfg(feature = "v4_10")]
14936    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14937    pub fn gtk_font_dialog_button_set_dialog(
14938        self_: *mut GtkFontDialogButton,
14939        dialog: *mut GtkFontDialog,
14940    );
14941    #[cfg(feature = "v4_10")]
14942    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14943    pub fn gtk_font_dialog_button_set_font_desc(
14944        self_: *mut GtkFontDialogButton,
14945        font_desc: *const pango::PangoFontDescription,
14946    );
14947    #[cfg(feature = "v4_10")]
14948    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14949    pub fn gtk_font_dialog_button_set_font_features(
14950        self_: *mut GtkFontDialogButton,
14951        font_features: *const c_char,
14952    );
14953    #[cfg(feature = "v4_10")]
14954    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14955    pub fn gtk_font_dialog_button_set_language(
14956        self_: *mut GtkFontDialogButton,
14957        language: *mut pango::PangoLanguage,
14958    );
14959    #[cfg(feature = "v4_10")]
14960    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14961    pub fn gtk_font_dialog_button_set_level(self_: *mut GtkFontDialogButton, level: GtkFontLevel);
14962    #[cfg(feature = "v4_10")]
14963    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14964    pub fn gtk_font_dialog_button_set_use_font(self_: *mut GtkFontDialogButton, use_font: gboolean);
14965    #[cfg(feature = "v4_10")]
14966    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14967    pub fn gtk_font_dialog_button_set_use_size(self_: *mut GtkFontDialogButton, use_size: gboolean);
14968
14969    //=========================================================================
14970    // GtkFrame
14971    //=========================================================================
14972    pub fn gtk_frame_get_type() -> GType;
14973    pub fn gtk_frame_new(label: *const c_char) -> *mut GtkWidget;
14974    pub fn gtk_frame_get_child(frame: *mut GtkFrame) -> *mut GtkWidget;
14975    pub fn gtk_frame_get_label(frame: *mut GtkFrame) -> *const c_char;
14976    pub fn gtk_frame_get_label_align(frame: *mut GtkFrame) -> c_float;
14977    pub fn gtk_frame_get_label_widget(frame: *mut GtkFrame) -> *mut GtkWidget;
14978    pub fn gtk_frame_set_child(frame: *mut GtkFrame, child: *mut GtkWidget);
14979    pub fn gtk_frame_set_label(frame: *mut GtkFrame, label: *const c_char);
14980    pub fn gtk_frame_set_label_align(frame: *mut GtkFrame, xalign: c_float);
14981    pub fn gtk_frame_set_label_widget(frame: *mut GtkFrame, label_widget: *mut GtkWidget);
14982
14983    //=========================================================================
14984    // GtkGLArea
14985    //=========================================================================
14986    pub fn gtk_gl_area_get_type() -> GType;
14987    pub fn gtk_gl_area_new() -> *mut GtkWidget;
14988    pub fn gtk_gl_area_attach_buffers(area: *mut GtkGLArea);
14989    #[cfg(feature = "v4_12")]
14990    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14991    pub fn gtk_gl_area_get_allowed_apis(area: *mut GtkGLArea) -> gdk::GdkGLAPI;
14992    #[cfg(feature = "v4_12")]
14993    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14994    pub fn gtk_gl_area_get_api(area: *mut GtkGLArea) -> gdk::GdkGLAPI;
14995    pub fn gtk_gl_area_get_auto_render(area: *mut GtkGLArea) -> gboolean;
14996    pub fn gtk_gl_area_get_context(area: *mut GtkGLArea) -> *mut gdk::GdkGLContext;
14997    pub fn gtk_gl_area_get_error(area: *mut GtkGLArea) -> *mut glib::GError;
14998    pub fn gtk_gl_area_get_has_depth_buffer(area: *mut GtkGLArea) -> gboolean;
14999    pub fn gtk_gl_area_get_has_stencil_buffer(area: *mut GtkGLArea) -> gboolean;
15000    pub fn gtk_gl_area_get_required_version(
15001        area: *mut GtkGLArea,
15002        major: *mut c_int,
15003        minor: *mut c_int,
15004    );
15005    pub fn gtk_gl_area_get_use_es(area: *mut GtkGLArea) -> gboolean;
15006    pub fn gtk_gl_area_make_current(area: *mut GtkGLArea);
15007    pub fn gtk_gl_area_queue_render(area: *mut GtkGLArea);
15008    #[cfg(feature = "v4_12")]
15009    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15010    pub fn gtk_gl_area_set_allowed_apis(area: *mut GtkGLArea, apis: gdk::GdkGLAPI);
15011    pub fn gtk_gl_area_set_auto_render(area: *mut GtkGLArea, auto_render: gboolean);
15012    pub fn gtk_gl_area_set_error(area: *mut GtkGLArea, error: *const glib::GError);
15013    pub fn gtk_gl_area_set_has_depth_buffer(area: *mut GtkGLArea, has_depth_buffer: gboolean);
15014    pub fn gtk_gl_area_set_has_stencil_buffer(area: *mut GtkGLArea, has_stencil_buffer: gboolean);
15015    pub fn gtk_gl_area_set_required_version(area: *mut GtkGLArea, major: c_int, minor: c_int);
15016    pub fn gtk_gl_area_set_use_es(area: *mut GtkGLArea, use_es: gboolean);
15017
15018    //=========================================================================
15019    // GtkGesture
15020    //=========================================================================
15021    pub fn gtk_gesture_get_type() -> GType;
15022    pub fn gtk_gesture_get_bounding_box(
15023        gesture: *mut GtkGesture,
15024        rect: *mut gdk::GdkRectangle,
15025    ) -> gboolean;
15026    pub fn gtk_gesture_get_bounding_box_center(
15027        gesture: *mut GtkGesture,
15028        x: *mut c_double,
15029        y: *mut c_double,
15030    ) -> gboolean;
15031    pub fn gtk_gesture_get_device(gesture: *mut GtkGesture) -> *mut gdk::GdkDevice;
15032    pub fn gtk_gesture_get_group(gesture: *mut GtkGesture) -> *mut glib::GList;
15033    pub fn gtk_gesture_get_last_event(
15034        gesture: *mut GtkGesture,
15035        sequence: *mut gdk::GdkEventSequence,
15036    ) -> *mut gdk::GdkEvent;
15037    pub fn gtk_gesture_get_last_updated_sequence(
15038        gesture: *mut GtkGesture,
15039    ) -> *mut gdk::GdkEventSequence;
15040    pub fn gtk_gesture_get_point(
15041        gesture: *mut GtkGesture,
15042        sequence: *mut gdk::GdkEventSequence,
15043        x: *mut c_double,
15044        y: *mut c_double,
15045    ) -> gboolean;
15046    pub fn gtk_gesture_get_sequence_state(
15047        gesture: *mut GtkGesture,
15048        sequence: *mut gdk::GdkEventSequence,
15049    ) -> GtkEventSequenceState;
15050    pub fn gtk_gesture_get_sequences(gesture: *mut GtkGesture) -> *mut glib::GList;
15051    pub fn gtk_gesture_group(group_gesture: *mut GtkGesture, gesture: *mut GtkGesture);
15052    pub fn gtk_gesture_handles_sequence(
15053        gesture: *mut GtkGesture,
15054        sequence: *mut gdk::GdkEventSequence,
15055    ) -> gboolean;
15056    pub fn gtk_gesture_is_active(gesture: *mut GtkGesture) -> gboolean;
15057    pub fn gtk_gesture_is_grouped_with(
15058        gesture: *mut GtkGesture,
15059        other: *mut GtkGesture,
15060    ) -> gboolean;
15061    pub fn gtk_gesture_is_recognized(gesture: *mut GtkGesture) -> gboolean;
15062    pub fn gtk_gesture_set_sequence_state(
15063        gesture: *mut GtkGesture,
15064        sequence: *mut gdk::GdkEventSequence,
15065        state: GtkEventSequenceState,
15066    ) -> gboolean;
15067    pub fn gtk_gesture_set_state(
15068        gesture: *mut GtkGesture,
15069        state: GtkEventSequenceState,
15070    ) -> gboolean;
15071    pub fn gtk_gesture_ungroup(gesture: *mut GtkGesture);
15072
15073    //=========================================================================
15074    // GtkGestureClick
15075    //=========================================================================
15076    pub fn gtk_gesture_click_get_type() -> GType;
15077    pub fn gtk_gesture_click_new() -> *mut GtkGesture;
15078
15079    //=========================================================================
15080    // GtkGestureDrag
15081    //=========================================================================
15082    pub fn gtk_gesture_drag_get_type() -> GType;
15083    pub fn gtk_gesture_drag_new() -> *mut GtkGesture;
15084    pub fn gtk_gesture_drag_get_offset(
15085        gesture: *mut GtkGestureDrag,
15086        x: *mut c_double,
15087        y: *mut c_double,
15088    ) -> gboolean;
15089    pub fn gtk_gesture_drag_get_start_point(
15090        gesture: *mut GtkGestureDrag,
15091        x: *mut c_double,
15092        y: *mut c_double,
15093    ) -> gboolean;
15094
15095    //=========================================================================
15096    // GtkGestureLongPress
15097    //=========================================================================
15098    pub fn gtk_gesture_long_press_get_type() -> GType;
15099    pub fn gtk_gesture_long_press_new() -> *mut GtkGesture;
15100    pub fn gtk_gesture_long_press_get_delay_factor(gesture: *mut GtkGestureLongPress) -> c_double;
15101    pub fn gtk_gesture_long_press_set_delay_factor(
15102        gesture: *mut GtkGestureLongPress,
15103        delay_factor: c_double,
15104    );
15105
15106    //=========================================================================
15107    // GtkGesturePan
15108    //=========================================================================
15109    pub fn gtk_gesture_pan_get_type() -> GType;
15110    pub fn gtk_gesture_pan_new(orientation: GtkOrientation) -> *mut GtkGesture;
15111    pub fn gtk_gesture_pan_get_orientation(gesture: *mut GtkGesturePan) -> GtkOrientation;
15112    pub fn gtk_gesture_pan_set_orientation(
15113        gesture: *mut GtkGesturePan,
15114        orientation: GtkOrientation,
15115    );
15116
15117    //=========================================================================
15118    // GtkGestureRotate
15119    //=========================================================================
15120    pub fn gtk_gesture_rotate_get_type() -> GType;
15121    pub fn gtk_gesture_rotate_new() -> *mut GtkGesture;
15122    pub fn gtk_gesture_rotate_get_angle_delta(gesture: *mut GtkGestureRotate) -> c_double;
15123
15124    //=========================================================================
15125    // GtkGestureSingle
15126    //=========================================================================
15127    pub fn gtk_gesture_single_get_type() -> GType;
15128    pub fn gtk_gesture_single_get_button(gesture: *mut GtkGestureSingle) -> c_uint;
15129    pub fn gtk_gesture_single_get_current_button(gesture: *mut GtkGestureSingle) -> c_uint;
15130    pub fn gtk_gesture_single_get_current_sequence(
15131        gesture: *mut GtkGestureSingle,
15132    ) -> *mut gdk::GdkEventSequence;
15133    pub fn gtk_gesture_single_get_exclusive(gesture: *mut GtkGestureSingle) -> gboolean;
15134    pub fn gtk_gesture_single_get_touch_only(gesture: *mut GtkGestureSingle) -> gboolean;
15135    pub fn gtk_gesture_single_set_button(gesture: *mut GtkGestureSingle, button: c_uint);
15136    pub fn gtk_gesture_single_set_exclusive(gesture: *mut GtkGestureSingle, exclusive: gboolean);
15137    pub fn gtk_gesture_single_set_touch_only(gesture: *mut GtkGestureSingle, touch_only: gboolean);
15138
15139    //=========================================================================
15140    // GtkGestureStylus
15141    //=========================================================================
15142    pub fn gtk_gesture_stylus_get_type() -> GType;
15143    pub fn gtk_gesture_stylus_new() -> *mut GtkGesture;
15144    pub fn gtk_gesture_stylus_get_axes(
15145        gesture: *mut GtkGestureStylus,
15146        axes: *mut gdk::GdkAxisUse,
15147        values: *mut *mut c_double,
15148    ) -> gboolean;
15149    pub fn gtk_gesture_stylus_get_axis(
15150        gesture: *mut GtkGestureStylus,
15151        axis: gdk::GdkAxisUse,
15152        value: *mut c_double,
15153    ) -> gboolean;
15154    pub fn gtk_gesture_stylus_get_backlog(
15155        gesture: *mut GtkGestureStylus,
15156        backlog: *mut *mut gdk::GdkTimeCoord,
15157        n_elems: *mut c_uint,
15158    ) -> gboolean;
15159    pub fn gtk_gesture_stylus_get_device_tool(
15160        gesture: *mut GtkGestureStylus,
15161    ) -> *mut gdk::GdkDeviceTool;
15162    #[cfg(feature = "v4_10")]
15163    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
15164    pub fn gtk_gesture_stylus_get_stylus_only(gesture: *mut GtkGestureStylus) -> gboolean;
15165    #[cfg(feature = "v4_10")]
15166    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
15167    pub fn gtk_gesture_stylus_set_stylus_only(
15168        gesture: *mut GtkGestureStylus,
15169        stylus_only: gboolean,
15170    );
15171
15172    //=========================================================================
15173    // GtkGestureSwipe
15174    //=========================================================================
15175    pub fn gtk_gesture_swipe_get_type() -> GType;
15176    pub fn gtk_gesture_swipe_new() -> *mut GtkGesture;
15177    pub fn gtk_gesture_swipe_get_velocity(
15178        gesture: *mut GtkGestureSwipe,
15179        velocity_x: *mut c_double,
15180        velocity_y: *mut c_double,
15181    ) -> gboolean;
15182
15183    //=========================================================================
15184    // GtkGestureZoom
15185    //=========================================================================
15186    pub fn gtk_gesture_zoom_get_type() -> GType;
15187    pub fn gtk_gesture_zoom_new() -> *mut GtkGesture;
15188    pub fn gtk_gesture_zoom_get_scale_delta(gesture: *mut GtkGestureZoom) -> c_double;
15189
15190    //=========================================================================
15191    // GtkGraphicsOffload
15192    //=========================================================================
15193    #[cfg(feature = "v4_14")]
15194    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15195    pub fn gtk_graphics_offload_get_type() -> GType;
15196    #[cfg(feature = "v4_14")]
15197    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15198    pub fn gtk_graphics_offload_new(child: *mut GtkWidget) -> *mut GtkWidget;
15199    #[cfg(feature = "v4_16")]
15200    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
15201    pub fn gtk_graphics_offload_get_black_background(self_: *mut GtkGraphicsOffload) -> gboolean;
15202    #[cfg(feature = "v4_14")]
15203    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15204    pub fn gtk_graphics_offload_get_child(self_: *mut GtkGraphicsOffload) -> *mut GtkWidget;
15205    #[cfg(feature = "v4_14")]
15206    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15207    pub fn gtk_graphics_offload_get_enabled(
15208        self_: *mut GtkGraphicsOffload,
15209    ) -> GtkGraphicsOffloadEnabled;
15210    #[cfg(feature = "v4_16")]
15211    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
15212    pub fn gtk_graphics_offload_set_black_background(
15213        self_: *mut GtkGraphicsOffload,
15214        value: gboolean,
15215    );
15216    #[cfg(feature = "v4_14")]
15217    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15218    pub fn gtk_graphics_offload_set_child(self_: *mut GtkGraphicsOffload, child: *mut GtkWidget);
15219    #[cfg(feature = "v4_14")]
15220    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15221    pub fn gtk_graphics_offload_set_enabled(
15222        self_: *mut GtkGraphicsOffload,
15223        enabled: GtkGraphicsOffloadEnabled,
15224    );
15225
15226    //=========================================================================
15227    // GtkGrid
15228    //=========================================================================
15229    pub fn gtk_grid_get_type() -> GType;
15230    pub fn gtk_grid_new() -> *mut GtkWidget;
15231    pub fn gtk_grid_attach(
15232        grid: *mut GtkGrid,
15233        child: *mut GtkWidget,
15234        column: c_int,
15235        row: c_int,
15236        width: c_int,
15237        height: c_int,
15238    );
15239    pub fn gtk_grid_attach_next_to(
15240        grid: *mut GtkGrid,
15241        child: *mut GtkWidget,
15242        sibling: *mut GtkWidget,
15243        side: GtkPositionType,
15244        width: c_int,
15245        height: c_int,
15246    );
15247    pub fn gtk_grid_get_baseline_row(grid: *mut GtkGrid) -> c_int;
15248    pub fn gtk_grid_get_child_at(grid: *mut GtkGrid, column: c_int, row: c_int) -> *mut GtkWidget;
15249    pub fn gtk_grid_get_column_homogeneous(grid: *mut GtkGrid) -> gboolean;
15250    pub fn gtk_grid_get_column_spacing(grid: *mut GtkGrid) -> c_uint;
15251    pub fn gtk_grid_get_row_baseline_position(
15252        grid: *mut GtkGrid,
15253        row: c_int,
15254    ) -> GtkBaselinePosition;
15255    pub fn gtk_grid_get_row_homogeneous(grid: *mut GtkGrid) -> gboolean;
15256    pub fn gtk_grid_get_row_spacing(grid: *mut GtkGrid) -> c_uint;
15257    pub fn gtk_grid_insert_column(grid: *mut GtkGrid, position: c_int);
15258    pub fn gtk_grid_insert_next_to(
15259        grid: *mut GtkGrid,
15260        sibling: *mut GtkWidget,
15261        side: GtkPositionType,
15262    );
15263    pub fn gtk_grid_insert_row(grid: *mut GtkGrid, position: c_int);
15264    pub fn gtk_grid_query_child(
15265        grid: *mut GtkGrid,
15266        child: *mut GtkWidget,
15267        column: *mut c_int,
15268        row: *mut c_int,
15269        width: *mut c_int,
15270        height: *mut c_int,
15271    );
15272    pub fn gtk_grid_remove(grid: *mut GtkGrid, child: *mut GtkWidget);
15273    pub fn gtk_grid_remove_column(grid: *mut GtkGrid, position: c_int);
15274    pub fn gtk_grid_remove_row(grid: *mut GtkGrid, position: c_int);
15275    pub fn gtk_grid_set_baseline_row(grid: *mut GtkGrid, row: c_int);
15276    pub fn gtk_grid_set_column_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
15277    pub fn gtk_grid_set_column_spacing(grid: *mut GtkGrid, spacing: c_uint);
15278    pub fn gtk_grid_set_row_baseline_position(
15279        grid: *mut GtkGrid,
15280        row: c_int,
15281        pos: GtkBaselinePosition,
15282    );
15283    pub fn gtk_grid_set_row_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
15284    pub fn gtk_grid_set_row_spacing(grid: *mut GtkGrid, spacing: c_uint);
15285
15286    //=========================================================================
15287    // GtkGridLayout
15288    //=========================================================================
15289    pub fn gtk_grid_layout_get_type() -> GType;
15290    pub fn gtk_grid_layout_new() -> *mut GtkLayoutManager;
15291    pub fn gtk_grid_layout_get_baseline_row(grid: *mut GtkGridLayout) -> c_int;
15292    pub fn gtk_grid_layout_get_column_homogeneous(grid: *mut GtkGridLayout) -> gboolean;
15293    pub fn gtk_grid_layout_get_column_spacing(grid: *mut GtkGridLayout) -> c_uint;
15294    pub fn gtk_grid_layout_get_row_baseline_position(
15295        grid: *mut GtkGridLayout,
15296        row: c_int,
15297    ) -> GtkBaselinePosition;
15298    pub fn gtk_grid_layout_get_row_homogeneous(grid: *mut GtkGridLayout) -> gboolean;
15299    pub fn gtk_grid_layout_get_row_spacing(grid: *mut GtkGridLayout) -> c_uint;
15300    pub fn gtk_grid_layout_set_baseline_row(grid: *mut GtkGridLayout, row: c_int);
15301    pub fn gtk_grid_layout_set_column_homogeneous(grid: *mut GtkGridLayout, homogeneous: gboolean);
15302    pub fn gtk_grid_layout_set_column_spacing(grid: *mut GtkGridLayout, spacing: c_uint);
15303    pub fn gtk_grid_layout_set_row_baseline_position(
15304        grid: *mut GtkGridLayout,
15305        row: c_int,
15306        pos: GtkBaselinePosition,
15307    );
15308    pub fn gtk_grid_layout_set_row_homogeneous(grid: *mut GtkGridLayout, homogeneous: gboolean);
15309    pub fn gtk_grid_layout_set_row_spacing(grid: *mut GtkGridLayout, spacing: c_uint);
15310
15311    //=========================================================================
15312    // GtkGridLayoutChild
15313    //=========================================================================
15314    pub fn gtk_grid_layout_child_get_type() -> GType;
15315    pub fn gtk_grid_layout_child_get_column(child: *mut GtkGridLayoutChild) -> c_int;
15316    pub fn gtk_grid_layout_child_get_column_span(child: *mut GtkGridLayoutChild) -> c_int;
15317    pub fn gtk_grid_layout_child_get_row(child: *mut GtkGridLayoutChild) -> c_int;
15318    pub fn gtk_grid_layout_child_get_row_span(child: *mut GtkGridLayoutChild) -> c_int;
15319    pub fn gtk_grid_layout_child_set_column(child: *mut GtkGridLayoutChild, column: c_int);
15320    pub fn gtk_grid_layout_child_set_column_span(child: *mut GtkGridLayoutChild, span: c_int);
15321    pub fn gtk_grid_layout_child_set_row(child: *mut GtkGridLayoutChild, row: c_int);
15322    pub fn gtk_grid_layout_child_set_row_span(child: *mut GtkGridLayoutChild, span: c_int);
15323
15324    //=========================================================================
15325    // GtkGridView
15326    //=========================================================================
15327    pub fn gtk_grid_view_get_type() -> GType;
15328    pub fn gtk_grid_view_new(
15329        model: *mut GtkSelectionModel,
15330        factory: *mut GtkListItemFactory,
15331    ) -> *mut GtkWidget;
15332    pub fn gtk_grid_view_get_enable_rubberband(self_: *mut GtkGridView) -> gboolean;
15333    pub fn gtk_grid_view_get_factory(self_: *mut GtkGridView) -> *mut GtkListItemFactory;
15334    pub fn gtk_grid_view_get_max_columns(self_: *mut GtkGridView) -> c_uint;
15335    pub fn gtk_grid_view_get_min_columns(self_: *mut GtkGridView) -> c_uint;
15336    pub fn gtk_grid_view_get_model(self_: *mut GtkGridView) -> *mut GtkSelectionModel;
15337    pub fn gtk_grid_view_get_single_click_activate(self_: *mut GtkGridView) -> gboolean;
15338    #[cfg(feature = "v4_12")]
15339    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15340    pub fn gtk_grid_view_get_tab_behavior(self_: *mut GtkGridView) -> GtkListTabBehavior;
15341    #[cfg(feature = "v4_12")]
15342    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15343    pub fn gtk_grid_view_scroll_to(
15344        self_: *mut GtkGridView,
15345        pos: c_uint,
15346        flags: GtkListScrollFlags,
15347        scroll: *mut GtkScrollInfo,
15348    );
15349    pub fn gtk_grid_view_set_enable_rubberband(
15350        self_: *mut GtkGridView,
15351        enable_rubberband: gboolean,
15352    );
15353    pub fn gtk_grid_view_set_factory(self_: *mut GtkGridView, factory: *mut GtkListItemFactory);
15354    pub fn gtk_grid_view_set_max_columns(self_: *mut GtkGridView, max_columns: c_uint);
15355    pub fn gtk_grid_view_set_min_columns(self_: *mut GtkGridView, min_columns: c_uint);
15356    pub fn gtk_grid_view_set_model(self_: *mut GtkGridView, model: *mut GtkSelectionModel);
15357    pub fn gtk_grid_view_set_single_click_activate(
15358        self_: *mut GtkGridView,
15359        single_click_activate: gboolean,
15360    );
15361    #[cfg(feature = "v4_12")]
15362    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15363    pub fn gtk_grid_view_set_tab_behavior(
15364        self_: *mut GtkGridView,
15365        tab_behavior: GtkListTabBehavior,
15366    );
15367
15368    //=========================================================================
15369    // GtkHeaderBar
15370    //=========================================================================
15371    pub fn gtk_header_bar_get_type() -> GType;
15372    pub fn gtk_header_bar_new() -> *mut GtkWidget;
15373    pub fn gtk_header_bar_get_decoration_layout(bar: *mut GtkHeaderBar) -> *const c_char;
15374    pub fn gtk_header_bar_get_show_title_buttons(bar: *mut GtkHeaderBar) -> gboolean;
15375    pub fn gtk_header_bar_get_title_widget(bar: *mut GtkHeaderBar) -> *mut GtkWidget;
15376    #[cfg(feature = "v4_18")]
15377    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15378    pub fn gtk_header_bar_get_use_native_controls(bar: *mut GtkHeaderBar) -> gboolean;
15379    pub fn gtk_header_bar_pack_end(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15380    pub fn gtk_header_bar_pack_start(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15381    pub fn gtk_header_bar_remove(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15382    pub fn gtk_header_bar_set_decoration_layout(bar: *mut GtkHeaderBar, layout: *const c_char);
15383    pub fn gtk_header_bar_set_show_title_buttons(bar: *mut GtkHeaderBar, setting: gboolean);
15384    pub fn gtk_header_bar_set_title_widget(bar: *mut GtkHeaderBar, title_widget: *mut GtkWidget);
15385    #[cfg(feature = "v4_18")]
15386    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15387    pub fn gtk_header_bar_set_use_native_controls(bar: *mut GtkHeaderBar, setting: gboolean);
15388
15389    //=========================================================================
15390    // GtkIMContext
15391    //=========================================================================
15392    pub fn gtk_im_context_get_type() -> GType;
15393    #[cfg(feature = "v4_14")]
15394    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15395    pub fn gtk_im_context_activate_osk(
15396        context: *mut GtkIMContext,
15397        event: *mut gdk::GdkEvent,
15398    ) -> gboolean;
15399    pub fn gtk_im_context_delete_surrounding(
15400        context: *mut GtkIMContext,
15401        offset: c_int,
15402        n_chars: c_int,
15403    ) -> gboolean;
15404    pub fn gtk_im_context_filter_key(
15405        context: *mut GtkIMContext,
15406        press: gboolean,
15407        surface: *mut gdk::GdkSurface,
15408        device: *mut gdk::GdkDevice,
15409        time: u32,
15410        keycode: c_uint,
15411        state: gdk::GdkModifierType,
15412        group: c_int,
15413    ) -> gboolean;
15414    pub fn gtk_im_context_filter_keypress(
15415        context: *mut GtkIMContext,
15416        event: *mut gdk::GdkEvent,
15417    ) -> gboolean;
15418    pub fn gtk_im_context_focus_in(context: *mut GtkIMContext);
15419    pub fn gtk_im_context_focus_out(context: *mut GtkIMContext);
15420    pub fn gtk_im_context_get_preedit_string(
15421        context: *mut GtkIMContext,
15422        str: *mut *mut c_char,
15423        attrs: *mut *mut pango::PangoAttrList,
15424        cursor_pos: *mut c_int,
15425    );
15426    pub fn gtk_im_context_get_surrounding(
15427        context: *mut GtkIMContext,
15428        text: *mut *mut c_char,
15429        cursor_index: *mut c_int,
15430    ) -> gboolean;
15431    #[cfg(feature = "v4_2")]
15432    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15433    pub fn gtk_im_context_get_surrounding_with_selection(
15434        context: *mut GtkIMContext,
15435        text: *mut *mut c_char,
15436        cursor_index: *mut c_int,
15437        anchor_index: *mut c_int,
15438    ) -> gboolean;
15439    pub fn gtk_im_context_reset(context: *mut GtkIMContext);
15440    pub fn gtk_im_context_set_client_widget(context: *mut GtkIMContext, widget: *mut GtkWidget);
15441    pub fn gtk_im_context_set_cursor_location(
15442        context: *mut GtkIMContext,
15443        area: *const gdk::GdkRectangle,
15444    );
15445    pub fn gtk_im_context_set_surrounding(
15446        context: *mut GtkIMContext,
15447        text: *const c_char,
15448        len: c_int,
15449        cursor_index: c_int,
15450    );
15451    #[cfg(feature = "v4_2")]
15452    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15453    pub fn gtk_im_context_set_surrounding_with_selection(
15454        context: *mut GtkIMContext,
15455        text: *const c_char,
15456        len: c_int,
15457        cursor_index: c_int,
15458        anchor_index: c_int,
15459    );
15460    pub fn gtk_im_context_set_use_preedit(context: *mut GtkIMContext, use_preedit: gboolean);
15461
15462    //=========================================================================
15463    // GtkIMContextSimple
15464    //=========================================================================
15465    pub fn gtk_im_context_simple_get_type() -> GType;
15466    pub fn gtk_im_context_simple_new() -> *mut GtkIMContext;
15467    pub fn gtk_im_context_simple_add_compose_file(
15468        context_simple: *mut GtkIMContextSimple,
15469        compose_file: *const c_char,
15470    );
15471    pub fn gtk_im_context_simple_add_table(
15472        context_simple: *mut GtkIMContextSimple,
15473        data: *mut u16,
15474        max_seq_len: c_int,
15475        n_seqs: c_int,
15476    );
15477
15478    //=========================================================================
15479    // GtkIMMulticontext
15480    //=========================================================================
15481    pub fn gtk_im_multicontext_get_type() -> GType;
15482    pub fn gtk_im_multicontext_new() -> *mut GtkIMContext;
15483    pub fn gtk_im_multicontext_get_context_id(context: *mut GtkIMMulticontext) -> *const c_char;
15484    pub fn gtk_im_multicontext_set_context_id(
15485        context: *mut GtkIMMulticontext,
15486        context_id: *const c_char,
15487    );
15488
15489    //=========================================================================
15490    // GtkIconPaintable
15491    //=========================================================================
15492    pub fn gtk_icon_paintable_get_type() -> GType;
15493    pub fn gtk_icon_paintable_new_for_file(
15494        file: *mut gio::GFile,
15495        size: c_int,
15496        scale: c_int,
15497    ) -> *mut GtkIconPaintable;
15498    pub fn gtk_icon_paintable_get_file(self_: *mut GtkIconPaintable) -> *mut gio::GFile;
15499    pub fn gtk_icon_paintable_get_icon_name(self_: *mut GtkIconPaintable) -> *const c_char;
15500    pub fn gtk_icon_paintable_is_symbolic(self_: *mut GtkIconPaintable) -> gboolean;
15501
15502    //=========================================================================
15503    // GtkIconTheme
15504    //=========================================================================
15505    pub fn gtk_icon_theme_get_type() -> GType;
15506    pub fn gtk_icon_theme_new() -> *mut GtkIconTheme;
15507    pub fn gtk_icon_theme_get_for_display(display: *mut gdk::GdkDisplay) -> *mut GtkIconTheme;
15508    pub fn gtk_icon_theme_add_resource_path(self_: *mut GtkIconTheme, path: *const c_char);
15509    pub fn gtk_icon_theme_add_search_path(self_: *mut GtkIconTheme, path: *const c_char);
15510    pub fn gtk_icon_theme_get_display(self_: *mut GtkIconTheme) -> *mut gdk::GdkDisplay;
15511    pub fn gtk_icon_theme_get_icon_names(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15512    pub fn gtk_icon_theme_get_icon_sizes(
15513        self_: *mut GtkIconTheme,
15514        icon_name: *const c_char,
15515    ) -> *mut c_int;
15516    pub fn gtk_icon_theme_get_resource_path(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15517    pub fn gtk_icon_theme_get_search_path(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15518    pub fn gtk_icon_theme_get_theme_name(self_: *mut GtkIconTheme) -> *mut c_char;
15519    #[cfg(feature = "v4_2")]
15520    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15521    pub fn gtk_icon_theme_has_gicon(self_: *mut GtkIconTheme, gicon: *mut gio::GIcon) -> gboolean;
15522    pub fn gtk_icon_theme_has_icon(self_: *mut GtkIconTheme, icon_name: *const c_char) -> gboolean;
15523    pub fn gtk_icon_theme_lookup_by_gicon(
15524        self_: *mut GtkIconTheme,
15525        icon: *mut gio::GIcon,
15526        size: c_int,
15527        scale: c_int,
15528        direction: GtkTextDirection,
15529        flags: GtkIconLookupFlags,
15530    ) -> *mut GtkIconPaintable;
15531    pub fn gtk_icon_theme_lookup_icon(
15532        self_: *mut GtkIconTheme,
15533        icon_name: *const c_char,
15534        fallbacks: *mut *const c_char,
15535        size: c_int,
15536        scale: c_int,
15537        direction: GtkTextDirection,
15538        flags: GtkIconLookupFlags,
15539    ) -> *mut GtkIconPaintable;
15540    pub fn gtk_icon_theme_set_resource_path(self_: *mut GtkIconTheme, path: *const *const c_char);
15541    pub fn gtk_icon_theme_set_search_path(self_: *mut GtkIconTheme, path: *const *const c_char);
15542    pub fn gtk_icon_theme_set_theme_name(self_: *mut GtkIconTheme, theme_name: *const c_char);
15543
15544    //=========================================================================
15545    // GtkIconView
15546    //=========================================================================
15547    pub fn gtk_icon_view_get_type() -> GType;
15548    pub fn gtk_icon_view_new() -> *mut GtkWidget;
15549    pub fn gtk_icon_view_new_with_area(area: *mut GtkCellArea) -> *mut GtkWidget;
15550    pub fn gtk_icon_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
15551    pub fn gtk_icon_view_create_drag_icon(
15552        icon_view: *mut GtkIconView,
15553        path: *mut GtkTreePath,
15554    ) -> *mut gdk::GdkPaintable;
15555    pub fn gtk_icon_view_enable_model_drag_dest(
15556        icon_view: *mut GtkIconView,
15557        formats: *mut gdk::GdkContentFormats,
15558        actions: gdk::GdkDragAction,
15559    );
15560    pub fn gtk_icon_view_enable_model_drag_source(
15561        icon_view: *mut GtkIconView,
15562        start_button_mask: gdk::GdkModifierType,
15563        formats: *mut gdk::GdkContentFormats,
15564        actions: gdk::GdkDragAction,
15565    );
15566    pub fn gtk_icon_view_get_activate_on_single_click(icon_view: *mut GtkIconView) -> gboolean;
15567    pub fn gtk_icon_view_get_cell_rect(
15568        icon_view: *mut GtkIconView,
15569        path: *mut GtkTreePath,
15570        cell: *mut GtkCellRenderer,
15571        rect: *mut gdk::GdkRectangle,
15572    ) -> gboolean;
15573    pub fn gtk_icon_view_get_column_spacing(icon_view: *mut GtkIconView) -> c_int;
15574    pub fn gtk_icon_view_get_columns(icon_view: *mut GtkIconView) -> c_int;
15575    pub fn gtk_icon_view_get_cursor(
15576        icon_view: *mut GtkIconView,
15577        path: *mut *mut GtkTreePath,
15578        cell: *mut *mut GtkCellRenderer,
15579    ) -> gboolean;
15580    pub fn gtk_icon_view_get_dest_item_at_pos(
15581        icon_view: *mut GtkIconView,
15582        drag_x: c_int,
15583        drag_y: c_int,
15584        path: *mut *mut GtkTreePath,
15585        pos: *mut GtkIconViewDropPosition,
15586    ) -> gboolean;
15587    pub fn gtk_icon_view_get_drag_dest_item(
15588        icon_view: *mut GtkIconView,
15589        path: *mut *mut GtkTreePath,
15590        pos: *mut GtkIconViewDropPosition,
15591    );
15592    pub fn gtk_icon_view_get_item_at_pos(
15593        icon_view: *mut GtkIconView,
15594        x: c_int,
15595        y: c_int,
15596        path: *mut *mut GtkTreePath,
15597        cell: *mut *mut GtkCellRenderer,
15598    ) -> gboolean;
15599    pub fn gtk_icon_view_get_item_column(
15600        icon_view: *mut GtkIconView,
15601        path: *mut GtkTreePath,
15602    ) -> c_int;
15603    pub fn gtk_icon_view_get_item_orientation(icon_view: *mut GtkIconView) -> GtkOrientation;
15604    pub fn gtk_icon_view_get_item_padding(icon_view: *mut GtkIconView) -> c_int;
15605    pub fn gtk_icon_view_get_item_row(icon_view: *mut GtkIconView, path: *mut GtkTreePath)
15606        -> c_int;
15607    pub fn gtk_icon_view_get_item_width(icon_view: *mut GtkIconView) -> c_int;
15608    pub fn gtk_icon_view_get_margin(icon_view: *mut GtkIconView) -> c_int;
15609    pub fn gtk_icon_view_get_markup_column(icon_view: *mut GtkIconView) -> c_int;
15610    pub fn gtk_icon_view_get_model(icon_view: *mut GtkIconView) -> *mut GtkTreeModel;
15611    pub fn gtk_icon_view_get_path_at_pos(
15612        icon_view: *mut GtkIconView,
15613        x: c_int,
15614        y: c_int,
15615    ) -> *mut GtkTreePath;
15616    pub fn gtk_icon_view_get_pixbuf_column(icon_view: *mut GtkIconView) -> c_int;
15617    pub fn gtk_icon_view_get_reorderable(icon_view: *mut GtkIconView) -> gboolean;
15618    pub fn gtk_icon_view_get_row_spacing(icon_view: *mut GtkIconView) -> c_int;
15619    pub fn gtk_icon_view_get_selected_items(icon_view: *mut GtkIconView) -> *mut glib::GList;
15620    pub fn gtk_icon_view_get_selection_mode(icon_view: *mut GtkIconView) -> GtkSelectionMode;
15621    pub fn gtk_icon_view_get_spacing(icon_view: *mut GtkIconView) -> c_int;
15622    pub fn gtk_icon_view_get_text_column(icon_view: *mut GtkIconView) -> c_int;
15623    pub fn gtk_icon_view_get_tooltip_column(icon_view: *mut GtkIconView) -> c_int;
15624    pub fn gtk_icon_view_get_tooltip_context(
15625        icon_view: *mut GtkIconView,
15626        x: c_int,
15627        y: c_int,
15628        keyboard_tip: gboolean,
15629        model: *mut *mut GtkTreeModel,
15630        path: *mut *mut GtkTreePath,
15631        iter: *mut GtkTreeIter,
15632    ) -> gboolean;
15633    pub fn gtk_icon_view_get_visible_range(
15634        icon_view: *mut GtkIconView,
15635        start_path: *mut *mut GtkTreePath,
15636        end_path: *mut *mut GtkTreePath,
15637    ) -> gboolean;
15638    pub fn gtk_icon_view_item_activated(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15639    pub fn gtk_icon_view_path_is_selected(
15640        icon_view: *mut GtkIconView,
15641        path: *mut GtkTreePath,
15642    ) -> gboolean;
15643    pub fn gtk_icon_view_scroll_to_path(
15644        icon_view: *mut GtkIconView,
15645        path: *mut GtkTreePath,
15646        use_align: gboolean,
15647        row_align: c_float,
15648        col_align: c_float,
15649    );
15650    pub fn gtk_icon_view_select_all(icon_view: *mut GtkIconView);
15651    pub fn gtk_icon_view_select_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15652    pub fn gtk_icon_view_selected_foreach(
15653        icon_view: *mut GtkIconView,
15654        func: GtkIconViewForeachFunc,
15655        data: gpointer,
15656    );
15657    pub fn gtk_icon_view_set_activate_on_single_click(
15658        icon_view: *mut GtkIconView,
15659        single: gboolean,
15660    );
15661    pub fn gtk_icon_view_set_column_spacing(icon_view: *mut GtkIconView, column_spacing: c_int);
15662    pub fn gtk_icon_view_set_columns(icon_view: *mut GtkIconView, columns: c_int);
15663    pub fn gtk_icon_view_set_cursor(
15664        icon_view: *mut GtkIconView,
15665        path: *mut GtkTreePath,
15666        cell: *mut GtkCellRenderer,
15667        start_editing: gboolean,
15668    );
15669    pub fn gtk_icon_view_set_drag_dest_item(
15670        icon_view: *mut GtkIconView,
15671        path: *mut GtkTreePath,
15672        pos: GtkIconViewDropPosition,
15673    );
15674    pub fn gtk_icon_view_set_item_orientation(
15675        icon_view: *mut GtkIconView,
15676        orientation: GtkOrientation,
15677    );
15678    pub fn gtk_icon_view_set_item_padding(icon_view: *mut GtkIconView, item_padding: c_int);
15679    pub fn gtk_icon_view_set_item_width(icon_view: *mut GtkIconView, item_width: c_int);
15680    pub fn gtk_icon_view_set_margin(icon_view: *mut GtkIconView, margin: c_int);
15681    pub fn gtk_icon_view_set_markup_column(icon_view: *mut GtkIconView, column: c_int);
15682    pub fn gtk_icon_view_set_model(icon_view: *mut GtkIconView, model: *mut GtkTreeModel);
15683    pub fn gtk_icon_view_set_pixbuf_column(icon_view: *mut GtkIconView, column: c_int);
15684    pub fn gtk_icon_view_set_reorderable(icon_view: *mut GtkIconView, reorderable: gboolean);
15685    pub fn gtk_icon_view_set_row_spacing(icon_view: *mut GtkIconView, row_spacing: c_int);
15686    pub fn gtk_icon_view_set_selection_mode(icon_view: *mut GtkIconView, mode: GtkSelectionMode);
15687    pub fn gtk_icon_view_set_spacing(icon_view: *mut GtkIconView, spacing: c_int);
15688    pub fn gtk_icon_view_set_text_column(icon_view: *mut GtkIconView, column: c_int);
15689    pub fn gtk_icon_view_set_tooltip_cell(
15690        icon_view: *mut GtkIconView,
15691        tooltip: *mut GtkTooltip,
15692        path: *mut GtkTreePath,
15693        cell: *mut GtkCellRenderer,
15694    );
15695    pub fn gtk_icon_view_set_tooltip_column(icon_view: *mut GtkIconView, column: c_int);
15696    pub fn gtk_icon_view_set_tooltip_item(
15697        icon_view: *mut GtkIconView,
15698        tooltip: *mut GtkTooltip,
15699        path: *mut GtkTreePath,
15700    );
15701    pub fn gtk_icon_view_unselect_all(icon_view: *mut GtkIconView);
15702    pub fn gtk_icon_view_unselect_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15703    pub fn gtk_icon_view_unset_model_drag_dest(icon_view: *mut GtkIconView);
15704    pub fn gtk_icon_view_unset_model_drag_source(icon_view: *mut GtkIconView);
15705
15706    //=========================================================================
15707    // GtkImage
15708    //=========================================================================
15709    pub fn gtk_image_get_type() -> GType;
15710    pub fn gtk_image_new() -> *mut GtkWidget;
15711    pub fn gtk_image_new_from_file(filename: *const c_char) -> *mut GtkWidget;
15712    pub fn gtk_image_new_from_gicon(icon: *mut gio::GIcon) -> *mut GtkWidget;
15713    pub fn gtk_image_new_from_icon_name(icon_name: *const c_char) -> *mut GtkWidget;
15714    pub fn gtk_image_new_from_paintable(paintable: *mut gdk::GdkPaintable) -> *mut GtkWidget;
15715    pub fn gtk_image_new_from_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
15716    pub fn gtk_image_new_from_resource(resource_path: *const c_char) -> *mut GtkWidget;
15717    pub fn gtk_image_clear(image: *mut GtkImage);
15718    pub fn gtk_image_get_gicon(image: *mut GtkImage) -> *mut gio::GIcon;
15719    pub fn gtk_image_get_icon_name(image: *mut GtkImage) -> *const c_char;
15720    pub fn gtk_image_get_icon_size(image: *mut GtkImage) -> GtkIconSize;
15721    pub fn gtk_image_get_paintable(image: *mut GtkImage) -> *mut gdk::GdkPaintable;
15722    pub fn gtk_image_get_pixel_size(image: *mut GtkImage) -> c_int;
15723    pub fn gtk_image_get_storage_type(image: *mut GtkImage) -> GtkImageType;
15724    pub fn gtk_image_set_from_file(image: *mut GtkImage, filename: *const c_char);
15725    pub fn gtk_image_set_from_gicon(image: *mut GtkImage, icon: *mut gio::GIcon);
15726    pub fn gtk_image_set_from_icon_name(image: *mut GtkImage, icon_name: *const c_char);
15727    pub fn gtk_image_set_from_paintable(image: *mut GtkImage, paintable: *mut gdk::GdkPaintable);
15728    pub fn gtk_image_set_from_pixbuf(image: *mut GtkImage, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
15729    pub fn gtk_image_set_from_resource(image: *mut GtkImage, resource_path: *const c_char);
15730    pub fn gtk_image_set_icon_size(image: *mut GtkImage, icon_size: GtkIconSize);
15731    pub fn gtk_image_set_pixel_size(image: *mut GtkImage, pixel_size: c_int);
15732
15733    //=========================================================================
15734    // GtkInfoBar
15735    //=========================================================================
15736    pub fn gtk_info_bar_get_type() -> GType;
15737    pub fn gtk_info_bar_new() -> *mut GtkWidget;
15738    pub fn gtk_info_bar_new_with_buttons(first_button_text: *const c_char, ...) -> *mut GtkWidget;
15739    pub fn gtk_info_bar_add_action_widget(
15740        info_bar: *mut GtkInfoBar,
15741        child: *mut GtkWidget,
15742        response_id: GtkResponseType,
15743    );
15744    pub fn gtk_info_bar_add_button(
15745        info_bar: *mut GtkInfoBar,
15746        button_text: *const c_char,
15747        response_id: GtkResponseType,
15748    ) -> *mut GtkButton;
15749    pub fn gtk_info_bar_add_buttons(
15750        info_bar: *mut GtkInfoBar,
15751        first_button_text: *const c_char,
15752        ...
15753    );
15754    pub fn gtk_info_bar_add_child(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15755    pub fn gtk_info_bar_get_message_type(info_bar: *mut GtkInfoBar) -> GtkMessageType;
15756    pub fn gtk_info_bar_get_revealed(info_bar: *mut GtkInfoBar) -> gboolean;
15757    pub fn gtk_info_bar_get_show_close_button(info_bar: *mut GtkInfoBar) -> gboolean;
15758    pub fn gtk_info_bar_remove_action_widget(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15759    pub fn gtk_info_bar_remove_child(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15760    pub fn gtk_info_bar_response(info_bar: *mut GtkInfoBar, response_id: GtkResponseType);
15761    pub fn gtk_info_bar_set_default_response(
15762        info_bar: *mut GtkInfoBar,
15763        response_id: GtkResponseType,
15764    );
15765    pub fn gtk_info_bar_set_message_type(info_bar: *mut GtkInfoBar, message_type: GtkMessageType);
15766    pub fn gtk_info_bar_set_response_sensitive(
15767        info_bar: *mut GtkInfoBar,
15768        response_id: GtkResponseType,
15769        setting: gboolean,
15770    );
15771    pub fn gtk_info_bar_set_revealed(info_bar: *mut GtkInfoBar, revealed: gboolean);
15772    pub fn gtk_info_bar_set_show_close_button(info_bar: *mut GtkInfoBar, setting: gboolean);
15773
15774    //=========================================================================
15775    // GtkInscription
15776    //=========================================================================
15777    #[cfg(feature = "v4_8")]
15778    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15779    pub fn gtk_inscription_get_type() -> GType;
15780    #[cfg(feature = "v4_8")]
15781    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15782    pub fn gtk_inscription_new(text: *const c_char) -> *mut GtkWidget;
15783    #[cfg(feature = "v4_8")]
15784    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15785    pub fn gtk_inscription_get_attributes(self_: *mut GtkInscription) -> *mut pango::PangoAttrList;
15786    #[cfg(feature = "v4_8")]
15787    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15788    pub fn gtk_inscription_get_min_chars(self_: *mut GtkInscription) -> c_uint;
15789    #[cfg(feature = "v4_8")]
15790    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15791    pub fn gtk_inscription_get_min_lines(self_: *mut GtkInscription) -> c_uint;
15792    #[cfg(feature = "v4_8")]
15793    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15794    pub fn gtk_inscription_get_nat_chars(self_: *mut GtkInscription) -> c_uint;
15795    #[cfg(feature = "v4_8")]
15796    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15797    pub fn gtk_inscription_get_nat_lines(self_: *mut GtkInscription) -> c_uint;
15798    #[cfg(feature = "v4_8")]
15799    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15800    pub fn gtk_inscription_get_text(self_: *mut GtkInscription) -> *const c_char;
15801    #[cfg(feature = "v4_8")]
15802    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15803    pub fn gtk_inscription_get_text_overflow(self_: *mut GtkInscription) -> GtkInscriptionOverflow;
15804    #[cfg(feature = "v4_8")]
15805    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15806    pub fn gtk_inscription_get_wrap_mode(self_: *mut GtkInscription) -> pango::PangoWrapMode;
15807    #[cfg(feature = "v4_8")]
15808    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15809    pub fn gtk_inscription_get_xalign(self_: *mut GtkInscription) -> c_float;
15810    #[cfg(feature = "v4_8")]
15811    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15812    pub fn gtk_inscription_get_yalign(self_: *mut GtkInscription) -> c_float;
15813    #[cfg(feature = "v4_8")]
15814    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15815    pub fn gtk_inscription_set_attributes(
15816        self_: *mut GtkInscription,
15817        attrs: *mut pango::PangoAttrList,
15818    );
15819    #[cfg(feature = "v4_8")]
15820    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15821    pub fn gtk_inscription_set_markup(self_: *mut GtkInscription, markup: *const c_char);
15822    #[cfg(feature = "v4_8")]
15823    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15824    pub fn gtk_inscription_set_min_chars(self_: *mut GtkInscription, min_chars: c_uint);
15825    #[cfg(feature = "v4_8")]
15826    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15827    pub fn gtk_inscription_set_min_lines(self_: *mut GtkInscription, min_lines: c_uint);
15828    #[cfg(feature = "v4_8")]
15829    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15830    pub fn gtk_inscription_set_nat_chars(self_: *mut GtkInscription, nat_chars: c_uint);
15831    #[cfg(feature = "v4_8")]
15832    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15833    pub fn gtk_inscription_set_nat_lines(self_: *mut GtkInscription, nat_lines: c_uint);
15834    #[cfg(feature = "v4_8")]
15835    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15836    pub fn gtk_inscription_set_text(self_: *mut GtkInscription, text: *const c_char);
15837    #[cfg(feature = "v4_8")]
15838    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15839    pub fn gtk_inscription_set_text_overflow(
15840        self_: *mut GtkInscription,
15841        overflow: GtkInscriptionOverflow,
15842    );
15843    #[cfg(feature = "v4_8")]
15844    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15845    pub fn gtk_inscription_set_wrap_mode(
15846        self_: *mut GtkInscription,
15847        wrap_mode: pango::PangoWrapMode,
15848    );
15849    #[cfg(feature = "v4_8")]
15850    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15851    pub fn gtk_inscription_set_xalign(self_: *mut GtkInscription, xalign: c_float);
15852    #[cfg(feature = "v4_8")]
15853    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15854    pub fn gtk_inscription_set_yalign(self_: *mut GtkInscription, yalign: c_float);
15855
15856    //=========================================================================
15857    // GtkKeyvalTrigger
15858    //=========================================================================
15859    pub fn gtk_keyval_trigger_get_type() -> GType;
15860    pub fn gtk_keyval_trigger_new(
15861        keyval: c_uint,
15862        modifiers: gdk::GdkModifierType,
15863    ) -> *mut GtkShortcutTrigger;
15864    pub fn gtk_keyval_trigger_get_keyval(self_: *mut GtkKeyvalTrigger) -> c_uint;
15865    pub fn gtk_keyval_trigger_get_modifiers(self_: *mut GtkKeyvalTrigger) -> gdk::GdkModifierType;
15866
15867    //=========================================================================
15868    // GtkLabel
15869    //=========================================================================
15870    pub fn gtk_label_get_type() -> GType;
15871    pub fn gtk_label_new(str: *const c_char) -> *mut GtkWidget;
15872    pub fn gtk_label_new_with_mnemonic(str: *const c_char) -> *mut GtkWidget;
15873    pub fn gtk_label_get_attributes(self_: *mut GtkLabel) -> *mut pango::PangoAttrList;
15874    pub fn gtk_label_get_current_uri(self_: *mut GtkLabel) -> *const c_char;
15875    pub fn gtk_label_get_ellipsize(self_: *mut GtkLabel) -> pango::PangoEllipsizeMode;
15876    pub fn gtk_label_get_extra_menu(self_: *mut GtkLabel) -> *mut gio::GMenuModel;
15877    pub fn gtk_label_get_justify(self_: *mut GtkLabel) -> GtkJustification;
15878    pub fn gtk_label_get_label(self_: *mut GtkLabel) -> *const c_char;
15879    pub fn gtk_label_get_layout(self_: *mut GtkLabel) -> *mut pango::PangoLayout;
15880    pub fn gtk_label_get_layout_offsets(self_: *mut GtkLabel, x: *mut c_int, y: *mut c_int);
15881    pub fn gtk_label_get_lines(self_: *mut GtkLabel) -> c_int;
15882    pub fn gtk_label_get_max_width_chars(self_: *mut GtkLabel) -> c_int;
15883    pub fn gtk_label_get_mnemonic_keyval(self_: *mut GtkLabel) -> c_uint;
15884    pub fn gtk_label_get_mnemonic_widget(self_: *mut GtkLabel) -> *mut GtkWidget;
15885    #[cfg(feature = "v4_6")]
15886    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
15887    pub fn gtk_label_get_natural_wrap_mode(self_: *mut GtkLabel) -> GtkNaturalWrapMode;
15888    pub fn gtk_label_get_selectable(self_: *mut GtkLabel) -> gboolean;
15889    pub fn gtk_label_get_selection_bounds(
15890        self_: *mut GtkLabel,
15891        start: *mut c_int,
15892        end: *mut c_int,
15893    ) -> gboolean;
15894    pub fn gtk_label_get_single_line_mode(self_: *mut GtkLabel) -> gboolean;
15895    #[cfg(feature = "v4_8")]
15896    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15897    pub fn gtk_label_get_tabs(self_: *mut GtkLabel) -> *mut pango::PangoTabArray;
15898    pub fn gtk_label_get_text(self_: *mut GtkLabel) -> *const c_char;
15899    pub fn gtk_label_get_use_markup(self_: *mut GtkLabel) -> gboolean;
15900    pub fn gtk_label_get_use_underline(self_: *mut GtkLabel) -> gboolean;
15901    pub fn gtk_label_get_width_chars(self_: *mut GtkLabel) -> c_int;
15902    pub fn gtk_label_get_wrap(self_: *mut GtkLabel) -> gboolean;
15903    pub fn gtk_label_get_wrap_mode(self_: *mut GtkLabel) -> pango::PangoWrapMode;
15904    pub fn gtk_label_get_xalign(self_: *mut GtkLabel) -> c_float;
15905    pub fn gtk_label_get_yalign(self_: *mut GtkLabel) -> c_float;
15906    pub fn gtk_label_select_region(self_: *mut GtkLabel, start_offset: c_int, end_offset: c_int);
15907    pub fn gtk_label_set_attributes(self_: *mut GtkLabel, attrs: *mut pango::PangoAttrList);
15908    pub fn gtk_label_set_ellipsize(self_: *mut GtkLabel, mode: pango::PangoEllipsizeMode);
15909    pub fn gtk_label_set_extra_menu(self_: *mut GtkLabel, model: *mut gio::GMenuModel);
15910    pub fn gtk_label_set_justify(self_: *mut GtkLabel, jtype: GtkJustification);
15911    pub fn gtk_label_set_label(self_: *mut GtkLabel, str: *const c_char);
15912    pub fn gtk_label_set_lines(self_: *mut GtkLabel, lines: c_int);
15913    pub fn gtk_label_set_markup(self_: *mut GtkLabel, str: *const c_char);
15914    pub fn gtk_label_set_markup_with_mnemonic(self_: *mut GtkLabel, str: *const c_char);
15915    pub fn gtk_label_set_max_width_chars(self_: *mut GtkLabel, n_chars: c_int);
15916    pub fn gtk_label_set_mnemonic_widget(self_: *mut GtkLabel, widget: *mut GtkWidget);
15917    #[cfg(feature = "v4_6")]
15918    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
15919    pub fn gtk_label_set_natural_wrap_mode(self_: *mut GtkLabel, wrap_mode: GtkNaturalWrapMode);
15920    pub fn gtk_label_set_selectable(self_: *mut GtkLabel, setting: gboolean);
15921    pub fn gtk_label_set_single_line_mode(self_: *mut GtkLabel, single_line_mode: gboolean);
15922    #[cfg(feature = "v4_8")]
15923    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15924    pub fn gtk_label_set_tabs(self_: *mut GtkLabel, tabs: *mut pango::PangoTabArray);
15925    pub fn gtk_label_set_text(self_: *mut GtkLabel, str: *const c_char);
15926    pub fn gtk_label_set_text_with_mnemonic(self_: *mut GtkLabel, str: *const c_char);
15927    pub fn gtk_label_set_use_markup(self_: *mut GtkLabel, setting: gboolean);
15928    pub fn gtk_label_set_use_underline(self_: *mut GtkLabel, setting: gboolean);
15929    pub fn gtk_label_set_width_chars(self_: *mut GtkLabel, n_chars: c_int);
15930    pub fn gtk_label_set_wrap(self_: *mut GtkLabel, wrap: gboolean);
15931    pub fn gtk_label_set_wrap_mode(self_: *mut GtkLabel, wrap_mode: pango::PangoWrapMode);
15932    pub fn gtk_label_set_xalign(self_: *mut GtkLabel, xalign: c_float);
15933    pub fn gtk_label_set_yalign(self_: *mut GtkLabel, yalign: c_float);
15934
15935    //=========================================================================
15936    // GtkLayoutChild
15937    //=========================================================================
15938    pub fn gtk_layout_child_get_type() -> GType;
15939    pub fn gtk_layout_child_get_child_widget(layout_child: *mut GtkLayoutChild) -> *mut GtkWidget;
15940    pub fn gtk_layout_child_get_layout_manager(
15941        layout_child: *mut GtkLayoutChild,
15942    ) -> *mut GtkLayoutManager;
15943
15944    //=========================================================================
15945    // GtkLayoutManager
15946    //=========================================================================
15947    pub fn gtk_layout_manager_get_type() -> GType;
15948    pub fn gtk_layout_manager_allocate(
15949        manager: *mut GtkLayoutManager,
15950        widget: *mut GtkWidget,
15951        width: c_int,
15952        height: c_int,
15953        baseline: c_int,
15954    );
15955    pub fn gtk_layout_manager_get_layout_child(
15956        manager: *mut GtkLayoutManager,
15957        child: *mut GtkWidget,
15958    ) -> *mut GtkLayoutChild;
15959    pub fn gtk_layout_manager_get_request_mode(
15960        manager: *mut GtkLayoutManager,
15961    ) -> GtkSizeRequestMode;
15962    pub fn gtk_layout_manager_get_widget(manager: *mut GtkLayoutManager) -> *mut GtkWidget;
15963    pub fn gtk_layout_manager_layout_changed(manager: *mut GtkLayoutManager);
15964    pub fn gtk_layout_manager_measure(
15965        manager: *mut GtkLayoutManager,
15966        widget: *mut GtkWidget,
15967        orientation: GtkOrientation,
15968        for_size: c_int,
15969        minimum: *mut c_int,
15970        natural: *mut c_int,
15971        minimum_baseline: *mut c_int,
15972        natural_baseline: *mut c_int,
15973    );
15974
15975    //=========================================================================
15976    // GtkLevelBar
15977    //=========================================================================
15978    pub fn gtk_level_bar_get_type() -> GType;
15979    pub fn gtk_level_bar_new() -> *mut GtkWidget;
15980    pub fn gtk_level_bar_new_for_interval(
15981        min_value: c_double,
15982        max_value: c_double,
15983    ) -> *mut GtkWidget;
15984    pub fn gtk_level_bar_add_offset_value(
15985        self_: *mut GtkLevelBar,
15986        name: *const c_char,
15987        value: c_double,
15988    );
15989    pub fn gtk_level_bar_get_inverted(self_: *mut GtkLevelBar) -> gboolean;
15990    pub fn gtk_level_bar_get_max_value(self_: *mut GtkLevelBar) -> c_double;
15991    pub fn gtk_level_bar_get_min_value(self_: *mut GtkLevelBar) -> c_double;
15992    pub fn gtk_level_bar_get_mode(self_: *mut GtkLevelBar) -> GtkLevelBarMode;
15993    pub fn gtk_level_bar_get_offset_value(
15994        self_: *mut GtkLevelBar,
15995        name: *const c_char,
15996        value: *mut c_double,
15997    ) -> gboolean;
15998    pub fn gtk_level_bar_get_value(self_: *mut GtkLevelBar) -> c_double;
15999    pub fn gtk_level_bar_remove_offset_value(self_: *mut GtkLevelBar, name: *const c_char);
16000    pub fn gtk_level_bar_set_inverted(self_: *mut GtkLevelBar, inverted: gboolean);
16001    pub fn gtk_level_bar_set_max_value(self_: *mut GtkLevelBar, value: c_double);
16002    pub fn gtk_level_bar_set_min_value(self_: *mut GtkLevelBar, value: c_double);
16003    pub fn gtk_level_bar_set_mode(self_: *mut GtkLevelBar, mode: GtkLevelBarMode);
16004    pub fn gtk_level_bar_set_value(self_: *mut GtkLevelBar, value: c_double);
16005
16006    //=========================================================================
16007    // GtkLinkButton
16008    //=========================================================================
16009    pub fn gtk_link_button_get_type() -> GType;
16010    pub fn gtk_link_button_new(uri: *const c_char) -> *mut GtkWidget;
16011    pub fn gtk_link_button_new_with_label(
16012        uri: *const c_char,
16013        label: *const c_char,
16014    ) -> *mut GtkWidget;
16015    pub fn gtk_link_button_get_uri(link_button: *mut GtkLinkButton) -> *const c_char;
16016    pub fn gtk_link_button_get_visited(link_button: *mut GtkLinkButton) -> gboolean;
16017    pub fn gtk_link_button_set_uri(link_button: *mut GtkLinkButton, uri: *const c_char);
16018    pub fn gtk_link_button_set_visited(link_button: *mut GtkLinkButton, visited: gboolean);
16019
16020    //=========================================================================
16021    // GtkListBase
16022    //=========================================================================
16023    pub fn gtk_list_base_get_type() -> GType;
16024
16025    //=========================================================================
16026    // GtkListBox
16027    //=========================================================================
16028    pub fn gtk_list_box_get_type() -> GType;
16029    pub fn gtk_list_box_new() -> *mut GtkWidget;
16030    pub fn gtk_list_box_append(box_: *mut GtkListBox, child: *mut GtkWidget);
16031    pub fn gtk_list_box_bind_model(
16032        box_: *mut GtkListBox,
16033        model: *mut gio::GListModel,
16034        create_widget_func: GtkListBoxCreateWidgetFunc,
16035        user_data: gpointer,
16036        user_data_free_func: glib::GDestroyNotify,
16037    );
16038    pub fn gtk_list_box_drag_highlight_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
16039    pub fn gtk_list_box_drag_unhighlight_row(box_: *mut GtkListBox);
16040    pub fn gtk_list_box_get_activate_on_single_click(box_: *mut GtkListBox) -> gboolean;
16041    pub fn gtk_list_box_get_adjustment(box_: *mut GtkListBox) -> *mut GtkAdjustment;
16042    pub fn gtk_list_box_get_row_at_index(
16043        box_: *mut GtkListBox,
16044        index_: c_int,
16045    ) -> *mut GtkListBoxRow;
16046    pub fn gtk_list_box_get_row_at_y(box_: *mut GtkListBox, y: c_int) -> *mut GtkListBoxRow;
16047    pub fn gtk_list_box_get_selected_row(box_: *mut GtkListBox) -> *mut GtkListBoxRow;
16048    pub fn gtk_list_box_get_selected_rows(box_: *mut GtkListBox) -> *mut glib::GList;
16049    pub fn gtk_list_box_get_selection_mode(box_: *mut GtkListBox) -> GtkSelectionMode;
16050    pub fn gtk_list_box_get_show_separators(box_: *mut GtkListBox) -> gboolean;
16051    #[cfg(feature = "v4_18")]
16052    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
16053    pub fn gtk_list_box_get_tab_behavior(box_: *mut GtkListBox) -> GtkListTabBehavior;
16054    pub fn gtk_list_box_insert(box_: *mut GtkListBox, child: *mut GtkWidget, position: c_int);
16055    pub fn gtk_list_box_invalidate_filter(box_: *mut GtkListBox);
16056    pub fn gtk_list_box_invalidate_headers(box_: *mut GtkListBox);
16057    pub fn gtk_list_box_invalidate_sort(box_: *mut GtkListBox);
16058    pub fn gtk_list_box_prepend(box_: *mut GtkListBox, child: *mut GtkWidget);
16059    pub fn gtk_list_box_remove(box_: *mut GtkListBox, child: *mut GtkWidget);
16060    #[cfg(feature = "v4_12")]
16061    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16062    pub fn gtk_list_box_remove_all(box_: *mut GtkListBox);
16063    pub fn gtk_list_box_select_all(box_: *mut GtkListBox);
16064    pub fn gtk_list_box_select_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
16065    pub fn gtk_list_box_selected_foreach(
16066        box_: *mut GtkListBox,
16067        func: GtkListBoxForeachFunc,
16068        data: gpointer,
16069    );
16070    pub fn gtk_list_box_set_activate_on_single_click(box_: *mut GtkListBox, single: gboolean);
16071    pub fn gtk_list_box_set_adjustment(box_: *mut GtkListBox, adjustment: *mut GtkAdjustment);
16072    pub fn gtk_list_box_set_filter_func(
16073        box_: *mut GtkListBox,
16074        filter_func: GtkListBoxFilterFunc,
16075        user_data: gpointer,
16076        destroy: glib::GDestroyNotify,
16077    );
16078    pub fn gtk_list_box_set_header_func(
16079        box_: *mut GtkListBox,
16080        update_header: GtkListBoxUpdateHeaderFunc,
16081        user_data: gpointer,
16082        destroy: glib::GDestroyNotify,
16083    );
16084    pub fn gtk_list_box_set_placeholder(box_: *mut GtkListBox, placeholder: *mut GtkWidget);
16085    pub fn gtk_list_box_set_selection_mode(box_: *mut GtkListBox, mode: GtkSelectionMode);
16086    pub fn gtk_list_box_set_show_separators(box_: *mut GtkListBox, show_separators: gboolean);
16087    pub fn gtk_list_box_set_sort_func(
16088        box_: *mut GtkListBox,
16089        sort_func: GtkListBoxSortFunc,
16090        user_data: gpointer,
16091        destroy: glib::GDestroyNotify,
16092    );
16093    #[cfg(feature = "v4_18")]
16094    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
16095    pub fn gtk_list_box_set_tab_behavior(box_: *mut GtkListBox, behavior: GtkListTabBehavior);
16096    pub fn gtk_list_box_unselect_all(box_: *mut GtkListBox);
16097    pub fn gtk_list_box_unselect_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
16098
16099    //=========================================================================
16100    // GtkListBoxRow
16101    //=========================================================================
16102    pub fn gtk_list_box_row_get_type() -> GType;
16103    pub fn gtk_list_box_row_new() -> *mut GtkWidget;
16104    pub fn gtk_list_box_row_changed(row: *mut GtkListBoxRow);
16105    pub fn gtk_list_box_row_get_activatable(row: *mut GtkListBoxRow) -> gboolean;
16106    pub fn gtk_list_box_row_get_child(row: *mut GtkListBoxRow) -> *mut GtkWidget;
16107    pub fn gtk_list_box_row_get_header(row: *mut GtkListBoxRow) -> *mut GtkWidget;
16108    pub fn gtk_list_box_row_get_index(row: *mut GtkListBoxRow) -> c_int;
16109    pub fn gtk_list_box_row_get_selectable(row: *mut GtkListBoxRow) -> gboolean;
16110    pub fn gtk_list_box_row_is_selected(row: *mut GtkListBoxRow) -> gboolean;
16111    pub fn gtk_list_box_row_set_activatable(row: *mut GtkListBoxRow, activatable: gboolean);
16112    pub fn gtk_list_box_row_set_child(row: *mut GtkListBoxRow, child: *mut GtkWidget);
16113    pub fn gtk_list_box_row_set_header(row: *mut GtkListBoxRow, header: *mut GtkWidget);
16114    pub fn gtk_list_box_row_set_selectable(row: *mut GtkListBoxRow, selectable: gboolean);
16115
16116    //=========================================================================
16117    // GtkListHeader
16118    //=========================================================================
16119    #[cfg(feature = "v4_12")]
16120    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16121    pub fn gtk_list_header_get_type() -> GType;
16122    #[cfg(feature = "v4_12")]
16123    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16124    pub fn gtk_list_header_get_child(self_: *mut GtkListHeader) -> *mut GtkWidget;
16125    #[cfg(feature = "v4_12")]
16126    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16127    pub fn gtk_list_header_get_end(self_: *mut GtkListHeader) -> c_uint;
16128    #[cfg(feature = "v4_12")]
16129    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16130    pub fn gtk_list_header_get_item(self_: *mut GtkListHeader) -> *mut gobject::GObject;
16131    #[cfg(feature = "v4_12")]
16132    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16133    pub fn gtk_list_header_get_n_items(self_: *mut GtkListHeader) -> c_uint;
16134    #[cfg(feature = "v4_12")]
16135    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16136    pub fn gtk_list_header_get_start(self_: *mut GtkListHeader) -> c_uint;
16137    #[cfg(feature = "v4_12")]
16138    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16139    pub fn gtk_list_header_set_child(self_: *mut GtkListHeader, child: *mut GtkWidget);
16140
16141    //=========================================================================
16142    // GtkListItem
16143    //=========================================================================
16144    pub fn gtk_list_item_get_type() -> GType;
16145    #[cfg(feature = "v4_12")]
16146    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16147    pub fn gtk_list_item_get_accessible_description(self_: *mut GtkListItem) -> *const c_char;
16148    #[cfg(feature = "v4_12")]
16149    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16150    pub fn gtk_list_item_get_accessible_label(self_: *mut GtkListItem) -> *const c_char;
16151    pub fn gtk_list_item_get_activatable(self_: *mut GtkListItem) -> gboolean;
16152    pub fn gtk_list_item_get_child(self_: *mut GtkListItem) -> *mut GtkWidget;
16153    #[cfg(feature = "v4_12")]
16154    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16155    pub fn gtk_list_item_get_focusable(self_: *mut GtkListItem) -> gboolean;
16156    pub fn gtk_list_item_get_item(self_: *mut GtkListItem) -> *mut gobject::GObject;
16157    pub fn gtk_list_item_get_position(self_: *mut GtkListItem) -> c_uint;
16158    pub fn gtk_list_item_get_selectable(self_: *mut GtkListItem) -> gboolean;
16159    pub fn gtk_list_item_get_selected(self_: *mut GtkListItem) -> gboolean;
16160    #[cfg(feature = "v4_12")]
16161    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16162    pub fn gtk_list_item_set_accessible_description(
16163        self_: *mut GtkListItem,
16164        description: *const c_char,
16165    );
16166    #[cfg(feature = "v4_12")]
16167    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16168    pub fn gtk_list_item_set_accessible_label(self_: *mut GtkListItem, label: *const c_char);
16169    pub fn gtk_list_item_set_activatable(self_: *mut GtkListItem, activatable: gboolean);
16170    pub fn gtk_list_item_set_child(self_: *mut GtkListItem, child: *mut GtkWidget);
16171    #[cfg(feature = "v4_12")]
16172    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16173    pub fn gtk_list_item_set_focusable(self_: *mut GtkListItem, focusable: gboolean);
16174    pub fn gtk_list_item_set_selectable(self_: *mut GtkListItem, selectable: gboolean);
16175
16176    //=========================================================================
16177    // GtkListItemFactory
16178    //=========================================================================
16179    pub fn gtk_list_item_factory_get_type() -> GType;
16180
16181    //=========================================================================
16182    // GtkListStore
16183    //=========================================================================
16184    pub fn gtk_list_store_get_type() -> GType;
16185    pub fn gtk_list_store_new(n_columns: c_int, ...) -> *mut GtkListStore;
16186    pub fn gtk_list_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkListStore;
16187    pub fn gtk_list_store_append(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
16188    pub fn gtk_list_store_clear(list_store: *mut GtkListStore);
16189    pub fn gtk_list_store_insert(
16190        list_store: *mut GtkListStore,
16191        iter: *mut GtkTreeIter,
16192        position: c_int,
16193    );
16194    pub fn gtk_list_store_insert_after(
16195        list_store: *mut GtkListStore,
16196        iter: *mut GtkTreeIter,
16197        sibling: *mut GtkTreeIter,
16198    );
16199    pub fn gtk_list_store_insert_before(
16200        list_store: *mut GtkListStore,
16201        iter: *mut GtkTreeIter,
16202        sibling: *mut GtkTreeIter,
16203    );
16204    pub fn gtk_list_store_insert_with_values(
16205        list_store: *mut GtkListStore,
16206        iter: *mut GtkTreeIter,
16207        position: c_int,
16208        ...
16209    );
16210    pub fn gtk_list_store_insert_with_valuesv(
16211        list_store: *mut GtkListStore,
16212        iter: *mut GtkTreeIter,
16213        position: c_int,
16214        columns: *mut c_int,
16215        values: *mut gobject::GValue,
16216        n_values: c_int,
16217    );
16218    pub fn gtk_list_store_iter_is_valid(
16219        list_store: *mut GtkListStore,
16220        iter: *mut GtkTreeIter,
16221    ) -> gboolean;
16222    pub fn gtk_list_store_move_after(
16223        store: *mut GtkListStore,
16224        iter: *mut GtkTreeIter,
16225        position: *mut GtkTreeIter,
16226    );
16227    pub fn gtk_list_store_move_before(
16228        store: *mut GtkListStore,
16229        iter: *mut GtkTreeIter,
16230        position: *mut GtkTreeIter,
16231    );
16232    pub fn gtk_list_store_prepend(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
16233    pub fn gtk_list_store_remove(list_store: *mut GtkListStore, iter: *mut GtkTreeIter)
16234        -> gboolean;
16235    pub fn gtk_list_store_reorder(store: *mut GtkListStore, new_order: *mut c_int);
16236    pub fn gtk_list_store_set(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, ...);
16237    pub fn gtk_list_store_set_column_types(
16238        list_store: *mut GtkListStore,
16239        n_columns: c_int,
16240        types: *mut GType,
16241    );
16242    //pub fn gtk_list_store_set_valist(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
16243    pub fn gtk_list_store_set_value(
16244        list_store: *mut GtkListStore,
16245        iter: *mut GtkTreeIter,
16246        column: c_int,
16247        value: *mut gobject::GValue,
16248    );
16249    pub fn gtk_list_store_set_valuesv(
16250        list_store: *mut GtkListStore,
16251        iter: *mut GtkTreeIter,
16252        columns: *mut c_int,
16253        values: *mut gobject::GValue,
16254        n_values: c_int,
16255    );
16256    pub fn gtk_list_store_swap(store: *mut GtkListStore, a: *mut GtkTreeIter, b: *mut GtkTreeIter);
16257
16258    //=========================================================================
16259    // GtkListView
16260    //=========================================================================
16261    pub fn gtk_list_view_get_type() -> GType;
16262    pub fn gtk_list_view_new(
16263        model: *mut GtkSelectionModel,
16264        factory: *mut GtkListItemFactory,
16265    ) -> *mut GtkWidget;
16266    pub fn gtk_list_view_get_enable_rubberband(self_: *mut GtkListView) -> gboolean;
16267    pub fn gtk_list_view_get_factory(self_: *mut GtkListView) -> *mut GtkListItemFactory;
16268    #[cfg(feature = "v4_12")]
16269    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16270    pub fn gtk_list_view_get_header_factory(self_: *mut GtkListView) -> *mut GtkListItemFactory;
16271    pub fn gtk_list_view_get_model(self_: *mut GtkListView) -> *mut GtkSelectionModel;
16272    pub fn gtk_list_view_get_show_separators(self_: *mut GtkListView) -> gboolean;
16273    pub fn gtk_list_view_get_single_click_activate(self_: *mut GtkListView) -> gboolean;
16274    #[cfg(feature = "v4_12")]
16275    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16276    pub fn gtk_list_view_get_tab_behavior(self_: *mut GtkListView) -> GtkListTabBehavior;
16277    #[cfg(feature = "v4_12")]
16278    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16279    pub fn gtk_list_view_scroll_to(
16280        self_: *mut GtkListView,
16281        pos: c_uint,
16282        flags: GtkListScrollFlags,
16283        scroll: *mut GtkScrollInfo,
16284    );
16285    pub fn gtk_list_view_set_enable_rubberband(
16286        self_: *mut GtkListView,
16287        enable_rubberband: gboolean,
16288    );
16289    pub fn gtk_list_view_set_factory(self_: *mut GtkListView, factory: *mut GtkListItemFactory);
16290    #[cfg(feature = "v4_12")]
16291    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16292    pub fn gtk_list_view_set_header_factory(
16293        self_: *mut GtkListView,
16294        factory: *mut GtkListItemFactory,
16295    );
16296    pub fn gtk_list_view_set_model(self_: *mut GtkListView, model: *mut GtkSelectionModel);
16297    pub fn gtk_list_view_set_show_separators(self_: *mut GtkListView, show_separators: gboolean);
16298    pub fn gtk_list_view_set_single_click_activate(
16299        self_: *mut GtkListView,
16300        single_click_activate: gboolean,
16301    );
16302    #[cfg(feature = "v4_12")]
16303    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16304    pub fn gtk_list_view_set_tab_behavior(
16305        self_: *mut GtkListView,
16306        tab_behavior: GtkListTabBehavior,
16307    );
16308
16309    //=========================================================================
16310    // GtkLockButton
16311    //=========================================================================
16312    pub fn gtk_lock_button_get_type() -> GType;
16313    pub fn gtk_lock_button_new(permission: *mut gio::GPermission) -> *mut GtkWidget;
16314    pub fn gtk_lock_button_get_permission(button: *mut GtkLockButton) -> *mut gio::GPermission;
16315    pub fn gtk_lock_button_set_permission(
16316        button: *mut GtkLockButton,
16317        permission: *mut gio::GPermission,
16318    );
16319
16320    //=========================================================================
16321    // GtkMapListModel
16322    //=========================================================================
16323    pub fn gtk_map_list_model_get_type() -> GType;
16324    pub fn gtk_map_list_model_new(
16325        model: *mut gio::GListModel,
16326        map_func: GtkMapListModelMapFunc,
16327        user_data: gpointer,
16328        user_destroy: glib::GDestroyNotify,
16329    ) -> *mut GtkMapListModel;
16330    pub fn gtk_map_list_model_get_model(self_: *mut GtkMapListModel) -> *mut gio::GListModel;
16331    pub fn gtk_map_list_model_has_map(self_: *mut GtkMapListModel) -> gboolean;
16332    pub fn gtk_map_list_model_set_map_func(
16333        self_: *mut GtkMapListModel,
16334        map_func: GtkMapListModelMapFunc,
16335        user_data: gpointer,
16336        user_destroy: glib::GDestroyNotify,
16337    );
16338    pub fn gtk_map_list_model_set_model(self_: *mut GtkMapListModel, model: *mut gio::GListModel);
16339
16340    //=========================================================================
16341    // GtkMediaControls
16342    //=========================================================================
16343    pub fn gtk_media_controls_get_type() -> GType;
16344    pub fn gtk_media_controls_new(stream: *mut GtkMediaStream) -> *mut GtkWidget;
16345    pub fn gtk_media_controls_get_media_stream(
16346        controls: *mut GtkMediaControls,
16347    ) -> *mut GtkMediaStream;
16348    pub fn gtk_media_controls_set_media_stream(
16349        controls: *mut GtkMediaControls,
16350        stream: *mut GtkMediaStream,
16351    );
16352
16353    //=========================================================================
16354    // GtkMediaFile
16355    //=========================================================================
16356    pub fn gtk_media_file_get_type() -> GType;
16357    pub fn gtk_media_file_new() -> *mut GtkMediaFile;
16358    pub fn gtk_media_file_new_for_file(file: *mut gio::GFile) -> *mut GtkMediaFile;
16359    pub fn gtk_media_file_new_for_filename(filename: *const c_char) -> *mut GtkMediaFile;
16360    pub fn gtk_media_file_new_for_input_stream(stream: *mut gio::GInputStream)
16361        -> *mut GtkMediaFile;
16362    pub fn gtk_media_file_new_for_resource(resource_path: *const c_char) -> *mut GtkMediaFile;
16363    pub fn gtk_media_file_clear(self_: *mut GtkMediaFile);
16364    pub fn gtk_media_file_get_file(self_: *mut GtkMediaFile) -> *mut gio::GFile;
16365    pub fn gtk_media_file_get_input_stream(self_: *mut GtkMediaFile) -> *mut gio::GInputStream;
16366    pub fn gtk_media_file_set_file(self_: *mut GtkMediaFile, file: *mut gio::GFile);
16367    pub fn gtk_media_file_set_filename(self_: *mut GtkMediaFile, filename: *const c_char);
16368    pub fn gtk_media_file_set_input_stream(
16369        self_: *mut GtkMediaFile,
16370        stream: *mut gio::GInputStream,
16371    );
16372    pub fn gtk_media_file_set_resource(self_: *mut GtkMediaFile, resource_path: *const c_char);
16373
16374    //=========================================================================
16375    // GtkMediaStream
16376    //=========================================================================
16377    pub fn gtk_media_stream_get_type() -> GType;
16378    pub fn gtk_media_stream_ended(self_: *mut GtkMediaStream);
16379    pub fn gtk_media_stream_error(
16380        self_: *mut GtkMediaStream,
16381        domain: glib::GQuark,
16382        code: c_int,
16383        format: *const c_char,
16384        ...
16385    );
16386    //pub fn gtk_media_stream_error_valist(self_: *mut GtkMediaStream, domain: glib::GQuark, code: c_int, format: *const c_char, args: /*Unimplemented*/va_list);
16387    pub fn gtk_media_stream_gerror(self_: *mut GtkMediaStream, error: *mut glib::GError);
16388    pub fn gtk_media_stream_get_duration(self_: *mut GtkMediaStream) -> i64;
16389    pub fn gtk_media_stream_get_ended(self_: *mut GtkMediaStream) -> gboolean;
16390    pub fn gtk_media_stream_get_error(self_: *mut GtkMediaStream) -> *const glib::GError;
16391    pub fn gtk_media_stream_get_loop(self_: *mut GtkMediaStream) -> gboolean;
16392    pub fn gtk_media_stream_get_muted(self_: *mut GtkMediaStream) -> gboolean;
16393    pub fn gtk_media_stream_get_playing(self_: *mut GtkMediaStream) -> gboolean;
16394    pub fn gtk_media_stream_get_timestamp(self_: *mut GtkMediaStream) -> i64;
16395    pub fn gtk_media_stream_get_volume(self_: *mut GtkMediaStream) -> c_double;
16396    pub fn gtk_media_stream_has_audio(self_: *mut GtkMediaStream) -> gboolean;
16397    pub fn gtk_media_stream_has_video(self_: *mut GtkMediaStream) -> gboolean;
16398    pub fn gtk_media_stream_is_prepared(self_: *mut GtkMediaStream) -> gboolean;
16399    pub fn gtk_media_stream_is_seekable(self_: *mut GtkMediaStream) -> gboolean;
16400    pub fn gtk_media_stream_is_seeking(self_: *mut GtkMediaStream) -> gboolean;
16401    pub fn gtk_media_stream_pause(self_: *mut GtkMediaStream);
16402    pub fn gtk_media_stream_play(self_: *mut GtkMediaStream);
16403    pub fn gtk_media_stream_prepared(
16404        self_: *mut GtkMediaStream,
16405        has_audio: gboolean,
16406        has_video: gboolean,
16407        seekable: gboolean,
16408        duration: i64,
16409    );
16410    pub fn gtk_media_stream_realize(self_: *mut GtkMediaStream, surface: *mut gdk::GdkSurface);
16411    pub fn gtk_media_stream_seek(self_: *mut GtkMediaStream, timestamp: i64);
16412    pub fn gtk_media_stream_seek_failed(self_: *mut GtkMediaStream);
16413    pub fn gtk_media_stream_seek_success(self_: *mut GtkMediaStream);
16414    pub fn gtk_media_stream_set_loop(self_: *mut GtkMediaStream, loop_: gboolean);
16415    pub fn gtk_media_stream_set_muted(self_: *mut GtkMediaStream, muted: gboolean);
16416    pub fn gtk_media_stream_set_playing(self_: *mut GtkMediaStream, playing: gboolean);
16417    pub fn gtk_media_stream_set_volume(self_: *mut GtkMediaStream, volume: c_double);
16418    #[cfg(feature = "v4_4")]
16419    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16420    pub fn gtk_media_stream_stream_ended(self_: *mut GtkMediaStream);
16421    #[cfg(feature = "v4_4")]
16422    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16423    pub fn gtk_media_stream_stream_prepared(
16424        self_: *mut GtkMediaStream,
16425        has_audio: gboolean,
16426        has_video: gboolean,
16427        seekable: gboolean,
16428        duration: i64,
16429    );
16430    #[cfg(feature = "v4_4")]
16431    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16432    pub fn gtk_media_stream_stream_unprepared(self_: *mut GtkMediaStream);
16433    pub fn gtk_media_stream_unprepared(self_: *mut GtkMediaStream);
16434    pub fn gtk_media_stream_unrealize(self_: *mut GtkMediaStream, surface: *mut gdk::GdkSurface);
16435    pub fn gtk_media_stream_update(self_: *mut GtkMediaStream, timestamp: i64);
16436
16437    //=========================================================================
16438    // GtkMenuButton
16439    //=========================================================================
16440    pub fn gtk_menu_button_get_type() -> GType;
16441    pub fn gtk_menu_button_new() -> *mut GtkWidget;
16442    #[cfg(feature = "v4_10")]
16443    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
16444    pub fn gtk_menu_button_get_active(menu_button: *mut GtkMenuButton) -> gboolean;
16445    #[cfg(feature = "v4_4")]
16446    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16447    pub fn gtk_menu_button_get_always_show_arrow(menu_button: *mut GtkMenuButton) -> gboolean;
16448    #[cfg(feature = "v4_12")]
16449    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16450    pub fn gtk_menu_button_get_can_shrink(menu_button: *mut GtkMenuButton) -> gboolean;
16451    #[cfg(feature = "v4_6")]
16452    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
16453    pub fn gtk_menu_button_get_child(menu_button: *mut GtkMenuButton) -> *mut GtkWidget;
16454    pub fn gtk_menu_button_get_direction(menu_button: *mut GtkMenuButton) -> GtkArrowType;
16455    pub fn gtk_menu_button_get_has_frame(menu_button: *mut GtkMenuButton) -> gboolean;
16456    pub fn gtk_menu_button_get_icon_name(menu_button: *mut GtkMenuButton) -> *const c_char;
16457    pub fn gtk_menu_button_get_label(menu_button: *mut GtkMenuButton) -> *const c_char;
16458    pub fn gtk_menu_button_get_menu_model(menu_button: *mut GtkMenuButton) -> *mut gio::GMenuModel;
16459    pub fn gtk_menu_button_get_popover(menu_button: *mut GtkMenuButton) -> *mut GtkPopover;
16460    #[cfg(feature = "v4_4")]
16461    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16462    pub fn gtk_menu_button_get_primary(menu_button: *mut GtkMenuButton) -> gboolean;
16463    pub fn gtk_menu_button_get_use_underline(menu_button: *mut GtkMenuButton) -> gboolean;
16464    pub fn gtk_menu_button_popdown(menu_button: *mut GtkMenuButton);
16465    pub fn gtk_menu_button_popup(menu_button: *mut GtkMenuButton);
16466    #[cfg(feature = "v4_10")]
16467    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
16468    pub fn gtk_menu_button_set_active(menu_button: *mut GtkMenuButton, active: gboolean);
16469    #[cfg(feature = "v4_4")]
16470    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16471    pub fn gtk_menu_button_set_always_show_arrow(
16472        menu_button: *mut GtkMenuButton,
16473        always_show_arrow: gboolean,
16474    );
16475    #[cfg(feature = "v4_12")]
16476    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16477    pub fn gtk_menu_button_set_can_shrink(menu_button: *mut GtkMenuButton, can_shrink: gboolean);
16478    #[cfg(feature = "v4_6")]
16479    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
16480    pub fn gtk_menu_button_set_child(menu_button: *mut GtkMenuButton, child: *mut GtkWidget);
16481    pub fn gtk_menu_button_set_create_popup_func(
16482        menu_button: *mut GtkMenuButton,
16483        func: GtkMenuButtonCreatePopupFunc,
16484        user_data: gpointer,
16485        destroy_notify: glib::GDestroyNotify,
16486    );
16487    pub fn gtk_menu_button_set_direction(menu_button: *mut GtkMenuButton, direction: GtkArrowType);
16488    pub fn gtk_menu_button_set_has_frame(menu_button: *mut GtkMenuButton, has_frame: gboolean);
16489    pub fn gtk_menu_button_set_icon_name(menu_button: *mut GtkMenuButton, icon_name: *const c_char);
16490    pub fn gtk_menu_button_set_label(menu_button: *mut GtkMenuButton, label: *const c_char);
16491    pub fn gtk_menu_button_set_menu_model(
16492        menu_button: *mut GtkMenuButton,
16493        menu_model: *mut gio::GMenuModel,
16494    );
16495    pub fn gtk_menu_button_set_popover(menu_button: *mut GtkMenuButton, popover: *mut GtkPopover);
16496    #[cfg(feature = "v4_4")]
16497    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16498    pub fn gtk_menu_button_set_primary(menu_button: *mut GtkMenuButton, primary: gboolean);
16499    pub fn gtk_menu_button_set_use_underline(
16500        menu_button: *mut GtkMenuButton,
16501        use_underline: gboolean,
16502    );
16503
16504    //=========================================================================
16505    // GtkMessageDialog
16506    //=========================================================================
16507    pub fn gtk_message_dialog_get_type() -> GType;
16508    pub fn gtk_message_dialog_new(
16509        parent: *mut GtkWindow,
16510        flags: GtkDialogFlags,
16511        type_: GtkMessageType,
16512        buttons: GtkButtonsType,
16513        message_format: *const c_char,
16514        ...
16515    ) -> *mut GtkWidget;
16516    pub fn gtk_message_dialog_new_with_markup(
16517        parent: *mut GtkWindow,
16518        flags: GtkDialogFlags,
16519        type_: GtkMessageType,
16520        buttons: GtkButtonsType,
16521        message_format: *const c_char,
16522        ...
16523    ) -> *mut GtkWidget;
16524    pub fn gtk_message_dialog_format_secondary_markup(
16525        message_dialog: *mut GtkMessageDialog,
16526        message_format: *const c_char,
16527        ...
16528    );
16529    pub fn gtk_message_dialog_format_secondary_text(
16530        message_dialog: *mut GtkMessageDialog,
16531        message_format: *const c_char,
16532        ...
16533    );
16534    pub fn gtk_message_dialog_get_message_area(
16535        message_dialog: *mut GtkMessageDialog,
16536    ) -> *mut GtkWidget;
16537    pub fn gtk_message_dialog_set_markup(message_dialog: *mut GtkMessageDialog, str: *const c_char);
16538
16539    //=========================================================================
16540    // GtkMnemonicAction
16541    //=========================================================================
16542    pub fn gtk_mnemonic_action_get_type() -> GType;
16543    pub fn gtk_mnemonic_action_get() -> *mut GtkMnemonicAction;
16544
16545    //=========================================================================
16546    // GtkMnemonicTrigger
16547    //=========================================================================
16548    pub fn gtk_mnemonic_trigger_get_type() -> GType;
16549    pub fn gtk_mnemonic_trigger_new(keyval: c_uint) -> *mut GtkMnemonicTrigger;
16550    pub fn gtk_mnemonic_trigger_get_keyval(self_: *mut GtkMnemonicTrigger) -> c_uint;
16551
16552    //=========================================================================
16553    // GtkMountOperation
16554    //=========================================================================
16555    pub fn gtk_mount_operation_get_type() -> GType;
16556    pub fn gtk_mount_operation_new(parent: *mut GtkWindow) -> *mut gio::GMountOperation;
16557    pub fn gtk_mount_operation_get_display(op: *mut GtkMountOperation) -> *mut gdk::GdkDisplay;
16558    pub fn gtk_mount_operation_get_parent(op: *mut GtkMountOperation) -> *mut GtkWindow;
16559    pub fn gtk_mount_operation_is_showing(op: *mut GtkMountOperation) -> gboolean;
16560    pub fn gtk_mount_operation_set_display(
16561        op: *mut GtkMountOperation,
16562        display: *mut gdk::GdkDisplay,
16563    );
16564    pub fn gtk_mount_operation_set_parent(op: *mut GtkMountOperation, parent: *mut GtkWindow);
16565
16566    //=========================================================================
16567    // GtkMultiFilter
16568    //=========================================================================
16569    pub fn gtk_multi_filter_get_type() -> GType;
16570    pub fn gtk_multi_filter_append(self_: *mut GtkMultiFilter, filter: *mut GtkFilter);
16571    pub fn gtk_multi_filter_remove(self_: *mut GtkMultiFilter, position: c_uint);
16572
16573    //=========================================================================
16574    // GtkMultiSelection
16575    //=========================================================================
16576    pub fn gtk_multi_selection_get_type() -> GType;
16577    pub fn gtk_multi_selection_new(model: *mut gio::GListModel) -> *mut GtkMultiSelection;
16578    pub fn gtk_multi_selection_get_model(self_: *mut GtkMultiSelection) -> *mut gio::GListModel;
16579    pub fn gtk_multi_selection_set_model(
16580        self_: *mut GtkMultiSelection,
16581        model: *mut gio::GListModel,
16582    );
16583
16584    //=========================================================================
16585    // GtkMultiSorter
16586    //=========================================================================
16587    pub fn gtk_multi_sorter_get_type() -> GType;
16588    pub fn gtk_multi_sorter_new() -> *mut GtkMultiSorter;
16589    pub fn gtk_multi_sorter_append(self_: *mut GtkMultiSorter, sorter: *mut GtkSorter);
16590    pub fn gtk_multi_sorter_remove(self_: *mut GtkMultiSorter, position: c_uint);
16591
16592    //=========================================================================
16593    // GtkNamedAction
16594    //=========================================================================
16595    pub fn gtk_named_action_get_type() -> GType;
16596    pub fn gtk_named_action_new(name: *const c_char) -> *mut GtkNamedAction;
16597    pub fn gtk_named_action_get_action_name(self_: *mut GtkNamedAction) -> *const c_char;
16598
16599    //=========================================================================
16600    // GtkNativeDialog
16601    //=========================================================================
16602    pub fn gtk_native_dialog_get_type() -> GType;
16603    pub fn gtk_native_dialog_destroy(self_: *mut GtkNativeDialog);
16604    pub fn gtk_native_dialog_get_modal(self_: *mut GtkNativeDialog) -> gboolean;
16605    pub fn gtk_native_dialog_get_title(self_: *mut GtkNativeDialog) -> *const c_char;
16606    pub fn gtk_native_dialog_get_transient_for(self_: *mut GtkNativeDialog) -> *mut GtkWindow;
16607    pub fn gtk_native_dialog_get_visible(self_: *mut GtkNativeDialog) -> gboolean;
16608    pub fn gtk_native_dialog_hide(self_: *mut GtkNativeDialog);
16609    pub fn gtk_native_dialog_set_modal(self_: *mut GtkNativeDialog, modal: gboolean);
16610    pub fn gtk_native_dialog_set_title(self_: *mut GtkNativeDialog, title: *const c_char);
16611    pub fn gtk_native_dialog_set_transient_for(self_: *mut GtkNativeDialog, parent: *mut GtkWindow);
16612    pub fn gtk_native_dialog_show(self_: *mut GtkNativeDialog);
16613
16614    //=========================================================================
16615    // GtkNeverTrigger
16616    //=========================================================================
16617    pub fn gtk_never_trigger_get_type() -> GType;
16618    pub fn gtk_never_trigger_get() -> *mut GtkNeverTrigger;
16619
16620    //=========================================================================
16621    // GtkNoSelection
16622    //=========================================================================
16623    pub fn gtk_no_selection_get_type() -> GType;
16624    pub fn gtk_no_selection_new(model: *mut gio::GListModel) -> *mut GtkNoSelection;
16625    pub fn gtk_no_selection_get_model(self_: *mut GtkNoSelection) -> *mut gio::GListModel;
16626    pub fn gtk_no_selection_set_model(self_: *mut GtkNoSelection, model: *mut gio::GListModel);
16627
16628    //=========================================================================
16629    // GtkNotebook
16630    //=========================================================================
16631    pub fn gtk_notebook_get_type() -> GType;
16632    pub fn gtk_notebook_new() -> *mut GtkWidget;
16633    pub fn gtk_notebook_append_page(
16634        notebook: *mut GtkNotebook,
16635        child: *mut GtkWidget,
16636        tab_label: *mut GtkWidget,
16637    ) -> c_int;
16638    pub fn gtk_notebook_append_page_menu(
16639        notebook: *mut GtkNotebook,
16640        child: *mut GtkWidget,
16641        tab_label: *mut GtkWidget,
16642        menu_label: *mut GtkWidget,
16643    ) -> c_int;
16644    pub fn gtk_notebook_detach_tab(notebook: *mut GtkNotebook, child: *mut GtkWidget);
16645    pub fn gtk_notebook_get_action_widget(
16646        notebook: *mut GtkNotebook,
16647        pack_type: GtkPackType,
16648    ) -> *mut GtkWidget;
16649    pub fn gtk_notebook_get_current_page(notebook: *mut GtkNotebook) -> c_int;
16650    pub fn gtk_notebook_get_group_name(notebook: *mut GtkNotebook) -> *const c_char;
16651    pub fn gtk_notebook_get_menu_label(
16652        notebook: *mut GtkNotebook,
16653        child: *mut GtkWidget,
16654    ) -> *mut GtkWidget;
16655    pub fn gtk_notebook_get_menu_label_text(
16656        notebook: *mut GtkNotebook,
16657        child: *mut GtkWidget,
16658    ) -> *const c_char;
16659    pub fn gtk_notebook_get_n_pages(notebook: *mut GtkNotebook) -> c_int;
16660    pub fn gtk_notebook_get_nth_page(notebook: *mut GtkNotebook, page_num: c_int)
16661        -> *mut GtkWidget;
16662    pub fn gtk_notebook_get_page(
16663        notebook: *mut GtkNotebook,
16664        child: *mut GtkWidget,
16665    ) -> *mut GtkNotebookPage;
16666    pub fn gtk_notebook_get_pages(notebook: *mut GtkNotebook) -> *mut gio::GListModel;
16667    pub fn gtk_notebook_get_scrollable(notebook: *mut GtkNotebook) -> gboolean;
16668    pub fn gtk_notebook_get_show_border(notebook: *mut GtkNotebook) -> gboolean;
16669    pub fn gtk_notebook_get_show_tabs(notebook: *mut GtkNotebook) -> gboolean;
16670    pub fn gtk_notebook_get_tab_detachable(
16671        notebook: *mut GtkNotebook,
16672        child: *mut GtkWidget,
16673    ) -> gboolean;
16674    pub fn gtk_notebook_get_tab_label(
16675        notebook: *mut GtkNotebook,
16676        child: *mut GtkWidget,
16677    ) -> *mut GtkWidget;
16678    pub fn gtk_notebook_get_tab_label_text(
16679        notebook: *mut GtkNotebook,
16680        child: *mut GtkWidget,
16681    ) -> *const c_char;
16682    pub fn gtk_notebook_get_tab_pos(notebook: *mut GtkNotebook) -> GtkPositionType;
16683    pub fn gtk_notebook_get_tab_reorderable(
16684        notebook: *mut GtkNotebook,
16685        child: *mut GtkWidget,
16686    ) -> gboolean;
16687    pub fn gtk_notebook_insert_page(
16688        notebook: *mut GtkNotebook,
16689        child: *mut GtkWidget,
16690        tab_label: *mut GtkWidget,
16691        position: c_int,
16692    ) -> c_int;
16693    pub fn gtk_notebook_insert_page_menu(
16694        notebook: *mut GtkNotebook,
16695        child: *mut GtkWidget,
16696        tab_label: *mut GtkWidget,
16697        menu_label: *mut GtkWidget,
16698        position: c_int,
16699    ) -> c_int;
16700    pub fn gtk_notebook_next_page(notebook: *mut GtkNotebook);
16701    pub fn gtk_notebook_page_num(notebook: *mut GtkNotebook, child: *mut GtkWidget) -> c_int;
16702    pub fn gtk_notebook_popup_disable(notebook: *mut GtkNotebook);
16703    pub fn gtk_notebook_popup_enable(notebook: *mut GtkNotebook);
16704    pub fn gtk_notebook_prepend_page(
16705        notebook: *mut GtkNotebook,
16706        child: *mut GtkWidget,
16707        tab_label: *mut GtkWidget,
16708    ) -> c_int;
16709    pub fn gtk_notebook_prepend_page_menu(
16710        notebook: *mut GtkNotebook,
16711        child: *mut GtkWidget,
16712        tab_label: *mut GtkWidget,
16713        menu_label: *mut GtkWidget,
16714    ) -> c_int;
16715    pub fn gtk_notebook_prev_page(notebook: *mut GtkNotebook);
16716    pub fn gtk_notebook_remove_page(notebook: *mut GtkNotebook, page_num: c_int);
16717    pub fn gtk_notebook_reorder_child(
16718        notebook: *mut GtkNotebook,
16719        child: *mut GtkWidget,
16720        position: c_int,
16721    );
16722    pub fn gtk_notebook_set_action_widget(
16723        notebook: *mut GtkNotebook,
16724        widget: *mut GtkWidget,
16725        pack_type: GtkPackType,
16726    );
16727    pub fn gtk_notebook_set_current_page(notebook: *mut GtkNotebook, page_num: c_int);
16728    pub fn gtk_notebook_set_group_name(notebook: *mut GtkNotebook, group_name: *const c_char);
16729    pub fn gtk_notebook_set_menu_label(
16730        notebook: *mut GtkNotebook,
16731        child: *mut GtkWidget,
16732        menu_label: *mut GtkWidget,
16733    );
16734    pub fn gtk_notebook_set_menu_label_text(
16735        notebook: *mut GtkNotebook,
16736        child: *mut GtkWidget,
16737        menu_text: *const c_char,
16738    );
16739    pub fn gtk_notebook_set_scrollable(notebook: *mut GtkNotebook, scrollable: gboolean);
16740    pub fn gtk_notebook_set_show_border(notebook: *mut GtkNotebook, show_border: gboolean);
16741    pub fn gtk_notebook_set_show_tabs(notebook: *mut GtkNotebook, show_tabs: gboolean);
16742    pub fn gtk_notebook_set_tab_detachable(
16743        notebook: *mut GtkNotebook,
16744        child: *mut GtkWidget,
16745        detachable: gboolean,
16746    );
16747    pub fn gtk_notebook_set_tab_label(
16748        notebook: *mut GtkNotebook,
16749        child: *mut GtkWidget,
16750        tab_label: *mut GtkWidget,
16751    );
16752    pub fn gtk_notebook_set_tab_label_text(
16753        notebook: *mut GtkNotebook,
16754        child: *mut GtkWidget,
16755        tab_text: *const c_char,
16756    );
16757    pub fn gtk_notebook_set_tab_pos(notebook: *mut GtkNotebook, pos: GtkPositionType);
16758    pub fn gtk_notebook_set_tab_reorderable(
16759        notebook: *mut GtkNotebook,
16760        child: *mut GtkWidget,
16761        reorderable: gboolean,
16762    );
16763
16764    //=========================================================================
16765    // GtkNotebookPage
16766    //=========================================================================
16767    pub fn gtk_notebook_page_get_type() -> GType;
16768    pub fn gtk_notebook_page_get_child(page: *mut GtkNotebookPage) -> *mut GtkWidget;
16769
16770    //=========================================================================
16771    // GtkNothingAction
16772    //=========================================================================
16773    pub fn gtk_nothing_action_get_type() -> GType;
16774    pub fn gtk_nothing_action_get() -> *mut GtkNothingAction;
16775
16776    //=========================================================================
16777    // GtkNumericSorter
16778    //=========================================================================
16779    pub fn gtk_numeric_sorter_get_type() -> GType;
16780    pub fn gtk_numeric_sorter_new(expression: *mut GtkExpression) -> *mut GtkNumericSorter;
16781    pub fn gtk_numeric_sorter_get_expression(self_: *mut GtkNumericSorter) -> *mut GtkExpression;
16782    pub fn gtk_numeric_sorter_get_sort_order(self_: *mut GtkNumericSorter) -> GtkSortType;
16783    pub fn gtk_numeric_sorter_set_expression(
16784        self_: *mut GtkNumericSorter,
16785        expression: *mut GtkExpression,
16786    );
16787    pub fn gtk_numeric_sorter_set_sort_order(self_: *mut GtkNumericSorter, sort_order: GtkSortType);
16788
16789    //=========================================================================
16790    // GtkObjectExpression
16791    //=========================================================================
16792    pub fn gtk_object_expression_get_type() -> GType;
16793    pub fn gtk_object_expression_new(object: *mut gobject::GObject) -> *mut GtkObjectExpression;
16794    pub fn gtk_object_expression_get_object(
16795        expression: *mut GtkObjectExpression,
16796    ) -> *mut gobject::GObject;
16797
16798    //=========================================================================
16799    // GtkOverlay
16800    //=========================================================================
16801    pub fn gtk_overlay_get_type() -> GType;
16802    pub fn gtk_overlay_new() -> *mut GtkWidget;
16803    pub fn gtk_overlay_add_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
16804    pub fn gtk_overlay_get_child(overlay: *mut GtkOverlay) -> *mut GtkWidget;
16805    pub fn gtk_overlay_get_clip_overlay(
16806        overlay: *mut GtkOverlay,
16807        widget: *mut GtkWidget,
16808    ) -> gboolean;
16809    pub fn gtk_overlay_get_measure_overlay(
16810        overlay: *mut GtkOverlay,
16811        widget: *mut GtkWidget,
16812    ) -> gboolean;
16813    pub fn gtk_overlay_remove_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
16814    pub fn gtk_overlay_set_child(overlay: *mut GtkOverlay, child: *mut GtkWidget);
16815    pub fn gtk_overlay_set_clip_overlay(
16816        overlay: *mut GtkOverlay,
16817        widget: *mut GtkWidget,
16818        clip_overlay: gboolean,
16819    );
16820    pub fn gtk_overlay_set_measure_overlay(
16821        overlay: *mut GtkOverlay,
16822        widget: *mut GtkWidget,
16823        measure: gboolean,
16824    );
16825
16826    //=========================================================================
16827    // GtkOverlayLayout
16828    //=========================================================================
16829    pub fn gtk_overlay_layout_get_type() -> GType;
16830    pub fn gtk_overlay_layout_new() -> *mut GtkLayoutManager;
16831
16832    //=========================================================================
16833    // GtkOverlayLayoutChild
16834    //=========================================================================
16835    pub fn gtk_overlay_layout_child_get_type() -> GType;
16836    pub fn gtk_overlay_layout_child_get_clip_overlay(child: *mut GtkOverlayLayoutChild)
16837        -> gboolean;
16838    pub fn gtk_overlay_layout_child_get_measure(child: *mut GtkOverlayLayoutChild) -> gboolean;
16839    pub fn gtk_overlay_layout_child_set_clip_overlay(
16840        child: *mut GtkOverlayLayoutChild,
16841        clip_overlay: gboolean,
16842    );
16843    pub fn gtk_overlay_layout_child_set_measure(
16844        child: *mut GtkOverlayLayoutChild,
16845        measure: gboolean,
16846    );
16847
16848    //=========================================================================
16849    // GtkPadController
16850    //=========================================================================
16851    pub fn gtk_pad_controller_get_type() -> GType;
16852    pub fn gtk_pad_controller_new(
16853        group: *mut gio::GActionGroup,
16854        pad: *mut gdk::GdkDevice,
16855    ) -> *mut GtkPadController;
16856    pub fn gtk_pad_controller_set_action(
16857        controller: *mut GtkPadController,
16858        type_: GtkPadActionType,
16859        index: c_int,
16860        mode: c_int,
16861        label: *const c_char,
16862        action_name: *const c_char,
16863    );
16864    pub fn gtk_pad_controller_set_action_entries(
16865        controller: *mut GtkPadController,
16866        entries: *const GtkPadActionEntry,
16867        n_entries: c_int,
16868    );
16869
16870    //=========================================================================
16871    // GtkPageSetup
16872    //=========================================================================
16873    pub fn gtk_page_setup_get_type() -> GType;
16874    pub fn gtk_page_setup_new() -> *mut GtkPageSetup;
16875    pub fn gtk_page_setup_new_from_file(
16876        file_name: *const c_char,
16877        error: *mut *mut glib::GError,
16878    ) -> *mut GtkPageSetup;
16879    pub fn gtk_page_setup_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPageSetup;
16880    pub fn gtk_page_setup_new_from_key_file(
16881        key_file: *mut glib::GKeyFile,
16882        group_name: *const c_char,
16883        error: *mut *mut glib::GError,
16884    ) -> *mut GtkPageSetup;
16885    pub fn gtk_page_setup_copy(other: *mut GtkPageSetup) -> *mut GtkPageSetup;
16886    pub fn gtk_page_setup_get_bottom_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16887    pub fn gtk_page_setup_get_left_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16888    pub fn gtk_page_setup_get_orientation(setup: *mut GtkPageSetup) -> GtkPageOrientation;
16889    pub fn gtk_page_setup_get_page_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16890    pub fn gtk_page_setup_get_page_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16891    pub fn gtk_page_setup_get_paper_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16892    pub fn gtk_page_setup_get_paper_size(setup: *mut GtkPageSetup) -> *mut GtkPaperSize;
16893    pub fn gtk_page_setup_get_paper_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16894    pub fn gtk_page_setup_get_right_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16895    pub fn gtk_page_setup_get_top_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16896    pub fn gtk_page_setup_load_file(
16897        setup: *mut GtkPageSetup,
16898        file_name: *const c_char,
16899        error: *mut *mut glib::GError,
16900    ) -> gboolean;
16901    pub fn gtk_page_setup_load_key_file(
16902        setup: *mut GtkPageSetup,
16903        key_file: *mut glib::GKeyFile,
16904        group_name: *const c_char,
16905        error: *mut *mut glib::GError,
16906    ) -> gboolean;
16907    pub fn gtk_page_setup_set_bottom_margin(
16908        setup: *mut GtkPageSetup,
16909        margin: c_double,
16910        unit: GtkUnit,
16911    );
16912    pub fn gtk_page_setup_set_left_margin(
16913        setup: *mut GtkPageSetup,
16914        margin: c_double,
16915        unit: GtkUnit,
16916    );
16917    pub fn gtk_page_setup_set_orientation(
16918        setup: *mut GtkPageSetup,
16919        orientation: GtkPageOrientation,
16920    );
16921    pub fn gtk_page_setup_set_paper_size(setup: *mut GtkPageSetup, size: *mut GtkPaperSize);
16922    pub fn gtk_page_setup_set_paper_size_and_default_margins(
16923        setup: *mut GtkPageSetup,
16924        size: *mut GtkPaperSize,
16925    );
16926    pub fn gtk_page_setup_set_right_margin(
16927        setup: *mut GtkPageSetup,
16928        margin: c_double,
16929        unit: GtkUnit,
16930    );
16931    pub fn gtk_page_setup_set_top_margin(setup: *mut GtkPageSetup, margin: c_double, unit: GtkUnit);
16932    pub fn gtk_page_setup_to_file(
16933        setup: *mut GtkPageSetup,
16934        file_name: *const c_char,
16935        error: *mut *mut glib::GError,
16936    ) -> gboolean;
16937    pub fn gtk_page_setup_to_gvariant(setup: *mut GtkPageSetup) -> *mut glib::GVariant;
16938    pub fn gtk_page_setup_to_key_file(
16939        setup: *mut GtkPageSetup,
16940        key_file: *mut glib::GKeyFile,
16941        group_name: *const c_char,
16942    );
16943
16944    //=========================================================================
16945    // GtkPageSetupUnixDialog
16946    //=========================================================================
16947    pub fn gtk_page_setup_unix_dialog_get_type() -> GType;
16948    pub fn gtk_page_setup_unix_dialog_new(
16949        title: *const c_char,
16950        parent: *mut GtkWindow,
16951    ) -> *mut GtkWidget;
16952    pub fn gtk_page_setup_unix_dialog_get_page_setup(
16953        dialog: *mut GtkPageSetupUnixDialog,
16954    ) -> *mut GtkPageSetup;
16955    pub fn gtk_page_setup_unix_dialog_get_print_settings(
16956        dialog: *mut GtkPageSetupUnixDialog,
16957    ) -> *mut GtkPrintSettings;
16958    pub fn gtk_page_setup_unix_dialog_set_page_setup(
16959        dialog: *mut GtkPageSetupUnixDialog,
16960        page_setup: *mut GtkPageSetup,
16961    );
16962    pub fn gtk_page_setup_unix_dialog_set_print_settings(
16963        dialog: *mut GtkPageSetupUnixDialog,
16964        print_settings: *mut GtkPrintSettings,
16965    );
16966
16967    //=========================================================================
16968    // GtkPaned
16969    //=========================================================================
16970    pub fn gtk_paned_get_type() -> GType;
16971    pub fn gtk_paned_new(orientation: GtkOrientation) -> *mut GtkWidget;
16972    pub fn gtk_paned_get_end_child(paned: *mut GtkPaned) -> *mut GtkWidget;
16973    pub fn gtk_paned_get_position(paned: *mut GtkPaned) -> c_int;
16974    pub fn gtk_paned_get_resize_end_child(paned: *mut GtkPaned) -> gboolean;
16975    pub fn gtk_paned_get_resize_start_child(paned: *mut GtkPaned) -> gboolean;
16976    pub fn gtk_paned_get_shrink_end_child(paned: *mut GtkPaned) -> gboolean;
16977    pub fn gtk_paned_get_shrink_start_child(paned: *mut GtkPaned) -> gboolean;
16978    pub fn gtk_paned_get_start_child(paned: *mut GtkPaned) -> *mut GtkWidget;
16979    pub fn gtk_paned_get_wide_handle(paned: *mut GtkPaned) -> gboolean;
16980    pub fn gtk_paned_set_end_child(paned: *mut GtkPaned, child: *mut GtkWidget);
16981    pub fn gtk_paned_set_position(paned: *mut GtkPaned, position: c_int);
16982    pub fn gtk_paned_set_resize_end_child(paned: *mut GtkPaned, resize: gboolean);
16983    pub fn gtk_paned_set_resize_start_child(paned: *mut GtkPaned, resize: gboolean);
16984    pub fn gtk_paned_set_shrink_end_child(paned: *mut GtkPaned, resize: gboolean);
16985    pub fn gtk_paned_set_shrink_start_child(paned: *mut GtkPaned, resize: gboolean);
16986    pub fn gtk_paned_set_start_child(paned: *mut GtkPaned, child: *mut GtkWidget);
16987    pub fn gtk_paned_set_wide_handle(paned: *mut GtkPaned, wide: gboolean);
16988
16989    //=========================================================================
16990    // GtkParamSpecExpression
16991    //=========================================================================
16992    pub fn gtk_param_expression_get_type() -> GType;
16993
16994    //=========================================================================
16995    // GtkPasswordEntry
16996    //=========================================================================
16997    pub fn gtk_password_entry_get_type() -> GType;
16998    pub fn gtk_password_entry_new() -> *mut GtkWidget;
16999    pub fn gtk_password_entry_get_extra_menu(entry: *mut GtkPasswordEntry) -> *mut gio::GMenuModel;
17000    pub fn gtk_password_entry_get_show_peek_icon(entry: *mut GtkPasswordEntry) -> gboolean;
17001    pub fn gtk_password_entry_set_extra_menu(
17002        entry: *mut GtkPasswordEntry,
17003        model: *mut gio::GMenuModel,
17004    );
17005    pub fn gtk_password_entry_set_show_peek_icon(
17006        entry: *mut GtkPasswordEntry,
17007        show_peek_icon: gboolean,
17008    );
17009
17010    //=========================================================================
17011    // GtkPasswordEntryBuffer
17012    //=========================================================================
17013    #[cfg(feature = "v4_4")]
17014    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
17015    pub fn gtk_password_entry_buffer_get_type() -> GType;
17016    #[cfg(feature = "v4_4")]
17017    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
17018    pub fn gtk_password_entry_buffer_new() -> *mut GtkEntryBuffer;
17019
17020    //=========================================================================
17021    // GtkPicture
17022    //=========================================================================
17023    pub fn gtk_picture_get_type() -> GType;
17024    pub fn gtk_picture_new() -> *mut GtkWidget;
17025    pub fn gtk_picture_new_for_file(file: *mut gio::GFile) -> *mut GtkWidget;
17026    pub fn gtk_picture_new_for_filename(filename: *const c_char) -> *mut GtkWidget;
17027    pub fn gtk_picture_new_for_paintable(paintable: *mut gdk::GdkPaintable) -> *mut GtkWidget;
17028    pub fn gtk_picture_new_for_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
17029    pub fn gtk_picture_new_for_resource(resource_path: *const c_char) -> *mut GtkWidget;
17030    pub fn gtk_picture_get_alternative_text(self_: *mut GtkPicture) -> *const c_char;
17031    pub fn gtk_picture_get_can_shrink(self_: *mut GtkPicture) -> gboolean;
17032    #[cfg(feature = "v4_8")]
17033    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
17034    pub fn gtk_picture_get_content_fit(self_: *mut GtkPicture) -> GtkContentFit;
17035    pub fn gtk_picture_get_file(self_: *mut GtkPicture) -> *mut gio::GFile;
17036    pub fn gtk_picture_get_keep_aspect_ratio(self_: *mut GtkPicture) -> gboolean;
17037    pub fn gtk_picture_get_paintable(self_: *mut GtkPicture) -> *mut gdk::GdkPaintable;
17038    pub fn gtk_picture_set_alternative_text(
17039        self_: *mut GtkPicture,
17040        alternative_text: *const c_char,
17041    );
17042    pub fn gtk_picture_set_can_shrink(self_: *mut GtkPicture, can_shrink: gboolean);
17043    #[cfg(feature = "v4_8")]
17044    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
17045    pub fn gtk_picture_set_content_fit(self_: *mut GtkPicture, content_fit: GtkContentFit);
17046    pub fn gtk_picture_set_file(self_: *mut GtkPicture, file: *mut gio::GFile);
17047    pub fn gtk_picture_set_filename(self_: *mut GtkPicture, filename: *const c_char);
17048    pub fn gtk_picture_set_keep_aspect_ratio(self_: *mut GtkPicture, keep_aspect_ratio: gboolean);
17049    pub fn gtk_picture_set_paintable(self_: *mut GtkPicture, paintable: *mut gdk::GdkPaintable);
17050    pub fn gtk_picture_set_pixbuf(self_: *mut GtkPicture, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
17051    pub fn gtk_picture_set_resource(self_: *mut GtkPicture, resource_path: *const c_char);
17052
17053    //=========================================================================
17054    // GtkPopover
17055    //=========================================================================
17056    pub fn gtk_popover_get_type() -> GType;
17057    pub fn gtk_popover_new() -> *mut GtkWidget;
17058    pub fn gtk_popover_get_autohide(popover: *mut GtkPopover) -> gboolean;
17059    pub fn gtk_popover_get_cascade_popdown(popover: *mut GtkPopover) -> gboolean;
17060    pub fn gtk_popover_get_child(popover: *mut GtkPopover) -> *mut GtkWidget;
17061    pub fn gtk_popover_get_has_arrow(popover: *mut GtkPopover) -> gboolean;
17062    pub fn gtk_popover_get_mnemonics_visible(popover: *mut GtkPopover) -> gboolean;
17063    pub fn gtk_popover_get_offset(
17064        popover: *mut GtkPopover,
17065        x_offset: *mut c_int,
17066        y_offset: *mut c_int,
17067    );
17068    pub fn gtk_popover_get_pointing_to(
17069        popover: *mut GtkPopover,
17070        rect: *mut gdk::GdkRectangle,
17071    ) -> gboolean;
17072    pub fn gtk_popover_get_position(popover: *mut GtkPopover) -> GtkPositionType;
17073    pub fn gtk_popover_popdown(popover: *mut GtkPopover);
17074    pub fn gtk_popover_popup(popover: *mut GtkPopover);
17075    pub fn gtk_popover_present(popover: *mut GtkPopover);
17076    pub fn gtk_popover_set_autohide(popover: *mut GtkPopover, autohide: gboolean);
17077    pub fn gtk_popover_set_cascade_popdown(popover: *mut GtkPopover, cascade_popdown: gboolean);
17078    pub fn gtk_popover_set_child(popover: *mut GtkPopover, child: *mut GtkWidget);
17079    pub fn gtk_popover_set_default_widget(popover: *mut GtkPopover, widget: *mut GtkWidget);
17080    pub fn gtk_popover_set_has_arrow(popover: *mut GtkPopover, has_arrow: gboolean);
17081    pub fn gtk_popover_set_mnemonics_visible(popover: *mut GtkPopover, mnemonics_visible: gboolean);
17082    pub fn gtk_popover_set_offset(popover: *mut GtkPopover, x_offset: c_int, y_offset: c_int);
17083    pub fn gtk_popover_set_pointing_to(popover: *mut GtkPopover, rect: *const gdk::GdkRectangle);
17084    pub fn gtk_popover_set_position(popover: *mut GtkPopover, position: GtkPositionType);
17085
17086    //=========================================================================
17087    // GtkPopoverMenu
17088    //=========================================================================
17089    pub fn gtk_popover_menu_get_type() -> GType;
17090    pub fn gtk_popover_menu_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
17091    pub fn gtk_popover_menu_new_from_model_full(
17092        model: *mut gio::GMenuModel,
17093        flags: GtkPopoverMenuFlags,
17094    ) -> *mut GtkWidget;
17095    pub fn gtk_popover_menu_add_child(
17096        popover: *mut GtkPopoverMenu,
17097        child: *mut GtkWidget,
17098        id: *const c_char,
17099    ) -> gboolean;
17100    #[cfg(feature = "v4_14")]
17101    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17102    pub fn gtk_popover_menu_get_flags(popover: *mut GtkPopoverMenu) -> GtkPopoverMenuFlags;
17103    pub fn gtk_popover_menu_get_menu_model(popover: *mut GtkPopoverMenu) -> *mut gio::GMenuModel;
17104    pub fn gtk_popover_menu_remove_child(
17105        popover: *mut GtkPopoverMenu,
17106        child: *mut GtkWidget,
17107    ) -> gboolean;
17108    #[cfg(feature = "v4_14")]
17109    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17110    pub fn gtk_popover_menu_set_flags(popover: *mut GtkPopoverMenu, flags: GtkPopoverMenuFlags);
17111    pub fn gtk_popover_menu_set_menu_model(
17112        popover: *mut GtkPopoverMenu,
17113        model: *mut gio::GMenuModel,
17114    );
17115
17116    //=========================================================================
17117    // GtkPopoverMenuBar
17118    //=========================================================================
17119    pub fn gtk_popover_menu_bar_get_type() -> GType;
17120    pub fn gtk_popover_menu_bar_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
17121    pub fn gtk_popover_menu_bar_add_child(
17122        bar: *mut GtkPopoverMenuBar,
17123        child: *mut GtkWidget,
17124        id: *const c_char,
17125    ) -> gboolean;
17126    pub fn gtk_popover_menu_bar_get_menu_model(bar: *mut GtkPopoverMenuBar)
17127        -> *mut gio::GMenuModel;
17128    pub fn gtk_popover_menu_bar_remove_child(
17129        bar: *mut GtkPopoverMenuBar,
17130        child: *mut GtkWidget,
17131    ) -> gboolean;
17132    pub fn gtk_popover_menu_bar_set_menu_model(
17133        bar: *mut GtkPopoverMenuBar,
17134        model: *mut gio::GMenuModel,
17135    );
17136
17137    //=========================================================================
17138    // GtkPrintContext
17139    //=========================================================================
17140    pub fn gtk_print_context_get_type() -> GType;
17141    pub fn gtk_print_context_create_pango_context(
17142        context: *mut GtkPrintContext,
17143    ) -> *mut pango::PangoContext;
17144    pub fn gtk_print_context_create_pango_layout(
17145        context: *mut GtkPrintContext,
17146    ) -> *mut pango::PangoLayout;
17147    pub fn gtk_print_context_get_cairo_context(
17148        context: *mut GtkPrintContext,
17149    ) -> *mut cairo::cairo_t;
17150    pub fn gtk_print_context_get_dpi_x(context: *mut GtkPrintContext) -> c_double;
17151    pub fn gtk_print_context_get_dpi_y(context: *mut GtkPrintContext) -> c_double;
17152    pub fn gtk_print_context_get_hard_margins(
17153        context: *mut GtkPrintContext,
17154        top: *mut c_double,
17155        bottom: *mut c_double,
17156        left: *mut c_double,
17157        right: *mut c_double,
17158    ) -> gboolean;
17159    pub fn gtk_print_context_get_height(context: *mut GtkPrintContext) -> c_double;
17160    pub fn gtk_print_context_get_page_setup(context: *mut GtkPrintContext) -> *mut GtkPageSetup;
17161    pub fn gtk_print_context_get_pango_fontmap(
17162        context: *mut GtkPrintContext,
17163    ) -> *mut pango::PangoFontMap;
17164    pub fn gtk_print_context_get_width(context: *mut GtkPrintContext) -> c_double;
17165    pub fn gtk_print_context_set_cairo_context(
17166        context: *mut GtkPrintContext,
17167        cr: *mut cairo::cairo_t,
17168        dpi_x: c_double,
17169        dpi_y: c_double,
17170    );
17171
17172    //=========================================================================
17173    // GtkPrintDialog
17174    //=========================================================================
17175    #[cfg(feature = "v4_14")]
17176    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17177    pub fn gtk_print_dialog_get_type() -> GType;
17178    #[cfg(feature = "v4_14")]
17179    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17180    pub fn gtk_print_dialog_new() -> *mut GtkPrintDialog;
17181    #[cfg(feature = "v4_14")]
17182    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17183    pub fn gtk_print_dialog_get_accept_label(self_: *mut GtkPrintDialog) -> *const c_char;
17184    #[cfg(feature = "v4_14")]
17185    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17186    pub fn gtk_print_dialog_get_modal(self_: *mut GtkPrintDialog) -> gboolean;
17187    #[cfg(feature = "v4_14")]
17188    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17189    pub fn gtk_print_dialog_get_page_setup(self_: *mut GtkPrintDialog) -> *mut GtkPageSetup;
17190    #[cfg(feature = "v4_14")]
17191    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17192    pub fn gtk_print_dialog_get_print_settings(self_: *mut GtkPrintDialog)
17193        -> *mut GtkPrintSettings;
17194    #[cfg(feature = "v4_14")]
17195    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17196    pub fn gtk_print_dialog_get_title(self_: *mut GtkPrintDialog) -> *const c_char;
17197    #[cfg(feature = "v4_14")]
17198    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17199    pub fn gtk_print_dialog_print(
17200        self_: *mut GtkPrintDialog,
17201        parent: *mut GtkWindow,
17202        setup: *mut GtkPrintSetup,
17203        cancellable: *mut gio::GCancellable,
17204        callback: gio::GAsyncReadyCallback,
17205        user_data: gpointer,
17206    );
17207    #[cfg(feature = "v4_14")]
17208    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17209    pub fn gtk_print_dialog_print_file(
17210        self_: *mut GtkPrintDialog,
17211        parent: *mut GtkWindow,
17212        setup: *mut GtkPrintSetup,
17213        file: *mut gio::GFile,
17214        cancellable: *mut gio::GCancellable,
17215        callback: gio::GAsyncReadyCallback,
17216        user_data: gpointer,
17217    );
17218    #[cfg(feature = "v4_14")]
17219    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17220    pub fn gtk_print_dialog_print_file_finish(
17221        self_: *mut GtkPrintDialog,
17222        result: *mut gio::GAsyncResult,
17223        error: *mut *mut glib::GError,
17224    ) -> gboolean;
17225    #[cfg(feature = "v4_14")]
17226    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17227    pub fn gtk_print_dialog_print_finish(
17228        self_: *mut GtkPrintDialog,
17229        result: *mut gio::GAsyncResult,
17230        error: *mut *mut glib::GError,
17231    ) -> *mut gio::GOutputStream;
17232    #[cfg(feature = "v4_14")]
17233    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17234    pub fn gtk_print_dialog_set_accept_label(
17235        self_: *mut GtkPrintDialog,
17236        accept_label: *const c_char,
17237    );
17238    #[cfg(feature = "v4_14")]
17239    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17240    pub fn gtk_print_dialog_set_modal(self_: *mut GtkPrintDialog, modal: gboolean);
17241    #[cfg(feature = "v4_14")]
17242    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17243    pub fn gtk_print_dialog_set_page_setup(
17244        self_: *mut GtkPrintDialog,
17245        page_setup: *mut GtkPageSetup,
17246    );
17247    #[cfg(feature = "v4_14")]
17248    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17249    pub fn gtk_print_dialog_set_print_settings(
17250        self_: *mut GtkPrintDialog,
17251        print_settings: *mut GtkPrintSettings,
17252    );
17253    #[cfg(feature = "v4_14")]
17254    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17255    pub fn gtk_print_dialog_set_title(self_: *mut GtkPrintDialog, title: *const c_char);
17256    #[cfg(feature = "v4_14")]
17257    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17258    pub fn gtk_print_dialog_setup(
17259        self_: *mut GtkPrintDialog,
17260        parent: *mut GtkWindow,
17261        cancellable: *mut gio::GCancellable,
17262        callback: gio::GAsyncReadyCallback,
17263        user_data: gpointer,
17264    );
17265    #[cfg(feature = "v4_14")]
17266    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17267    pub fn gtk_print_dialog_setup_finish(
17268        self_: *mut GtkPrintDialog,
17269        result: *mut gio::GAsyncResult,
17270        error: *mut *mut glib::GError,
17271    ) -> *mut GtkPrintSetup;
17272
17273    //=========================================================================
17274    // GtkPrintJob
17275    //=========================================================================
17276    pub fn gtk_print_job_get_type() -> GType;
17277    pub fn gtk_print_job_new(
17278        title: *const c_char,
17279        printer: *mut GtkPrinter,
17280        settings: *mut GtkPrintSettings,
17281        page_setup: *mut GtkPageSetup,
17282    ) -> *mut GtkPrintJob;
17283    pub fn gtk_print_job_get_collate(job: *mut GtkPrintJob) -> gboolean;
17284    pub fn gtk_print_job_get_n_up(job: *mut GtkPrintJob) -> c_uint;
17285    pub fn gtk_print_job_get_n_up_layout(job: *mut GtkPrintJob) -> GtkNumberUpLayout;
17286    pub fn gtk_print_job_get_num_copies(job: *mut GtkPrintJob) -> c_int;
17287    pub fn gtk_print_job_get_page_ranges(
17288        job: *mut GtkPrintJob,
17289        n_ranges: *mut c_int,
17290    ) -> *mut GtkPageRange;
17291    pub fn gtk_print_job_get_page_set(job: *mut GtkPrintJob) -> GtkPageSet;
17292    pub fn gtk_print_job_get_pages(job: *mut GtkPrintJob) -> GtkPrintPages;
17293    pub fn gtk_print_job_get_printer(job: *mut GtkPrintJob) -> *mut GtkPrinter;
17294    pub fn gtk_print_job_get_reverse(job: *mut GtkPrintJob) -> gboolean;
17295    pub fn gtk_print_job_get_rotate(job: *mut GtkPrintJob) -> gboolean;
17296    pub fn gtk_print_job_get_scale(job: *mut GtkPrintJob) -> c_double;
17297    pub fn gtk_print_job_get_settings(job: *mut GtkPrintJob) -> *mut GtkPrintSettings;
17298    pub fn gtk_print_job_get_status(job: *mut GtkPrintJob) -> GtkPrintStatus;
17299    pub fn gtk_print_job_get_surface(
17300        job: *mut GtkPrintJob,
17301        error: *mut *mut glib::GError,
17302    ) -> *mut cairo::cairo_surface_t;
17303    pub fn gtk_print_job_get_title(job: *mut GtkPrintJob) -> *const c_char;
17304    pub fn gtk_print_job_get_track_print_status(job: *mut GtkPrintJob) -> gboolean;
17305    pub fn gtk_print_job_send(
17306        job: *mut GtkPrintJob,
17307        callback: GtkPrintJobCompleteFunc,
17308        user_data: gpointer,
17309        dnotify: glib::GDestroyNotify,
17310    );
17311    pub fn gtk_print_job_set_collate(job: *mut GtkPrintJob, collate: gboolean);
17312    pub fn gtk_print_job_set_n_up(job: *mut GtkPrintJob, n_up: c_uint);
17313    pub fn gtk_print_job_set_n_up_layout(job: *mut GtkPrintJob, layout: GtkNumberUpLayout);
17314    pub fn gtk_print_job_set_num_copies(job: *mut GtkPrintJob, num_copies: c_int);
17315    pub fn gtk_print_job_set_page_ranges(
17316        job: *mut GtkPrintJob,
17317        ranges: *mut GtkPageRange,
17318        n_ranges: c_int,
17319    );
17320    pub fn gtk_print_job_set_page_set(job: *mut GtkPrintJob, page_set: GtkPageSet);
17321    pub fn gtk_print_job_set_pages(job: *mut GtkPrintJob, pages: GtkPrintPages);
17322    pub fn gtk_print_job_set_reverse(job: *mut GtkPrintJob, reverse: gboolean);
17323    pub fn gtk_print_job_set_rotate(job: *mut GtkPrintJob, rotate: gboolean);
17324    pub fn gtk_print_job_set_scale(job: *mut GtkPrintJob, scale: c_double);
17325    pub fn gtk_print_job_set_source_fd(
17326        job: *mut GtkPrintJob,
17327        fd: c_int,
17328        error: *mut *mut glib::GError,
17329    ) -> gboolean;
17330    pub fn gtk_print_job_set_source_file(
17331        job: *mut GtkPrintJob,
17332        filename: *const c_char,
17333        error: *mut *mut glib::GError,
17334    ) -> gboolean;
17335    pub fn gtk_print_job_set_track_print_status(job: *mut GtkPrintJob, track_status: gboolean);
17336
17337    //=========================================================================
17338    // GtkPrintOperation
17339    //=========================================================================
17340    pub fn gtk_print_operation_get_type() -> GType;
17341    pub fn gtk_print_operation_new() -> *mut GtkPrintOperation;
17342    pub fn gtk_print_operation_cancel(op: *mut GtkPrintOperation);
17343    pub fn gtk_print_operation_draw_page_finish(op: *mut GtkPrintOperation);
17344    pub fn gtk_print_operation_get_default_page_setup(
17345        op: *mut GtkPrintOperation,
17346    ) -> *mut GtkPageSetup;
17347    pub fn gtk_print_operation_get_embed_page_setup(op: *mut GtkPrintOperation) -> gboolean;
17348    pub fn gtk_print_operation_get_error(op: *mut GtkPrintOperation, error: *mut *mut glib::GError);
17349    pub fn gtk_print_operation_get_has_selection(op: *mut GtkPrintOperation) -> gboolean;
17350    pub fn gtk_print_operation_get_n_pages_to_print(op: *mut GtkPrintOperation) -> c_int;
17351    pub fn gtk_print_operation_get_print_settings(
17352        op: *mut GtkPrintOperation,
17353    ) -> *mut GtkPrintSettings;
17354    pub fn gtk_print_operation_get_status(op: *mut GtkPrintOperation) -> GtkPrintStatus;
17355    pub fn gtk_print_operation_get_status_string(op: *mut GtkPrintOperation) -> *const c_char;
17356    pub fn gtk_print_operation_get_support_selection(op: *mut GtkPrintOperation) -> gboolean;
17357    pub fn gtk_print_operation_is_finished(op: *mut GtkPrintOperation) -> gboolean;
17358    pub fn gtk_print_operation_run(
17359        op: *mut GtkPrintOperation,
17360        action: GtkPrintOperationAction,
17361        parent: *mut GtkWindow,
17362        error: *mut *mut glib::GError,
17363    ) -> GtkPrintOperationResult;
17364    pub fn gtk_print_operation_set_allow_async(op: *mut GtkPrintOperation, allow_async: gboolean);
17365    pub fn gtk_print_operation_set_current_page(op: *mut GtkPrintOperation, current_page: c_int);
17366    pub fn gtk_print_operation_set_custom_tab_label(
17367        op: *mut GtkPrintOperation,
17368        label: *const c_char,
17369    );
17370    pub fn gtk_print_operation_set_default_page_setup(
17371        op: *mut GtkPrintOperation,
17372        default_page_setup: *mut GtkPageSetup,
17373    );
17374    pub fn gtk_print_operation_set_defer_drawing(op: *mut GtkPrintOperation);
17375    pub fn gtk_print_operation_set_embed_page_setup(op: *mut GtkPrintOperation, embed: gboolean);
17376    pub fn gtk_print_operation_set_export_filename(
17377        op: *mut GtkPrintOperation,
17378        filename: *const c_char,
17379    );
17380    pub fn gtk_print_operation_set_has_selection(
17381        op: *mut GtkPrintOperation,
17382        has_selection: gboolean,
17383    );
17384    pub fn gtk_print_operation_set_job_name(op: *mut GtkPrintOperation, job_name: *const c_char);
17385    pub fn gtk_print_operation_set_n_pages(op: *mut GtkPrintOperation, n_pages: c_int);
17386    pub fn gtk_print_operation_set_print_settings(
17387        op: *mut GtkPrintOperation,
17388        print_settings: *mut GtkPrintSettings,
17389    );
17390    pub fn gtk_print_operation_set_show_progress(
17391        op: *mut GtkPrintOperation,
17392        show_progress: gboolean,
17393    );
17394    pub fn gtk_print_operation_set_support_selection(
17395        op: *mut GtkPrintOperation,
17396        support_selection: gboolean,
17397    );
17398    pub fn gtk_print_operation_set_track_print_status(
17399        op: *mut GtkPrintOperation,
17400        track_status: gboolean,
17401    );
17402    pub fn gtk_print_operation_set_unit(op: *mut GtkPrintOperation, unit: GtkUnit);
17403    pub fn gtk_print_operation_set_use_full_page(op: *mut GtkPrintOperation, full_page: gboolean);
17404
17405    //=========================================================================
17406    // GtkPrintSettings
17407    //=========================================================================
17408    pub fn gtk_print_settings_get_type() -> GType;
17409    pub fn gtk_print_settings_new() -> *mut GtkPrintSettings;
17410    pub fn gtk_print_settings_new_from_file(
17411        file_name: *const c_char,
17412        error: *mut *mut glib::GError,
17413    ) -> *mut GtkPrintSettings;
17414    pub fn gtk_print_settings_new_from_gvariant(
17415        variant: *mut glib::GVariant,
17416    ) -> *mut GtkPrintSettings;
17417    pub fn gtk_print_settings_new_from_key_file(
17418        key_file: *mut glib::GKeyFile,
17419        group_name: *const c_char,
17420        error: *mut *mut glib::GError,
17421    ) -> *mut GtkPrintSettings;
17422    pub fn gtk_print_settings_copy(other: *mut GtkPrintSettings) -> *mut GtkPrintSettings;
17423    pub fn gtk_print_settings_foreach(
17424        settings: *mut GtkPrintSettings,
17425        func: GtkPrintSettingsFunc,
17426        user_data: gpointer,
17427    );
17428    pub fn gtk_print_settings_get(
17429        settings: *mut GtkPrintSettings,
17430        key: *const c_char,
17431    ) -> *const c_char;
17432    pub fn gtk_print_settings_get_bool(
17433        settings: *mut GtkPrintSettings,
17434        key: *const c_char,
17435    ) -> gboolean;
17436    pub fn gtk_print_settings_get_collate(settings: *mut GtkPrintSettings) -> gboolean;
17437    pub fn gtk_print_settings_get_default_source(settings: *mut GtkPrintSettings) -> *const c_char;
17438    pub fn gtk_print_settings_get_dither(settings: *mut GtkPrintSettings) -> *const c_char;
17439    pub fn gtk_print_settings_get_double(
17440        settings: *mut GtkPrintSettings,
17441        key: *const c_char,
17442    ) -> c_double;
17443    pub fn gtk_print_settings_get_double_with_default(
17444        settings: *mut GtkPrintSettings,
17445        key: *const c_char,
17446        def: c_double,
17447    ) -> c_double;
17448    pub fn gtk_print_settings_get_duplex(settings: *mut GtkPrintSettings) -> GtkPrintDuplex;
17449    pub fn gtk_print_settings_get_finishings(settings: *mut GtkPrintSettings) -> *const c_char;
17450    pub fn gtk_print_settings_get_int(settings: *mut GtkPrintSettings, key: *const c_char)
17451        -> c_int;
17452    pub fn gtk_print_settings_get_int_with_default(
17453        settings: *mut GtkPrintSettings,
17454        key: *const c_char,
17455        def: c_int,
17456    ) -> c_int;
17457    pub fn gtk_print_settings_get_length(
17458        settings: *mut GtkPrintSettings,
17459        key: *const c_char,
17460        unit: GtkUnit,
17461    ) -> c_double;
17462    pub fn gtk_print_settings_get_media_type(settings: *mut GtkPrintSettings) -> *const c_char;
17463    pub fn gtk_print_settings_get_n_copies(settings: *mut GtkPrintSettings) -> c_int;
17464    pub fn gtk_print_settings_get_number_up(settings: *mut GtkPrintSettings) -> c_int;
17465    pub fn gtk_print_settings_get_number_up_layout(
17466        settings: *mut GtkPrintSettings,
17467    ) -> GtkNumberUpLayout;
17468    pub fn gtk_print_settings_get_orientation(
17469        settings: *mut GtkPrintSettings,
17470    ) -> GtkPageOrientation;
17471    pub fn gtk_print_settings_get_output_bin(settings: *mut GtkPrintSettings) -> *const c_char;
17472    pub fn gtk_print_settings_get_page_ranges(
17473        settings: *mut GtkPrintSettings,
17474        num_ranges: *mut c_int,
17475    ) -> *mut GtkPageRange;
17476    pub fn gtk_print_settings_get_page_set(settings: *mut GtkPrintSettings) -> GtkPageSet;
17477    pub fn gtk_print_settings_get_paper_height(
17478        settings: *mut GtkPrintSettings,
17479        unit: GtkUnit,
17480    ) -> c_double;
17481    pub fn gtk_print_settings_get_paper_size(settings: *mut GtkPrintSettings) -> *mut GtkPaperSize;
17482    pub fn gtk_print_settings_get_paper_width(
17483        settings: *mut GtkPrintSettings,
17484        unit: GtkUnit,
17485    ) -> c_double;
17486    pub fn gtk_print_settings_get_print_pages(settings: *mut GtkPrintSettings) -> GtkPrintPages;
17487    pub fn gtk_print_settings_get_printer(settings: *mut GtkPrintSettings) -> *const c_char;
17488    pub fn gtk_print_settings_get_printer_lpi(settings: *mut GtkPrintSettings) -> c_double;
17489    pub fn gtk_print_settings_get_quality(settings: *mut GtkPrintSettings) -> GtkPrintQuality;
17490    pub fn gtk_print_settings_get_resolution(settings: *mut GtkPrintSettings) -> c_int;
17491    pub fn gtk_print_settings_get_resolution_x(settings: *mut GtkPrintSettings) -> c_int;
17492    pub fn gtk_print_settings_get_resolution_y(settings: *mut GtkPrintSettings) -> c_int;
17493    pub fn gtk_print_settings_get_reverse(settings: *mut GtkPrintSettings) -> gboolean;
17494    pub fn gtk_print_settings_get_scale(settings: *mut GtkPrintSettings) -> c_double;
17495    pub fn gtk_print_settings_get_use_color(settings: *mut GtkPrintSettings) -> gboolean;
17496    pub fn gtk_print_settings_has_key(
17497        settings: *mut GtkPrintSettings,
17498        key: *const c_char,
17499    ) -> gboolean;
17500    pub fn gtk_print_settings_load_file(
17501        settings: *mut GtkPrintSettings,
17502        file_name: *const c_char,
17503        error: *mut *mut glib::GError,
17504    ) -> gboolean;
17505    pub fn gtk_print_settings_load_key_file(
17506        settings: *mut GtkPrintSettings,
17507        key_file: *mut glib::GKeyFile,
17508        group_name: *const c_char,
17509        error: *mut *mut glib::GError,
17510    ) -> gboolean;
17511    pub fn gtk_print_settings_set(
17512        settings: *mut GtkPrintSettings,
17513        key: *const c_char,
17514        value: *const c_char,
17515    );
17516    pub fn gtk_print_settings_set_bool(
17517        settings: *mut GtkPrintSettings,
17518        key: *const c_char,
17519        value: gboolean,
17520    );
17521    pub fn gtk_print_settings_set_collate(settings: *mut GtkPrintSettings, collate: gboolean);
17522    pub fn gtk_print_settings_set_default_source(
17523        settings: *mut GtkPrintSettings,
17524        default_source: *const c_char,
17525    );
17526    pub fn gtk_print_settings_set_dither(settings: *mut GtkPrintSettings, dither: *const c_char);
17527    pub fn gtk_print_settings_set_double(
17528        settings: *mut GtkPrintSettings,
17529        key: *const c_char,
17530        value: c_double,
17531    );
17532    pub fn gtk_print_settings_set_duplex(settings: *mut GtkPrintSettings, duplex: GtkPrintDuplex);
17533    pub fn gtk_print_settings_set_finishings(
17534        settings: *mut GtkPrintSettings,
17535        finishings: *const c_char,
17536    );
17537    pub fn gtk_print_settings_set_int(
17538        settings: *mut GtkPrintSettings,
17539        key: *const c_char,
17540        value: c_int,
17541    );
17542    pub fn gtk_print_settings_set_length(
17543        settings: *mut GtkPrintSettings,
17544        key: *const c_char,
17545        value: c_double,
17546        unit: GtkUnit,
17547    );
17548    pub fn gtk_print_settings_set_media_type(
17549        settings: *mut GtkPrintSettings,
17550        media_type: *const c_char,
17551    );
17552    pub fn gtk_print_settings_set_n_copies(settings: *mut GtkPrintSettings, num_copies: c_int);
17553    pub fn gtk_print_settings_set_number_up(settings: *mut GtkPrintSettings, number_up: c_int);
17554    pub fn gtk_print_settings_set_number_up_layout(
17555        settings: *mut GtkPrintSettings,
17556        number_up_layout: GtkNumberUpLayout,
17557    );
17558    pub fn gtk_print_settings_set_orientation(
17559        settings: *mut GtkPrintSettings,
17560        orientation: GtkPageOrientation,
17561    );
17562    pub fn gtk_print_settings_set_output_bin(
17563        settings: *mut GtkPrintSettings,
17564        output_bin: *const c_char,
17565    );
17566    pub fn gtk_print_settings_set_page_ranges(
17567        settings: *mut GtkPrintSettings,
17568        page_ranges: *mut GtkPageRange,
17569        num_ranges: c_int,
17570    );
17571    pub fn gtk_print_settings_set_page_set(settings: *mut GtkPrintSettings, page_set: GtkPageSet);
17572    pub fn gtk_print_settings_set_paper_height(
17573        settings: *mut GtkPrintSettings,
17574        height: c_double,
17575        unit: GtkUnit,
17576    );
17577    pub fn gtk_print_settings_set_paper_size(
17578        settings: *mut GtkPrintSettings,
17579        paper_size: *mut GtkPaperSize,
17580    );
17581    pub fn gtk_print_settings_set_paper_width(
17582        settings: *mut GtkPrintSettings,
17583        width: c_double,
17584        unit: GtkUnit,
17585    );
17586    pub fn gtk_print_settings_set_print_pages(
17587        settings: *mut GtkPrintSettings,
17588        pages: GtkPrintPages,
17589    );
17590    pub fn gtk_print_settings_set_printer(settings: *mut GtkPrintSettings, printer: *const c_char);
17591    pub fn gtk_print_settings_set_printer_lpi(settings: *mut GtkPrintSettings, lpi: c_double);
17592    pub fn gtk_print_settings_set_quality(
17593        settings: *mut GtkPrintSettings,
17594        quality: GtkPrintQuality,
17595    );
17596    pub fn gtk_print_settings_set_resolution(settings: *mut GtkPrintSettings, resolution: c_int);
17597    pub fn gtk_print_settings_set_resolution_xy(
17598        settings: *mut GtkPrintSettings,
17599        resolution_x: c_int,
17600        resolution_y: c_int,
17601    );
17602    pub fn gtk_print_settings_set_reverse(settings: *mut GtkPrintSettings, reverse: gboolean);
17603    pub fn gtk_print_settings_set_scale(settings: *mut GtkPrintSettings, scale: c_double);
17604    pub fn gtk_print_settings_set_use_color(settings: *mut GtkPrintSettings, use_color: gboolean);
17605    pub fn gtk_print_settings_to_file(
17606        settings: *mut GtkPrintSettings,
17607        file_name: *const c_char,
17608        error: *mut *mut glib::GError,
17609    ) -> gboolean;
17610    pub fn gtk_print_settings_to_gvariant(settings: *mut GtkPrintSettings) -> *mut glib::GVariant;
17611    pub fn gtk_print_settings_to_key_file(
17612        settings: *mut GtkPrintSettings,
17613        key_file: *mut glib::GKeyFile,
17614        group_name: *const c_char,
17615    );
17616    pub fn gtk_print_settings_unset(settings: *mut GtkPrintSettings, key: *const c_char);
17617
17618    //=========================================================================
17619    // GtkPrintUnixDialog
17620    //=========================================================================
17621    pub fn gtk_print_unix_dialog_get_type() -> GType;
17622    pub fn gtk_print_unix_dialog_new(
17623        title: *const c_char,
17624        parent: *mut GtkWindow,
17625    ) -> *mut GtkWidget;
17626    pub fn gtk_print_unix_dialog_add_custom_tab(
17627        dialog: *mut GtkPrintUnixDialog,
17628        child: *mut GtkWidget,
17629        tab_label: *mut GtkWidget,
17630    );
17631    pub fn gtk_print_unix_dialog_get_current_page(dialog: *mut GtkPrintUnixDialog) -> c_int;
17632    pub fn gtk_print_unix_dialog_get_embed_page_setup(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17633    pub fn gtk_print_unix_dialog_get_has_selection(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17634    pub fn gtk_print_unix_dialog_get_manual_capabilities(
17635        dialog: *mut GtkPrintUnixDialog,
17636    ) -> GtkPrintCapabilities;
17637    pub fn gtk_print_unix_dialog_get_page_setup(
17638        dialog: *mut GtkPrintUnixDialog,
17639    ) -> *mut GtkPageSetup;
17640    pub fn gtk_print_unix_dialog_get_page_setup_set(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17641    pub fn gtk_print_unix_dialog_get_selected_printer(
17642        dialog: *mut GtkPrintUnixDialog,
17643    ) -> *mut GtkPrinter;
17644    pub fn gtk_print_unix_dialog_get_settings(
17645        dialog: *mut GtkPrintUnixDialog,
17646    ) -> *mut GtkPrintSettings;
17647    pub fn gtk_print_unix_dialog_get_support_selection(dialog: *mut GtkPrintUnixDialog)
17648        -> gboolean;
17649    pub fn gtk_print_unix_dialog_set_current_page(
17650        dialog: *mut GtkPrintUnixDialog,
17651        current_page: c_int,
17652    );
17653    pub fn gtk_print_unix_dialog_set_embed_page_setup(
17654        dialog: *mut GtkPrintUnixDialog,
17655        embed: gboolean,
17656    );
17657    pub fn gtk_print_unix_dialog_set_has_selection(
17658        dialog: *mut GtkPrintUnixDialog,
17659        has_selection: gboolean,
17660    );
17661    pub fn gtk_print_unix_dialog_set_manual_capabilities(
17662        dialog: *mut GtkPrintUnixDialog,
17663        capabilities: GtkPrintCapabilities,
17664    );
17665    pub fn gtk_print_unix_dialog_set_page_setup(
17666        dialog: *mut GtkPrintUnixDialog,
17667        page_setup: *mut GtkPageSetup,
17668    );
17669    pub fn gtk_print_unix_dialog_set_settings(
17670        dialog: *mut GtkPrintUnixDialog,
17671        settings: *mut GtkPrintSettings,
17672    );
17673    pub fn gtk_print_unix_dialog_set_support_selection(
17674        dialog: *mut GtkPrintUnixDialog,
17675        support_selection: gboolean,
17676    );
17677
17678    //=========================================================================
17679    // GtkPrinter
17680    //=========================================================================
17681    pub fn gtk_printer_get_type() -> GType;
17682    pub fn gtk_printer_new(
17683        name: *const c_char,
17684        backend: *mut GtkPrintBackend,
17685        virtual_: gboolean,
17686    ) -> *mut GtkPrinter;
17687    pub fn gtk_printer_accepts_pdf(printer: *mut GtkPrinter) -> gboolean;
17688    pub fn gtk_printer_accepts_ps(printer: *mut GtkPrinter) -> gboolean;
17689    pub fn gtk_printer_compare(a: *mut GtkPrinter, b: *mut GtkPrinter) -> c_int;
17690    pub fn gtk_printer_get_backend(printer: *mut GtkPrinter) -> *mut GtkPrintBackend;
17691    pub fn gtk_printer_get_capabilities(printer: *mut GtkPrinter) -> GtkPrintCapabilities;
17692    pub fn gtk_printer_get_default_page_size(printer: *mut GtkPrinter) -> *mut GtkPageSetup;
17693    pub fn gtk_printer_get_description(printer: *mut GtkPrinter) -> *const c_char;
17694    pub fn gtk_printer_get_hard_margins(
17695        printer: *mut GtkPrinter,
17696        top: *mut c_double,
17697        bottom: *mut c_double,
17698        left: *mut c_double,
17699        right: *mut c_double,
17700    ) -> gboolean;
17701    pub fn gtk_printer_get_hard_margins_for_paper_size(
17702        printer: *mut GtkPrinter,
17703        paper_size: *mut GtkPaperSize,
17704        top: *mut c_double,
17705        bottom: *mut c_double,
17706        left: *mut c_double,
17707        right: *mut c_double,
17708    ) -> gboolean;
17709    pub fn gtk_printer_get_icon_name(printer: *mut GtkPrinter) -> *const c_char;
17710    pub fn gtk_printer_get_job_count(printer: *mut GtkPrinter) -> c_int;
17711    pub fn gtk_printer_get_location(printer: *mut GtkPrinter) -> *const c_char;
17712    pub fn gtk_printer_get_name(printer: *mut GtkPrinter) -> *const c_char;
17713    pub fn gtk_printer_get_state_message(printer: *mut GtkPrinter) -> *const c_char;
17714    pub fn gtk_printer_has_details(printer: *mut GtkPrinter) -> gboolean;
17715    pub fn gtk_printer_is_accepting_jobs(printer: *mut GtkPrinter) -> gboolean;
17716    pub fn gtk_printer_is_active(printer: *mut GtkPrinter) -> gboolean;
17717    pub fn gtk_printer_is_default(printer: *mut GtkPrinter) -> gboolean;
17718    pub fn gtk_printer_is_paused(printer: *mut GtkPrinter) -> gboolean;
17719    pub fn gtk_printer_is_virtual(printer: *mut GtkPrinter) -> gboolean;
17720    pub fn gtk_printer_list_papers(printer: *mut GtkPrinter) -> *mut glib::GList;
17721    pub fn gtk_printer_request_details(printer: *mut GtkPrinter);
17722
17723    //=========================================================================
17724    // GtkProgressBar
17725    //=========================================================================
17726    pub fn gtk_progress_bar_get_type() -> GType;
17727    pub fn gtk_progress_bar_new() -> *mut GtkWidget;
17728    pub fn gtk_progress_bar_get_ellipsize(pbar: *mut GtkProgressBar) -> pango::PangoEllipsizeMode;
17729    pub fn gtk_progress_bar_get_fraction(pbar: *mut GtkProgressBar) -> c_double;
17730    pub fn gtk_progress_bar_get_inverted(pbar: *mut GtkProgressBar) -> gboolean;
17731    pub fn gtk_progress_bar_get_pulse_step(pbar: *mut GtkProgressBar) -> c_double;
17732    pub fn gtk_progress_bar_get_show_text(pbar: *mut GtkProgressBar) -> gboolean;
17733    pub fn gtk_progress_bar_get_text(pbar: *mut GtkProgressBar) -> *const c_char;
17734    pub fn gtk_progress_bar_pulse(pbar: *mut GtkProgressBar);
17735    pub fn gtk_progress_bar_set_ellipsize(
17736        pbar: *mut GtkProgressBar,
17737        mode: pango::PangoEllipsizeMode,
17738    );
17739    pub fn gtk_progress_bar_set_fraction(pbar: *mut GtkProgressBar, fraction: c_double);
17740    pub fn gtk_progress_bar_set_inverted(pbar: *mut GtkProgressBar, inverted: gboolean);
17741    pub fn gtk_progress_bar_set_pulse_step(pbar: *mut GtkProgressBar, fraction: c_double);
17742    pub fn gtk_progress_bar_set_show_text(pbar: *mut GtkProgressBar, show_text: gboolean);
17743    pub fn gtk_progress_bar_set_text(pbar: *mut GtkProgressBar, text: *const c_char);
17744
17745    //=========================================================================
17746    // GtkPropertyExpression
17747    //=========================================================================
17748    pub fn gtk_property_expression_get_type() -> GType;
17749    pub fn gtk_property_expression_new(
17750        this_type: GType,
17751        expression: *mut GtkExpression,
17752        property_name: *const c_char,
17753    ) -> *mut GtkPropertyExpression;
17754    pub fn gtk_property_expression_new_for_pspec(
17755        expression: *mut GtkExpression,
17756        pspec: *mut gobject::GParamSpec,
17757    ) -> *mut GtkPropertyExpression;
17758    pub fn gtk_property_expression_get_expression(
17759        expression: *mut GtkPropertyExpression,
17760    ) -> *mut GtkExpression;
17761    pub fn gtk_property_expression_get_pspec(
17762        expression: *mut GtkPropertyExpression,
17763    ) -> *mut gobject::GParamSpec;
17764
17765    //=========================================================================
17766    // GtkRange
17767    //=========================================================================
17768    pub fn gtk_range_get_type() -> GType;
17769    pub fn gtk_range_get_adjustment(range: *mut GtkRange) -> *mut GtkAdjustment;
17770    pub fn gtk_range_get_fill_level(range: *mut GtkRange) -> c_double;
17771    pub fn gtk_range_get_flippable(range: *mut GtkRange) -> gboolean;
17772    pub fn gtk_range_get_inverted(range: *mut GtkRange) -> gboolean;
17773    pub fn gtk_range_get_range_rect(range: *mut GtkRange, range_rect: *mut gdk::GdkRectangle);
17774    pub fn gtk_range_get_restrict_to_fill_level(range: *mut GtkRange) -> gboolean;
17775    pub fn gtk_range_get_round_digits(range: *mut GtkRange) -> c_int;
17776    pub fn gtk_range_get_show_fill_level(range: *mut GtkRange) -> gboolean;
17777    pub fn gtk_range_get_slider_range(
17778        range: *mut GtkRange,
17779        slider_start: *mut c_int,
17780        slider_end: *mut c_int,
17781    );
17782    pub fn gtk_range_get_slider_size_fixed(range: *mut GtkRange) -> gboolean;
17783    pub fn gtk_range_get_value(range: *mut GtkRange) -> c_double;
17784    pub fn gtk_range_set_adjustment(range: *mut GtkRange, adjustment: *mut GtkAdjustment);
17785    pub fn gtk_range_set_fill_level(range: *mut GtkRange, fill_level: c_double);
17786    pub fn gtk_range_set_flippable(range: *mut GtkRange, flippable: gboolean);
17787    pub fn gtk_range_set_increments(range: *mut GtkRange, step: c_double, page: c_double);
17788    pub fn gtk_range_set_inverted(range: *mut GtkRange, setting: gboolean);
17789    pub fn gtk_range_set_range(range: *mut GtkRange, min: c_double, max: c_double);
17790    pub fn gtk_range_set_restrict_to_fill_level(
17791        range: *mut GtkRange,
17792        restrict_to_fill_level: gboolean,
17793    );
17794    pub fn gtk_range_set_round_digits(range: *mut GtkRange, round_digits: c_int);
17795    pub fn gtk_range_set_show_fill_level(range: *mut GtkRange, show_fill_level: gboolean);
17796    pub fn gtk_range_set_slider_size_fixed(range: *mut GtkRange, size_fixed: gboolean);
17797    pub fn gtk_range_set_value(range: *mut GtkRange, value: c_double);
17798
17799    //=========================================================================
17800    // GtkRecentManager
17801    //=========================================================================
17802    pub fn gtk_recent_manager_get_type() -> GType;
17803    pub fn gtk_recent_manager_new() -> *mut GtkRecentManager;
17804    pub fn gtk_recent_manager_get_default() -> *mut GtkRecentManager;
17805    pub fn gtk_recent_manager_add_full(
17806        manager: *mut GtkRecentManager,
17807        uri: *const c_char,
17808        recent_data: *const GtkRecentData,
17809    ) -> gboolean;
17810    pub fn gtk_recent_manager_add_item(
17811        manager: *mut GtkRecentManager,
17812        uri: *const c_char,
17813    ) -> gboolean;
17814    pub fn gtk_recent_manager_get_items(manager: *mut GtkRecentManager) -> *mut glib::GList;
17815    pub fn gtk_recent_manager_has_item(
17816        manager: *mut GtkRecentManager,
17817        uri: *const c_char,
17818    ) -> gboolean;
17819    pub fn gtk_recent_manager_lookup_item(
17820        manager: *mut GtkRecentManager,
17821        uri: *const c_char,
17822        error: *mut *mut glib::GError,
17823    ) -> *mut GtkRecentInfo;
17824    pub fn gtk_recent_manager_move_item(
17825        manager: *mut GtkRecentManager,
17826        uri: *const c_char,
17827        new_uri: *const c_char,
17828        error: *mut *mut glib::GError,
17829    ) -> gboolean;
17830    pub fn gtk_recent_manager_purge_items(
17831        manager: *mut GtkRecentManager,
17832        error: *mut *mut glib::GError,
17833    ) -> c_int;
17834    pub fn gtk_recent_manager_remove_item(
17835        manager: *mut GtkRecentManager,
17836        uri: *const c_char,
17837        error: *mut *mut glib::GError,
17838    ) -> gboolean;
17839
17840    //=========================================================================
17841    // GtkRevealer
17842    //=========================================================================
17843    pub fn gtk_revealer_get_type() -> GType;
17844    pub fn gtk_revealer_new() -> *mut GtkWidget;
17845    pub fn gtk_revealer_get_child(revealer: *mut GtkRevealer) -> *mut GtkWidget;
17846    pub fn gtk_revealer_get_child_revealed(revealer: *mut GtkRevealer) -> gboolean;
17847    pub fn gtk_revealer_get_reveal_child(revealer: *mut GtkRevealer) -> gboolean;
17848    pub fn gtk_revealer_get_transition_duration(revealer: *mut GtkRevealer) -> c_uint;
17849    pub fn gtk_revealer_get_transition_type(
17850        revealer: *mut GtkRevealer,
17851    ) -> GtkRevealerTransitionType;
17852    pub fn gtk_revealer_set_child(revealer: *mut GtkRevealer, child: *mut GtkWidget);
17853    pub fn gtk_revealer_set_reveal_child(revealer: *mut GtkRevealer, reveal_child: gboolean);
17854    pub fn gtk_revealer_set_transition_duration(revealer: *mut GtkRevealer, duration: c_uint);
17855    pub fn gtk_revealer_set_transition_type(
17856        revealer: *mut GtkRevealer,
17857        transition: GtkRevealerTransitionType,
17858    );
17859
17860    //=========================================================================
17861    // GtkScale
17862    //=========================================================================
17863    pub fn gtk_scale_get_type() -> GType;
17864    pub fn gtk_scale_new(
17865        orientation: GtkOrientation,
17866        adjustment: *mut GtkAdjustment,
17867    ) -> *mut GtkWidget;
17868    pub fn gtk_scale_new_with_range(
17869        orientation: GtkOrientation,
17870        min: c_double,
17871        max: c_double,
17872        step: c_double,
17873    ) -> *mut GtkWidget;
17874    pub fn gtk_scale_add_mark(
17875        scale: *mut GtkScale,
17876        value: c_double,
17877        position: GtkPositionType,
17878        markup: *const c_char,
17879    );
17880    pub fn gtk_scale_clear_marks(scale: *mut GtkScale);
17881    pub fn gtk_scale_get_digits(scale: *mut GtkScale) -> c_int;
17882    pub fn gtk_scale_get_draw_value(scale: *mut GtkScale) -> gboolean;
17883    pub fn gtk_scale_get_has_origin(scale: *mut GtkScale) -> gboolean;
17884    pub fn gtk_scale_get_layout(scale: *mut GtkScale) -> *mut pango::PangoLayout;
17885    pub fn gtk_scale_get_layout_offsets(scale: *mut GtkScale, x: *mut c_int, y: *mut c_int);
17886    pub fn gtk_scale_get_value_pos(scale: *mut GtkScale) -> GtkPositionType;
17887    pub fn gtk_scale_set_digits(scale: *mut GtkScale, digits: c_int);
17888    pub fn gtk_scale_set_draw_value(scale: *mut GtkScale, draw_value: gboolean);
17889    pub fn gtk_scale_set_format_value_func(
17890        scale: *mut GtkScale,
17891        func: GtkScaleFormatValueFunc,
17892        user_data: gpointer,
17893        destroy_notify: glib::GDestroyNotify,
17894    );
17895    pub fn gtk_scale_set_has_origin(scale: *mut GtkScale, has_origin: gboolean);
17896    pub fn gtk_scale_set_value_pos(scale: *mut GtkScale, pos: GtkPositionType);
17897
17898    //=========================================================================
17899    // GtkScaleButton
17900    //=========================================================================
17901    pub fn gtk_scale_button_get_type() -> GType;
17902    pub fn gtk_scale_button_new(
17903        min: c_double,
17904        max: c_double,
17905        step: c_double,
17906        icons: *mut *const c_char,
17907    ) -> *mut GtkWidget;
17908    #[cfg(feature = "v4_10")]
17909    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
17910    pub fn gtk_scale_button_get_active(button: *mut GtkScaleButton) -> gboolean;
17911    pub fn gtk_scale_button_get_adjustment(button: *mut GtkScaleButton) -> *mut GtkAdjustment;
17912    #[cfg(feature = "v4_14")]
17913    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17914    pub fn gtk_scale_button_get_has_frame(button: *mut GtkScaleButton) -> gboolean;
17915    pub fn gtk_scale_button_get_minus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
17916    pub fn gtk_scale_button_get_plus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
17917    pub fn gtk_scale_button_get_popup(button: *mut GtkScaleButton) -> *mut GtkWidget;
17918    pub fn gtk_scale_button_get_value(button: *mut GtkScaleButton) -> c_double;
17919    pub fn gtk_scale_button_set_adjustment(
17920        button: *mut GtkScaleButton,
17921        adjustment: *mut GtkAdjustment,
17922    );
17923    #[cfg(feature = "v4_14")]
17924    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17925    pub fn gtk_scale_button_set_has_frame(button: *mut GtkScaleButton, has_frame: gboolean);
17926    pub fn gtk_scale_button_set_icons(button: *mut GtkScaleButton, icons: *mut *const c_char);
17927    pub fn gtk_scale_button_set_value(button: *mut GtkScaleButton, value: c_double);
17928
17929    //=========================================================================
17930    // GtkScrollbar
17931    //=========================================================================
17932    pub fn gtk_scrollbar_get_type() -> GType;
17933    pub fn gtk_scrollbar_new(
17934        orientation: GtkOrientation,
17935        adjustment: *mut GtkAdjustment,
17936    ) -> *mut GtkWidget;
17937    pub fn gtk_scrollbar_get_adjustment(self_: *mut GtkScrollbar) -> *mut GtkAdjustment;
17938    pub fn gtk_scrollbar_set_adjustment(self_: *mut GtkScrollbar, adjustment: *mut GtkAdjustment);
17939
17940    //=========================================================================
17941    // GtkScrolledWindow
17942    //=========================================================================
17943    pub fn gtk_scrolled_window_get_type() -> GType;
17944    pub fn gtk_scrolled_window_new() -> *mut GtkWidget;
17945    pub fn gtk_scrolled_window_get_child(scrolled_window: *mut GtkScrolledWindow)
17946        -> *mut GtkWidget;
17947    pub fn gtk_scrolled_window_get_hadjustment(
17948        scrolled_window: *mut GtkScrolledWindow,
17949    ) -> *mut GtkAdjustment;
17950    pub fn gtk_scrolled_window_get_has_frame(scrolled_window: *mut GtkScrolledWindow) -> gboolean;
17951    pub fn gtk_scrolled_window_get_hscrollbar(
17952        scrolled_window: *mut GtkScrolledWindow,
17953    ) -> *mut GtkWidget;
17954    pub fn gtk_scrolled_window_get_kinetic_scrolling(
17955        scrolled_window: *mut GtkScrolledWindow,
17956    ) -> gboolean;
17957    pub fn gtk_scrolled_window_get_max_content_height(
17958        scrolled_window: *mut GtkScrolledWindow,
17959    ) -> c_int;
17960    pub fn gtk_scrolled_window_get_max_content_width(
17961        scrolled_window: *mut GtkScrolledWindow,
17962    ) -> c_int;
17963    pub fn gtk_scrolled_window_get_min_content_height(
17964        scrolled_window: *mut GtkScrolledWindow,
17965    ) -> c_int;
17966    pub fn gtk_scrolled_window_get_min_content_width(
17967        scrolled_window: *mut GtkScrolledWindow,
17968    ) -> c_int;
17969    pub fn gtk_scrolled_window_get_overlay_scrolling(
17970        scrolled_window: *mut GtkScrolledWindow,
17971    ) -> gboolean;
17972    pub fn gtk_scrolled_window_get_placement(
17973        scrolled_window: *mut GtkScrolledWindow,
17974    ) -> GtkCornerType;
17975    pub fn gtk_scrolled_window_get_policy(
17976        scrolled_window: *mut GtkScrolledWindow,
17977        hscrollbar_policy: *mut GtkPolicyType,
17978        vscrollbar_policy: *mut GtkPolicyType,
17979    );
17980    pub fn gtk_scrolled_window_get_propagate_natural_height(
17981        scrolled_window: *mut GtkScrolledWindow,
17982    ) -> gboolean;
17983    pub fn gtk_scrolled_window_get_propagate_natural_width(
17984        scrolled_window: *mut GtkScrolledWindow,
17985    ) -> gboolean;
17986    pub fn gtk_scrolled_window_get_vadjustment(
17987        scrolled_window: *mut GtkScrolledWindow,
17988    ) -> *mut GtkAdjustment;
17989    pub fn gtk_scrolled_window_get_vscrollbar(
17990        scrolled_window: *mut GtkScrolledWindow,
17991    ) -> *mut GtkWidget;
17992    pub fn gtk_scrolled_window_set_child(
17993        scrolled_window: *mut GtkScrolledWindow,
17994        child: *mut GtkWidget,
17995    );
17996    pub fn gtk_scrolled_window_set_hadjustment(
17997        scrolled_window: *mut GtkScrolledWindow,
17998        hadjustment: *mut GtkAdjustment,
17999    );
18000    pub fn gtk_scrolled_window_set_has_frame(
18001        scrolled_window: *mut GtkScrolledWindow,
18002        has_frame: gboolean,
18003    );
18004    pub fn gtk_scrolled_window_set_kinetic_scrolling(
18005        scrolled_window: *mut GtkScrolledWindow,
18006        kinetic_scrolling: gboolean,
18007    );
18008    pub fn gtk_scrolled_window_set_max_content_height(
18009        scrolled_window: *mut GtkScrolledWindow,
18010        height: c_int,
18011    );
18012    pub fn gtk_scrolled_window_set_max_content_width(
18013        scrolled_window: *mut GtkScrolledWindow,
18014        width: c_int,
18015    );
18016    pub fn gtk_scrolled_window_set_min_content_height(
18017        scrolled_window: *mut GtkScrolledWindow,
18018        height: c_int,
18019    );
18020    pub fn gtk_scrolled_window_set_min_content_width(
18021        scrolled_window: *mut GtkScrolledWindow,
18022        width: c_int,
18023    );
18024    pub fn gtk_scrolled_window_set_overlay_scrolling(
18025        scrolled_window: *mut GtkScrolledWindow,
18026        overlay_scrolling: gboolean,
18027    );
18028    pub fn gtk_scrolled_window_set_placement(
18029        scrolled_window: *mut GtkScrolledWindow,
18030        window_placement: GtkCornerType,
18031    );
18032    pub fn gtk_scrolled_window_set_policy(
18033        scrolled_window: *mut GtkScrolledWindow,
18034        hscrollbar_policy: GtkPolicyType,
18035        vscrollbar_policy: GtkPolicyType,
18036    );
18037    pub fn gtk_scrolled_window_set_propagate_natural_height(
18038        scrolled_window: *mut GtkScrolledWindow,
18039        propagate: gboolean,
18040    );
18041    pub fn gtk_scrolled_window_set_propagate_natural_width(
18042        scrolled_window: *mut GtkScrolledWindow,
18043        propagate: gboolean,
18044    );
18045    pub fn gtk_scrolled_window_set_vadjustment(
18046        scrolled_window: *mut GtkScrolledWindow,
18047        vadjustment: *mut GtkAdjustment,
18048    );
18049    pub fn gtk_scrolled_window_unset_placement(scrolled_window: *mut GtkScrolledWindow);
18050
18051    //=========================================================================
18052    // GtkSearchBar
18053    //=========================================================================
18054    pub fn gtk_search_bar_get_type() -> GType;
18055    pub fn gtk_search_bar_new() -> *mut GtkWidget;
18056    pub fn gtk_search_bar_connect_entry(bar: *mut GtkSearchBar, entry: *mut GtkEditable);
18057    pub fn gtk_search_bar_get_child(bar: *mut GtkSearchBar) -> *mut GtkWidget;
18058    pub fn gtk_search_bar_get_key_capture_widget(bar: *mut GtkSearchBar) -> *mut GtkWidget;
18059    pub fn gtk_search_bar_get_search_mode(bar: *mut GtkSearchBar) -> gboolean;
18060    pub fn gtk_search_bar_get_show_close_button(bar: *mut GtkSearchBar) -> gboolean;
18061    pub fn gtk_search_bar_set_child(bar: *mut GtkSearchBar, child: *mut GtkWidget);
18062    pub fn gtk_search_bar_set_key_capture_widget(bar: *mut GtkSearchBar, widget: *mut GtkWidget);
18063    pub fn gtk_search_bar_set_search_mode(bar: *mut GtkSearchBar, search_mode: gboolean);
18064    pub fn gtk_search_bar_set_show_close_button(bar: *mut GtkSearchBar, visible: gboolean);
18065
18066    //=========================================================================
18067    // GtkSearchEntry
18068    //=========================================================================
18069    pub fn gtk_search_entry_get_type() -> GType;
18070    pub fn gtk_search_entry_new() -> *mut GtkWidget;
18071    #[cfg(feature = "v4_14")]
18072    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18073    pub fn gtk_search_entry_get_input_hints(entry: *mut GtkSearchEntry) -> GtkInputHints;
18074    #[cfg(feature = "v4_14")]
18075    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18076    pub fn gtk_search_entry_get_input_purpose(entry: *mut GtkSearchEntry) -> GtkInputPurpose;
18077    pub fn gtk_search_entry_get_key_capture_widget(entry: *mut GtkSearchEntry) -> *mut GtkWidget;
18078    #[cfg(feature = "v4_10")]
18079    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18080    pub fn gtk_search_entry_get_placeholder_text(entry: *mut GtkSearchEntry) -> *const c_char;
18081    #[cfg(feature = "v4_8")]
18082    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
18083    pub fn gtk_search_entry_get_search_delay(entry: *mut GtkSearchEntry) -> c_uint;
18084    #[cfg(feature = "v4_14")]
18085    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18086    pub fn gtk_search_entry_set_input_hints(entry: *mut GtkSearchEntry, hints: GtkInputHints);
18087    #[cfg(feature = "v4_14")]
18088    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18089    pub fn gtk_search_entry_set_input_purpose(entry: *mut GtkSearchEntry, purpose: GtkInputPurpose);
18090    pub fn gtk_search_entry_set_key_capture_widget(
18091        entry: *mut GtkSearchEntry,
18092        widget: *mut GtkWidget,
18093    );
18094    #[cfg(feature = "v4_10")]
18095    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18096    pub fn gtk_search_entry_set_placeholder_text(entry: *mut GtkSearchEntry, text: *const c_char);
18097    #[cfg(feature = "v4_8")]
18098    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
18099    pub fn gtk_search_entry_set_search_delay(entry: *mut GtkSearchEntry, delay: c_uint);
18100
18101    //=========================================================================
18102    // GtkSelectionFilterModel
18103    //=========================================================================
18104    pub fn gtk_selection_filter_model_get_type() -> GType;
18105    pub fn gtk_selection_filter_model_new(
18106        model: *mut GtkSelectionModel,
18107    ) -> *mut GtkSelectionFilterModel;
18108    pub fn gtk_selection_filter_model_get_model(
18109        self_: *mut GtkSelectionFilterModel,
18110    ) -> *mut GtkSelectionModel;
18111    pub fn gtk_selection_filter_model_set_model(
18112        self_: *mut GtkSelectionFilterModel,
18113        model: *mut GtkSelectionModel,
18114    );
18115
18116    //=========================================================================
18117    // GtkSeparator
18118    //=========================================================================
18119    pub fn gtk_separator_get_type() -> GType;
18120    pub fn gtk_separator_new(orientation: GtkOrientation) -> *mut GtkWidget;
18121
18122    //=========================================================================
18123    // GtkSettings
18124    //=========================================================================
18125    pub fn gtk_settings_get_type() -> GType;
18126    pub fn gtk_settings_get_default() -> *mut GtkSettings;
18127    pub fn gtk_settings_get_for_display(display: *mut gdk::GdkDisplay) -> *mut GtkSettings;
18128    pub fn gtk_settings_reset_property(settings: *mut GtkSettings, name: *const c_char);
18129
18130    //=========================================================================
18131    // GtkShortcut
18132    //=========================================================================
18133    pub fn gtk_shortcut_get_type() -> GType;
18134    pub fn gtk_shortcut_new(
18135        trigger: *mut GtkShortcutTrigger,
18136        action: *mut GtkShortcutAction,
18137    ) -> *mut GtkShortcut;
18138    pub fn gtk_shortcut_new_with_arguments(
18139        trigger: *mut GtkShortcutTrigger,
18140        action: *mut GtkShortcutAction,
18141        format_string: *const c_char,
18142        ...
18143    ) -> *mut GtkShortcut;
18144    pub fn gtk_shortcut_get_action(self_: *mut GtkShortcut) -> *mut GtkShortcutAction;
18145    pub fn gtk_shortcut_get_arguments(self_: *mut GtkShortcut) -> *mut glib::GVariant;
18146    pub fn gtk_shortcut_get_trigger(self_: *mut GtkShortcut) -> *mut GtkShortcutTrigger;
18147    pub fn gtk_shortcut_set_action(self_: *mut GtkShortcut, action: *mut GtkShortcutAction);
18148    pub fn gtk_shortcut_set_arguments(self_: *mut GtkShortcut, args: *mut glib::GVariant);
18149    pub fn gtk_shortcut_set_trigger(self_: *mut GtkShortcut, trigger: *mut GtkShortcutTrigger);
18150
18151    //=========================================================================
18152    // GtkShortcutAction
18153    //=========================================================================
18154    pub fn gtk_shortcut_action_get_type() -> GType;
18155    pub fn gtk_shortcut_action_parse_string(string: *const c_char) -> *mut GtkShortcutAction;
18156    pub fn gtk_shortcut_action_activate(
18157        self_: *mut GtkShortcutAction,
18158        flags: GtkShortcutActionFlags,
18159        widget: *mut GtkWidget,
18160        args: *mut glib::GVariant,
18161    ) -> gboolean;
18162    pub fn gtk_shortcut_action_print(self_: *mut GtkShortcutAction, string: *mut glib::GString);
18163    pub fn gtk_shortcut_action_to_string(self_: *mut GtkShortcutAction) -> *mut c_char;
18164
18165    //=========================================================================
18166    // GtkShortcutController
18167    //=========================================================================
18168    pub fn gtk_shortcut_controller_get_type() -> GType;
18169    pub fn gtk_shortcut_controller_new() -> *mut GtkEventController;
18170    pub fn gtk_shortcut_controller_new_for_model(
18171        model: *mut gio::GListModel,
18172    ) -> *mut GtkEventController;
18173    pub fn gtk_shortcut_controller_add_shortcut(
18174        self_: *mut GtkShortcutController,
18175        shortcut: *mut GtkShortcut,
18176    );
18177    pub fn gtk_shortcut_controller_get_mnemonics_modifiers(
18178        self_: *mut GtkShortcutController,
18179    ) -> gdk::GdkModifierType;
18180    pub fn gtk_shortcut_controller_get_scope(self_: *mut GtkShortcutController)
18181        -> GtkShortcutScope;
18182    pub fn gtk_shortcut_controller_remove_shortcut(
18183        self_: *mut GtkShortcutController,
18184        shortcut: *mut GtkShortcut,
18185    );
18186    pub fn gtk_shortcut_controller_set_mnemonics_modifiers(
18187        self_: *mut GtkShortcutController,
18188        modifiers: gdk::GdkModifierType,
18189    );
18190    pub fn gtk_shortcut_controller_set_scope(
18191        self_: *mut GtkShortcutController,
18192        scope: GtkShortcutScope,
18193    );
18194
18195    //=========================================================================
18196    // GtkShortcutLabel
18197    //=========================================================================
18198    pub fn gtk_shortcut_label_get_type() -> GType;
18199    pub fn gtk_shortcut_label_new(accelerator: *const c_char) -> *mut GtkWidget;
18200    pub fn gtk_shortcut_label_get_accelerator(self_: *mut GtkShortcutLabel) -> *const c_char;
18201    pub fn gtk_shortcut_label_get_disabled_text(self_: *mut GtkShortcutLabel) -> *const c_char;
18202    pub fn gtk_shortcut_label_set_accelerator(
18203        self_: *mut GtkShortcutLabel,
18204        accelerator: *const c_char,
18205    );
18206    pub fn gtk_shortcut_label_set_disabled_text(
18207        self_: *mut GtkShortcutLabel,
18208        disabled_text: *const c_char,
18209    );
18210
18211    //=========================================================================
18212    // GtkShortcutTrigger
18213    //=========================================================================
18214    pub fn gtk_shortcut_trigger_get_type() -> GType;
18215    pub fn gtk_shortcut_trigger_parse_string(string: *const c_char) -> *mut GtkShortcutTrigger;
18216    pub fn gtk_shortcut_trigger_compare(trigger1: gconstpointer, trigger2: gconstpointer) -> c_int;
18217    pub fn gtk_shortcut_trigger_equal(trigger1: gconstpointer, trigger2: gconstpointer)
18218        -> gboolean;
18219    pub fn gtk_shortcut_trigger_hash(trigger: gconstpointer) -> c_uint;
18220    pub fn gtk_shortcut_trigger_print(self_: *mut GtkShortcutTrigger, string: *mut glib::GString);
18221    pub fn gtk_shortcut_trigger_print_label(
18222        self_: *mut GtkShortcutTrigger,
18223        display: *mut gdk::GdkDisplay,
18224        string: *mut glib::GString,
18225    ) -> gboolean;
18226    pub fn gtk_shortcut_trigger_to_label(
18227        self_: *mut GtkShortcutTrigger,
18228        display: *mut gdk::GdkDisplay,
18229    ) -> *mut c_char;
18230    pub fn gtk_shortcut_trigger_to_string(self_: *mut GtkShortcutTrigger) -> *mut c_char;
18231    pub fn gtk_shortcut_trigger_trigger(
18232        self_: *mut GtkShortcutTrigger,
18233        event: *mut gdk::GdkEvent,
18234        enable_mnemonics: gboolean,
18235    ) -> gdk::GdkKeyMatch;
18236
18237    //=========================================================================
18238    // GtkShortcutsGroup
18239    //=========================================================================
18240    pub fn gtk_shortcuts_group_get_type() -> GType;
18241    #[cfg(feature = "v4_14")]
18242    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18243    pub fn gtk_shortcuts_group_add_shortcut(
18244        self_: *mut GtkShortcutsGroup,
18245        shortcut: *mut GtkShortcutsShortcut,
18246    );
18247
18248    //=========================================================================
18249    // GtkShortcutsSection
18250    //=========================================================================
18251    pub fn gtk_shortcuts_section_get_type() -> GType;
18252    #[cfg(feature = "v4_14")]
18253    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18254    pub fn gtk_shortcuts_section_add_group(
18255        self_: *mut GtkShortcutsSection,
18256        group: *mut GtkShortcutsGroup,
18257    );
18258
18259    //=========================================================================
18260    // GtkShortcutsShortcut
18261    //=========================================================================
18262    pub fn gtk_shortcuts_shortcut_get_type() -> GType;
18263
18264    //=========================================================================
18265    // GtkShortcutsWindow
18266    //=========================================================================
18267    pub fn gtk_shortcuts_window_get_type() -> GType;
18268    #[cfg(feature = "v4_14")]
18269    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18270    pub fn gtk_shortcuts_window_add_section(
18271        self_: *mut GtkShortcutsWindow,
18272        section: *mut GtkShortcutsSection,
18273    );
18274
18275    //=========================================================================
18276    // GtkSignalAction
18277    //=========================================================================
18278    pub fn gtk_signal_action_get_type() -> GType;
18279    pub fn gtk_signal_action_new(signal_name: *const c_char) -> *mut GtkSignalAction;
18280    pub fn gtk_signal_action_get_signal_name(self_: *mut GtkSignalAction) -> *const c_char;
18281
18282    //=========================================================================
18283    // GtkSignalListItemFactory
18284    //=========================================================================
18285    pub fn gtk_signal_list_item_factory_get_type() -> GType;
18286    pub fn gtk_signal_list_item_factory_new() -> *mut GtkListItemFactory;
18287
18288    //=========================================================================
18289    // GtkSingleSelection
18290    //=========================================================================
18291    pub fn gtk_single_selection_get_type() -> GType;
18292    pub fn gtk_single_selection_new(model: *mut gio::GListModel) -> *mut GtkSingleSelection;
18293    pub fn gtk_single_selection_get_autoselect(self_: *mut GtkSingleSelection) -> gboolean;
18294    pub fn gtk_single_selection_get_can_unselect(self_: *mut GtkSingleSelection) -> gboolean;
18295    pub fn gtk_single_selection_get_model(self_: *mut GtkSingleSelection) -> *mut gio::GListModel;
18296    pub fn gtk_single_selection_get_selected(self_: *mut GtkSingleSelection) -> c_uint;
18297    pub fn gtk_single_selection_get_selected_item(
18298        self_: *mut GtkSingleSelection,
18299    ) -> *mut gobject::GObject;
18300    pub fn gtk_single_selection_set_autoselect(
18301        self_: *mut GtkSingleSelection,
18302        autoselect: gboolean,
18303    );
18304    pub fn gtk_single_selection_set_can_unselect(
18305        self_: *mut GtkSingleSelection,
18306        can_unselect: gboolean,
18307    );
18308    pub fn gtk_single_selection_set_model(
18309        self_: *mut GtkSingleSelection,
18310        model: *mut gio::GListModel,
18311    );
18312    pub fn gtk_single_selection_set_selected(self_: *mut GtkSingleSelection, position: c_uint);
18313
18314    //=========================================================================
18315    // GtkSizeGroup
18316    //=========================================================================
18317    pub fn gtk_size_group_get_type() -> GType;
18318    pub fn gtk_size_group_new(mode: GtkSizeGroupMode) -> *mut GtkSizeGroup;
18319    pub fn gtk_size_group_add_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
18320    pub fn gtk_size_group_get_mode(size_group: *mut GtkSizeGroup) -> GtkSizeGroupMode;
18321    pub fn gtk_size_group_get_widgets(size_group: *mut GtkSizeGroup) -> *mut glib::GSList;
18322    pub fn gtk_size_group_remove_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
18323    pub fn gtk_size_group_set_mode(size_group: *mut GtkSizeGroup, mode: GtkSizeGroupMode);
18324
18325    //=========================================================================
18326    // GtkSliceListModel
18327    //=========================================================================
18328    pub fn gtk_slice_list_model_get_type() -> GType;
18329    pub fn gtk_slice_list_model_new(
18330        model: *mut gio::GListModel,
18331        offset: c_uint,
18332        size: c_uint,
18333    ) -> *mut GtkSliceListModel;
18334    pub fn gtk_slice_list_model_get_model(self_: *mut GtkSliceListModel) -> *mut gio::GListModel;
18335    pub fn gtk_slice_list_model_get_offset(self_: *mut GtkSliceListModel) -> c_uint;
18336    pub fn gtk_slice_list_model_get_size(self_: *mut GtkSliceListModel) -> c_uint;
18337    pub fn gtk_slice_list_model_set_model(
18338        self_: *mut GtkSliceListModel,
18339        model: *mut gio::GListModel,
18340    );
18341    pub fn gtk_slice_list_model_set_offset(self_: *mut GtkSliceListModel, offset: c_uint);
18342    pub fn gtk_slice_list_model_set_size(self_: *mut GtkSliceListModel, size: c_uint);
18343
18344    //=========================================================================
18345    // GtkSnapshot
18346    //=========================================================================
18347    pub fn gtk_snapshot_get_type() -> GType;
18348    pub fn gtk_snapshot_new() -> *mut GtkSnapshot;
18349    pub fn gtk_snapshot_append_border(
18350        snapshot: *mut GtkSnapshot,
18351        outline: *const gsk::GskRoundedRect,
18352        border_width: *const [c_float; 4],
18353        border_color: *const [gdk::GdkRGBA; 4],
18354    );
18355    pub fn gtk_snapshot_append_cairo(
18356        snapshot: *mut GtkSnapshot,
18357        bounds: *const graphene::graphene_rect_t,
18358    ) -> *mut cairo::cairo_t;
18359    pub fn gtk_snapshot_append_color(
18360        snapshot: *mut GtkSnapshot,
18361        color: *const gdk::GdkRGBA,
18362        bounds: *const graphene::graphene_rect_t,
18363    );
18364    pub fn gtk_snapshot_append_conic_gradient(
18365        snapshot: *mut GtkSnapshot,
18366        bounds: *const graphene::graphene_rect_t,
18367        center: *const graphene::graphene_point_t,
18368        rotation: c_float,
18369        stops: *const gsk::GskColorStop,
18370        n_stops: size_t,
18371    );
18372    #[cfg(feature = "v4_14")]
18373    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18374    pub fn gtk_snapshot_append_fill(
18375        snapshot: *mut GtkSnapshot,
18376        path: *mut gsk::GskPath,
18377        fill_rule: gsk::GskFillRule,
18378        color: *const gdk::GdkRGBA,
18379    );
18380    pub fn gtk_snapshot_append_inset_shadow(
18381        snapshot: *mut GtkSnapshot,
18382        outline: *const gsk::GskRoundedRect,
18383        color: *const gdk::GdkRGBA,
18384        dx: c_float,
18385        dy: c_float,
18386        spread: c_float,
18387        blur_radius: c_float,
18388    );
18389    pub fn gtk_snapshot_append_layout(
18390        snapshot: *mut GtkSnapshot,
18391        layout: *mut pango::PangoLayout,
18392        color: *const gdk::GdkRGBA,
18393    );
18394    pub fn gtk_snapshot_append_linear_gradient(
18395        snapshot: *mut GtkSnapshot,
18396        bounds: *const graphene::graphene_rect_t,
18397        start_point: *const graphene::graphene_point_t,
18398        end_point: *const graphene::graphene_point_t,
18399        stops: *const gsk::GskColorStop,
18400        n_stops: size_t,
18401    );
18402    pub fn gtk_snapshot_append_node(snapshot: *mut GtkSnapshot, node: *mut gsk::GskRenderNode);
18403    pub fn gtk_snapshot_append_outset_shadow(
18404        snapshot: *mut GtkSnapshot,
18405        outline: *const gsk::GskRoundedRect,
18406        color: *const gdk::GdkRGBA,
18407        dx: c_float,
18408        dy: c_float,
18409        spread: c_float,
18410        blur_radius: c_float,
18411    );
18412    #[cfg(feature = "v4_22")]
18413    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18414    pub fn gtk_snapshot_append_paste(
18415        snapshot: *mut GtkSnapshot,
18416        bounds: *const graphene::graphene_rect_t,
18417        nth: size_t,
18418    );
18419    pub fn gtk_snapshot_append_radial_gradient(
18420        snapshot: *mut GtkSnapshot,
18421        bounds: *const graphene::graphene_rect_t,
18422        center: *const graphene::graphene_point_t,
18423        hradius: c_float,
18424        vradius: c_float,
18425        start: c_float,
18426        end: c_float,
18427        stops: *const gsk::GskColorStop,
18428        n_stops: size_t,
18429    );
18430    pub fn gtk_snapshot_append_repeating_linear_gradient(
18431        snapshot: *mut GtkSnapshot,
18432        bounds: *const graphene::graphene_rect_t,
18433        start_point: *const graphene::graphene_point_t,
18434        end_point: *const graphene::graphene_point_t,
18435        stops: *const gsk::GskColorStop,
18436        n_stops: size_t,
18437    );
18438    pub fn gtk_snapshot_append_repeating_radial_gradient(
18439        snapshot: *mut GtkSnapshot,
18440        bounds: *const graphene::graphene_rect_t,
18441        center: *const graphene::graphene_point_t,
18442        hradius: c_float,
18443        vradius: c_float,
18444        start: c_float,
18445        end: c_float,
18446        stops: *const gsk::GskColorStop,
18447        n_stops: size_t,
18448    );
18449    #[cfg(feature = "v4_10")]
18450    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18451    pub fn gtk_snapshot_append_scaled_texture(
18452        snapshot: *mut GtkSnapshot,
18453        texture: *mut gdk::GdkTexture,
18454        filter: gsk::GskScalingFilter,
18455        bounds: *const graphene::graphene_rect_t,
18456    );
18457    #[cfg(feature = "v4_14")]
18458    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18459    pub fn gtk_snapshot_append_stroke(
18460        snapshot: *mut GtkSnapshot,
18461        path: *mut gsk::GskPath,
18462        stroke: *const gsk::GskStroke,
18463        color: *const gdk::GdkRGBA,
18464    );
18465    pub fn gtk_snapshot_append_texture(
18466        snapshot: *mut GtkSnapshot,
18467        texture: *mut gdk::GdkTexture,
18468        bounds: *const graphene::graphene_rect_t,
18469    );
18470    pub fn gtk_snapshot_free_to_node(snapshot: *mut GtkSnapshot) -> *mut gsk::GskRenderNode;
18471    pub fn gtk_snapshot_free_to_paintable(
18472        snapshot: *mut GtkSnapshot,
18473        size: *const graphene::graphene_size_t,
18474    ) -> *mut gdk::GdkPaintable;
18475    pub fn gtk_snapshot_gl_shader_pop_texture(snapshot: *mut GtkSnapshot);
18476    pub fn gtk_snapshot_perspective(snapshot: *mut GtkSnapshot, depth: c_float);
18477    pub fn gtk_snapshot_pop(snapshot: *mut GtkSnapshot);
18478    pub fn gtk_snapshot_push_blend(snapshot: *mut GtkSnapshot, blend_mode: gsk::GskBlendMode);
18479    pub fn gtk_snapshot_push_blur(snapshot: *mut GtkSnapshot, radius: c_double);
18480    pub fn gtk_snapshot_push_clip(
18481        snapshot: *mut GtkSnapshot,
18482        bounds: *const graphene::graphene_rect_t,
18483    );
18484    pub fn gtk_snapshot_push_color_matrix(
18485        snapshot: *mut GtkSnapshot,
18486        color_matrix: *const graphene::graphene_matrix_t,
18487        color_offset: *const graphene::graphene_vec4_t,
18488    );
18489    #[cfg(feature = "v4_20")]
18490    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
18491    pub fn gtk_snapshot_push_component_transfer(
18492        snapshot: *mut GtkSnapshot,
18493        red: *const gsk::GskComponentTransfer,
18494        green: *const gsk::GskComponentTransfer,
18495        blue: *const gsk::GskComponentTransfer,
18496        alpha: *const gsk::GskComponentTransfer,
18497    );
18498    #[cfg(feature = "v4_22")]
18499    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18500    pub fn gtk_snapshot_push_composite(snapshot: *mut GtkSnapshot, op: gsk::GskPorterDuff);
18501    #[cfg(feature = "v4_22")]
18502    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18503    pub fn gtk_snapshot_push_copy(snapshot: *mut GtkSnapshot);
18504    pub fn gtk_snapshot_push_cross_fade(snapshot: *mut GtkSnapshot, progress: c_double);
18505    pub fn gtk_snapshot_push_debug(snapshot: *mut GtkSnapshot, message: *const c_char, ...);
18506    #[cfg(feature = "v4_14")]
18507    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18508    pub fn gtk_snapshot_push_fill(
18509        snapshot: *mut GtkSnapshot,
18510        path: *mut gsk::GskPath,
18511        fill_rule: gsk::GskFillRule,
18512    );
18513    pub fn gtk_snapshot_push_gl_shader(
18514        snapshot: *mut GtkSnapshot,
18515        shader: *mut gsk::GskGLShader,
18516        bounds: *const graphene::graphene_rect_t,
18517        take_args: *mut glib::GBytes,
18518    );
18519    #[cfg(feature = "v4_10")]
18520    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18521    pub fn gtk_snapshot_push_mask(snapshot: *mut GtkSnapshot, mask_mode: gsk::GskMaskMode);
18522    pub fn gtk_snapshot_push_opacity(snapshot: *mut GtkSnapshot, opacity: c_double);
18523    pub fn gtk_snapshot_push_repeat(
18524        snapshot: *mut GtkSnapshot,
18525        bounds: *const graphene::graphene_rect_t,
18526        child_bounds: *const graphene::graphene_rect_t,
18527    );
18528    pub fn gtk_snapshot_push_rounded_clip(
18529        snapshot: *mut GtkSnapshot,
18530        bounds: *const gsk::GskRoundedRect,
18531    );
18532    pub fn gtk_snapshot_push_shadow(
18533        snapshot: *mut GtkSnapshot,
18534        shadow: *const gsk::GskShadow,
18535        n_shadows: size_t,
18536    );
18537    #[cfg(feature = "v4_14")]
18538    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18539    pub fn gtk_snapshot_push_stroke(
18540        snapshot: *mut GtkSnapshot,
18541        path: *mut gsk::GskPath,
18542        stroke: *const gsk::GskStroke,
18543    );
18544    pub fn gtk_snapshot_render_background(
18545        snapshot: *mut GtkSnapshot,
18546        context: *mut GtkStyleContext,
18547        x: c_double,
18548        y: c_double,
18549        width: c_double,
18550        height: c_double,
18551    );
18552    pub fn gtk_snapshot_render_focus(
18553        snapshot: *mut GtkSnapshot,
18554        context: *mut GtkStyleContext,
18555        x: c_double,
18556        y: c_double,
18557        width: c_double,
18558        height: c_double,
18559    );
18560    pub fn gtk_snapshot_render_frame(
18561        snapshot: *mut GtkSnapshot,
18562        context: *mut GtkStyleContext,
18563        x: c_double,
18564        y: c_double,
18565        width: c_double,
18566        height: c_double,
18567    );
18568    pub fn gtk_snapshot_render_insertion_cursor(
18569        snapshot: *mut GtkSnapshot,
18570        context: *mut GtkStyleContext,
18571        x: c_double,
18572        y: c_double,
18573        layout: *mut pango::PangoLayout,
18574        index: c_int,
18575        direction: pango::PangoDirection,
18576    );
18577    pub fn gtk_snapshot_render_layout(
18578        snapshot: *mut GtkSnapshot,
18579        context: *mut GtkStyleContext,
18580        x: c_double,
18581        y: c_double,
18582        layout: *mut pango::PangoLayout,
18583    );
18584    pub fn gtk_snapshot_restore(snapshot: *mut GtkSnapshot);
18585    pub fn gtk_snapshot_rotate(snapshot: *mut GtkSnapshot, angle: c_float);
18586    pub fn gtk_snapshot_rotate_3d(
18587        snapshot: *mut GtkSnapshot,
18588        angle: c_float,
18589        axis: *const graphene::graphene_vec3_t,
18590    );
18591    pub fn gtk_snapshot_save(snapshot: *mut GtkSnapshot);
18592    pub fn gtk_snapshot_scale(snapshot: *mut GtkSnapshot, factor_x: c_float, factor_y: c_float);
18593    pub fn gtk_snapshot_scale_3d(
18594        snapshot: *mut GtkSnapshot,
18595        factor_x: c_float,
18596        factor_y: c_float,
18597        factor_z: c_float,
18598    );
18599    pub fn gtk_snapshot_to_node(snapshot: *mut GtkSnapshot) -> *mut gsk::GskRenderNode;
18600    pub fn gtk_snapshot_to_paintable(
18601        snapshot: *mut GtkSnapshot,
18602        size: *const graphene::graphene_size_t,
18603    ) -> *mut gdk::GdkPaintable;
18604    pub fn gtk_snapshot_transform(snapshot: *mut GtkSnapshot, transform: *mut gsk::GskTransform);
18605    pub fn gtk_snapshot_transform_matrix(
18606        snapshot: *mut GtkSnapshot,
18607        matrix: *const graphene::graphene_matrix_t,
18608    );
18609    pub fn gtk_snapshot_translate(
18610        snapshot: *mut GtkSnapshot,
18611        point: *const graphene::graphene_point_t,
18612    );
18613    pub fn gtk_snapshot_translate_3d(
18614        snapshot: *mut GtkSnapshot,
18615        point: *const graphene::graphene_point3d_t,
18616    );
18617
18618    //=========================================================================
18619    // GtkSortListModel
18620    //=========================================================================
18621    pub fn gtk_sort_list_model_get_type() -> GType;
18622    pub fn gtk_sort_list_model_new(
18623        model: *mut gio::GListModel,
18624        sorter: *mut GtkSorter,
18625    ) -> *mut GtkSortListModel;
18626    pub fn gtk_sort_list_model_get_incremental(self_: *mut GtkSortListModel) -> gboolean;
18627    pub fn gtk_sort_list_model_get_model(self_: *mut GtkSortListModel) -> *mut gio::GListModel;
18628    pub fn gtk_sort_list_model_get_pending(self_: *mut GtkSortListModel) -> c_uint;
18629    #[cfg(feature = "v4_12")]
18630    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
18631    pub fn gtk_sort_list_model_get_section_sorter(self_: *mut GtkSortListModel) -> *mut GtkSorter;
18632    pub fn gtk_sort_list_model_get_sorter(self_: *mut GtkSortListModel) -> *mut GtkSorter;
18633    pub fn gtk_sort_list_model_set_incremental(self_: *mut GtkSortListModel, incremental: gboolean);
18634    pub fn gtk_sort_list_model_set_model(self_: *mut GtkSortListModel, model: *mut gio::GListModel);
18635    #[cfg(feature = "v4_12")]
18636    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
18637    pub fn gtk_sort_list_model_set_section_sorter(
18638        self_: *mut GtkSortListModel,
18639        sorter: *mut GtkSorter,
18640    );
18641    pub fn gtk_sort_list_model_set_sorter(self_: *mut GtkSortListModel, sorter: *mut GtkSorter);
18642
18643    //=========================================================================
18644    // GtkSorter
18645    //=========================================================================
18646    pub fn gtk_sorter_get_type() -> GType;
18647    pub fn gtk_sorter_changed(self_: *mut GtkSorter, change: GtkSorterChange);
18648    pub fn gtk_sorter_compare(
18649        self_: *mut GtkSorter,
18650        item1: *mut gobject::GObject,
18651        item2: *mut gobject::GObject,
18652    ) -> GtkOrdering;
18653    pub fn gtk_sorter_get_order(self_: *mut GtkSorter) -> GtkSorterOrder;
18654
18655    //=========================================================================
18656    // GtkSpinButton
18657    //=========================================================================
18658    pub fn gtk_spin_button_get_type() -> GType;
18659    pub fn gtk_spin_button_new(
18660        adjustment: *mut GtkAdjustment,
18661        climb_rate: c_double,
18662        digits: c_uint,
18663    ) -> *mut GtkWidget;
18664    pub fn gtk_spin_button_new_with_range(
18665        min: c_double,
18666        max: c_double,
18667        step: c_double,
18668    ) -> *mut GtkWidget;
18669    pub fn gtk_spin_button_configure(
18670        spin_button: *mut GtkSpinButton,
18671        adjustment: *mut GtkAdjustment,
18672        climb_rate: c_double,
18673        digits: c_uint,
18674    );
18675    #[cfg(feature = "v4_14")]
18676    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18677    pub fn gtk_spin_button_get_activates_default(spin_button: *mut GtkSpinButton) -> gboolean;
18678    pub fn gtk_spin_button_get_adjustment(spin_button: *mut GtkSpinButton) -> *mut GtkAdjustment;
18679    pub fn gtk_spin_button_get_climb_rate(spin_button: *mut GtkSpinButton) -> c_double;
18680    pub fn gtk_spin_button_get_digits(spin_button: *mut GtkSpinButton) -> c_uint;
18681    pub fn gtk_spin_button_get_increments(
18682        spin_button: *mut GtkSpinButton,
18683        step: *mut c_double,
18684        page: *mut c_double,
18685    );
18686    pub fn gtk_spin_button_get_numeric(spin_button: *mut GtkSpinButton) -> gboolean;
18687    pub fn gtk_spin_button_get_range(
18688        spin_button: *mut GtkSpinButton,
18689        min: *mut c_double,
18690        max: *mut c_double,
18691    );
18692    pub fn gtk_spin_button_get_snap_to_ticks(spin_button: *mut GtkSpinButton) -> gboolean;
18693    pub fn gtk_spin_button_get_update_policy(
18694        spin_button: *mut GtkSpinButton,
18695    ) -> GtkSpinButtonUpdatePolicy;
18696    pub fn gtk_spin_button_get_value(spin_button: *mut GtkSpinButton) -> c_double;
18697    pub fn gtk_spin_button_get_value_as_int(spin_button: *mut GtkSpinButton) -> c_int;
18698    pub fn gtk_spin_button_get_wrap(spin_button: *mut GtkSpinButton) -> gboolean;
18699    #[cfg(feature = "v4_14")]
18700    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18701    pub fn gtk_spin_button_set_activates_default(
18702        spin_button: *mut GtkSpinButton,
18703        activates_default: gboolean,
18704    );
18705    pub fn gtk_spin_button_set_adjustment(
18706        spin_button: *mut GtkSpinButton,
18707        adjustment: *mut GtkAdjustment,
18708    );
18709    pub fn gtk_spin_button_set_climb_rate(spin_button: *mut GtkSpinButton, climb_rate: c_double);
18710    pub fn gtk_spin_button_set_digits(spin_button: *mut GtkSpinButton, digits: c_uint);
18711    pub fn gtk_spin_button_set_increments(
18712        spin_button: *mut GtkSpinButton,
18713        step: c_double,
18714        page: c_double,
18715    );
18716    pub fn gtk_spin_button_set_numeric(spin_button: *mut GtkSpinButton, numeric: gboolean);
18717    pub fn gtk_spin_button_set_range(spin_button: *mut GtkSpinButton, min: c_double, max: c_double);
18718    pub fn gtk_spin_button_set_snap_to_ticks(
18719        spin_button: *mut GtkSpinButton,
18720        snap_to_ticks: gboolean,
18721    );
18722    pub fn gtk_spin_button_set_update_policy(
18723        spin_button: *mut GtkSpinButton,
18724        policy: GtkSpinButtonUpdatePolicy,
18725    );
18726    pub fn gtk_spin_button_set_value(spin_button: *mut GtkSpinButton, value: c_double);
18727    pub fn gtk_spin_button_set_wrap(spin_button: *mut GtkSpinButton, wrap: gboolean);
18728    pub fn gtk_spin_button_spin(
18729        spin_button: *mut GtkSpinButton,
18730        direction: GtkSpinType,
18731        increment: c_double,
18732    );
18733    pub fn gtk_spin_button_update(spin_button: *mut GtkSpinButton);
18734
18735    //=========================================================================
18736    // GtkSpinner
18737    //=========================================================================
18738    pub fn gtk_spinner_get_type() -> GType;
18739    pub fn gtk_spinner_new() -> *mut GtkWidget;
18740    pub fn gtk_spinner_get_spinning(spinner: *mut GtkSpinner) -> gboolean;
18741    pub fn gtk_spinner_set_spinning(spinner: *mut GtkSpinner, spinning: gboolean);
18742    pub fn gtk_spinner_start(spinner: *mut GtkSpinner);
18743    pub fn gtk_spinner_stop(spinner: *mut GtkSpinner);
18744
18745    //=========================================================================
18746    // GtkStack
18747    //=========================================================================
18748    pub fn gtk_stack_get_type() -> GType;
18749    pub fn gtk_stack_new() -> *mut GtkWidget;
18750    pub fn gtk_stack_add_child(stack: *mut GtkStack, child: *mut GtkWidget) -> *mut GtkStackPage;
18751    pub fn gtk_stack_add_named(
18752        stack: *mut GtkStack,
18753        child: *mut GtkWidget,
18754        name: *const c_char,
18755    ) -> *mut GtkStackPage;
18756    pub fn gtk_stack_add_titled(
18757        stack: *mut GtkStack,
18758        child: *mut GtkWidget,
18759        name: *const c_char,
18760        title: *const c_char,
18761    ) -> *mut GtkStackPage;
18762    pub fn gtk_stack_get_child_by_name(stack: *mut GtkStack, name: *const c_char)
18763        -> *mut GtkWidget;
18764    pub fn gtk_stack_get_hhomogeneous(stack: *mut GtkStack) -> gboolean;
18765    pub fn gtk_stack_get_interpolate_size(stack: *mut GtkStack) -> gboolean;
18766    pub fn gtk_stack_get_page(stack: *mut GtkStack, child: *mut GtkWidget) -> *mut GtkStackPage;
18767    pub fn gtk_stack_get_pages(stack: *mut GtkStack) -> *mut GtkSelectionModel;
18768    pub fn gtk_stack_get_transition_duration(stack: *mut GtkStack) -> c_uint;
18769    pub fn gtk_stack_get_transition_running(stack: *mut GtkStack) -> gboolean;
18770    pub fn gtk_stack_get_transition_type(stack: *mut GtkStack) -> GtkStackTransitionType;
18771    pub fn gtk_stack_get_vhomogeneous(stack: *mut GtkStack) -> gboolean;
18772    pub fn gtk_stack_get_visible_child(stack: *mut GtkStack) -> *mut GtkWidget;
18773    pub fn gtk_stack_get_visible_child_name(stack: *mut GtkStack) -> *const c_char;
18774    pub fn gtk_stack_remove(stack: *mut GtkStack, child: *mut GtkWidget);
18775    pub fn gtk_stack_set_hhomogeneous(stack: *mut GtkStack, hhomogeneous: gboolean);
18776    pub fn gtk_stack_set_interpolate_size(stack: *mut GtkStack, interpolate_size: gboolean);
18777    pub fn gtk_stack_set_transition_duration(stack: *mut GtkStack, duration: c_uint);
18778    pub fn gtk_stack_set_transition_type(stack: *mut GtkStack, transition: GtkStackTransitionType);
18779    pub fn gtk_stack_set_vhomogeneous(stack: *mut GtkStack, vhomogeneous: gboolean);
18780    pub fn gtk_stack_set_visible_child(stack: *mut GtkStack, child: *mut GtkWidget);
18781    pub fn gtk_stack_set_visible_child_full(
18782        stack: *mut GtkStack,
18783        name: *const c_char,
18784        transition: GtkStackTransitionType,
18785    );
18786    pub fn gtk_stack_set_visible_child_name(stack: *mut GtkStack, name: *const c_char);
18787
18788    //=========================================================================
18789    // GtkStackPage
18790    //=========================================================================
18791    pub fn gtk_stack_page_get_type() -> GType;
18792    pub fn gtk_stack_page_get_child(self_: *mut GtkStackPage) -> *mut GtkWidget;
18793    pub fn gtk_stack_page_get_icon_name(self_: *mut GtkStackPage) -> *const c_char;
18794    pub fn gtk_stack_page_get_name(self_: *mut GtkStackPage) -> *const c_char;
18795    pub fn gtk_stack_page_get_needs_attention(self_: *mut GtkStackPage) -> gboolean;
18796    pub fn gtk_stack_page_get_title(self_: *mut GtkStackPage) -> *const c_char;
18797    pub fn gtk_stack_page_get_use_underline(self_: *mut GtkStackPage) -> gboolean;
18798    pub fn gtk_stack_page_get_visible(self_: *mut GtkStackPage) -> gboolean;
18799    pub fn gtk_stack_page_set_icon_name(self_: *mut GtkStackPage, setting: *const c_char);
18800    pub fn gtk_stack_page_set_name(self_: *mut GtkStackPage, setting: *const c_char);
18801    pub fn gtk_stack_page_set_needs_attention(self_: *mut GtkStackPage, setting: gboolean);
18802    pub fn gtk_stack_page_set_title(self_: *mut GtkStackPage, setting: *const c_char);
18803    pub fn gtk_stack_page_set_use_underline(self_: *mut GtkStackPage, setting: gboolean);
18804    pub fn gtk_stack_page_set_visible(self_: *mut GtkStackPage, visible: gboolean);
18805
18806    //=========================================================================
18807    // GtkStackSidebar
18808    //=========================================================================
18809    pub fn gtk_stack_sidebar_get_type() -> GType;
18810    pub fn gtk_stack_sidebar_new() -> *mut GtkWidget;
18811    pub fn gtk_stack_sidebar_get_stack(self_: *mut GtkStackSidebar) -> *mut GtkStack;
18812    pub fn gtk_stack_sidebar_set_stack(self_: *mut GtkStackSidebar, stack: *mut GtkStack);
18813
18814    //=========================================================================
18815    // GtkStackSwitcher
18816    //=========================================================================
18817    pub fn gtk_stack_switcher_get_type() -> GType;
18818    pub fn gtk_stack_switcher_new() -> *mut GtkWidget;
18819    pub fn gtk_stack_switcher_get_stack(switcher: *mut GtkStackSwitcher) -> *mut GtkStack;
18820    pub fn gtk_stack_switcher_set_stack(switcher: *mut GtkStackSwitcher, stack: *mut GtkStack);
18821
18822    //=========================================================================
18823    // GtkStatusbar
18824    //=========================================================================
18825    pub fn gtk_statusbar_get_type() -> GType;
18826    pub fn gtk_statusbar_new() -> *mut GtkWidget;
18827    pub fn gtk_statusbar_get_context_id(
18828        statusbar: *mut GtkStatusbar,
18829        context_description: *const c_char,
18830    ) -> c_uint;
18831    pub fn gtk_statusbar_pop(statusbar: *mut GtkStatusbar, context_id: c_uint);
18832    pub fn gtk_statusbar_push(
18833        statusbar: *mut GtkStatusbar,
18834        context_id: c_uint,
18835        text: *const c_char,
18836    ) -> c_uint;
18837    pub fn gtk_statusbar_remove(
18838        statusbar: *mut GtkStatusbar,
18839        context_id: c_uint,
18840        message_id: c_uint,
18841    );
18842    pub fn gtk_statusbar_remove_all(statusbar: *mut GtkStatusbar, context_id: c_uint);
18843
18844    //=========================================================================
18845    // GtkStringFilter
18846    //=========================================================================
18847    pub fn gtk_string_filter_get_type() -> GType;
18848    pub fn gtk_string_filter_new(expression: *mut GtkExpression) -> *mut GtkStringFilter;
18849    pub fn gtk_string_filter_get_expression(self_: *mut GtkStringFilter) -> *mut GtkExpression;
18850    pub fn gtk_string_filter_get_ignore_case(self_: *mut GtkStringFilter) -> gboolean;
18851    pub fn gtk_string_filter_get_match_mode(
18852        self_: *mut GtkStringFilter,
18853    ) -> GtkStringFilterMatchMode;
18854    pub fn gtk_string_filter_get_search(self_: *mut GtkStringFilter) -> *const c_char;
18855    pub fn gtk_string_filter_set_expression(
18856        self_: *mut GtkStringFilter,
18857        expression: *mut GtkExpression,
18858    );
18859    pub fn gtk_string_filter_set_ignore_case(self_: *mut GtkStringFilter, ignore_case: gboolean);
18860    pub fn gtk_string_filter_set_match_mode(
18861        self_: *mut GtkStringFilter,
18862        mode: GtkStringFilterMatchMode,
18863    );
18864    pub fn gtk_string_filter_set_search(self_: *mut GtkStringFilter, search: *const c_char);
18865
18866    //=========================================================================
18867    // GtkStringList
18868    //=========================================================================
18869    pub fn gtk_string_list_get_type() -> GType;
18870    pub fn gtk_string_list_new(strings: *const *const c_char) -> *mut GtkStringList;
18871    pub fn gtk_string_list_append(self_: *mut GtkStringList, string: *const c_char);
18872    #[cfg(feature = "v4_18")]
18873    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
18874    pub fn gtk_string_list_find(self_: *mut GtkStringList, string: *const c_char) -> c_uint;
18875    pub fn gtk_string_list_get_string(self_: *mut GtkStringList, position: c_uint)
18876        -> *const c_char;
18877    pub fn gtk_string_list_remove(self_: *mut GtkStringList, position: c_uint);
18878    pub fn gtk_string_list_splice(
18879        self_: *mut GtkStringList,
18880        position: c_uint,
18881        n_removals: c_uint,
18882        additions: *const *const c_char,
18883    );
18884    pub fn gtk_string_list_take(self_: *mut GtkStringList, string: *mut c_char);
18885
18886    //=========================================================================
18887    // GtkStringObject
18888    //=========================================================================
18889    pub fn gtk_string_object_get_type() -> GType;
18890    pub fn gtk_string_object_new(string: *const c_char) -> *mut GtkStringObject;
18891    pub fn gtk_string_object_get_string(self_: *mut GtkStringObject) -> *const c_char;
18892
18893    //=========================================================================
18894    // GtkStringSorter
18895    //=========================================================================
18896    pub fn gtk_string_sorter_get_type() -> GType;
18897    pub fn gtk_string_sorter_new(expression: *mut GtkExpression) -> *mut GtkStringSorter;
18898    #[cfg(feature = "v4_10")]
18899    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18900    pub fn gtk_string_sorter_get_collation(self_: *mut GtkStringSorter) -> GtkCollation;
18901    pub fn gtk_string_sorter_get_expression(self_: *mut GtkStringSorter) -> *mut GtkExpression;
18902    pub fn gtk_string_sorter_get_ignore_case(self_: *mut GtkStringSorter) -> gboolean;
18903    #[cfg(feature = "v4_10")]
18904    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18905    pub fn gtk_string_sorter_set_collation(self_: *mut GtkStringSorter, collation: GtkCollation);
18906    pub fn gtk_string_sorter_set_expression(
18907        self_: *mut GtkStringSorter,
18908        expression: *mut GtkExpression,
18909    );
18910    pub fn gtk_string_sorter_set_ignore_case(self_: *mut GtkStringSorter, ignore_case: gboolean);
18911
18912    //=========================================================================
18913    // GtkStyleContext
18914    //=========================================================================
18915    pub fn gtk_style_context_get_type() -> GType;
18916    pub fn gtk_style_context_add_provider_for_display(
18917        display: *mut gdk::GdkDisplay,
18918        provider: *mut GtkStyleProvider,
18919        priority: c_uint,
18920    );
18921    pub fn gtk_style_context_remove_provider_for_display(
18922        display: *mut gdk::GdkDisplay,
18923        provider: *mut GtkStyleProvider,
18924    );
18925    pub fn gtk_style_context_add_class(context: *mut GtkStyleContext, class_name: *const c_char);
18926    pub fn gtk_style_context_add_provider(
18927        context: *mut GtkStyleContext,
18928        provider: *mut GtkStyleProvider,
18929        priority: c_uint,
18930    );
18931    pub fn gtk_style_context_get_border(context: *mut GtkStyleContext, border: *mut GtkBorder);
18932    pub fn gtk_style_context_get_color(context: *mut GtkStyleContext, color: *mut gdk::GdkRGBA);
18933    pub fn gtk_style_context_get_display(context: *mut GtkStyleContext) -> *mut gdk::GdkDisplay;
18934    pub fn gtk_style_context_get_margin(context: *mut GtkStyleContext, margin: *mut GtkBorder);
18935    pub fn gtk_style_context_get_padding(context: *mut GtkStyleContext, padding: *mut GtkBorder);
18936    pub fn gtk_style_context_get_scale(context: *mut GtkStyleContext) -> c_int;
18937    pub fn gtk_style_context_get_state(context: *mut GtkStyleContext) -> GtkStateFlags;
18938    pub fn gtk_style_context_has_class(
18939        context: *mut GtkStyleContext,
18940        class_name: *const c_char,
18941    ) -> gboolean;
18942    pub fn gtk_style_context_lookup_color(
18943        context: *mut GtkStyleContext,
18944        color_name: *const c_char,
18945        color: *mut gdk::GdkRGBA,
18946    ) -> gboolean;
18947    pub fn gtk_style_context_remove_class(context: *mut GtkStyleContext, class_name: *const c_char);
18948    pub fn gtk_style_context_remove_provider(
18949        context: *mut GtkStyleContext,
18950        provider: *mut GtkStyleProvider,
18951    );
18952    pub fn gtk_style_context_restore(context: *mut GtkStyleContext);
18953    pub fn gtk_style_context_save(context: *mut GtkStyleContext);
18954    pub fn gtk_style_context_set_display(
18955        context: *mut GtkStyleContext,
18956        display: *mut gdk::GdkDisplay,
18957    );
18958    pub fn gtk_style_context_set_scale(context: *mut GtkStyleContext, scale: c_int);
18959    pub fn gtk_style_context_set_state(context: *mut GtkStyleContext, flags: GtkStateFlags);
18960    pub fn gtk_style_context_to_string(
18961        context: *mut GtkStyleContext,
18962        flags: GtkStyleContextPrintFlags,
18963    ) -> *mut c_char;
18964
18965    //=========================================================================
18966    // GtkSvg
18967    //=========================================================================
18968    #[cfg(feature = "v4_22")]
18969    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18970    pub fn gtk_svg_get_type() -> GType;
18971    #[cfg(feature = "v4_22")]
18972    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18973    pub fn gtk_svg_new() -> *mut GtkSvg;
18974    #[cfg(feature = "v4_22")]
18975    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18976    pub fn gtk_svg_new_from_bytes(bytes: *mut glib::GBytes) -> *mut GtkSvg;
18977    #[cfg(feature = "v4_22")]
18978    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18979    pub fn gtk_svg_new_from_resource(path: *const c_char) -> *mut GtkSvg;
18980    #[cfg(feature = "v4_22")]
18981    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18982    pub fn gtk_svg_get_n_states(self_: *mut GtkSvg) -> c_uint;
18983    #[cfg(feature = "v4_22")]
18984    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18985    pub fn gtk_svg_get_state(self_: *mut GtkSvg) -> c_uint;
18986    #[cfg(feature = "v4_22")]
18987    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18988    pub fn gtk_svg_get_weight(self_: *mut GtkSvg) -> c_double;
18989    #[cfg(feature = "v4_22")]
18990    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18991    pub fn gtk_svg_load_from_bytes(self_: *mut GtkSvg, bytes: *mut glib::GBytes);
18992    #[cfg(feature = "v4_22")]
18993    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18994    pub fn gtk_svg_pause(self_: *mut GtkSvg);
18995    #[cfg(feature = "v4_22")]
18996    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18997    pub fn gtk_svg_play(self_: *mut GtkSvg);
18998    #[cfg(feature = "v4_22")]
18999    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19000    pub fn gtk_svg_serialize(self_: *mut GtkSvg) -> *mut glib::GBytes;
19001    #[cfg(feature = "v4_22")]
19002    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19003    pub fn gtk_svg_set_frame_clock(self_: *mut GtkSvg, clock: *mut gdk::GdkFrameClock);
19004    #[cfg(feature = "v4_22")]
19005    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19006    pub fn gtk_svg_set_state(self_: *mut GtkSvg, state: c_uint);
19007    #[cfg(feature = "v4_22")]
19008    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19009    pub fn gtk_svg_set_weight(self_: *mut GtkSvg, weight: c_double);
19010    #[cfg(feature = "v4_22")]
19011    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19012    pub fn gtk_svg_write_to_file(
19013        self_: *mut GtkSvg,
19014        filename: *const c_char,
19015        error: *mut *mut glib::GError,
19016    ) -> gboolean;
19017
19018    //=========================================================================
19019    // GtkSwitch
19020    //=========================================================================
19021    pub fn gtk_switch_get_type() -> GType;
19022    pub fn gtk_switch_new() -> *mut GtkWidget;
19023    pub fn gtk_switch_get_active(self_: *mut GtkSwitch) -> gboolean;
19024    pub fn gtk_switch_get_state(self_: *mut GtkSwitch) -> gboolean;
19025    pub fn gtk_switch_set_active(self_: *mut GtkSwitch, is_active: gboolean);
19026    pub fn gtk_switch_set_state(self_: *mut GtkSwitch, state: gboolean);
19027
19028    //=========================================================================
19029    // GtkText
19030    //=========================================================================
19031    pub fn gtk_text_get_type() -> GType;
19032    pub fn gtk_text_new() -> *mut GtkWidget;
19033    pub fn gtk_text_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
19034    #[cfg(feature = "v4_4")]
19035    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19036    pub fn gtk_text_compute_cursor_extents(
19037        self_: *mut GtkText,
19038        position: size_t,
19039        strong: *mut graphene::graphene_rect_t,
19040        weak: *mut graphene::graphene_rect_t,
19041    );
19042    pub fn gtk_text_get_activates_default(self_: *mut GtkText) -> gboolean;
19043    pub fn gtk_text_get_attributes(self_: *mut GtkText) -> *mut pango::PangoAttrList;
19044    pub fn gtk_text_get_buffer(self_: *mut GtkText) -> *mut GtkEntryBuffer;
19045    pub fn gtk_text_get_enable_emoji_completion(self_: *mut GtkText) -> gboolean;
19046    pub fn gtk_text_get_extra_menu(self_: *mut GtkText) -> *mut gio::GMenuModel;
19047    pub fn gtk_text_get_input_hints(self_: *mut GtkText) -> GtkInputHints;
19048    pub fn gtk_text_get_input_purpose(self_: *mut GtkText) -> GtkInputPurpose;
19049    pub fn gtk_text_get_invisible_char(self_: *mut GtkText) -> u32;
19050    pub fn gtk_text_get_max_length(self_: *mut GtkText) -> c_int;
19051    pub fn gtk_text_get_overwrite_mode(self_: *mut GtkText) -> gboolean;
19052    pub fn gtk_text_get_placeholder_text(self_: *mut GtkText) -> *const c_char;
19053    pub fn gtk_text_get_propagate_text_width(self_: *mut GtkText) -> gboolean;
19054    pub fn gtk_text_get_tabs(self_: *mut GtkText) -> *mut pango::PangoTabArray;
19055    pub fn gtk_text_get_text_length(self_: *mut GtkText) -> u16;
19056    pub fn gtk_text_get_truncate_multiline(self_: *mut GtkText) -> gboolean;
19057    pub fn gtk_text_get_visibility(self_: *mut GtkText) -> gboolean;
19058    pub fn gtk_text_grab_focus_without_selecting(self_: *mut GtkText) -> gboolean;
19059    pub fn gtk_text_set_activates_default(self_: *mut GtkText, activates: gboolean);
19060    pub fn gtk_text_set_attributes(self_: *mut GtkText, attrs: *mut pango::PangoAttrList);
19061    pub fn gtk_text_set_buffer(self_: *mut GtkText, buffer: *mut GtkEntryBuffer);
19062    pub fn gtk_text_set_enable_emoji_completion(
19063        self_: *mut GtkText,
19064        enable_emoji_completion: gboolean,
19065    );
19066    pub fn gtk_text_set_extra_menu(self_: *mut GtkText, model: *mut gio::GMenuModel);
19067    pub fn gtk_text_set_input_hints(self_: *mut GtkText, hints: GtkInputHints);
19068    pub fn gtk_text_set_input_purpose(self_: *mut GtkText, purpose: GtkInputPurpose);
19069    pub fn gtk_text_set_invisible_char(self_: *mut GtkText, ch: u32);
19070    pub fn gtk_text_set_max_length(self_: *mut GtkText, length: c_int);
19071    pub fn gtk_text_set_overwrite_mode(self_: *mut GtkText, overwrite: gboolean);
19072    pub fn gtk_text_set_placeholder_text(self_: *mut GtkText, text: *const c_char);
19073    pub fn gtk_text_set_propagate_text_width(self_: *mut GtkText, propagate_text_width: gboolean);
19074    pub fn gtk_text_set_tabs(self_: *mut GtkText, tabs: *mut pango::PangoTabArray);
19075    pub fn gtk_text_set_truncate_multiline(self_: *mut GtkText, truncate_multiline: gboolean);
19076    pub fn gtk_text_set_visibility(self_: *mut GtkText, visible: gboolean);
19077    pub fn gtk_text_unset_invisible_char(self_: *mut GtkText);
19078
19079    //=========================================================================
19080    // GtkTextBuffer
19081    //=========================================================================
19082    pub fn gtk_text_buffer_get_type() -> GType;
19083    pub fn gtk_text_buffer_new(table: *mut GtkTextTagTable) -> *mut GtkTextBuffer;
19084    #[cfg(feature = "v4_16")]
19085    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
19086    pub fn gtk_text_buffer_add_commit_notify(
19087        buffer: *mut GtkTextBuffer,
19088        flags: GtkTextBufferNotifyFlags,
19089        commit_notify: GtkTextBufferCommitNotify,
19090        user_data: gpointer,
19091        destroy: glib::GDestroyNotify,
19092    ) -> c_uint;
19093    pub fn gtk_text_buffer_add_mark(
19094        buffer: *mut GtkTextBuffer,
19095        mark: *mut GtkTextMark,
19096        where_: *const GtkTextIter,
19097    );
19098    pub fn gtk_text_buffer_add_selection_clipboard(
19099        buffer: *mut GtkTextBuffer,
19100        clipboard: *mut gdk::GdkClipboard,
19101    );
19102    pub fn gtk_text_buffer_apply_tag(
19103        buffer: *mut GtkTextBuffer,
19104        tag: *mut GtkTextTag,
19105        start: *const GtkTextIter,
19106        end: *const GtkTextIter,
19107    );
19108    pub fn gtk_text_buffer_apply_tag_by_name(
19109        buffer: *mut GtkTextBuffer,
19110        name: *const c_char,
19111        start: *const GtkTextIter,
19112        end: *const GtkTextIter,
19113    );
19114    pub fn gtk_text_buffer_backspace(
19115        buffer: *mut GtkTextBuffer,
19116        iter: *mut GtkTextIter,
19117        interactive: gboolean,
19118        default_editable: gboolean,
19119    ) -> gboolean;
19120    pub fn gtk_text_buffer_begin_irreversible_action(buffer: *mut GtkTextBuffer);
19121    pub fn gtk_text_buffer_begin_user_action(buffer: *mut GtkTextBuffer);
19122    pub fn gtk_text_buffer_copy_clipboard(
19123        buffer: *mut GtkTextBuffer,
19124        clipboard: *mut gdk::GdkClipboard,
19125    );
19126    pub fn gtk_text_buffer_create_child_anchor(
19127        buffer: *mut GtkTextBuffer,
19128        iter: *mut GtkTextIter,
19129    ) -> *mut GtkTextChildAnchor;
19130    pub fn gtk_text_buffer_create_mark(
19131        buffer: *mut GtkTextBuffer,
19132        mark_name: *const c_char,
19133        where_: *const GtkTextIter,
19134        left_gravity: gboolean,
19135    ) -> *mut GtkTextMark;
19136    pub fn gtk_text_buffer_create_tag(
19137        buffer: *mut GtkTextBuffer,
19138        tag_name: *const c_char,
19139        first_property_name: *const c_char,
19140        ...
19141    ) -> *mut GtkTextTag;
19142    pub fn gtk_text_buffer_cut_clipboard(
19143        buffer: *mut GtkTextBuffer,
19144        clipboard: *mut gdk::GdkClipboard,
19145        default_editable: gboolean,
19146    );
19147    pub fn gtk_text_buffer_delete(
19148        buffer: *mut GtkTextBuffer,
19149        start: *mut GtkTextIter,
19150        end: *mut GtkTextIter,
19151    );
19152    pub fn gtk_text_buffer_delete_interactive(
19153        buffer: *mut GtkTextBuffer,
19154        start_iter: *mut GtkTextIter,
19155        end_iter: *mut GtkTextIter,
19156        default_editable: gboolean,
19157    ) -> gboolean;
19158    pub fn gtk_text_buffer_delete_mark(buffer: *mut GtkTextBuffer, mark: *mut GtkTextMark);
19159    pub fn gtk_text_buffer_delete_mark_by_name(buffer: *mut GtkTextBuffer, name: *const c_char);
19160    pub fn gtk_text_buffer_delete_selection(
19161        buffer: *mut GtkTextBuffer,
19162        interactive: gboolean,
19163        default_editable: gboolean,
19164    ) -> gboolean;
19165    pub fn gtk_text_buffer_end_irreversible_action(buffer: *mut GtkTextBuffer);
19166    pub fn gtk_text_buffer_end_user_action(buffer: *mut GtkTextBuffer);
19167    pub fn gtk_text_buffer_get_bounds(
19168        buffer: *mut GtkTextBuffer,
19169        start: *mut GtkTextIter,
19170        end: *mut GtkTextIter,
19171    );
19172    pub fn gtk_text_buffer_get_can_redo(buffer: *mut GtkTextBuffer) -> gboolean;
19173    pub fn gtk_text_buffer_get_can_undo(buffer: *mut GtkTextBuffer) -> gboolean;
19174    pub fn gtk_text_buffer_get_char_count(buffer: *mut GtkTextBuffer) -> c_int;
19175    pub fn gtk_text_buffer_get_enable_undo(buffer: *mut GtkTextBuffer) -> gboolean;
19176    pub fn gtk_text_buffer_get_end_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
19177    pub fn gtk_text_buffer_get_has_selection(buffer: *mut GtkTextBuffer) -> gboolean;
19178    pub fn gtk_text_buffer_get_insert(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
19179    pub fn gtk_text_buffer_get_iter_at_child_anchor(
19180        buffer: *mut GtkTextBuffer,
19181        iter: *mut GtkTextIter,
19182        anchor: *mut GtkTextChildAnchor,
19183    );
19184    pub fn gtk_text_buffer_get_iter_at_line(
19185        buffer: *mut GtkTextBuffer,
19186        iter: *mut GtkTextIter,
19187        line_number: c_int,
19188    ) -> gboolean;
19189    pub fn gtk_text_buffer_get_iter_at_line_index(
19190        buffer: *mut GtkTextBuffer,
19191        iter: *mut GtkTextIter,
19192        line_number: c_int,
19193        byte_index: c_int,
19194    ) -> gboolean;
19195    pub fn gtk_text_buffer_get_iter_at_line_offset(
19196        buffer: *mut GtkTextBuffer,
19197        iter: *mut GtkTextIter,
19198        line_number: c_int,
19199        char_offset: c_int,
19200    ) -> gboolean;
19201    pub fn gtk_text_buffer_get_iter_at_mark(
19202        buffer: *mut GtkTextBuffer,
19203        iter: *mut GtkTextIter,
19204        mark: *mut GtkTextMark,
19205    );
19206    pub fn gtk_text_buffer_get_iter_at_offset(
19207        buffer: *mut GtkTextBuffer,
19208        iter: *mut GtkTextIter,
19209        char_offset: c_int,
19210    );
19211    pub fn gtk_text_buffer_get_line_count(buffer: *mut GtkTextBuffer) -> c_int;
19212    pub fn gtk_text_buffer_get_mark(
19213        buffer: *mut GtkTextBuffer,
19214        name: *const c_char,
19215    ) -> *mut GtkTextMark;
19216    pub fn gtk_text_buffer_get_max_undo_levels(buffer: *mut GtkTextBuffer) -> c_uint;
19217    pub fn gtk_text_buffer_get_modified(buffer: *mut GtkTextBuffer) -> gboolean;
19218    pub fn gtk_text_buffer_get_selection_bound(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
19219    pub fn gtk_text_buffer_get_selection_bounds(
19220        buffer: *mut GtkTextBuffer,
19221        start: *mut GtkTextIter,
19222        end: *mut GtkTextIter,
19223    ) -> gboolean;
19224    pub fn gtk_text_buffer_get_selection_content(
19225        buffer: *mut GtkTextBuffer,
19226    ) -> *mut gdk::GdkContentProvider;
19227    pub fn gtk_text_buffer_get_slice(
19228        buffer: *mut GtkTextBuffer,
19229        start: *const GtkTextIter,
19230        end: *const GtkTextIter,
19231        include_hidden_chars: gboolean,
19232    ) -> *mut c_char;
19233    pub fn gtk_text_buffer_get_start_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
19234    pub fn gtk_text_buffer_get_tag_table(buffer: *mut GtkTextBuffer) -> *mut GtkTextTagTable;
19235    pub fn gtk_text_buffer_get_text(
19236        buffer: *mut GtkTextBuffer,
19237        start: *const GtkTextIter,
19238        end: *const GtkTextIter,
19239        include_hidden_chars: gboolean,
19240    ) -> *mut c_char;
19241    pub fn gtk_text_buffer_insert(
19242        buffer: *mut GtkTextBuffer,
19243        iter: *mut GtkTextIter,
19244        text: *const c_char,
19245        len: c_int,
19246    );
19247    pub fn gtk_text_buffer_insert_at_cursor(
19248        buffer: *mut GtkTextBuffer,
19249        text: *const c_char,
19250        len: c_int,
19251    );
19252    pub fn gtk_text_buffer_insert_child_anchor(
19253        buffer: *mut GtkTextBuffer,
19254        iter: *mut GtkTextIter,
19255        anchor: *mut GtkTextChildAnchor,
19256    );
19257    pub fn gtk_text_buffer_insert_interactive(
19258        buffer: *mut GtkTextBuffer,
19259        iter: *mut GtkTextIter,
19260        text: *const c_char,
19261        len: c_int,
19262        default_editable: gboolean,
19263    ) -> gboolean;
19264    pub fn gtk_text_buffer_insert_interactive_at_cursor(
19265        buffer: *mut GtkTextBuffer,
19266        text: *const c_char,
19267        len: c_int,
19268        default_editable: gboolean,
19269    ) -> gboolean;
19270    pub fn gtk_text_buffer_insert_markup(
19271        buffer: *mut GtkTextBuffer,
19272        iter: *mut GtkTextIter,
19273        markup: *const c_char,
19274        len: c_int,
19275    );
19276    pub fn gtk_text_buffer_insert_paintable(
19277        buffer: *mut GtkTextBuffer,
19278        iter: *mut GtkTextIter,
19279        paintable: *mut gdk::GdkPaintable,
19280    );
19281    pub fn gtk_text_buffer_insert_range(
19282        buffer: *mut GtkTextBuffer,
19283        iter: *mut GtkTextIter,
19284        start: *const GtkTextIter,
19285        end: *const GtkTextIter,
19286    );
19287    pub fn gtk_text_buffer_insert_range_interactive(
19288        buffer: *mut GtkTextBuffer,
19289        iter: *mut GtkTextIter,
19290        start: *const GtkTextIter,
19291        end: *const GtkTextIter,
19292        default_editable: gboolean,
19293    ) -> gboolean;
19294    pub fn gtk_text_buffer_insert_with_tags(
19295        buffer: *mut GtkTextBuffer,
19296        iter: *mut GtkTextIter,
19297        text: *const c_char,
19298        len: c_int,
19299        first_tag: *mut GtkTextTag,
19300        ...
19301    );
19302    pub fn gtk_text_buffer_insert_with_tags_by_name(
19303        buffer: *mut GtkTextBuffer,
19304        iter: *mut GtkTextIter,
19305        text: *const c_char,
19306        len: c_int,
19307        first_tag_name: *const c_char,
19308        ...
19309    );
19310    pub fn gtk_text_buffer_move_mark(
19311        buffer: *mut GtkTextBuffer,
19312        mark: *mut GtkTextMark,
19313        where_: *const GtkTextIter,
19314    );
19315    pub fn gtk_text_buffer_move_mark_by_name(
19316        buffer: *mut GtkTextBuffer,
19317        name: *const c_char,
19318        where_: *const GtkTextIter,
19319    );
19320    pub fn gtk_text_buffer_paste_clipboard(
19321        buffer: *mut GtkTextBuffer,
19322        clipboard: *mut gdk::GdkClipboard,
19323        override_location: *mut GtkTextIter,
19324        default_editable: gboolean,
19325    );
19326    pub fn gtk_text_buffer_place_cursor(buffer: *mut GtkTextBuffer, where_: *const GtkTextIter);
19327    pub fn gtk_text_buffer_redo(buffer: *mut GtkTextBuffer);
19328    pub fn gtk_text_buffer_remove_all_tags(
19329        buffer: *mut GtkTextBuffer,
19330        start: *const GtkTextIter,
19331        end: *const GtkTextIter,
19332    );
19333    #[cfg(feature = "v4_16")]
19334    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
19335    pub fn gtk_text_buffer_remove_commit_notify(
19336        buffer: *mut GtkTextBuffer,
19337        commit_notify_handler: c_uint,
19338    );
19339    pub fn gtk_text_buffer_remove_selection_clipboard(
19340        buffer: *mut GtkTextBuffer,
19341        clipboard: *mut gdk::GdkClipboard,
19342    );
19343    pub fn gtk_text_buffer_remove_tag(
19344        buffer: *mut GtkTextBuffer,
19345        tag: *mut GtkTextTag,
19346        start: *const GtkTextIter,
19347        end: *const GtkTextIter,
19348    );
19349    pub fn gtk_text_buffer_remove_tag_by_name(
19350        buffer: *mut GtkTextBuffer,
19351        name: *const c_char,
19352        start: *const GtkTextIter,
19353        end: *const GtkTextIter,
19354    );
19355    pub fn gtk_text_buffer_select_range(
19356        buffer: *mut GtkTextBuffer,
19357        ins: *const GtkTextIter,
19358        bound: *const GtkTextIter,
19359    );
19360    pub fn gtk_text_buffer_set_enable_undo(buffer: *mut GtkTextBuffer, enable_undo: gboolean);
19361    pub fn gtk_text_buffer_set_max_undo_levels(buffer: *mut GtkTextBuffer, max_undo_levels: c_uint);
19362    pub fn gtk_text_buffer_set_modified(buffer: *mut GtkTextBuffer, setting: gboolean);
19363    pub fn gtk_text_buffer_set_text(buffer: *mut GtkTextBuffer, text: *const c_char, len: c_int);
19364    pub fn gtk_text_buffer_undo(buffer: *mut GtkTextBuffer);
19365
19366    //=========================================================================
19367    // GtkTextChildAnchor
19368    //=========================================================================
19369    pub fn gtk_text_child_anchor_get_type() -> GType;
19370    pub fn gtk_text_child_anchor_new() -> *mut GtkTextChildAnchor;
19371    #[cfg(feature = "v4_6")]
19372    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19373    pub fn gtk_text_child_anchor_new_with_replacement(
19374        character: *const c_char,
19375    ) -> *mut GtkTextChildAnchor;
19376    pub fn gtk_text_child_anchor_get_deleted(anchor: *mut GtkTextChildAnchor) -> gboolean;
19377    pub fn gtk_text_child_anchor_get_widgets(
19378        anchor: *mut GtkTextChildAnchor,
19379        out_len: *mut c_uint,
19380    ) -> *mut *mut GtkWidget;
19381
19382    //=========================================================================
19383    // GtkTextMark
19384    //=========================================================================
19385    pub fn gtk_text_mark_get_type() -> GType;
19386    pub fn gtk_text_mark_new(name: *const c_char, left_gravity: gboolean) -> *mut GtkTextMark;
19387    pub fn gtk_text_mark_get_buffer(mark: *mut GtkTextMark) -> *mut GtkTextBuffer;
19388    pub fn gtk_text_mark_get_deleted(mark: *mut GtkTextMark) -> gboolean;
19389    pub fn gtk_text_mark_get_left_gravity(mark: *mut GtkTextMark) -> gboolean;
19390    pub fn gtk_text_mark_get_name(mark: *mut GtkTextMark) -> *const c_char;
19391    pub fn gtk_text_mark_get_visible(mark: *mut GtkTextMark) -> gboolean;
19392    pub fn gtk_text_mark_set_visible(mark: *mut GtkTextMark, setting: gboolean);
19393
19394    //=========================================================================
19395    // GtkTextTag
19396    //=========================================================================
19397    pub fn gtk_text_tag_get_type() -> GType;
19398    pub fn gtk_text_tag_new(name: *const c_char) -> *mut GtkTextTag;
19399    pub fn gtk_text_tag_changed(tag: *mut GtkTextTag, size_changed: gboolean);
19400    pub fn gtk_text_tag_get_priority(tag: *mut GtkTextTag) -> c_int;
19401    pub fn gtk_text_tag_set_priority(tag: *mut GtkTextTag, priority: c_int);
19402
19403    //=========================================================================
19404    // GtkTextTagTable
19405    //=========================================================================
19406    pub fn gtk_text_tag_table_get_type() -> GType;
19407    pub fn gtk_text_tag_table_new() -> *mut GtkTextTagTable;
19408    pub fn gtk_text_tag_table_add(table: *mut GtkTextTagTable, tag: *mut GtkTextTag) -> gboolean;
19409    pub fn gtk_text_tag_table_foreach(
19410        table: *mut GtkTextTagTable,
19411        func: GtkTextTagTableForeach,
19412        data: gpointer,
19413    );
19414    pub fn gtk_text_tag_table_get_size(table: *mut GtkTextTagTable) -> c_int;
19415    pub fn gtk_text_tag_table_lookup(
19416        table: *mut GtkTextTagTable,
19417        name: *const c_char,
19418    ) -> *mut GtkTextTag;
19419    pub fn gtk_text_tag_table_remove(table: *mut GtkTextTagTable, tag: *mut GtkTextTag);
19420
19421    //=========================================================================
19422    // GtkTextView
19423    //=========================================================================
19424    pub fn gtk_text_view_get_type() -> GType;
19425    pub fn gtk_text_view_new() -> *mut GtkWidget;
19426    pub fn gtk_text_view_new_with_buffer(buffer: *mut GtkTextBuffer) -> *mut GtkWidget;
19427    pub fn gtk_text_view_add_child_at_anchor(
19428        text_view: *mut GtkTextView,
19429        child: *mut GtkWidget,
19430        anchor: *mut GtkTextChildAnchor,
19431    );
19432    pub fn gtk_text_view_add_overlay(
19433        text_view: *mut GtkTextView,
19434        child: *mut GtkWidget,
19435        xpos: c_int,
19436        ypos: c_int,
19437    );
19438    pub fn gtk_text_view_backward_display_line(
19439        text_view: *mut GtkTextView,
19440        iter: *mut GtkTextIter,
19441    ) -> gboolean;
19442    pub fn gtk_text_view_backward_display_line_start(
19443        text_view: *mut GtkTextView,
19444        iter: *mut GtkTextIter,
19445    ) -> gboolean;
19446    pub fn gtk_text_view_buffer_to_window_coords(
19447        text_view: *mut GtkTextView,
19448        win: GtkTextWindowType,
19449        buffer_x: c_int,
19450        buffer_y: c_int,
19451        window_x: *mut c_int,
19452        window_y: *mut c_int,
19453    );
19454    pub fn gtk_text_view_forward_display_line(
19455        text_view: *mut GtkTextView,
19456        iter: *mut GtkTextIter,
19457    ) -> gboolean;
19458    pub fn gtk_text_view_forward_display_line_end(
19459        text_view: *mut GtkTextView,
19460        iter: *mut GtkTextIter,
19461    ) -> gboolean;
19462    pub fn gtk_text_view_get_accepts_tab(text_view: *mut GtkTextView) -> gboolean;
19463    pub fn gtk_text_view_get_bottom_margin(text_view: *mut GtkTextView) -> c_int;
19464    pub fn gtk_text_view_get_buffer(text_view: *mut GtkTextView) -> *mut GtkTextBuffer;
19465    pub fn gtk_text_view_get_cursor_locations(
19466        text_view: *mut GtkTextView,
19467        iter: *const GtkTextIter,
19468        strong: *mut gdk::GdkRectangle,
19469        weak: *mut gdk::GdkRectangle,
19470    );
19471    pub fn gtk_text_view_get_cursor_visible(text_view: *mut GtkTextView) -> gboolean;
19472    pub fn gtk_text_view_get_editable(text_view: *mut GtkTextView) -> gboolean;
19473    pub fn gtk_text_view_get_extra_menu(text_view: *mut GtkTextView) -> *mut gio::GMenuModel;
19474    pub fn gtk_text_view_get_gutter(
19475        text_view: *mut GtkTextView,
19476        win: GtkTextWindowType,
19477    ) -> *mut GtkWidget;
19478    pub fn gtk_text_view_get_indent(text_view: *mut GtkTextView) -> c_int;
19479    pub fn gtk_text_view_get_input_hints(text_view: *mut GtkTextView) -> GtkInputHints;
19480    pub fn gtk_text_view_get_input_purpose(text_view: *mut GtkTextView) -> GtkInputPurpose;
19481    pub fn gtk_text_view_get_iter_at_location(
19482        text_view: *mut GtkTextView,
19483        iter: *mut GtkTextIter,
19484        x: c_int,
19485        y: c_int,
19486    ) -> gboolean;
19487    pub fn gtk_text_view_get_iter_at_position(
19488        text_view: *mut GtkTextView,
19489        iter: *mut GtkTextIter,
19490        trailing: *mut c_int,
19491        x: c_int,
19492        y: c_int,
19493    ) -> gboolean;
19494    pub fn gtk_text_view_get_iter_location(
19495        text_view: *mut GtkTextView,
19496        iter: *const GtkTextIter,
19497        location: *mut gdk::GdkRectangle,
19498    );
19499    pub fn gtk_text_view_get_justification(text_view: *mut GtkTextView) -> GtkJustification;
19500    pub fn gtk_text_view_get_left_margin(text_view: *mut GtkTextView) -> c_int;
19501    pub fn gtk_text_view_get_line_at_y(
19502        text_view: *mut GtkTextView,
19503        target_iter: *mut GtkTextIter,
19504        y: c_int,
19505        line_top: *mut c_int,
19506    );
19507    pub fn gtk_text_view_get_line_yrange(
19508        text_view: *mut GtkTextView,
19509        iter: *const GtkTextIter,
19510        y: *mut c_int,
19511        height: *mut c_int,
19512    );
19513    #[cfg(feature = "v4_4")]
19514    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19515    pub fn gtk_text_view_get_ltr_context(text_view: *mut GtkTextView) -> *mut pango::PangoContext;
19516    pub fn gtk_text_view_get_monospace(text_view: *mut GtkTextView) -> gboolean;
19517    pub fn gtk_text_view_get_overwrite(text_view: *mut GtkTextView) -> gboolean;
19518    pub fn gtk_text_view_get_pixels_above_lines(text_view: *mut GtkTextView) -> c_int;
19519    pub fn gtk_text_view_get_pixels_below_lines(text_view: *mut GtkTextView) -> c_int;
19520    pub fn gtk_text_view_get_pixels_inside_wrap(text_view: *mut GtkTextView) -> c_int;
19521    pub fn gtk_text_view_get_right_margin(text_view: *mut GtkTextView) -> c_int;
19522    #[cfg(feature = "v4_4")]
19523    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19524    pub fn gtk_text_view_get_rtl_context(text_view: *mut GtkTextView) -> *mut pango::PangoContext;
19525    pub fn gtk_text_view_get_tabs(text_view: *mut GtkTextView) -> *mut pango::PangoTabArray;
19526    pub fn gtk_text_view_get_top_margin(text_view: *mut GtkTextView) -> c_int;
19527    #[cfg(feature = "v4_18")]
19528    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
19529    pub fn gtk_text_view_get_visible_offset(
19530        text_view: *mut GtkTextView,
19531        x_offset: *mut c_double,
19532        y_offset: *mut c_double,
19533    );
19534    pub fn gtk_text_view_get_visible_rect(
19535        text_view: *mut GtkTextView,
19536        visible_rect: *mut gdk::GdkRectangle,
19537    );
19538    pub fn gtk_text_view_get_wrap_mode(text_view: *mut GtkTextView) -> GtkWrapMode;
19539    pub fn gtk_text_view_im_context_filter_keypress(
19540        text_view: *mut GtkTextView,
19541        event: *mut gdk::GdkEvent,
19542    ) -> gboolean;
19543    pub fn gtk_text_view_move_mark_onscreen(
19544        text_view: *mut GtkTextView,
19545        mark: *mut GtkTextMark,
19546    ) -> gboolean;
19547    pub fn gtk_text_view_move_overlay(
19548        text_view: *mut GtkTextView,
19549        child: *mut GtkWidget,
19550        xpos: c_int,
19551        ypos: c_int,
19552    );
19553    pub fn gtk_text_view_move_visually(
19554        text_view: *mut GtkTextView,
19555        iter: *mut GtkTextIter,
19556        count: c_int,
19557    ) -> gboolean;
19558    pub fn gtk_text_view_place_cursor_onscreen(text_view: *mut GtkTextView) -> gboolean;
19559    pub fn gtk_text_view_remove(text_view: *mut GtkTextView, child: *mut GtkWidget);
19560    pub fn gtk_text_view_reset_cursor_blink(text_view: *mut GtkTextView);
19561    pub fn gtk_text_view_reset_im_context(text_view: *mut GtkTextView);
19562    pub fn gtk_text_view_scroll_mark_onscreen(text_view: *mut GtkTextView, mark: *mut GtkTextMark);
19563    pub fn gtk_text_view_scroll_to_iter(
19564        text_view: *mut GtkTextView,
19565        iter: *mut GtkTextIter,
19566        within_margin: c_double,
19567        use_align: gboolean,
19568        xalign: c_double,
19569        yalign: c_double,
19570    ) -> gboolean;
19571    pub fn gtk_text_view_scroll_to_mark(
19572        text_view: *mut GtkTextView,
19573        mark: *mut GtkTextMark,
19574        within_margin: c_double,
19575        use_align: gboolean,
19576        xalign: c_double,
19577        yalign: c_double,
19578    );
19579    pub fn gtk_text_view_set_accepts_tab(text_view: *mut GtkTextView, accepts_tab: gboolean);
19580    pub fn gtk_text_view_set_bottom_margin(text_view: *mut GtkTextView, bottom_margin: c_int);
19581    pub fn gtk_text_view_set_buffer(text_view: *mut GtkTextView, buffer: *mut GtkTextBuffer);
19582    pub fn gtk_text_view_set_cursor_visible(text_view: *mut GtkTextView, setting: gboolean);
19583    pub fn gtk_text_view_set_editable(text_view: *mut GtkTextView, setting: gboolean);
19584    pub fn gtk_text_view_set_extra_menu(text_view: *mut GtkTextView, model: *mut gio::GMenuModel);
19585    pub fn gtk_text_view_set_gutter(
19586        text_view: *mut GtkTextView,
19587        win: GtkTextWindowType,
19588        widget: *mut GtkWidget,
19589    );
19590    pub fn gtk_text_view_set_indent(text_view: *mut GtkTextView, indent: c_int);
19591    pub fn gtk_text_view_set_input_hints(text_view: *mut GtkTextView, hints: GtkInputHints);
19592    pub fn gtk_text_view_set_input_purpose(text_view: *mut GtkTextView, purpose: GtkInputPurpose);
19593    pub fn gtk_text_view_set_justification(
19594        text_view: *mut GtkTextView,
19595        justification: GtkJustification,
19596    );
19597    pub fn gtk_text_view_set_left_margin(text_view: *mut GtkTextView, left_margin: c_int);
19598    pub fn gtk_text_view_set_monospace(text_view: *mut GtkTextView, monospace: gboolean);
19599    pub fn gtk_text_view_set_overwrite(text_view: *mut GtkTextView, overwrite: gboolean);
19600    pub fn gtk_text_view_set_pixels_above_lines(
19601        text_view: *mut GtkTextView,
19602        pixels_above_lines: c_int,
19603    );
19604    pub fn gtk_text_view_set_pixels_below_lines(
19605        text_view: *mut GtkTextView,
19606        pixels_below_lines: c_int,
19607    );
19608    pub fn gtk_text_view_set_pixels_inside_wrap(
19609        text_view: *mut GtkTextView,
19610        pixels_inside_wrap: c_int,
19611    );
19612    pub fn gtk_text_view_set_right_margin(text_view: *mut GtkTextView, right_margin: c_int);
19613    pub fn gtk_text_view_set_tabs(text_view: *mut GtkTextView, tabs: *mut pango::PangoTabArray);
19614    pub fn gtk_text_view_set_top_margin(text_view: *mut GtkTextView, top_margin: c_int);
19615    pub fn gtk_text_view_set_wrap_mode(text_view: *mut GtkTextView, wrap_mode: GtkWrapMode);
19616    pub fn gtk_text_view_starts_display_line(
19617        text_view: *mut GtkTextView,
19618        iter: *const GtkTextIter,
19619    ) -> gboolean;
19620    pub fn gtk_text_view_window_to_buffer_coords(
19621        text_view: *mut GtkTextView,
19622        win: GtkTextWindowType,
19623        window_x: c_int,
19624        window_y: c_int,
19625        buffer_x: *mut c_int,
19626        buffer_y: *mut c_int,
19627    );
19628
19629    //=========================================================================
19630    // GtkToggleButton
19631    //=========================================================================
19632    pub fn gtk_toggle_button_get_type() -> GType;
19633    pub fn gtk_toggle_button_new() -> *mut GtkWidget;
19634    pub fn gtk_toggle_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
19635    pub fn gtk_toggle_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
19636    pub fn gtk_toggle_button_get_active(toggle_button: *mut GtkToggleButton) -> gboolean;
19637    pub fn gtk_toggle_button_set_active(toggle_button: *mut GtkToggleButton, is_active: gboolean);
19638    pub fn gtk_toggle_button_set_group(
19639        toggle_button: *mut GtkToggleButton,
19640        group: *mut GtkToggleButton,
19641    );
19642    pub fn gtk_toggle_button_toggled(toggle_button: *mut GtkToggleButton);
19643
19644    //=========================================================================
19645    // GtkTooltip
19646    //=========================================================================
19647    pub fn gtk_tooltip_get_type() -> GType;
19648    pub fn gtk_tooltip_set_custom(tooltip: *mut GtkTooltip, custom_widget: *mut GtkWidget);
19649    pub fn gtk_tooltip_set_icon(tooltip: *mut GtkTooltip, paintable: *mut gdk::GdkPaintable);
19650    pub fn gtk_tooltip_set_icon_from_gicon(tooltip: *mut GtkTooltip, gicon: *mut gio::GIcon);
19651    pub fn gtk_tooltip_set_icon_from_icon_name(tooltip: *mut GtkTooltip, icon_name: *const c_char);
19652    pub fn gtk_tooltip_set_markup(tooltip: *mut GtkTooltip, markup: *const c_char);
19653    pub fn gtk_tooltip_set_text(tooltip: *mut GtkTooltip, text: *const c_char);
19654    pub fn gtk_tooltip_set_tip_area(tooltip: *mut GtkTooltip, rect: *const gdk::GdkRectangle);
19655
19656    //=========================================================================
19657    // GtkTreeExpander
19658    //=========================================================================
19659    pub fn gtk_tree_expander_get_type() -> GType;
19660    pub fn gtk_tree_expander_new() -> *mut GtkWidget;
19661    pub fn gtk_tree_expander_get_child(self_: *mut GtkTreeExpander) -> *mut GtkWidget;
19662    #[cfg(feature = "v4_10")]
19663    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19664    pub fn gtk_tree_expander_get_hide_expander(self_: *mut GtkTreeExpander) -> gboolean;
19665    #[cfg(feature = "v4_10")]
19666    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19667    pub fn gtk_tree_expander_get_indent_for_depth(self_: *mut GtkTreeExpander) -> gboolean;
19668    #[cfg(feature = "v4_6")]
19669    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19670    pub fn gtk_tree_expander_get_indent_for_icon(self_: *mut GtkTreeExpander) -> gboolean;
19671    pub fn gtk_tree_expander_get_item(self_: *mut GtkTreeExpander) -> *mut gobject::GObject;
19672    pub fn gtk_tree_expander_get_list_row(self_: *mut GtkTreeExpander) -> *mut GtkTreeListRow;
19673    pub fn gtk_tree_expander_set_child(self_: *mut GtkTreeExpander, child: *mut GtkWidget);
19674    #[cfg(feature = "v4_10")]
19675    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19676    pub fn gtk_tree_expander_set_hide_expander(
19677        self_: *mut GtkTreeExpander,
19678        hide_expander: gboolean,
19679    );
19680    #[cfg(feature = "v4_10")]
19681    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19682    pub fn gtk_tree_expander_set_indent_for_depth(
19683        self_: *mut GtkTreeExpander,
19684        indent_for_depth: gboolean,
19685    );
19686    #[cfg(feature = "v4_6")]
19687    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19688    pub fn gtk_tree_expander_set_indent_for_icon(
19689        self_: *mut GtkTreeExpander,
19690        indent_for_icon: gboolean,
19691    );
19692    pub fn gtk_tree_expander_set_list_row(
19693        self_: *mut GtkTreeExpander,
19694        list_row: *mut GtkTreeListRow,
19695    );
19696
19697    //=========================================================================
19698    // GtkTreeListModel
19699    //=========================================================================
19700    pub fn gtk_tree_list_model_get_type() -> GType;
19701    pub fn gtk_tree_list_model_new(
19702        root: *mut gio::GListModel,
19703        passthrough: gboolean,
19704        autoexpand: gboolean,
19705        create_func: GtkTreeListModelCreateModelFunc,
19706        user_data: gpointer,
19707        user_destroy: glib::GDestroyNotify,
19708    ) -> *mut GtkTreeListModel;
19709    pub fn gtk_tree_list_model_get_autoexpand(self_: *mut GtkTreeListModel) -> gboolean;
19710    pub fn gtk_tree_list_model_get_child_row(
19711        self_: *mut GtkTreeListModel,
19712        position: c_uint,
19713    ) -> *mut GtkTreeListRow;
19714    pub fn gtk_tree_list_model_get_model(self_: *mut GtkTreeListModel) -> *mut gio::GListModel;
19715    pub fn gtk_tree_list_model_get_passthrough(self_: *mut GtkTreeListModel) -> gboolean;
19716    pub fn gtk_tree_list_model_get_row(
19717        self_: *mut GtkTreeListModel,
19718        position: c_uint,
19719    ) -> *mut GtkTreeListRow;
19720    pub fn gtk_tree_list_model_set_autoexpand(self_: *mut GtkTreeListModel, autoexpand: gboolean);
19721
19722    //=========================================================================
19723    // GtkTreeListRow
19724    //=========================================================================
19725    pub fn gtk_tree_list_row_get_type() -> GType;
19726    pub fn gtk_tree_list_row_get_child_row(
19727        self_: *mut GtkTreeListRow,
19728        position: c_uint,
19729    ) -> *mut GtkTreeListRow;
19730    pub fn gtk_tree_list_row_get_children(self_: *mut GtkTreeListRow) -> *mut gio::GListModel;
19731    pub fn gtk_tree_list_row_get_depth(self_: *mut GtkTreeListRow) -> c_uint;
19732    pub fn gtk_tree_list_row_get_expanded(self_: *mut GtkTreeListRow) -> gboolean;
19733    pub fn gtk_tree_list_row_get_item(self_: *mut GtkTreeListRow) -> *mut gobject::GObject;
19734    pub fn gtk_tree_list_row_get_parent(self_: *mut GtkTreeListRow) -> *mut GtkTreeListRow;
19735    pub fn gtk_tree_list_row_get_position(self_: *mut GtkTreeListRow) -> c_uint;
19736    pub fn gtk_tree_list_row_is_expandable(self_: *mut GtkTreeListRow) -> gboolean;
19737    pub fn gtk_tree_list_row_set_expanded(self_: *mut GtkTreeListRow, expanded: gboolean);
19738
19739    //=========================================================================
19740    // GtkTreeListRowSorter
19741    //=========================================================================
19742    pub fn gtk_tree_list_row_sorter_get_type() -> GType;
19743    pub fn gtk_tree_list_row_sorter_new(sorter: *mut GtkSorter) -> *mut GtkTreeListRowSorter;
19744    pub fn gtk_tree_list_row_sorter_get_sorter(self_: *mut GtkTreeListRowSorter) -> *mut GtkSorter;
19745    pub fn gtk_tree_list_row_sorter_set_sorter(
19746        self_: *mut GtkTreeListRowSorter,
19747        sorter: *mut GtkSorter,
19748    );
19749
19750    //=========================================================================
19751    // GtkTreeModelFilter
19752    //=========================================================================
19753    pub fn gtk_tree_model_filter_get_type() -> GType;
19754    pub fn gtk_tree_model_filter_clear_cache(filter: *mut GtkTreeModelFilter);
19755    pub fn gtk_tree_model_filter_convert_child_iter_to_iter(
19756        filter: *mut GtkTreeModelFilter,
19757        filter_iter: *mut GtkTreeIter,
19758        child_iter: *mut GtkTreeIter,
19759    ) -> gboolean;
19760    pub fn gtk_tree_model_filter_convert_child_path_to_path(
19761        filter: *mut GtkTreeModelFilter,
19762        child_path: *mut GtkTreePath,
19763    ) -> *mut GtkTreePath;
19764    pub fn gtk_tree_model_filter_convert_iter_to_child_iter(
19765        filter: *mut GtkTreeModelFilter,
19766        child_iter: *mut GtkTreeIter,
19767        filter_iter: *mut GtkTreeIter,
19768    );
19769    pub fn gtk_tree_model_filter_convert_path_to_child_path(
19770        filter: *mut GtkTreeModelFilter,
19771        filter_path: *mut GtkTreePath,
19772    ) -> *mut GtkTreePath;
19773    pub fn gtk_tree_model_filter_get_model(filter: *mut GtkTreeModelFilter) -> *mut GtkTreeModel;
19774    pub fn gtk_tree_model_filter_refilter(filter: *mut GtkTreeModelFilter);
19775    pub fn gtk_tree_model_filter_set_modify_func(
19776        filter: *mut GtkTreeModelFilter,
19777        n_columns: c_int,
19778        types: *mut GType,
19779        func: GtkTreeModelFilterModifyFunc,
19780        data: gpointer,
19781        destroy: glib::GDestroyNotify,
19782    );
19783    pub fn gtk_tree_model_filter_set_visible_column(filter: *mut GtkTreeModelFilter, column: c_int);
19784    pub fn gtk_tree_model_filter_set_visible_func(
19785        filter: *mut GtkTreeModelFilter,
19786        func: GtkTreeModelFilterVisibleFunc,
19787        data: gpointer,
19788        destroy: glib::GDestroyNotify,
19789    );
19790
19791    //=========================================================================
19792    // GtkTreeModelSort
19793    //=========================================================================
19794    pub fn gtk_tree_model_sort_get_type() -> GType;
19795    pub fn gtk_tree_model_sort_new_with_model(
19796        child_model: *mut GtkTreeModel,
19797    ) -> *mut GtkTreeModelSort;
19798    pub fn gtk_tree_model_sort_clear_cache(tree_model_sort: *mut GtkTreeModelSort);
19799    pub fn gtk_tree_model_sort_convert_child_iter_to_iter(
19800        tree_model_sort: *mut GtkTreeModelSort,
19801        sort_iter: *mut GtkTreeIter,
19802        child_iter: *mut GtkTreeIter,
19803    ) -> gboolean;
19804    pub fn gtk_tree_model_sort_convert_child_path_to_path(
19805        tree_model_sort: *mut GtkTreeModelSort,
19806        child_path: *mut GtkTreePath,
19807    ) -> *mut GtkTreePath;
19808    pub fn gtk_tree_model_sort_convert_iter_to_child_iter(
19809        tree_model_sort: *mut GtkTreeModelSort,
19810        child_iter: *mut GtkTreeIter,
19811        sorted_iter: *mut GtkTreeIter,
19812    );
19813    pub fn gtk_tree_model_sort_convert_path_to_child_path(
19814        tree_model_sort: *mut GtkTreeModelSort,
19815        sorted_path: *mut GtkTreePath,
19816    ) -> *mut GtkTreePath;
19817    pub fn gtk_tree_model_sort_get_model(tree_model: *mut GtkTreeModelSort) -> *mut GtkTreeModel;
19818    pub fn gtk_tree_model_sort_iter_is_valid(
19819        tree_model_sort: *mut GtkTreeModelSort,
19820        iter: *mut GtkTreeIter,
19821    ) -> gboolean;
19822    pub fn gtk_tree_model_sort_reset_default_sort_func(tree_model_sort: *mut GtkTreeModelSort);
19823
19824    //=========================================================================
19825    // GtkTreeSelection
19826    //=========================================================================
19827    pub fn gtk_tree_selection_get_type() -> GType;
19828    pub fn gtk_tree_selection_count_selected_rows(selection: *mut GtkTreeSelection) -> c_int;
19829    pub fn gtk_tree_selection_get_mode(selection: *mut GtkTreeSelection) -> GtkSelectionMode;
19830    pub fn gtk_tree_selection_get_select_function(
19831        selection: *mut GtkTreeSelection,
19832    ) -> GtkTreeSelectionFunc;
19833    pub fn gtk_tree_selection_get_selected(
19834        selection: *mut GtkTreeSelection,
19835        model: *mut *mut GtkTreeModel,
19836        iter: *mut GtkTreeIter,
19837    ) -> gboolean;
19838    pub fn gtk_tree_selection_get_selected_rows(
19839        selection: *mut GtkTreeSelection,
19840        model: *mut *mut GtkTreeModel,
19841    ) -> *mut glib::GList;
19842    pub fn gtk_tree_selection_get_tree_view(selection: *mut GtkTreeSelection) -> *mut GtkTreeView;
19843    pub fn gtk_tree_selection_get_user_data(selection: *mut GtkTreeSelection) -> gpointer;
19844    pub fn gtk_tree_selection_iter_is_selected(
19845        selection: *mut GtkTreeSelection,
19846        iter: *mut GtkTreeIter,
19847    ) -> gboolean;
19848    pub fn gtk_tree_selection_path_is_selected(
19849        selection: *mut GtkTreeSelection,
19850        path: *mut GtkTreePath,
19851    ) -> gboolean;
19852    pub fn gtk_tree_selection_select_all(selection: *mut GtkTreeSelection);
19853    pub fn gtk_tree_selection_select_iter(selection: *mut GtkTreeSelection, iter: *mut GtkTreeIter);
19854    pub fn gtk_tree_selection_select_path(selection: *mut GtkTreeSelection, path: *mut GtkTreePath);
19855    pub fn gtk_tree_selection_select_range(
19856        selection: *mut GtkTreeSelection,
19857        start_path: *mut GtkTreePath,
19858        end_path: *mut GtkTreePath,
19859    );
19860    pub fn gtk_tree_selection_selected_foreach(
19861        selection: *mut GtkTreeSelection,
19862        func: GtkTreeSelectionForeachFunc,
19863        data: gpointer,
19864    );
19865    pub fn gtk_tree_selection_set_mode(selection: *mut GtkTreeSelection, type_: GtkSelectionMode);
19866    pub fn gtk_tree_selection_set_select_function(
19867        selection: *mut GtkTreeSelection,
19868        func: GtkTreeSelectionFunc,
19869        data: gpointer,
19870        destroy: glib::GDestroyNotify,
19871    );
19872    pub fn gtk_tree_selection_unselect_all(selection: *mut GtkTreeSelection);
19873    pub fn gtk_tree_selection_unselect_iter(
19874        selection: *mut GtkTreeSelection,
19875        iter: *mut GtkTreeIter,
19876    );
19877    pub fn gtk_tree_selection_unselect_path(
19878        selection: *mut GtkTreeSelection,
19879        path: *mut GtkTreePath,
19880    );
19881    pub fn gtk_tree_selection_unselect_range(
19882        selection: *mut GtkTreeSelection,
19883        start_path: *mut GtkTreePath,
19884        end_path: *mut GtkTreePath,
19885    );
19886
19887    //=========================================================================
19888    // GtkTreeStore
19889    //=========================================================================
19890    pub fn gtk_tree_store_get_type() -> GType;
19891    pub fn gtk_tree_store_new(n_columns: c_int, ...) -> *mut GtkTreeStore;
19892    pub fn gtk_tree_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkTreeStore;
19893    pub fn gtk_tree_store_append(
19894        tree_store: *mut GtkTreeStore,
19895        iter: *mut GtkTreeIter,
19896        parent: *mut GtkTreeIter,
19897    );
19898    pub fn gtk_tree_store_clear(tree_store: *mut GtkTreeStore);
19899    pub fn gtk_tree_store_insert(
19900        tree_store: *mut GtkTreeStore,
19901        iter: *mut GtkTreeIter,
19902        parent: *mut GtkTreeIter,
19903        position: c_int,
19904    );
19905    pub fn gtk_tree_store_insert_after(
19906        tree_store: *mut GtkTreeStore,
19907        iter: *mut GtkTreeIter,
19908        parent: *mut GtkTreeIter,
19909        sibling: *mut GtkTreeIter,
19910    );
19911    pub fn gtk_tree_store_insert_before(
19912        tree_store: *mut GtkTreeStore,
19913        iter: *mut GtkTreeIter,
19914        parent: *mut GtkTreeIter,
19915        sibling: *mut GtkTreeIter,
19916    );
19917    pub fn gtk_tree_store_insert_with_values(
19918        tree_store: *mut GtkTreeStore,
19919        iter: *mut GtkTreeIter,
19920        parent: *mut GtkTreeIter,
19921        position: c_int,
19922        ...
19923    );
19924    pub fn gtk_tree_store_insert_with_valuesv(
19925        tree_store: *mut GtkTreeStore,
19926        iter: *mut GtkTreeIter,
19927        parent: *mut GtkTreeIter,
19928        position: c_int,
19929        columns: *mut c_int,
19930        values: *mut gobject::GValue,
19931        n_values: c_int,
19932    );
19933    pub fn gtk_tree_store_is_ancestor(
19934        tree_store: *mut GtkTreeStore,
19935        iter: *mut GtkTreeIter,
19936        descendant: *mut GtkTreeIter,
19937    ) -> gboolean;
19938    pub fn gtk_tree_store_iter_depth(
19939        tree_store: *mut GtkTreeStore,
19940        iter: *mut GtkTreeIter,
19941    ) -> c_int;
19942    pub fn gtk_tree_store_iter_is_valid(
19943        tree_store: *mut GtkTreeStore,
19944        iter: *mut GtkTreeIter,
19945    ) -> gboolean;
19946    pub fn gtk_tree_store_move_after(
19947        tree_store: *mut GtkTreeStore,
19948        iter: *mut GtkTreeIter,
19949        position: *mut GtkTreeIter,
19950    );
19951    pub fn gtk_tree_store_move_before(
19952        tree_store: *mut GtkTreeStore,
19953        iter: *mut GtkTreeIter,
19954        position: *mut GtkTreeIter,
19955    );
19956    pub fn gtk_tree_store_prepend(
19957        tree_store: *mut GtkTreeStore,
19958        iter: *mut GtkTreeIter,
19959        parent: *mut GtkTreeIter,
19960    );
19961    pub fn gtk_tree_store_remove(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter)
19962        -> gboolean;
19963    pub fn gtk_tree_store_reorder(
19964        tree_store: *mut GtkTreeStore,
19965        parent: *mut GtkTreeIter,
19966        new_order: *mut c_int,
19967    );
19968    pub fn gtk_tree_store_set(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, ...);
19969    pub fn gtk_tree_store_set_column_types(
19970        tree_store: *mut GtkTreeStore,
19971        n_columns: c_int,
19972        types: *mut GType,
19973    );
19974    //pub fn gtk_tree_store_set_valist(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
19975    pub fn gtk_tree_store_set_value(
19976        tree_store: *mut GtkTreeStore,
19977        iter: *mut GtkTreeIter,
19978        column: c_int,
19979        value: *mut gobject::GValue,
19980    );
19981    pub fn gtk_tree_store_set_valuesv(
19982        tree_store: *mut GtkTreeStore,
19983        iter: *mut GtkTreeIter,
19984        columns: *mut c_int,
19985        values: *mut gobject::GValue,
19986        n_values: c_int,
19987    );
19988    pub fn gtk_tree_store_swap(
19989        tree_store: *mut GtkTreeStore,
19990        a: *mut GtkTreeIter,
19991        b: *mut GtkTreeIter,
19992    );
19993
19994    //=========================================================================
19995    // GtkTreeView
19996    //=========================================================================
19997    pub fn gtk_tree_view_get_type() -> GType;
19998    pub fn gtk_tree_view_new() -> *mut GtkWidget;
19999    pub fn gtk_tree_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
20000    pub fn gtk_tree_view_append_column(
20001        tree_view: *mut GtkTreeView,
20002        column: *mut GtkTreeViewColumn,
20003    ) -> c_int;
20004    pub fn gtk_tree_view_collapse_all(tree_view: *mut GtkTreeView);
20005    pub fn gtk_tree_view_collapse_row(
20006        tree_view: *mut GtkTreeView,
20007        path: *mut GtkTreePath,
20008    ) -> gboolean;
20009    pub fn gtk_tree_view_columns_autosize(tree_view: *mut GtkTreeView);
20010    pub fn gtk_tree_view_convert_bin_window_to_tree_coords(
20011        tree_view: *mut GtkTreeView,
20012        bx: c_int,
20013        by: c_int,
20014        tx: *mut c_int,
20015        ty: *mut c_int,
20016    );
20017    pub fn gtk_tree_view_convert_bin_window_to_widget_coords(
20018        tree_view: *mut GtkTreeView,
20019        bx: c_int,
20020        by: c_int,
20021        wx: *mut c_int,
20022        wy: *mut c_int,
20023    );
20024    pub fn gtk_tree_view_convert_tree_to_bin_window_coords(
20025        tree_view: *mut GtkTreeView,
20026        tx: c_int,
20027        ty: c_int,
20028        bx: *mut c_int,
20029        by: *mut c_int,
20030    );
20031    pub fn gtk_tree_view_convert_tree_to_widget_coords(
20032        tree_view: *mut GtkTreeView,
20033        tx: c_int,
20034        ty: c_int,
20035        wx: *mut c_int,
20036        wy: *mut c_int,
20037    );
20038    pub fn gtk_tree_view_convert_widget_to_bin_window_coords(
20039        tree_view: *mut GtkTreeView,
20040        wx: c_int,
20041        wy: c_int,
20042        bx: *mut c_int,
20043        by: *mut c_int,
20044    );
20045    pub fn gtk_tree_view_convert_widget_to_tree_coords(
20046        tree_view: *mut GtkTreeView,
20047        wx: c_int,
20048        wy: c_int,
20049        tx: *mut c_int,
20050        ty: *mut c_int,
20051    );
20052    pub fn gtk_tree_view_create_row_drag_icon(
20053        tree_view: *mut GtkTreeView,
20054        path: *mut GtkTreePath,
20055    ) -> *mut gdk::GdkPaintable;
20056    pub fn gtk_tree_view_enable_model_drag_dest(
20057        tree_view: *mut GtkTreeView,
20058        formats: *mut gdk::GdkContentFormats,
20059        actions: gdk::GdkDragAction,
20060    );
20061    pub fn gtk_tree_view_enable_model_drag_source(
20062        tree_view: *mut GtkTreeView,
20063        start_button_mask: gdk::GdkModifierType,
20064        formats: *mut gdk::GdkContentFormats,
20065        actions: gdk::GdkDragAction,
20066    );
20067    pub fn gtk_tree_view_expand_all(tree_view: *mut GtkTreeView);
20068    pub fn gtk_tree_view_expand_row(
20069        tree_view: *mut GtkTreeView,
20070        path: *mut GtkTreePath,
20071        open_all: gboolean,
20072    ) -> gboolean;
20073    pub fn gtk_tree_view_expand_to_path(tree_view: *mut GtkTreeView, path: *mut GtkTreePath);
20074    pub fn gtk_tree_view_get_activate_on_single_click(tree_view: *mut GtkTreeView) -> gboolean;
20075    pub fn gtk_tree_view_get_background_area(
20076        tree_view: *mut GtkTreeView,
20077        path: *mut GtkTreePath,
20078        column: *mut GtkTreeViewColumn,
20079        rect: *mut gdk::GdkRectangle,
20080    );
20081    pub fn gtk_tree_view_get_cell_area(
20082        tree_view: *mut GtkTreeView,
20083        path: *mut GtkTreePath,
20084        column: *mut GtkTreeViewColumn,
20085        rect: *mut gdk::GdkRectangle,
20086    );
20087    pub fn gtk_tree_view_get_column(
20088        tree_view: *mut GtkTreeView,
20089        n: c_int,
20090    ) -> *mut GtkTreeViewColumn;
20091    pub fn gtk_tree_view_get_columns(tree_view: *mut GtkTreeView) -> *mut glib::GList;
20092    pub fn gtk_tree_view_get_cursor(
20093        tree_view: *mut GtkTreeView,
20094        path: *mut *mut GtkTreePath,
20095        focus_column: *mut *mut GtkTreeViewColumn,
20096    );
20097    pub fn gtk_tree_view_get_dest_row_at_pos(
20098        tree_view: *mut GtkTreeView,
20099        drag_x: c_int,
20100        drag_y: c_int,
20101        path: *mut *mut GtkTreePath,
20102        pos: *mut GtkTreeViewDropPosition,
20103    ) -> gboolean;
20104    pub fn gtk_tree_view_get_drag_dest_row(
20105        tree_view: *mut GtkTreeView,
20106        path: *mut *mut GtkTreePath,
20107        pos: *mut GtkTreeViewDropPosition,
20108    );
20109    pub fn gtk_tree_view_get_enable_search(tree_view: *mut GtkTreeView) -> gboolean;
20110    pub fn gtk_tree_view_get_enable_tree_lines(tree_view: *mut GtkTreeView) -> gboolean;
20111    pub fn gtk_tree_view_get_expander_column(tree_view: *mut GtkTreeView)
20112        -> *mut GtkTreeViewColumn;
20113    pub fn gtk_tree_view_get_fixed_height_mode(tree_view: *mut GtkTreeView) -> gboolean;
20114    pub fn gtk_tree_view_get_grid_lines(tree_view: *mut GtkTreeView) -> GtkTreeViewGridLines;
20115    pub fn gtk_tree_view_get_headers_clickable(tree_view: *mut GtkTreeView) -> gboolean;
20116    pub fn gtk_tree_view_get_headers_visible(tree_view: *mut GtkTreeView) -> gboolean;
20117    pub fn gtk_tree_view_get_hover_expand(tree_view: *mut GtkTreeView) -> gboolean;
20118    pub fn gtk_tree_view_get_hover_selection(tree_view: *mut GtkTreeView) -> gboolean;
20119    pub fn gtk_tree_view_get_level_indentation(tree_view: *mut GtkTreeView) -> c_int;
20120    pub fn gtk_tree_view_get_model(tree_view: *mut GtkTreeView) -> *mut GtkTreeModel;
20121    pub fn gtk_tree_view_get_n_columns(tree_view: *mut GtkTreeView) -> c_uint;
20122    pub fn gtk_tree_view_get_path_at_pos(
20123        tree_view: *mut GtkTreeView,
20124        x: c_int,
20125        y: c_int,
20126        path: *mut *mut GtkTreePath,
20127        column: *mut *mut GtkTreeViewColumn,
20128        cell_x: *mut c_int,
20129        cell_y: *mut c_int,
20130    ) -> gboolean;
20131    pub fn gtk_tree_view_get_reorderable(tree_view: *mut GtkTreeView) -> gboolean;
20132    pub fn gtk_tree_view_get_row_separator_func(
20133        tree_view: *mut GtkTreeView,
20134    ) -> GtkTreeViewRowSeparatorFunc;
20135    pub fn gtk_tree_view_get_rubber_banding(tree_view: *mut GtkTreeView) -> gboolean;
20136    pub fn gtk_tree_view_get_search_column(tree_view: *mut GtkTreeView) -> c_int;
20137    pub fn gtk_tree_view_get_search_entry(tree_view: *mut GtkTreeView) -> *mut GtkEditable;
20138    pub fn gtk_tree_view_get_search_equal_func(
20139        tree_view: *mut GtkTreeView,
20140    ) -> GtkTreeViewSearchEqualFunc;
20141    pub fn gtk_tree_view_get_selection(tree_view: *mut GtkTreeView) -> *mut GtkTreeSelection;
20142    pub fn gtk_tree_view_get_show_expanders(tree_view: *mut GtkTreeView) -> gboolean;
20143    pub fn gtk_tree_view_get_tooltip_column(tree_view: *mut GtkTreeView) -> c_int;
20144    pub fn gtk_tree_view_get_tooltip_context(
20145        tree_view: *mut GtkTreeView,
20146        x: c_int,
20147        y: c_int,
20148        keyboard_tip: gboolean,
20149        model: *mut *mut GtkTreeModel,
20150        path: *mut *mut GtkTreePath,
20151        iter: *mut GtkTreeIter,
20152    ) -> gboolean;
20153    pub fn gtk_tree_view_get_visible_range(
20154        tree_view: *mut GtkTreeView,
20155        start_path: *mut *mut GtkTreePath,
20156        end_path: *mut *mut GtkTreePath,
20157    ) -> gboolean;
20158    pub fn gtk_tree_view_get_visible_rect(
20159        tree_view: *mut GtkTreeView,
20160        visible_rect: *mut gdk::GdkRectangle,
20161    );
20162    pub fn gtk_tree_view_insert_column(
20163        tree_view: *mut GtkTreeView,
20164        column: *mut GtkTreeViewColumn,
20165        position: c_int,
20166    ) -> c_int;
20167    pub fn gtk_tree_view_insert_column_with_attributes(
20168        tree_view: *mut GtkTreeView,
20169        position: c_int,
20170        title: *const c_char,
20171        cell: *mut GtkCellRenderer,
20172        ...
20173    ) -> c_int;
20174    pub fn gtk_tree_view_insert_column_with_data_func(
20175        tree_view: *mut GtkTreeView,
20176        position: c_int,
20177        title: *const c_char,
20178        cell: *mut GtkCellRenderer,
20179        func: GtkTreeCellDataFunc,
20180        data: gpointer,
20181        dnotify: glib::GDestroyNotify,
20182    ) -> c_int;
20183    pub fn gtk_tree_view_is_blank_at_pos(
20184        tree_view: *mut GtkTreeView,
20185        x: c_int,
20186        y: c_int,
20187        path: *mut *mut GtkTreePath,
20188        column: *mut *mut GtkTreeViewColumn,
20189        cell_x: *mut c_int,
20190        cell_y: *mut c_int,
20191    ) -> gboolean;
20192    pub fn gtk_tree_view_is_rubber_banding_active(tree_view: *mut GtkTreeView) -> gboolean;
20193    pub fn gtk_tree_view_map_expanded_rows(
20194        tree_view: *mut GtkTreeView,
20195        func: GtkTreeViewMappingFunc,
20196        data: gpointer,
20197    );
20198    pub fn gtk_tree_view_move_column_after(
20199        tree_view: *mut GtkTreeView,
20200        column: *mut GtkTreeViewColumn,
20201        base_column: *mut GtkTreeViewColumn,
20202    );
20203    pub fn gtk_tree_view_remove_column(
20204        tree_view: *mut GtkTreeView,
20205        column: *mut GtkTreeViewColumn,
20206    ) -> c_int;
20207    pub fn gtk_tree_view_row_activated(
20208        tree_view: *mut GtkTreeView,
20209        path: *mut GtkTreePath,
20210        column: *mut GtkTreeViewColumn,
20211    );
20212    pub fn gtk_tree_view_row_expanded(
20213        tree_view: *mut GtkTreeView,
20214        path: *mut GtkTreePath,
20215    ) -> gboolean;
20216    pub fn gtk_tree_view_scroll_to_cell(
20217        tree_view: *mut GtkTreeView,
20218        path: *mut GtkTreePath,
20219        column: *mut GtkTreeViewColumn,
20220        use_align: gboolean,
20221        row_align: c_float,
20222        col_align: c_float,
20223    );
20224    pub fn gtk_tree_view_scroll_to_point(tree_view: *mut GtkTreeView, tree_x: c_int, tree_y: c_int);
20225    pub fn gtk_tree_view_set_activate_on_single_click(
20226        tree_view: *mut GtkTreeView,
20227        single: gboolean,
20228    );
20229    pub fn gtk_tree_view_set_column_drag_function(
20230        tree_view: *mut GtkTreeView,
20231        func: GtkTreeViewColumnDropFunc,
20232        user_data: gpointer,
20233        destroy: glib::GDestroyNotify,
20234    );
20235    pub fn gtk_tree_view_set_cursor(
20236        tree_view: *mut GtkTreeView,
20237        path: *mut GtkTreePath,
20238        focus_column: *mut GtkTreeViewColumn,
20239        start_editing: gboolean,
20240    );
20241    pub fn gtk_tree_view_set_cursor_on_cell(
20242        tree_view: *mut GtkTreeView,
20243        path: *mut GtkTreePath,
20244        focus_column: *mut GtkTreeViewColumn,
20245        focus_cell: *mut GtkCellRenderer,
20246        start_editing: gboolean,
20247    );
20248    pub fn gtk_tree_view_set_drag_dest_row(
20249        tree_view: *mut GtkTreeView,
20250        path: *mut GtkTreePath,
20251        pos: GtkTreeViewDropPosition,
20252    );
20253    pub fn gtk_tree_view_set_enable_search(tree_view: *mut GtkTreeView, enable_search: gboolean);
20254    pub fn gtk_tree_view_set_enable_tree_lines(tree_view: *mut GtkTreeView, enabled: gboolean);
20255    pub fn gtk_tree_view_set_expander_column(
20256        tree_view: *mut GtkTreeView,
20257        column: *mut GtkTreeViewColumn,
20258    );
20259    pub fn gtk_tree_view_set_fixed_height_mode(tree_view: *mut GtkTreeView, enable: gboolean);
20260    pub fn gtk_tree_view_set_grid_lines(
20261        tree_view: *mut GtkTreeView,
20262        grid_lines: GtkTreeViewGridLines,
20263    );
20264    pub fn gtk_tree_view_set_headers_clickable(tree_view: *mut GtkTreeView, setting: gboolean);
20265    pub fn gtk_tree_view_set_headers_visible(
20266        tree_view: *mut GtkTreeView,
20267        headers_visible: gboolean,
20268    );
20269    pub fn gtk_tree_view_set_hover_expand(tree_view: *mut GtkTreeView, expand: gboolean);
20270    pub fn gtk_tree_view_set_hover_selection(tree_view: *mut GtkTreeView, hover: gboolean);
20271    pub fn gtk_tree_view_set_level_indentation(tree_view: *mut GtkTreeView, indentation: c_int);
20272    pub fn gtk_tree_view_set_model(tree_view: *mut GtkTreeView, model: *mut GtkTreeModel);
20273    pub fn gtk_tree_view_set_reorderable(tree_view: *mut GtkTreeView, reorderable: gboolean);
20274    pub fn gtk_tree_view_set_row_separator_func(
20275        tree_view: *mut GtkTreeView,
20276        func: GtkTreeViewRowSeparatorFunc,
20277        data: gpointer,
20278        destroy: glib::GDestroyNotify,
20279    );
20280    pub fn gtk_tree_view_set_rubber_banding(tree_view: *mut GtkTreeView, enable: gboolean);
20281    pub fn gtk_tree_view_set_search_column(tree_view: *mut GtkTreeView, column: c_int);
20282    pub fn gtk_tree_view_set_search_entry(tree_view: *mut GtkTreeView, entry: *mut GtkEditable);
20283    pub fn gtk_tree_view_set_search_equal_func(
20284        tree_view: *mut GtkTreeView,
20285        search_equal_func: GtkTreeViewSearchEqualFunc,
20286        search_user_data: gpointer,
20287        search_destroy: glib::GDestroyNotify,
20288    );
20289    pub fn gtk_tree_view_set_show_expanders(tree_view: *mut GtkTreeView, enabled: gboolean);
20290    pub fn gtk_tree_view_set_tooltip_cell(
20291        tree_view: *mut GtkTreeView,
20292        tooltip: *mut GtkTooltip,
20293        path: *mut GtkTreePath,
20294        column: *mut GtkTreeViewColumn,
20295        cell: *mut GtkCellRenderer,
20296    );
20297    pub fn gtk_tree_view_set_tooltip_column(tree_view: *mut GtkTreeView, column: c_int);
20298    pub fn gtk_tree_view_set_tooltip_row(
20299        tree_view: *mut GtkTreeView,
20300        tooltip: *mut GtkTooltip,
20301        path: *mut GtkTreePath,
20302    );
20303    pub fn gtk_tree_view_unset_rows_drag_dest(tree_view: *mut GtkTreeView);
20304    pub fn gtk_tree_view_unset_rows_drag_source(tree_view: *mut GtkTreeView);
20305
20306    //=========================================================================
20307    // GtkTreeViewColumn
20308    //=========================================================================
20309    pub fn gtk_tree_view_column_get_type() -> GType;
20310    pub fn gtk_tree_view_column_new() -> *mut GtkTreeViewColumn;
20311    pub fn gtk_tree_view_column_new_with_area(area: *mut GtkCellArea) -> *mut GtkTreeViewColumn;
20312    pub fn gtk_tree_view_column_new_with_attributes(
20313        title: *const c_char,
20314        cell: *mut GtkCellRenderer,
20315        ...
20316    ) -> *mut GtkTreeViewColumn;
20317    pub fn gtk_tree_view_column_add_attribute(
20318        tree_column: *mut GtkTreeViewColumn,
20319        cell_renderer: *mut GtkCellRenderer,
20320        attribute: *const c_char,
20321        column: c_int,
20322    );
20323    pub fn gtk_tree_view_column_cell_get_position(
20324        tree_column: *mut GtkTreeViewColumn,
20325        cell_renderer: *mut GtkCellRenderer,
20326        x_offset: *mut c_int,
20327        width: *mut c_int,
20328    ) -> gboolean;
20329    pub fn gtk_tree_view_column_cell_get_size(
20330        tree_column: *mut GtkTreeViewColumn,
20331        x_offset: *mut c_int,
20332        y_offset: *mut c_int,
20333        width: *mut c_int,
20334        height: *mut c_int,
20335    );
20336    pub fn gtk_tree_view_column_cell_is_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20337    pub fn gtk_tree_view_column_cell_set_cell_data(
20338        tree_column: *mut GtkTreeViewColumn,
20339        tree_model: *mut GtkTreeModel,
20340        iter: *mut GtkTreeIter,
20341        is_expander: gboolean,
20342        is_expanded: gboolean,
20343    );
20344    pub fn gtk_tree_view_column_clear(tree_column: *mut GtkTreeViewColumn);
20345    pub fn gtk_tree_view_column_clear_attributes(
20346        tree_column: *mut GtkTreeViewColumn,
20347        cell_renderer: *mut GtkCellRenderer,
20348    );
20349    pub fn gtk_tree_view_column_clicked(tree_column: *mut GtkTreeViewColumn);
20350    pub fn gtk_tree_view_column_focus_cell(
20351        tree_column: *mut GtkTreeViewColumn,
20352        cell: *mut GtkCellRenderer,
20353    );
20354    pub fn gtk_tree_view_column_get_alignment(tree_column: *mut GtkTreeViewColumn) -> c_float;
20355    pub fn gtk_tree_view_column_get_button(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
20356    pub fn gtk_tree_view_column_get_clickable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20357    pub fn gtk_tree_view_column_get_expand(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20358    pub fn gtk_tree_view_column_get_fixed_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20359    pub fn gtk_tree_view_column_get_max_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20360    pub fn gtk_tree_view_column_get_min_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20361    pub fn gtk_tree_view_column_get_reorderable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20362    pub fn gtk_tree_view_column_get_resizable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20363    pub fn gtk_tree_view_column_get_sizing(
20364        tree_column: *mut GtkTreeViewColumn,
20365    ) -> GtkTreeViewColumnSizing;
20366    pub fn gtk_tree_view_column_get_sort_column_id(tree_column: *mut GtkTreeViewColumn) -> c_int;
20367    pub fn gtk_tree_view_column_get_sort_indicator(tree_column: *mut GtkTreeViewColumn)
20368        -> gboolean;
20369    pub fn gtk_tree_view_column_get_sort_order(tree_column: *mut GtkTreeViewColumn) -> GtkSortType;
20370    pub fn gtk_tree_view_column_get_spacing(tree_column: *mut GtkTreeViewColumn) -> c_int;
20371    pub fn gtk_tree_view_column_get_title(tree_column: *mut GtkTreeViewColumn) -> *const c_char;
20372    pub fn gtk_tree_view_column_get_tree_view(
20373        tree_column: *mut GtkTreeViewColumn,
20374    ) -> *mut GtkWidget;
20375    pub fn gtk_tree_view_column_get_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20376    pub fn gtk_tree_view_column_get_widget(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
20377    pub fn gtk_tree_view_column_get_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20378    pub fn gtk_tree_view_column_get_x_offset(tree_column: *mut GtkTreeViewColumn) -> c_int;
20379    pub fn gtk_tree_view_column_pack_end(
20380        tree_column: *mut GtkTreeViewColumn,
20381        cell: *mut GtkCellRenderer,
20382        expand: gboolean,
20383    );
20384    pub fn gtk_tree_view_column_pack_start(
20385        tree_column: *mut GtkTreeViewColumn,
20386        cell: *mut GtkCellRenderer,
20387        expand: gboolean,
20388    );
20389    pub fn gtk_tree_view_column_queue_resize(tree_column: *mut GtkTreeViewColumn);
20390    pub fn gtk_tree_view_column_set_alignment(tree_column: *mut GtkTreeViewColumn, xalign: c_float);
20391    pub fn gtk_tree_view_column_set_attributes(
20392        tree_column: *mut GtkTreeViewColumn,
20393        cell_renderer: *mut GtkCellRenderer,
20394        ...
20395    );
20396    pub fn gtk_tree_view_column_set_cell_data_func(
20397        tree_column: *mut GtkTreeViewColumn,
20398        cell_renderer: *mut GtkCellRenderer,
20399        func: GtkTreeCellDataFunc,
20400        func_data: gpointer,
20401        destroy: glib::GDestroyNotify,
20402    );
20403    pub fn gtk_tree_view_column_set_clickable(
20404        tree_column: *mut GtkTreeViewColumn,
20405        clickable: gboolean,
20406    );
20407    pub fn gtk_tree_view_column_set_expand(tree_column: *mut GtkTreeViewColumn, expand: gboolean);
20408    pub fn gtk_tree_view_column_set_fixed_width(
20409        tree_column: *mut GtkTreeViewColumn,
20410        fixed_width: c_int,
20411    );
20412    pub fn gtk_tree_view_column_set_max_width(
20413        tree_column: *mut GtkTreeViewColumn,
20414        max_width: c_int,
20415    );
20416    pub fn gtk_tree_view_column_set_min_width(
20417        tree_column: *mut GtkTreeViewColumn,
20418        min_width: c_int,
20419    );
20420    pub fn gtk_tree_view_column_set_reorderable(
20421        tree_column: *mut GtkTreeViewColumn,
20422        reorderable: gboolean,
20423    );
20424    pub fn gtk_tree_view_column_set_resizable(
20425        tree_column: *mut GtkTreeViewColumn,
20426        resizable: gboolean,
20427    );
20428    pub fn gtk_tree_view_column_set_sizing(
20429        tree_column: *mut GtkTreeViewColumn,
20430        type_: GtkTreeViewColumnSizing,
20431    );
20432    pub fn gtk_tree_view_column_set_sort_column_id(
20433        tree_column: *mut GtkTreeViewColumn,
20434        sort_column_id: c_int,
20435    );
20436    pub fn gtk_tree_view_column_set_sort_indicator(
20437        tree_column: *mut GtkTreeViewColumn,
20438        setting: gboolean,
20439    );
20440    pub fn gtk_tree_view_column_set_sort_order(
20441        tree_column: *mut GtkTreeViewColumn,
20442        order: GtkSortType,
20443    );
20444    pub fn gtk_tree_view_column_set_spacing(tree_column: *mut GtkTreeViewColumn, spacing: c_int);
20445    pub fn gtk_tree_view_column_set_title(
20446        tree_column: *mut GtkTreeViewColumn,
20447        title: *const c_char,
20448    );
20449    pub fn gtk_tree_view_column_set_visible(tree_column: *mut GtkTreeViewColumn, visible: gboolean);
20450    pub fn gtk_tree_view_column_set_widget(
20451        tree_column: *mut GtkTreeViewColumn,
20452        widget: *mut GtkWidget,
20453    );
20454
20455    //=========================================================================
20456    // GtkUriLauncher
20457    //=========================================================================
20458    #[cfg(feature = "v4_10")]
20459    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20460    pub fn gtk_uri_launcher_get_type() -> GType;
20461    #[cfg(feature = "v4_10")]
20462    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20463    pub fn gtk_uri_launcher_new(uri: *const c_char) -> *mut GtkUriLauncher;
20464    #[cfg(feature = "v4_20")]
20465    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20466    pub fn gtk_uri_launcher_can_launch(
20467        self_: *mut GtkUriLauncher,
20468        parent: *mut GtkWindow,
20469    ) -> gboolean;
20470    #[cfg(feature = "v4_10")]
20471    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20472    pub fn gtk_uri_launcher_get_uri(self_: *mut GtkUriLauncher) -> *const c_char;
20473    #[cfg(feature = "v4_10")]
20474    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20475    pub fn gtk_uri_launcher_launch(
20476        self_: *mut GtkUriLauncher,
20477        parent: *mut GtkWindow,
20478        cancellable: *mut gio::GCancellable,
20479        callback: gio::GAsyncReadyCallback,
20480        user_data: gpointer,
20481    );
20482    #[cfg(feature = "v4_10")]
20483    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20484    pub fn gtk_uri_launcher_launch_finish(
20485        self_: *mut GtkUriLauncher,
20486        result: *mut gio::GAsyncResult,
20487        error: *mut *mut glib::GError,
20488    ) -> gboolean;
20489    #[cfg(feature = "v4_10")]
20490    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20491    pub fn gtk_uri_launcher_set_uri(self_: *mut GtkUriLauncher, uri: *const c_char);
20492
20493    //=========================================================================
20494    // GtkVideo
20495    //=========================================================================
20496    pub fn gtk_video_get_type() -> GType;
20497    pub fn gtk_video_new() -> *mut GtkWidget;
20498    pub fn gtk_video_new_for_file(file: *mut gio::GFile) -> *mut GtkWidget;
20499    pub fn gtk_video_new_for_filename(filename: *const c_char) -> *mut GtkWidget;
20500    pub fn gtk_video_new_for_media_stream(stream: *mut GtkMediaStream) -> *mut GtkWidget;
20501    pub fn gtk_video_new_for_resource(resource_path: *const c_char) -> *mut GtkWidget;
20502    pub fn gtk_video_get_autoplay(self_: *mut GtkVideo) -> gboolean;
20503    pub fn gtk_video_get_file(self_: *mut GtkVideo) -> *mut gio::GFile;
20504    #[cfg(feature = "v4_14")]
20505    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20506    pub fn gtk_video_get_graphics_offload(self_: *mut GtkVideo) -> GtkGraphicsOffloadEnabled;
20507    pub fn gtk_video_get_loop(self_: *mut GtkVideo) -> gboolean;
20508    pub fn gtk_video_get_media_stream(self_: *mut GtkVideo) -> *mut GtkMediaStream;
20509    pub fn gtk_video_set_autoplay(self_: *mut GtkVideo, autoplay: gboolean);
20510    pub fn gtk_video_set_file(self_: *mut GtkVideo, file: *mut gio::GFile);
20511    pub fn gtk_video_set_filename(self_: *mut GtkVideo, filename: *const c_char);
20512    #[cfg(feature = "v4_14")]
20513    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20514    pub fn gtk_video_set_graphics_offload(self_: *mut GtkVideo, enabled: GtkGraphicsOffloadEnabled);
20515    pub fn gtk_video_set_loop(self_: *mut GtkVideo, loop_: gboolean);
20516    pub fn gtk_video_set_media_stream(self_: *mut GtkVideo, stream: *mut GtkMediaStream);
20517    pub fn gtk_video_set_resource(self_: *mut GtkVideo, resource_path: *const c_char);
20518
20519    //=========================================================================
20520    // GtkViewport
20521    //=========================================================================
20522    pub fn gtk_viewport_get_type() -> GType;
20523    pub fn gtk_viewport_new(
20524        hadjustment: *mut GtkAdjustment,
20525        vadjustment: *mut GtkAdjustment,
20526    ) -> *mut GtkWidget;
20527    pub fn gtk_viewport_get_child(viewport: *mut GtkViewport) -> *mut GtkWidget;
20528    pub fn gtk_viewport_get_scroll_to_focus(viewport: *mut GtkViewport) -> gboolean;
20529    #[cfg(feature = "v4_12")]
20530    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20531    pub fn gtk_viewport_scroll_to(
20532        viewport: *mut GtkViewport,
20533        descendant: *mut GtkWidget,
20534        scroll: *mut GtkScrollInfo,
20535    );
20536    pub fn gtk_viewport_set_child(viewport: *mut GtkViewport, child: *mut GtkWidget);
20537    pub fn gtk_viewport_set_scroll_to_focus(viewport: *mut GtkViewport, scroll_to_focus: gboolean);
20538
20539    //=========================================================================
20540    // GtkVolumeButton
20541    //=========================================================================
20542    pub fn gtk_volume_button_get_type() -> GType;
20543    pub fn gtk_volume_button_new() -> *mut GtkWidget;
20544
20545    //=========================================================================
20546    // GtkWidget
20547    //=========================================================================
20548    pub fn gtk_widget_get_type() -> GType;
20549    pub fn gtk_widget_get_default_direction() -> GtkTextDirection;
20550    pub fn gtk_widget_set_default_direction(dir: GtkTextDirection);
20551    pub fn gtk_widget_action_set_enabled(
20552        widget: *mut GtkWidget,
20553        action_name: *const c_char,
20554        enabled: gboolean,
20555    );
20556    pub fn gtk_widget_activate(widget: *mut GtkWidget) -> gboolean;
20557    pub fn gtk_widget_activate_action(
20558        widget: *mut GtkWidget,
20559        name: *const c_char,
20560        format_string: *const c_char,
20561        ...
20562    ) -> gboolean;
20563    pub fn gtk_widget_activate_action_variant(
20564        widget: *mut GtkWidget,
20565        name: *const c_char,
20566        args: *mut glib::GVariant,
20567    ) -> gboolean;
20568    pub fn gtk_widget_activate_default(widget: *mut GtkWidget);
20569    pub fn gtk_widget_add_controller(widget: *mut GtkWidget, controller: *mut GtkEventController);
20570    pub fn gtk_widget_add_css_class(widget: *mut GtkWidget, css_class: *const c_char);
20571    pub fn gtk_widget_add_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
20572    pub fn gtk_widget_add_tick_callback(
20573        widget: *mut GtkWidget,
20574        callback: GtkTickCallback,
20575        user_data: gpointer,
20576        notify: glib::GDestroyNotify,
20577    ) -> c_uint;
20578    pub fn gtk_widget_allocate(
20579        widget: *mut GtkWidget,
20580        width: c_int,
20581        height: c_int,
20582        baseline: c_int,
20583        transform: *mut gsk::GskTransform,
20584    );
20585    pub fn gtk_widget_child_focus(widget: *mut GtkWidget, direction: GtkDirectionType) -> gboolean;
20586    pub fn gtk_widget_compute_bounds(
20587        widget: *mut GtkWidget,
20588        target: *mut GtkWidget,
20589        out_bounds: *mut graphene::graphene_rect_t,
20590    ) -> gboolean;
20591    pub fn gtk_widget_compute_expand(
20592        widget: *mut GtkWidget,
20593        orientation: GtkOrientation,
20594    ) -> gboolean;
20595    pub fn gtk_widget_compute_point(
20596        widget: *mut GtkWidget,
20597        target: *mut GtkWidget,
20598        point: *const graphene::graphene_point_t,
20599        out_point: *mut graphene::graphene_point_t,
20600    ) -> gboolean;
20601    pub fn gtk_widget_compute_transform(
20602        widget: *mut GtkWidget,
20603        target: *mut GtkWidget,
20604        out_transform: *mut graphene::graphene_matrix_t,
20605    ) -> gboolean;
20606    pub fn gtk_widget_contains(widget: *mut GtkWidget, x: c_double, y: c_double) -> gboolean;
20607    pub fn gtk_widget_create_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
20608    pub fn gtk_widget_create_pango_layout(
20609        widget: *mut GtkWidget,
20610        text: *const c_char,
20611    ) -> *mut pango::PangoLayout;
20612    #[cfg(feature = "v4_8")]
20613    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
20614    pub fn gtk_widget_dispose_template(widget: *mut GtkWidget, widget_type: GType);
20615    pub fn gtk_drag_check_threshold(
20616        widget: *mut GtkWidget,
20617        start_x: c_int,
20618        start_y: c_int,
20619        current_x: c_int,
20620        current_y: c_int,
20621    ) -> gboolean;
20622    pub fn gtk_widget_error_bell(widget: *mut GtkWidget);
20623    pub fn gtk_widget_get_allocated_baseline(widget: *mut GtkWidget) -> c_int;
20624    pub fn gtk_widget_get_allocated_height(widget: *mut GtkWidget) -> c_int;
20625    pub fn gtk_widget_get_allocated_width(widget: *mut GtkWidget) -> c_int;
20626    pub fn gtk_widget_get_allocation(widget: *mut GtkWidget, allocation: *mut GtkAllocation);
20627    pub fn gtk_widget_get_ancestor(widget: *mut GtkWidget, widget_type: GType) -> *mut GtkWidget;
20628    #[cfg(feature = "v4_12")]
20629    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20630    pub fn gtk_widget_get_baseline(widget: *mut GtkWidget) -> c_int;
20631    pub fn gtk_widget_get_can_focus(widget: *mut GtkWidget) -> gboolean;
20632    pub fn gtk_widget_get_can_target(widget: *mut GtkWidget) -> gboolean;
20633    pub fn gtk_widget_get_child_visible(widget: *mut GtkWidget) -> gboolean;
20634    pub fn gtk_widget_get_clipboard(widget: *mut GtkWidget) -> *mut gdk::GdkClipboard;
20635    #[cfg(feature = "v4_10")]
20636    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20637    pub fn gtk_widget_get_color(widget: *mut GtkWidget, color: *mut gdk::GdkRGBA);
20638    pub fn gtk_widget_get_css_classes(widget: *mut GtkWidget) -> *mut *mut c_char;
20639    pub fn gtk_widget_get_css_name(self_: *mut GtkWidget) -> *const c_char;
20640    pub fn gtk_widget_get_cursor(widget: *mut GtkWidget) -> *mut gdk::GdkCursor;
20641    pub fn gtk_widget_get_direction(widget: *mut GtkWidget) -> GtkTextDirection;
20642    pub fn gtk_widget_get_display(widget: *mut GtkWidget) -> *mut gdk::GdkDisplay;
20643    pub fn gtk_widget_get_first_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20644    pub fn gtk_widget_get_focus_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20645    pub fn gtk_widget_get_focus_on_click(widget: *mut GtkWidget) -> gboolean;
20646    pub fn gtk_widget_get_focusable(widget: *mut GtkWidget) -> gboolean;
20647    pub fn gtk_widget_get_font_map(widget: *mut GtkWidget) -> *mut pango::PangoFontMap;
20648    pub fn gtk_widget_get_font_options(
20649        widget: *mut GtkWidget,
20650    ) -> *const cairo::cairo_font_options_t;
20651    pub fn gtk_widget_get_frame_clock(widget: *mut GtkWidget) -> *mut gdk::GdkFrameClock;
20652    pub fn gtk_widget_get_halign(widget: *mut GtkWidget) -> GtkAlign;
20653    pub fn gtk_widget_get_has_tooltip(widget: *mut GtkWidget) -> gboolean;
20654    pub fn gtk_widget_get_height(widget: *mut GtkWidget) -> c_int;
20655    pub fn gtk_widget_get_hexpand(widget: *mut GtkWidget) -> gboolean;
20656    pub fn gtk_widget_get_hexpand_set(widget: *mut GtkWidget) -> gboolean;
20657    pub fn gtk_widget_get_last_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20658    pub fn gtk_widget_get_layout_manager(widget: *mut GtkWidget) -> *mut GtkLayoutManager;
20659    #[cfg(feature = "v4_18")]
20660    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20661    pub fn gtk_widget_get_limit_events(widget: *mut GtkWidget) -> gboolean;
20662    pub fn gtk_widget_get_mapped(widget: *mut GtkWidget) -> gboolean;
20663    pub fn gtk_widget_get_margin_bottom(widget: *mut GtkWidget) -> c_int;
20664    pub fn gtk_widget_get_margin_end(widget: *mut GtkWidget) -> c_int;
20665    pub fn gtk_widget_get_margin_start(widget: *mut GtkWidget) -> c_int;
20666    pub fn gtk_widget_get_margin_top(widget: *mut GtkWidget) -> c_int;
20667    pub fn gtk_widget_get_name(widget: *mut GtkWidget) -> *const c_char;
20668    pub fn gtk_widget_get_native(widget: *mut GtkWidget) -> *mut GtkNative;
20669    pub fn gtk_widget_get_next_sibling(widget: *mut GtkWidget) -> *mut GtkWidget;
20670    pub fn gtk_widget_get_opacity(widget: *mut GtkWidget) -> c_double;
20671    pub fn gtk_widget_get_overflow(widget: *mut GtkWidget) -> GtkOverflow;
20672    pub fn gtk_widget_get_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
20673    pub fn gtk_widget_get_parent(widget: *mut GtkWidget) -> *mut GtkWidget;
20674    pub fn gtk_widget_get_preferred_size(
20675        widget: *mut GtkWidget,
20676        minimum_size: *mut GtkRequisition,
20677        natural_size: *mut GtkRequisition,
20678    );
20679    pub fn gtk_widget_get_prev_sibling(widget: *mut GtkWidget) -> *mut GtkWidget;
20680    pub fn gtk_widget_get_primary_clipboard(widget: *mut GtkWidget) -> *mut gdk::GdkClipboard;
20681    pub fn gtk_widget_get_realized(widget: *mut GtkWidget) -> gboolean;
20682    pub fn gtk_widget_get_receives_default(widget: *mut GtkWidget) -> gboolean;
20683    pub fn gtk_widget_get_request_mode(widget: *mut GtkWidget) -> GtkSizeRequestMode;
20684    pub fn gtk_widget_get_root(widget: *mut GtkWidget) -> *mut GtkRoot;
20685    pub fn gtk_widget_get_scale_factor(widget: *mut GtkWidget) -> c_int;
20686    pub fn gtk_widget_get_sensitive(widget: *mut GtkWidget) -> gboolean;
20687    pub fn gtk_widget_get_settings(widget: *mut GtkWidget) -> *mut GtkSettings;
20688    pub fn gtk_widget_get_size(widget: *mut GtkWidget, orientation: GtkOrientation) -> c_int;
20689    pub fn gtk_widget_get_size_request(
20690        widget: *mut GtkWidget,
20691        width: *mut c_int,
20692        height: *mut c_int,
20693    );
20694    pub fn gtk_widget_get_state_flags(widget: *mut GtkWidget) -> GtkStateFlags;
20695    pub fn gtk_widget_get_style_context(widget: *mut GtkWidget) -> *mut GtkStyleContext;
20696    pub fn gtk_widget_get_template_child(
20697        widget: *mut GtkWidget,
20698        widget_type: GType,
20699        name: *const c_char,
20700    ) -> *mut gobject::GObject;
20701    pub fn gtk_widget_get_tooltip_markup(widget: *mut GtkWidget) -> *const c_char;
20702    pub fn gtk_widget_get_tooltip_text(widget: *mut GtkWidget) -> *const c_char;
20703    pub fn gtk_widget_get_valign(widget: *mut GtkWidget) -> GtkAlign;
20704    pub fn gtk_widget_get_vexpand(widget: *mut GtkWidget) -> gboolean;
20705    pub fn gtk_widget_get_vexpand_set(widget: *mut GtkWidget) -> gboolean;
20706    pub fn gtk_widget_get_visible(widget: *mut GtkWidget) -> gboolean;
20707    pub fn gtk_widget_get_width(widget: *mut GtkWidget) -> c_int;
20708    pub fn gtk_widget_grab_focus(widget: *mut GtkWidget) -> gboolean;
20709    pub fn gtk_widget_has_css_class(widget: *mut GtkWidget, css_class: *const c_char) -> gboolean;
20710    pub fn gtk_widget_has_default(widget: *mut GtkWidget) -> gboolean;
20711    pub fn gtk_widget_has_focus(widget: *mut GtkWidget) -> gboolean;
20712    pub fn gtk_widget_has_visible_focus(widget: *mut GtkWidget) -> gboolean;
20713    pub fn gtk_widget_hide(widget: *mut GtkWidget);
20714    pub fn gtk_widget_in_destruction(widget: *mut GtkWidget) -> gboolean;
20715    pub fn gtk_widget_init_template(widget: *mut GtkWidget);
20716    pub fn gtk_widget_insert_action_group(
20717        widget: *mut GtkWidget,
20718        name: *const c_char,
20719        group: *mut gio::GActionGroup,
20720    );
20721    pub fn gtk_widget_insert_after(
20722        widget: *mut GtkWidget,
20723        parent: *mut GtkWidget,
20724        previous_sibling: *mut GtkWidget,
20725    );
20726    pub fn gtk_widget_insert_before(
20727        widget: *mut GtkWidget,
20728        parent: *mut GtkWidget,
20729        next_sibling: *mut GtkWidget,
20730    );
20731    pub fn gtk_widget_is_ancestor(widget: *mut GtkWidget, ancestor: *mut GtkWidget) -> gboolean;
20732    pub fn gtk_widget_is_drawable(widget: *mut GtkWidget) -> gboolean;
20733    pub fn gtk_widget_is_focus(widget: *mut GtkWidget) -> gboolean;
20734    pub fn gtk_widget_is_sensitive(widget: *mut GtkWidget) -> gboolean;
20735    pub fn gtk_widget_is_visible(widget: *mut GtkWidget) -> gboolean;
20736    pub fn gtk_widget_keynav_failed(
20737        widget: *mut GtkWidget,
20738        direction: GtkDirectionType,
20739    ) -> gboolean;
20740    pub fn gtk_widget_list_mnemonic_labels(widget: *mut GtkWidget) -> *mut glib::GList;
20741    pub fn gtk_widget_map(widget: *mut GtkWidget);
20742    pub fn gtk_widget_measure(
20743        widget: *mut GtkWidget,
20744        orientation: GtkOrientation,
20745        for_size: c_int,
20746        minimum: *mut c_int,
20747        natural: *mut c_int,
20748        minimum_baseline: *mut c_int,
20749        natural_baseline: *mut c_int,
20750    );
20751    pub fn gtk_widget_mnemonic_activate(
20752        widget: *mut GtkWidget,
20753        group_cycling: gboolean,
20754    ) -> gboolean;
20755    pub fn gtk_widget_observe_children(widget: *mut GtkWidget) -> *mut gio::GListModel;
20756    pub fn gtk_widget_observe_controllers(widget: *mut GtkWidget) -> *mut gio::GListModel;
20757    pub fn gtk_widget_pick(
20758        widget: *mut GtkWidget,
20759        x: c_double,
20760        y: c_double,
20761        flags: GtkPickFlags,
20762    ) -> *mut GtkWidget;
20763    pub fn gtk_widget_queue_allocate(widget: *mut GtkWidget);
20764    pub fn gtk_widget_queue_draw(widget: *mut GtkWidget);
20765    pub fn gtk_widget_queue_resize(widget: *mut GtkWidget);
20766    pub fn gtk_widget_realize(widget: *mut GtkWidget);
20767    pub fn gtk_widget_remove_controller(
20768        widget: *mut GtkWidget,
20769        controller: *mut GtkEventController,
20770    );
20771    pub fn gtk_widget_remove_css_class(widget: *mut GtkWidget, css_class: *const c_char);
20772    pub fn gtk_widget_remove_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
20773    pub fn gtk_widget_remove_tick_callback(widget: *mut GtkWidget, id: c_uint);
20774    pub fn gtk_widget_set_can_focus(widget: *mut GtkWidget, can_focus: gboolean);
20775    pub fn gtk_widget_set_can_target(widget: *mut GtkWidget, can_target: gboolean);
20776    pub fn gtk_widget_set_child_visible(widget: *mut GtkWidget, child_visible: gboolean);
20777    pub fn gtk_widget_set_css_classes(widget: *mut GtkWidget, classes: *mut *const c_char);
20778    pub fn gtk_widget_set_cursor(widget: *mut GtkWidget, cursor: *mut gdk::GdkCursor);
20779    pub fn gtk_widget_set_cursor_from_name(widget: *mut GtkWidget, name: *const c_char);
20780    pub fn gtk_widget_set_direction(widget: *mut GtkWidget, dir: GtkTextDirection);
20781    pub fn gtk_widget_set_focus_child(widget: *mut GtkWidget, child: *mut GtkWidget);
20782    pub fn gtk_widget_set_focus_on_click(widget: *mut GtkWidget, focus_on_click: gboolean);
20783    pub fn gtk_widget_set_focusable(widget: *mut GtkWidget, focusable: gboolean);
20784    pub fn gtk_widget_set_font_map(widget: *mut GtkWidget, font_map: *mut pango::PangoFontMap);
20785    pub fn gtk_widget_set_font_options(
20786        widget: *mut GtkWidget,
20787        options: *const cairo::cairo_font_options_t,
20788    );
20789    pub fn gtk_widget_set_halign(widget: *mut GtkWidget, align: GtkAlign);
20790    pub fn gtk_widget_set_has_tooltip(widget: *mut GtkWidget, has_tooltip: gboolean);
20791    pub fn gtk_widget_set_hexpand(widget: *mut GtkWidget, expand: gboolean);
20792    pub fn gtk_widget_set_hexpand_set(widget: *mut GtkWidget, set: gboolean);
20793    pub fn gtk_widget_set_layout_manager(
20794        widget: *mut GtkWidget,
20795        layout_manager: *mut GtkLayoutManager,
20796    );
20797    #[cfg(feature = "v4_18")]
20798    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20799    pub fn gtk_widget_set_limit_events(widget: *mut GtkWidget, limit_events: gboolean);
20800    pub fn gtk_widget_set_margin_bottom(widget: *mut GtkWidget, margin: c_int);
20801    pub fn gtk_widget_set_margin_end(widget: *mut GtkWidget, margin: c_int);
20802    pub fn gtk_widget_set_margin_start(widget: *mut GtkWidget, margin: c_int);
20803    pub fn gtk_widget_set_margin_top(widget: *mut GtkWidget, margin: c_int);
20804    pub fn gtk_widget_set_name(widget: *mut GtkWidget, name: *const c_char);
20805    pub fn gtk_widget_set_opacity(widget: *mut GtkWidget, opacity: c_double);
20806    pub fn gtk_widget_set_overflow(widget: *mut GtkWidget, overflow: GtkOverflow);
20807    pub fn gtk_widget_set_parent(widget: *mut GtkWidget, parent: *mut GtkWidget);
20808    pub fn gtk_widget_set_receives_default(widget: *mut GtkWidget, receives_default: gboolean);
20809    pub fn gtk_widget_set_sensitive(widget: *mut GtkWidget, sensitive: gboolean);
20810    pub fn gtk_widget_set_size_request(widget: *mut GtkWidget, width: c_int, height: c_int);
20811    pub fn gtk_widget_set_state_flags(
20812        widget: *mut GtkWidget,
20813        flags: GtkStateFlags,
20814        clear: gboolean,
20815    );
20816    pub fn gtk_widget_set_tooltip_markup(widget: *mut GtkWidget, markup: *const c_char);
20817    pub fn gtk_widget_set_tooltip_text(widget: *mut GtkWidget, text: *const c_char);
20818    pub fn gtk_widget_set_valign(widget: *mut GtkWidget, align: GtkAlign);
20819    pub fn gtk_widget_set_vexpand(widget: *mut GtkWidget, expand: gboolean);
20820    pub fn gtk_widget_set_vexpand_set(widget: *mut GtkWidget, set: gboolean);
20821    pub fn gtk_widget_set_visible(widget: *mut GtkWidget, visible: gboolean);
20822    pub fn gtk_widget_should_layout(widget: *mut GtkWidget) -> gboolean;
20823    pub fn gtk_widget_show(widget: *mut GtkWidget);
20824    pub fn gtk_widget_size_allocate(
20825        widget: *mut GtkWidget,
20826        allocation: *const GtkAllocation,
20827        baseline: c_int,
20828    );
20829    pub fn gtk_widget_snapshot_child(
20830        widget: *mut GtkWidget,
20831        child: *mut GtkWidget,
20832        snapshot: *mut GtkSnapshot,
20833    );
20834    pub fn gtk_widget_translate_coordinates(
20835        src_widget: *mut GtkWidget,
20836        dest_widget: *mut GtkWidget,
20837        src_x: c_double,
20838        src_y: c_double,
20839        dest_x: *mut c_double,
20840        dest_y: *mut c_double,
20841    ) -> gboolean;
20842    pub fn gtk_widget_trigger_tooltip_query(widget: *mut GtkWidget);
20843    pub fn gtk_widget_unmap(widget: *mut GtkWidget);
20844    pub fn gtk_widget_unparent(widget: *mut GtkWidget);
20845    pub fn gtk_widget_unrealize(widget: *mut GtkWidget);
20846    pub fn gtk_widget_unset_state_flags(widget: *mut GtkWidget, flags: GtkStateFlags);
20847
20848    //=========================================================================
20849    // GtkWidgetPaintable
20850    //=========================================================================
20851    pub fn gtk_widget_paintable_get_type() -> GType;
20852    pub fn gtk_widget_paintable_new(widget: *mut GtkWidget) -> *mut GtkWidgetPaintable;
20853    pub fn gtk_widget_paintable_get_widget(self_: *mut GtkWidgetPaintable) -> *mut GtkWidget;
20854    pub fn gtk_widget_paintable_set_widget(self_: *mut GtkWidgetPaintable, widget: *mut GtkWidget);
20855
20856    //=========================================================================
20857    // GtkWindow
20858    //=========================================================================
20859    pub fn gtk_window_get_type() -> GType;
20860    pub fn gtk_window_new() -> *mut GtkWidget;
20861    pub fn gtk_window_get_default_icon_name() -> *const c_char;
20862    pub fn gtk_window_get_toplevels() -> *mut gio::GListModel;
20863    pub fn gtk_window_list_toplevels() -> *mut glib::GList;
20864    pub fn gtk_window_set_auto_startup_notification(setting: gboolean);
20865    pub fn gtk_window_set_default_icon_name(name: *const c_char);
20866    pub fn gtk_window_set_interactive_debugging(enable: gboolean);
20867    pub fn gtk_window_close(window: *mut GtkWindow);
20868    pub fn gtk_window_destroy(window: *mut GtkWindow);
20869    pub fn gtk_window_fullscreen(window: *mut GtkWindow);
20870    pub fn gtk_window_fullscreen_on_monitor(window: *mut GtkWindow, monitor: *mut gdk::GdkMonitor);
20871    pub fn gtk_window_get_application(window: *mut GtkWindow) -> *mut GtkApplication;
20872    pub fn gtk_window_get_child(window: *mut GtkWindow) -> *mut GtkWidget;
20873    pub fn gtk_window_get_decorated(window: *mut GtkWindow) -> gboolean;
20874    pub fn gtk_window_get_default_size(
20875        window: *mut GtkWindow,
20876        width: *mut c_int,
20877        height: *mut c_int,
20878    );
20879    pub fn gtk_window_get_default_widget(window: *mut GtkWindow) -> *mut GtkWidget;
20880    pub fn gtk_window_get_deletable(window: *mut GtkWindow) -> gboolean;
20881    pub fn gtk_window_get_destroy_with_parent(window: *mut GtkWindow) -> gboolean;
20882    pub fn gtk_window_get_focus(window: *mut GtkWindow) -> *mut GtkWidget;
20883    pub fn gtk_window_get_focus_visible(window: *mut GtkWindow) -> gboolean;
20884    #[cfg(feature = "v4_20")]
20885    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20886    pub fn gtk_window_get_gravity(window: *mut GtkWindow) -> GtkWindowGravity;
20887    pub fn gtk_window_get_group(window: *mut GtkWindow) -> *mut GtkWindowGroup;
20888    #[cfg(feature = "v4_2")]
20889    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
20890    pub fn gtk_window_get_handle_menubar_accel(window: *mut GtkWindow) -> gboolean;
20891    pub fn gtk_window_get_hide_on_close(window: *mut GtkWindow) -> gboolean;
20892    pub fn gtk_window_get_icon_name(window: *mut GtkWindow) -> *const c_char;
20893    pub fn gtk_window_get_mnemonics_visible(window: *mut GtkWindow) -> gboolean;
20894    pub fn gtk_window_get_modal(window: *mut GtkWindow) -> gboolean;
20895    pub fn gtk_window_get_resizable(window: *mut GtkWindow) -> gboolean;
20896    pub fn gtk_window_get_title(window: *mut GtkWindow) -> *const c_char;
20897    pub fn gtk_window_get_titlebar(window: *mut GtkWindow) -> *mut GtkWidget;
20898    pub fn gtk_window_get_transient_for(window: *mut GtkWindow) -> *mut GtkWindow;
20899    pub fn gtk_window_has_group(window: *mut GtkWindow) -> gboolean;
20900    pub fn gtk_window_is_active(window: *mut GtkWindow) -> gboolean;
20901    pub fn gtk_window_is_fullscreen(window: *mut GtkWindow) -> gboolean;
20902    pub fn gtk_window_is_maximized(window: *mut GtkWindow) -> gboolean;
20903    #[cfg(feature = "v4_12")]
20904    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20905    pub fn gtk_window_is_suspended(window: *mut GtkWindow) -> gboolean;
20906    pub fn gtk_window_maximize(window: *mut GtkWindow);
20907    pub fn gtk_window_minimize(window: *mut GtkWindow);
20908    pub fn gtk_window_present(window: *mut GtkWindow);
20909    pub fn gtk_window_present_with_time(window: *mut GtkWindow, timestamp: u32);
20910    pub fn gtk_window_set_application(window: *mut GtkWindow, application: *mut GtkApplication);
20911    pub fn gtk_window_set_child(window: *mut GtkWindow, child: *mut GtkWidget);
20912    pub fn gtk_window_set_decorated(window: *mut GtkWindow, setting: gboolean);
20913    pub fn gtk_window_set_default_size(window: *mut GtkWindow, width: c_int, height: c_int);
20914    pub fn gtk_window_set_default_widget(window: *mut GtkWindow, default_widget: *mut GtkWidget);
20915    pub fn gtk_window_set_deletable(window: *mut GtkWindow, setting: gboolean);
20916    pub fn gtk_window_set_destroy_with_parent(window: *mut GtkWindow, setting: gboolean);
20917    pub fn gtk_window_set_display(window: *mut GtkWindow, display: *mut gdk::GdkDisplay);
20918    pub fn gtk_window_set_focus(window: *mut GtkWindow, focus: *mut GtkWidget);
20919    pub fn gtk_window_set_focus_visible(window: *mut GtkWindow, setting: gboolean);
20920    #[cfg(feature = "v4_20")]
20921    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20922    pub fn gtk_window_set_gravity(window: *mut GtkWindow, gravity: GtkWindowGravity);
20923    #[cfg(feature = "v4_2")]
20924    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
20925    pub fn gtk_window_set_handle_menubar_accel(
20926        window: *mut GtkWindow,
20927        handle_menubar_accel: gboolean,
20928    );
20929    pub fn gtk_window_set_hide_on_close(window: *mut GtkWindow, setting: gboolean);
20930    pub fn gtk_window_set_icon_name(window: *mut GtkWindow, name: *const c_char);
20931    pub fn gtk_window_set_mnemonics_visible(window: *mut GtkWindow, setting: gboolean);
20932    pub fn gtk_window_set_modal(window: *mut GtkWindow, modal: gboolean);
20933    pub fn gtk_window_set_resizable(window: *mut GtkWindow, resizable: gboolean);
20934    pub fn gtk_window_set_startup_id(window: *mut GtkWindow, startup_id: *const c_char);
20935    pub fn gtk_window_set_title(window: *mut GtkWindow, title: *const c_char);
20936    pub fn gtk_window_set_titlebar(window: *mut GtkWindow, titlebar: *mut GtkWidget);
20937    pub fn gtk_window_set_transient_for(window: *mut GtkWindow, parent: *mut GtkWindow);
20938    pub fn gtk_window_unfullscreen(window: *mut GtkWindow);
20939    pub fn gtk_window_unmaximize(window: *mut GtkWindow);
20940    pub fn gtk_window_unminimize(window: *mut GtkWindow);
20941
20942    //=========================================================================
20943    // GtkWindowControls
20944    //=========================================================================
20945    pub fn gtk_window_controls_get_type() -> GType;
20946    pub fn gtk_window_controls_new(side: GtkPackType) -> *mut GtkWidget;
20947    pub fn gtk_window_controls_get_decoration_layout(
20948        self_: *mut GtkWindowControls,
20949    ) -> *const c_char;
20950    pub fn gtk_window_controls_get_empty(self_: *mut GtkWindowControls) -> gboolean;
20951    pub fn gtk_window_controls_get_side(self_: *mut GtkWindowControls) -> GtkPackType;
20952    #[cfg(feature = "v4_18")]
20953    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20954    pub fn gtk_window_controls_get_use_native_controls(self_: *mut GtkWindowControls) -> gboolean;
20955    pub fn gtk_window_controls_set_decoration_layout(
20956        self_: *mut GtkWindowControls,
20957        layout: *const c_char,
20958    );
20959    pub fn gtk_window_controls_set_side(self_: *mut GtkWindowControls, side: GtkPackType);
20960    #[cfg(feature = "v4_18")]
20961    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20962    pub fn gtk_window_controls_set_use_native_controls(
20963        self_: *mut GtkWindowControls,
20964        setting: gboolean,
20965    );
20966
20967    //=========================================================================
20968    // GtkWindowGroup
20969    //=========================================================================
20970    pub fn gtk_window_group_get_type() -> GType;
20971    pub fn gtk_window_group_new() -> *mut GtkWindowGroup;
20972    pub fn gtk_window_group_add_window(window_group: *mut GtkWindowGroup, window: *mut GtkWindow);
20973    pub fn gtk_window_group_list_windows(window_group: *mut GtkWindowGroup) -> *mut glib::GList;
20974    pub fn gtk_window_group_remove_window(
20975        window_group: *mut GtkWindowGroup,
20976        window: *mut GtkWindow,
20977    );
20978
20979    //=========================================================================
20980    // GtkWindowHandle
20981    //=========================================================================
20982    pub fn gtk_window_handle_get_type() -> GType;
20983    pub fn gtk_window_handle_new() -> *mut GtkWidget;
20984    pub fn gtk_window_handle_get_child(self_: *mut GtkWindowHandle) -> *mut GtkWidget;
20985    pub fn gtk_window_handle_set_child(self_: *mut GtkWindowHandle, child: *mut GtkWidget);
20986
20987    //=========================================================================
20988    // GtkAccessible
20989    //=========================================================================
20990    pub fn gtk_accessible_get_type() -> GType;
20991    #[cfg(feature = "v4_14")]
20992    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20993    pub fn gtk_accessible_announce(
20994        self_: *mut GtkAccessible,
20995        message: *const c_char,
20996        priority: GtkAccessibleAnnouncementPriority,
20997    );
20998    #[cfg(feature = "v4_10")]
20999    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21000    pub fn gtk_accessible_get_accessible_parent(self_: *mut GtkAccessible) -> *mut GtkAccessible;
21001    pub fn gtk_accessible_get_accessible_role(self_: *mut GtkAccessible) -> GtkAccessibleRole;
21002    #[cfg(feature = "v4_10")]
21003    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21004    pub fn gtk_accessible_get_at_context(self_: *mut GtkAccessible) -> *mut GtkATContext;
21005    #[cfg(feature = "v4_10")]
21006    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21007    pub fn gtk_accessible_get_bounds(
21008        self_: *mut GtkAccessible,
21009        x: *mut c_int,
21010        y: *mut c_int,
21011        width: *mut c_int,
21012        height: *mut c_int,
21013    ) -> gboolean;
21014    #[cfg(feature = "v4_10")]
21015    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21016    pub fn gtk_accessible_get_first_accessible_child(
21017        self_: *mut GtkAccessible,
21018    ) -> *mut GtkAccessible;
21019    #[cfg(feature = "v4_10")]
21020    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21021    pub fn gtk_accessible_get_next_accessible_sibling(
21022        self_: *mut GtkAccessible,
21023    ) -> *mut GtkAccessible;
21024    #[cfg(feature = "v4_10")]
21025    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21026    pub fn gtk_accessible_get_platform_state(
21027        self_: *mut GtkAccessible,
21028        state: GtkAccessiblePlatformState,
21029    ) -> gboolean;
21030    pub fn gtk_accessible_reset_property(
21031        self_: *mut GtkAccessible,
21032        property: GtkAccessibleProperty,
21033    );
21034    pub fn gtk_accessible_reset_relation(
21035        self_: *mut GtkAccessible,
21036        relation: GtkAccessibleRelation,
21037    );
21038    pub fn gtk_accessible_reset_state(self_: *mut GtkAccessible, state: GtkAccessibleState);
21039    #[cfg(feature = "v4_10")]
21040    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21041    pub fn gtk_accessible_set_accessible_parent(
21042        self_: *mut GtkAccessible,
21043        parent: *mut GtkAccessible,
21044        next_sibling: *mut GtkAccessible,
21045    );
21046    #[cfg(feature = "v4_10")]
21047    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21048    pub fn gtk_accessible_update_next_accessible_sibling(
21049        self_: *mut GtkAccessible,
21050        new_sibling: *mut GtkAccessible,
21051    );
21052    #[cfg(feature = "v4_18")]
21053    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
21054    pub fn gtk_accessible_update_platform_state(
21055        self_: *mut GtkAccessible,
21056        state: GtkAccessiblePlatformState,
21057    );
21058    pub fn gtk_accessible_update_property(
21059        self_: *mut GtkAccessible,
21060        first_property: GtkAccessibleProperty,
21061        ...
21062    );
21063    pub fn gtk_accessible_update_property_value(
21064        self_: *mut GtkAccessible,
21065        n_properties: c_int,
21066        properties: *mut GtkAccessibleProperty,
21067        values: *const gobject::GValue,
21068    );
21069    pub fn gtk_accessible_update_relation(
21070        self_: *mut GtkAccessible,
21071        first_relation: GtkAccessibleRelation,
21072        ...
21073    );
21074    pub fn gtk_accessible_update_relation_value(
21075        self_: *mut GtkAccessible,
21076        n_relations: c_int,
21077        relations: *mut GtkAccessibleRelation,
21078        values: *const gobject::GValue,
21079    );
21080    pub fn gtk_accessible_update_state(
21081        self_: *mut GtkAccessible,
21082        first_state: GtkAccessibleState,
21083        ...
21084    );
21085    pub fn gtk_accessible_update_state_value(
21086        self_: *mut GtkAccessible,
21087        n_states: c_int,
21088        states: *mut GtkAccessibleState,
21089        values: *const gobject::GValue,
21090    );
21091
21092    //=========================================================================
21093    // GtkAccessibleHypertext
21094    //=========================================================================
21095    #[cfg(feature = "v4_22")]
21096    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21097    pub fn gtk_accessible_hypertext_get_type() -> GType;
21098
21099    //=========================================================================
21100    // GtkAccessibleRange
21101    //=========================================================================
21102    #[cfg(feature = "v4_10")]
21103    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21104    pub fn gtk_accessible_range_get_type() -> GType;
21105
21106    //=========================================================================
21107    // GtkAccessibleText
21108    //=========================================================================
21109    #[cfg(feature = "v4_14")]
21110    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21111    pub fn gtk_accessible_text_get_type() -> GType;
21112    #[cfg(feature = "v4_14")]
21113    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21114    pub fn gtk_accessible_text_update_caret_position(self_: *mut GtkAccessibleText);
21115    #[cfg(feature = "v4_14")]
21116    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21117    pub fn gtk_accessible_text_update_contents(
21118        self_: *mut GtkAccessibleText,
21119        change: GtkAccessibleTextContentChange,
21120        start: c_uint,
21121        end: c_uint,
21122    );
21123    #[cfg(feature = "v4_14")]
21124    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21125    pub fn gtk_accessible_text_update_selection_bound(self_: *mut GtkAccessibleText);
21126
21127    //=========================================================================
21128    // GtkActionable
21129    //=========================================================================
21130    pub fn gtk_actionable_get_type() -> GType;
21131    pub fn gtk_actionable_get_action_name(actionable: *mut GtkActionable) -> *const c_char;
21132    pub fn gtk_actionable_get_action_target_value(
21133        actionable: *mut GtkActionable,
21134    ) -> *mut glib::GVariant;
21135    pub fn gtk_actionable_set_action_name(
21136        actionable: *mut GtkActionable,
21137        action_name: *const c_char,
21138    );
21139    pub fn gtk_actionable_set_action_target(
21140        actionable: *mut GtkActionable,
21141        format_string: *const c_char,
21142        ...
21143    );
21144    pub fn gtk_actionable_set_action_target_value(
21145        actionable: *mut GtkActionable,
21146        target_value: *mut glib::GVariant,
21147    );
21148    pub fn gtk_actionable_set_detailed_action_name(
21149        actionable: *mut GtkActionable,
21150        detailed_action_name: *const c_char,
21151    );
21152
21153    //=========================================================================
21154    // GtkAppChooser
21155    //=========================================================================
21156    pub fn gtk_app_chooser_get_type() -> GType;
21157    pub fn gtk_app_chooser_get_app_info(self_: *mut GtkAppChooser) -> *mut gio::GAppInfo;
21158    pub fn gtk_app_chooser_get_content_type(self_: *mut GtkAppChooser) -> *mut c_char;
21159    pub fn gtk_app_chooser_refresh(self_: *mut GtkAppChooser);
21160
21161    //=========================================================================
21162    // GtkBuildable
21163    //=========================================================================
21164    pub fn gtk_buildable_get_type() -> GType;
21165    pub fn gtk_buildable_get_buildable_id(buildable: *mut GtkBuildable) -> *const c_char;
21166
21167    //=========================================================================
21168    // GtkBuilderScope
21169    //=========================================================================
21170    pub fn gtk_builder_scope_get_type() -> GType;
21171
21172    //=========================================================================
21173    // GtkCellEditable
21174    //=========================================================================
21175    pub fn gtk_cell_editable_get_type() -> GType;
21176    pub fn gtk_cell_editable_editing_done(cell_editable: *mut GtkCellEditable);
21177    pub fn gtk_cell_editable_remove_widget(cell_editable: *mut GtkCellEditable);
21178    pub fn gtk_cell_editable_start_editing(
21179        cell_editable: *mut GtkCellEditable,
21180        event: *mut gdk::GdkEvent,
21181    );
21182
21183    //=========================================================================
21184    // GtkCellLayout
21185    //=========================================================================
21186    pub fn gtk_cell_layout_get_type() -> GType;
21187    pub fn gtk_cell_layout_add_attribute(
21188        cell_layout: *mut GtkCellLayout,
21189        cell: *mut GtkCellRenderer,
21190        attribute: *const c_char,
21191        column: c_int,
21192    );
21193    pub fn gtk_cell_layout_clear(cell_layout: *mut GtkCellLayout);
21194    pub fn gtk_cell_layout_clear_attributes(
21195        cell_layout: *mut GtkCellLayout,
21196        cell: *mut GtkCellRenderer,
21197    );
21198    pub fn gtk_cell_layout_get_area(cell_layout: *mut GtkCellLayout) -> *mut GtkCellArea;
21199    pub fn gtk_cell_layout_get_cells(cell_layout: *mut GtkCellLayout) -> *mut glib::GList;
21200    pub fn gtk_cell_layout_pack_end(
21201        cell_layout: *mut GtkCellLayout,
21202        cell: *mut GtkCellRenderer,
21203        expand: gboolean,
21204    );
21205    pub fn gtk_cell_layout_pack_start(
21206        cell_layout: *mut GtkCellLayout,
21207        cell: *mut GtkCellRenderer,
21208        expand: gboolean,
21209    );
21210    pub fn gtk_cell_layout_reorder(
21211        cell_layout: *mut GtkCellLayout,
21212        cell: *mut GtkCellRenderer,
21213        position: c_int,
21214    );
21215    pub fn gtk_cell_layout_set_attributes(
21216        cell_layout: *mut GtkCellLayout,
21217        cell: *mut GtkCellRenderer,
21218        ...
21219    );
21220    pub fn gtk_cell_layout_set_cell_data_func(
21221        cell_layout: *mut GtkCellLayout,
21222        cell: *mut GtkCellRenderer,
21223        func: GtkCellLayoutDataFunc,
21224        func_data: gpointer,
21225        destroy: glib::GDestroyNotify,
21226    );
21227
21228    //=========================================================================
21229    // GtkColorChooser
21230    //=========================================================================
21231    pub fn gtk_color_chooser_get_type() -> GType;
21232    pub fn gtk_color_chooser_add_palette(
21233        chooser: *mut GtkColorChooser,
21234        orientation: GtkOrientation,
21235        colors_per_line: c_int,
21236        n_colors: c_int,
21237        colors: *mut gdk::GdkRGBA,
21238    );
21239    pub fn gtk_color_chooser_get_rgba(chooser: *mut GtkColorChooser, color: *mut gdk::GdkRGBA);
21240    pub fn gtk_color_chooser_get_use_alpha(chooser: *mut GtkColorChooser) -> gboolean;
21241    pub fn gtk_color_chooser_set_rgba(chooser: *mut GtkColorChooser, color: *const gdk::GdkRGBA);
21242    pub fn gtk_color_chooser_set_use_alpha(chooser: *mut GtkColorChooser, use_alpha: gboolean);
21243
21244    //=========================================================================
21245    // GtkConstraintTarget
21246    //=========================================================================
21247    pub fn gtk_constraint_target_get_type() -> GType;
21248
21249    //=========================================================================
21250    // GtkEditable
21251    //=========================================================================
21252    pub fn gtk_editable_get_type() -> GType;
21253    pub fn gtk_editable_delegate_get_property(
21254        object: *mut gobject::GObject,
21255        prop_id: c_uint,
21256        value: *mut gobject::GValue,
21257        pspec: *mut gobject::GParamSpec,
21258    ) -> gboolean;
21259    pub fn gtk_editable_delegate_set_property(
21260        object: *mut gobject::GObject,
21261        prop_id: c_uint,
21262        value: *const gobject::GValue,
21263        pspec: *mut gobject::GParamSpec,
21264    ) -> gboolean;
21265    pub fn gtk_editable_install_properties(
21266        object_class: *mut gobject::GObjectClass,
21267        first_prop: c_uint,
21268    ) -> c_uint;
21269    #[cfg(feature = "v4_10")]
21270    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21271    pub fn gtk_editable_delegate_get_accessible_platform_state(
21272        editable: *mut GtkEditable,
21273        state: GtkAccessiblePlatformState,
21274    ) -> gboolean;
21275    pub fn gtk_editable_delete_selection(editable: *mut GtkEditable);
21276    pub fn gtk_editable_delete_text(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
21277    pub fn gtk_editable_finish_delegate(editable: *mut GtkEditable);
21278    pub fn gtk_editable_get_alignment(editable: *mut GtkEditable) -> c_float;
21279    pub fn gtk_editable_get_chars(
21280        editable: *mut GtkEditable,
21281        start_pos: c_int,
21282        end_pos: c_int,
21283    ) -> *mut c_char;
21284    pub fn gtk_editable_get_delegate(editable: *mut GtkEditable) -> *mut GtkEditable;
21285    pub fn gtk_editable_get_editable(editable: *mut GtkEditable) -> gboolean;
21286    pub fn gtk_editable_get_enable_undo(editable: *mut GtkEditable) -> gboolean;
21287    pub fn gtk_editable_get_max_width_chars(editable: *mut GtkEditable) -> c_int;
21288    pub fn gtk_editable_get_position(editable: *mut GtkEditable) -> c_int;
21289    pub fn gtk_editable_get_selection_bounds(
21290        editable: *mut GtkEditable,
21291        start_pos: *mut c_int,
21292        end_pos: *mut c_int,
21293    ) -> gboolean;
21294    pub fn gtk_editable_get_text(editable: *mut GtkEditable) -> *const c_char;
21295    pub fn gtk_editable_get_width_chars(editable: *mut GtkEditable) -> c_int;
21296    pub fn gtk_editable_init_delegate(editable: *mut GtkEditable);
21297    pub fn gtk_editable_insert_text(
21298        editable: *mut GtkEditable,
21299        text: *const c_char,
21300        length: c_int,
21301        position: *mut c_int,
21302    );
21303    pub fn gtk_editable_select_region(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
21304    pub fn gtk_editable_set_alignment(editable: *mut GtkEditable, xalign: c_float);
21305    pub fn gtk_editable_set_editable(editable: *mut GtkEditable, is_editable: gboolean);
21306    pub fn gtk_editable_set_enable_undo(editable: *mut GtkEditable, enable_undo: gboolean);
21307    pub fn gtk_editable_set_max_width_chars(editable: *mut GtkEditable, n_chars: c_int);
21308    pub fn gtk_editable_set_position(editable: *mut GtkEditable, position: c_int);
21309    pub fn gtk_editable_set_text(editable: *mut GtkEditable, text: *const c_char);
21310    pub fn gtk_editable_set_width_chars(editable: *mut GtkEditable, n_chars: c_int);
21311
21312    //=========================================================================
21313    // GtkFileChooser
21314    //=========================================================================
21315    pub fn gtk_file_chooser_get_type() -> GType;
21316    pub fn gtk_file_chooser_add_choice(
21317        chooser: *mut GtkFileChooser,
21318        id: *const c_char,
21319        label: *const c_char,
21320        options: *mut *const c_char,
21321        option_labels: *mut *const c_char,
21322    );
21323    pub fn gtk_file_chooser_add_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21324    pub fn gtk_file_chooser_add_shortcut_folder(
21325        chooser: *mut GtkFileChooser,
21326        folder: *mut gio::GFile,
21327        error: *mut *mut glib::GError,
21328    ) -> gboolean;
21329    pub fn gtk_file_chooser_get_action(chooser: *mut GtkFileChooser) -> GtkFileChooserAction;
21330    pub fn gtk_file_chooser_get_choice(
21331        chooser: *mut GtkFileChooser,
21332        id: *const c_char,
21333    ) -> *const c_char;
21334    pub fn gtk_file_chooser_get_create_folders(chooser: *mut GtkFileChooser) -> gboolean;
21335    pub fn gtk_file_chooser_get_current_folder(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
21336    pub fn gtk_file_chooser_get_current_name(chooser: *mut GtkFileChooser) -> *mut c_char;
21337    pub fn gtk_file_chooser_get_file(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
21338    pub fn gtk_file_chooser_get_files(chooser: *mut GtkFileChooser) -> *mut gio::GListModel;
21339    pub fn gtk_file_chooser_get_filter(chooser: *mut GtkFileChooser) -> *mut GtkFileFilter;
21340    pub fn gtk_file_chooser_get_filters(chooser: *mut GtkFileChooser) -> *mut gio::GListModel;
21341    pub fn gtk_file_chooser_get_select_multiple(chooser: *mut GtkFileChooser) -> gboolean;
21342    pub fn gtk_file_chooser_get_shortcut_folders(
21343        chooser: *mut GtkFileChooser,
21344    ) -> *mut gio::GListModel;
21345    pub fn gtk_file_chooser_remove_choice(chooser: *mut GtkFileChooser, id: *const c_char);
21346    pub fn gtk_file_chooser_remove_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21347    pub fn gtk_file_chooser_remove_shortcut_folder(
21348        chooser: *mut GtkFileChooser,
21349        folder: *mut gio::GFile,
21350        error: *mut *mut glib::GError,
21351    ) -> gboolean;
21352    pub fn gtk_file_chooser_set_action(chooser: *mut GtkFileChooser, action: GtkFileChooserAction);
21353    pub fn gtk_file_chooser_set_choice(
21354        chooser: *mut GtkFileChooser,
21355        id: *const c_char,
21356        option: *const c_char,
21357    );
21358    pub fn gtk_file_chooser_set_create_folders(
21359        chooser: *mut GtkFileChooser,
21360        create_folders: gboolean,
21361    );
21362    pub fn gtk_file_chooser_set_current_folder(
21363        chooser: *mut GtkFileChooser,
21364        file: *mut gio::GFile,
21365        error: *mut *mut glib::GError,
21366    ) -> gboolean;
21367    pub fn gtk_file_chooser_set_current_name(chooser: *mut GtkFileChooser, name: *const c_char);
21368    pub fn gtk_file_chooser_set_file(
21369        chooser: *mut GtkFileChooser,
21370        file: *mut gio::GFile,
21371        error: *mut *mut glib::GError,
21372    ) -> gboolean;
21373    pub fn gtk_file_chooser_set_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21374    pub fn gtk_file_chooser_set_select_multiple(
21375        chooser: *mut GtkFileChooser,
21376        select_multiple: gboolean,
21377    );
21378
21379    //=========================================================================
21380    // GtkFontChooser
21381    //=========================================================================
21382    pub fn gtk_font_chooser_get_type() -> GType;
21383    pub fn gtk_font_chooser_get_font(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21384    pub fn gtk_font_chooser_get_font_desc(
21385        fontchooser: *mut GtkFontChooser,
21386    ) -> *mut pango::PangoFontDescription;
21387    pub fn gtk_font_chooser_get_font_face(
21388        fontchooser: *mut GtkFontChooser,
21389    ) -> *mut pango::PangoFontFace;
21390    pub fn gtk_font_chooser_get_font_family(
21391        fontchooser: *mut GtkFontChooser,
21392    ) -> *mut pango::PangoFontFamily;
21393    pub fn gtk_font_chooser_get_font_features(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21394    pub fn gtk_font_chooser_get_font_map(
21395        fontchooser: *mut GtkFontChooser,
21396    ) -> *mut pango::PangoFontMap;
21397    pub fn gtk_font_chooser_get_font_size(fontchooser: *mut GtkFontChooser) -> c_int;
21398    pub fn gtk_font_chooser_get_language(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21399    pub fn gtk_font_chooser_get_level(fontchooser: *mut GtkFontChooser) -> GtkFontChooserLevel;
21400    pub fn gtk_font_chooser_get_preview_text(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21401    pub fn gtk_font_chooser_get_show_preview_entry(fontchooser: *mut GtkFontChooser) -> gboolean;
21402    pub fn gtk_font_chooser_set_filter_func(
21403        fontchooser: *mut GtkFontChooser,
21404        filter: GtkFontFilterFunc,
21405        user_data: gpointer,
21406        destroy: glib::GDestroyNotify,
21407    );
21408    pub fn gtk_font_chooser_set_font(fontchooser: *mut GtkFontChooser, fontname: *const c_char);
21409    pub fn gtk_font_chooser_set_font_desc(
21410        fontchooser: *mut GtkFontChooser,
21411        font_desc: *const pango::PangoFontDescription,
21412    );
21413    pub fn gtk_font_chooser_set_font_map(
21414        fontchooser: *mut GtkFontChooser,
21415        fontmap: *mut pango::PangoFontMap,
21416    );
21417    pub fn gtk_font_chooser_set_language(fontchooser: *mut GtkFontChooser, language: *const c_char);
21418    pub fn gtk_font_chooser_set_level(fontchooser: *mut GtkFontChooser, level: GtkFontChooserLevel);
21419    pub fn gtk_font_chooser_set_preview_text(fontchooser: *mut GtkFontChooser, text: *const c_char);
21420    pub fn gtk_font_chooser_set_show_preview_entry(
21421        fontchooser: *mut GtkFontChooser,
21422        show_preview_entry: gboolean,
21423    );
21424
21425    //=========================================================================
21426    // GtkNative
21427    //=========================================================================
21428    pub fn gtk_native_get_type() -> GType;
21429    pub fn gtk_native_get_for_surface(surface: *mut gdk::GdkSurface) -> *mut GtkNative;
21430    pub fn gtk_native_get_renderer(self_: *mut GtkNative) -> *mut gsk::GskRenderer;
21431    pub fn gtk_native_get_surface(self_: *mut GtkNative) -> *mut gdk::GdkSurface;
21432    pub fn gtk_native_get_surface_transform(
21433        self_: *mut GtkNative,
21434        x: *mut c_double,
21435        y: *mut c_double,
21436    );
21437    pub fn gtk_native_realize(self_: *mut GtkNative);
21438    pub fn gtk_native_unrealize(self_: *mut GtkNative);
21439
21440    //=========================================================================
21441    // GtkOrientable
21442    //=========================================================================
21443    pub fn gtk_orientable_get_type() -> GType;
21444    pub fn gtk_orientable_get_orientation(orientable: *mut GtkOrientable) -> GtkOrientation;
21445    pub fn gtk_orientable_set_orientation(
21446        orientable: *mut GtkOrientable,
21447        orientation: GtkOrientation,
21448    );
21449
21450    //=========================================================================
21451    // GtkPrintOperationPreview
21452    //=========================================================================
21453    pub fn gtk_print_operation_preview_get_type() -> GType;
21454    pub fn gtk_print_operation_preview_end_preview(preview: *mut GtkPrintOperationPreview);
21455    pub fn gtk_print_operation_preview_is_selected(
21456        preview: *mut GtkPrintOperationPreview,
21457        page_nr: c_int,
21458    ) -> gboolean;
21459    pub fn gtk_print_operation_preview_render_page(
21460        preview: *mut GtkPrintOperationPreview,
21461        page_nr: c_int,
21462    );
21463
21464    //=========================================================================
21465    // GtkRoot
21466    //=========================================================================
21467    pub fn gtk_root_get_type() -> GType;
21468    pub fn gtk_root_get_display(self_: *mut GtkRoot) -> *mut gdk::GdkDisplay;
21469    pub fn gtk_root_get_focus(self_: *mut GtkRoot) -> *mut GtkWidget;
21470    pub fn gtk_root_set_focus(self_: *mut GtkRoot, focus: *mut GtkWidget);
21471
21472    //=========================================================================
21473    // GtkScrollable
21474    //=========================================================================
21475    pub fn gtk_scrollable_get_type() -> GType;
21476    pub fn gtk_scrollable_get_border(
21477        scrollable: *mut GtkScrollable,
21478        border: *mut GtkBorder,
21479    ) -> gboolean;
21480    pub fn gtk_scrollable_get_hadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
21481    pub fn gtk_scrollable_get_hscroll_policy(scrollable: *mut GtkScrollable)
21482        -> GtkScrollablePolicy;
21483    pub fn gtk_scrollable_get_vadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
21484    pub fn gtk_scrollable_get_vscroll_policy(scrollable: *mut GtkScrollable)
21485        -> GtkScrollablePolicy;
21486    pub fn gtk_scrollable_set_hadjustment(
21487        scrollable: *mut GtkScrollable,
21488        hadjustment: *mut GtkAdjustment,
21489    );
21490    pub fn gtk_scrollable_set_hscroll_policy(
21491        scrollable: *mut GtkScrollable,
21492        policy: GtkScrollablePolicy,
21493    );
21494    pub fn gtk_scrollable_set_vadjustment(
21495        scrollable: *mut GtkScrollable,
21496        vadjustment: *mut GtkAdjustment,
21497    );
21498    pub fn gtk_scrollable_set_vscroll_policy(
21499        scrollable: *mut GtkScrollable,
21500        policy: GtkScrollablePolicy,
21501    );
21502
21503    //=========================================================================
21504    // GtkSectionModel
21505    //=========================================================================
21506    #[cfg(feature = "v4_12")]
21507    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21508    pub fn gtk_section_model_get_type() -> GType;
21509    #[cfg(feature = "v4_12")]
21510    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21511    pub fn gtk_section_model_get_section(
21512        self_: *mut GtkSectionModel,
21513        position: c_uint,
21514        out_start: *mut c_uint,
21515        out_end: *mut c_uint,
21516    );
21517    #[cfg(feature = "v4_12")]
21518    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21519    pub fn gtk_section_model_sections_changed(
21520        self_: *mut GtkSectionModel,
21521        position: c_uint,
21522        n_items: c_uint,
21523    );
21524
21525    //=========================================================================
21526    // GtkSelectionModel
21527    //=========================================================================
21528    pub fn gtk_selection_model_get_type() -> GType;
21529    pub fn gtk_selection_model_get_selection(model: *mut GtkSelectionModel) -> *mut GtkBitset;
21530    pub fn gtk_selection_model_get_selection_in_range(
21531        model: *mut GtkSelectionModel,
21532        position: c_uint,
21533        n_items: c_uint,
21534    ) -> *mut GtkBitset;
21535    pub fn gtk_selection_model_is_selected(
21536        model: *mut GtkSelectionModel,
21537        position: c_uint,
21538    ) -> gboolean;
21539    pub fn gtk_selection_model_select_all(model: *mut GtkSelectionModel) -> gboolean;
21540    pub fn gtk_selection_model_select_item(
21541        model: *mut GtkSelectionModel,
21542        position: c_uint,
21543        unselect_rest: gboolean,
21544    ) -> gboolean;
21545    pub fn gtk_selection_model_select_range(
21546        model: *mut GtkSelectionModel,
21547        position: c_uint,
21548        n_items: c_uint,
21549        unselect_rest: gboolean,
21550    ) -> gboolean;
21551    pub fn gtk_selection_model_selection_changed(
21552        model: *mut GtkSelectionModel,
21553        position: c_uint,
21554        n_items: c_uint,
21555    );
21556    pub fn gtk_selection_model_set_selection(
21557        model: *mut GtkSelectionModel,
21558        selected: *mut GtkBitset,
21559        mask: *mut GtkBitset,
21560    ) -> gboolean;
21561    pub fn gtk_selection_model_unselect_all(model: *mut GtkSelectionModel) -> gboolean;
21562    pub fn gtk_selection_model_unselect_item(
21563        model: *mut GtkSelectionModel,
21564        position: c_uint,
21565    ) -> gboolean;
21566    pub fn gtk_selection_model_unselect_range(
21567        model: *mut GtkSelectionModel,
21568        position: c_uint,
21569        n_items: c_uint,
21570    ) -> gboolean;
21571
21572    //=========================================================================
21573    // GtkShortcutManager
21574    //=========================================================================
21575    pub fn gtk_shortcut_manager_get_type() -> GType;
21576
21577    //=========================================================================
21578    // GtkStyleProvider
21579    //=========================================================================
21580    pub fn gtk_style_provider_get_type() -> GType;
21581
21582    //=========================================================================
21583    // GtkSymbolicPaintable
21584    //=========================================================================
21585    #[cfg(feature = "v4_6")]
21586    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
21587    pub fn gtk_symbolic_paintable_get_type() -> GType;
21588    #[cfg(feature = "v4_6")]
21589    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
21590    pub fn gtk_symbolic_paintable_snapshot_symbolic(
21591        paintable: *mut GtkSymbolicPaintable,
21592        snapshot: *mut gdk::GdkSnapshot,
21593        width: c_double,
21594        height: c_double,
21595        colors: *const gdk::GdkRGBA,
21596        n_colors: size_t,
21597    );
21598    #[cfg(feature = "v4_22")]
21599    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21600    pub fn gtk_symbolic_paintable_snapshot_with_weight(
21601        paintable: *mut GtkSymbolicPaintable,
21602        snapshot: *mut gdk::GdkSnapshot,
21603        width: c_double,
21604        height: c_double,
21605        colors: *const gdk::GdkRGBA,
21606        n_colors: size_t,
21607        weight: c_double,
21608    );
21609
21610    //=========================================================================
21611    // GtkTreeDragDest
21612    //=========================================================================
21613    pub fn gtk_tree_drag_dest_get_type() -> GType;
21614    pub fn gtk_tree_drag_dest_drag_data_received(
21615        drag_dest: *mut GtkTreeDragDest,
21616        dest: *mut GtkTreePath,
21617        value: *const gobject::GValue,
21618    ) -> gboolean;
21619    pub fn gtk_tree_drag_dest_row_drop_possible(
21620        drag_dest: *mut GtkTreeDragDest,
21621        dest_path: *mut GtkTreePath,
21622        value: *const gobject::GValue,
21623    ) -> gboolean;
21624
21625    //=========================================================================
21626    // GtkTreeDragSource
21627    //=========================================================================
21628    pub fn gtk_tree_drag_source_get_type() -> GType;
21629    pub fn gtk_tree_drag_source_drag_data_delete(
21630        drag_source: *mut GtkTreeDragSource,
21631        path: *mut GtkTreePath,
21632    ) -> gboolean;
21633    pub fn gtk_tree_drag_source_drag_data_get(
21634        drag_source: *mut GtkTreeDragSource,
21635        path: *mut GtkTreePath,
21636    ) -> *mut gdk::GdkContentProvider;
21637    pub fn gtk_tree_drag_source_row_draggable(
21638        drag_source: *mut GtkTreeDragSource,
21639        path: *mut GtkTreePath,
21640    ) -> gboolean;
21641
21642    //=========================================================================
21643    // GtkTreeModel
21644    //=========================================================================
21645    pub fn gtk_tree_model_get_type() -> GType;
21646    pub fn gtk_tree_model_filter_new(
21647        child_model: *mut GtkTreeModel,
21648        root: *mut GtkTreePath,
21649    ) -> *mut GtkTreeModel;
21650    pub fn gtk_tree_model_foreach(
21651        model: *mut GtkTreeModel,
21652        func: GtkTreeModelForeachFunc,
21653        user_data: gpointer,
21654    );
21655    pub fn gtk_tree_model_get(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, ...);
21656    pub fn gtk_tree_model_get_column_type(tree_model: *mut GtkTreeModel, index_: c_int) -> GType;
21657    pub fn gtk_tree_model_get_flags(tree_model: *mut GtkTreeModel) -> GtkTreeModelFlags;
21658    pub fn gtk_tree_model_get_iter(
21659        tree_model: *mut GtkTreeModel,
21660        iter: *mut GtkTreeIter,
21661        path: *mut GtkTreePath,
21662    ) -> gboolean;
21663    pub fn gtk_tree_model_get_iter_first(
21664        tree_model: *mut GtkTreeModel,
21665        iter: *mut GtkTreeIter,
21666    ) -> gboolean;
21667    pub fn gtk_tree_model_get_iter_from_string(
21668        tree_model: *mut GtkTreeModel,
21669        iter: *mut GtkTreeIter,
21670        path_string: *const c_char,
21671    ) -> gboolean;
21672    pub fn gtk_tree_model_get_n_columns(tree_model: *mut GtkTreeModel) -> c_int;
21673    pub fn gtk_tree_model_get_path(
21674        tree_model: *mut GtkTreeModel,
21675        iter: *mut GtkTreeIter,
21676    ) -> *mut GtkTreePath;
21677    pub fn gtk_tree_model_get_string_from_iter(
21678        tree_model: *mut GtkTreeModel,
21679        iter: *mut GtkTreeIter,
21680    ) -> *mut c_char;
21681    //pub fn gtk_tree_model_get_valist(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
21682    pub fn gtk_tree_model_get_value(
21683        tree_model: *mut GtkTreeModel,
21684        iter: *mut GtkTreeIter,
21685        column: c_int,
21686        value: *mut gobject::GValue,
21687    );
21688    pub fn gtk_tree_model_iter_children(
21689        tree_model: *mut GtkTreeModel,
21690        iter: *mut GtkTreeIter,
21691        parent: *mut GtkTreeIter,
21692    ) -> gboolean;
21693    pub fn gtk_tree_model_iter_has_child(
21694        tree_model: *mut GtkTreeModel,
21695        iter: *mut GtkTreeIter,
21696    ) -> gboolean;
21697    pub fn gtk_tree_model_iter_n_children(
21698        tree_model: *mut GtkTreeModel,
21699        iter: *mut GtkTreeIter,
21700    ) -> c_int;
21701    pub fn gtk_tree_model_iter_next(
21702        tree_model: *mut GtkTreeModel,
21703        iter: *mut GtkTreeIter,
21704    ) -> gboolean;
21705    pub fn gtk_tree_model_iter_nth_child(
21706        tree_model: *mut GtkTreeModel,
21707        iter: *mut GtkTreeIter,
21708        parent: *mut GtkTreeIter,
21709        n: c_int,
21710    ) -> gboolean;
21711    pub fn gtk_tree_model_iter_parent(
21712        tree_model: *mut GtkTreeModel,
21713        iter: *mut GtkTreeIter,
21714        child: *mut GtkTreeIter,
21715    ) -> gboolean;
21716    pub fn gtk_tree_model_iter_previous(
21717        tree_model: *mut GtkTreeModel,
21718        iter: *mut GtkTreeIter,
21719    ) -> gboolean;
21720    pub fn gtk_tree_model_ref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
21721    pub fn gtk_tree_model_row_changed(
21722        tree_model: *mut GtkTreeModel,
21723        path: *mut GtkTreePath,
21724        iter: *mut GtkTreeIter,
21725    );
21726    pub fn gtk_tree_model_row_deleted(tree_model: *mut GtkTreeModel, path: *mut GtkTreePath);
21727    pub fn gtk_tree_model_row_has_child_toggled(
21728        tree_model: *mut GtkTreeModel,
21729        path: *mut GtkTreePath,
21730        iter: *mut GtkTreeIter,
21731    );
21732    pub fn gtk_tree_model_row_inserted(
21733        tree_model: *mut GtkTreeModel,
21734        path: *mut GtkTreePath,
21735        iter: *mut GtkTreeIter,
21736    );
21737    pub fn gtk_tree_model_rows_reordered(
21738        tree_model: *mut GtkTreeModel,
21739        path: *mut GtkTreePath,
21740        iter: *mut GtkTreeIter,
21741        new_order: *mut c_int,
21742    );
21743    pub fn gtk_tree_model_rows_reordered_with_length(
21744        tree_model: *mut GtkTreeModel,
21745        path: *mut GtkTreePath,
21746        iter: *mut GtkTreeIter,
21747        new_order: *mut c_int,
21748        length: c_int,
21749    );
21750    pub fn gtk_tree_model_unref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
21751
21752    //=========================================================================
21753    // GtkTreeSortable
21754    //=========================================================================
21755    pub fn gtk_tree_sortable_get_type() -> GType;
21756    pub fn gtk_tree_sortable_get_sort_column_id(
21757        sortable: *mut GtkTreeSortable,
21758        sort_column_id: *mut c_int,
21759        order: *mut GtkSortType,
21760    ) -> gboolean;
21761    pub fn gtk_tree_sortable_has_default_sort_func(sortable: *mut GtkTreeSortable) -> gboolean;
21762    pub fn gtk_tree_sortable_set_default_sort_func(
21763        sortable: *mut GtkTreeSortable,
21764        sort_func: GtkTreeIterCompareFunc,
21765        user_data: gpointer,
21766        destroy: glib::GDestroyNotify,
21767    );
21768    pub fn gtk_tree_sortable_set_sort_column_id(
21769        sortable: *mut GtkTreeSortable,
21770        sort_column_id: c_int,
21771        order: GtkSortType,
21772    );
21773    pub fn gtk_tree_sortable_set_sort_func(
21774        sortable: *mut GtkTreeSortable,
21775        sort_column_id: c_int,
21776        sort_func: GtkTreeIterCompareFunc,
21777        user_data: gpointer,
21778        destroy: glib::GDestroyNotify,
21779    );
21780    pub fn gtk_tree_sortable_sort_column_changed(sortable: *mut GtkTreeSortable);
21781
21782    //=========================================================================
21783    // Other functions
21784    //=========================================================================
21785    #[cfg(feature = "v4_22")]
21786    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21787    pub fn gtk_accelerator_get_accessible_label(
21788        accelerator_key: c_uint,
21789        accelerator_mods: gdk::GdkModifierType,
21790    ) -> *mut c_char;
21791    pub fn gtk_accelerator_get_default_mod_mask() -> gdk::GdkModifierType;
21792    pub fn gtk_accelerator_get_label(
21793        accelerator_key: c_uint,
21794        accelerator_mods: gdk::GdkModifierType,
21795    ) -> *mut c_char;
21796    pub fn gtk_accelerator_get_label_with_keycode(
21797        display: *mut gdk::GdkDisplay,
21798        accelerator_key: c_uint,
21799        keycode: c_uint,
21800        accelerator_mods: gdk::GdkModifierType,
21801    ) -> *mut c_char;
21802    pub fn gtk_accelerator_name(
21803        accelerator_key: c_uint,
21804        accelerator_mods: gdk::GdkModifierType,
21805    ) -> *mut c_char;
21806    pub fn gtk_accelerator_name_with_keycode(
21807        display: *mut gdk::GdkDisplay,
21808        accelerator_key: c_uint,
21809        keycode: c_uint,
21810        accelerator_mods: gdk::GdkModifierType,
21811    ) -> *mut c_char;
21812    pub fn gtk_accelerator_parse(
21813        accelerator: *const c_char,
21814        accelerator_key: *mut c_uint,
21815        accelerator_mods: *mut gdk::GdkModifierType,
21816    ) -> gboolean;
21817    pub fn gtk_accelerator_parse_with_keycode(
21818        accelerator: *const c_char,
21819        display: *mut gdk::GdkDisplay,
21820        accelerator_key: *mut c_uint,
21821        accelerator_codes: *mut *mut c_uint,
21822        accelerator_mods: *mut gdk::GdkModifierType,
21823    ) -> gboolean;
21824    pub fn gtk_accelerator_valid(keyval: c_uint, modifiers: gdk::GdkModifierType) -> gboolean;
21825    pub fn gtk_check_version(
21826        required_major: c_uint,
21827        required_minor: c_uint,
21828        required_micro: c_uint,
21829    ) -> *const c_char;
21830    pub fn gtk_css_parser_error_quark() -> glib::GQuark;
21831    pub fn gtk_css_parser_warning_quark() -> glib::GQuark;
21832    #[cfg(feature = "v4_18")]
21833    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
21834    pub fn gtk_disable_portals();
21835    pub fn gtk_disable_setlocale();
21836    pub fn gtk_distribute_natural_allocation(
21837        extra_space: c_int,
21838        n_requested_sizes: c_uint,
21839        sizes: *mut GtkRequestedSize,
21840    ) -> c_int;
21841    pub fn gtk_enumerate_printers(
21842        func: GtkPrinterFunc,
21843        data: gpointer,
21844        destroy: glib::GDestroyNotify,
21845        wait: gboolean,
21846    );
21847    pub fn gtk_get_binary_age() -> c_uint;
21848    pub fn gtk_get_debug_flags() -> GtkDebugFlags;
21849    pub fn gtk_get_default_language() -> *mut pango::PangoLanguage;
21850    pub fn gtk_get_interface_age() -> c_uint;
21851    pub fn gtk_get_locale_direction() -> GtkTextDirection;
21852    pub fn gtk_get_major_version() -> c_uint;
21853    pub fn gtk_get_micro_version() -> c_uint;
21854    pub fn gtk_get_minor_version() -> c_uint;
21855    pub fn gtk_hsv_to_rgb(
21856        h: c_float,
21857        s: c_float,
21858        v: c_float,
21859        r: *mut c_float,
21860        g: *mut c_float,
21861        b: *mut c_float,
21862    );
21863    pub fn gtk_init();
21864    pub fn gtk_init_check() -> gboolean;
21865    pub fn gtk_is_initialized() -> gboolean;
21866    pub fn gtk_param_spec_expression(
21867        name: *const c_char,
21868        nick: *const c_char,
21869        blurb: *const c_char,
21870        flags: gobject::GParamFlags,
21871    ) -> *mut gobject::GParamSpec;
21872    pub fn gtk_print_run_page_setup_dialog(
21873        parent: *mut GtkWindow,
21874        page_setup: *mut GtkPageSetup,
21875        settings: *mut GtkPrintSettings,
21876    ) -> *mut GtkPageSetup;
21877    pub fn gtk_print_run_page_setup_dialog_async(
21878        parent: *mut GtkWindow,
21879        page_setup: *mut GtkPageSetup,
21880        settings: *mut GtkPrintSettings,
21881        done_cb: GtkPageSetupDoneFunc,
21882        data: gpointer,
21883    );
21884    pub fn gtk_render_activity(
21885        context: *mut GtkStyleContext,
21886        cr: *mut cairo::cairo_t,
21887        x: c_double,
21888        y: c_double,
21889        width: c_double,
21890        height: c_double,
21891    );
21892    pub fn gtk_render_arrow(
21893        context: *mut GtkStyleContext,
21894        cr: *mut cairo::cairo_t,
21895        angle: c_double,
21896        x: c_double,
21897        y: c_double,
21898        size: c_double,
21899    );
21900    pub fn gtk_render_background(
21901        context: *mut GtkStyleContext,
21902        cr: *mut cairo::cairo_t,
21903        x: c_double,
21904        y: c_double,
21905        width: c_double,
21906        height: c_double,
21907    );
21908    pub fn gtk_render_check(
21909        context: *mut GtkStyleContext,
21910        cr: *mut cairo::cairo_t,
21911        x: c_double,
21912        y: c_double,
21913        width: c_double,
21914        height: c_double,
21915    );
21916    pub fn gtk_render_expander(
21917        context: *mut GtkStyleContext,
21918        cr: *mut cairo::cairo_t,
21919        x: c_double,
21920        y: c_double,
21921        width: c_double,
21922        height: c_double,
21923    );
21924    pub fn gtk_render_focus(
21925        context: *mut GtkStyleContext,
21926        cr: *mut cairo::cairo_t,
21927        x: c_double,
21928        y: c_double,
21929        width: c_double,
21930        height: c_double,
21931    );
21932    pub fn gtk_render_frame(
21933        context: *mut GtkStyleContext,
21934        cr: *mut cairo::cairo_t,
21935        x: c_double,
21936        y: c_double,
21937        width: c_double,
21938        height: c_double,
21939    );
21940    pub fn gtk_render_handle(
21941        context: *mut GtkStyleContext,
21942        cr: *mut cairo::cairo_t,
21943        x: c_double,
21944        y: c_double,
21945        width: c_double,
21946        height: c_double,
21947    );
21948    pub fn gtk_render_icon(
21949        context: *mut GtkStyleContext,
21950        cr: *mut cairo::cairo_t,
21951        texture: *mut gdk::GdkTexture,
21952        x: c_double,
21953        y: c_double,
21954    );
21955    pub fn gtk_render_layout(
21956        context: *mut GtkStyleContext,
21957        cr: *mut cairo::cairo_t,
21958        x: c_double,
21959        y: c_double,
21960        layout: *mut pango::PangoLayout,
21961    );
21962    pub fn gtk_render_line(
21963        context: *mut GtkStyleContext,
21964        cr: *mut cairo::cairo_t,
21965        x0: c_double,
21966        y0: c_double,
21967        x1: c_double,
21968        y1: c_double,
21969    );
21970    pub fn gtk_render_option(
21971        context: *mut GtkStyleContext,
21972        cr: *mut cairo::cairo_t,
21973        x: c_double,
21974        y: c_double,
21975        width: c_double,
21976        height: c_double,
21977    );
21978    pub fn gtk_rgb_to_hsv(
21979        r: c_float,
21980        g: c_float,
21981        b: c_float,
21982        h: *mut c_float,
21983        s: *mut c_float,
21984        v: *mut c_float,
21985    );
21986    pub fn gtk_set_debug_flags(flags: GtkDebugFlags);
21987    pub fn gtk_show_about_dialog(parent: *mut GtkWindow, first_property_name: *const c_char, ...);
21988    pub fn gtk_show_uri(parent: *mut GtkWindow, uri: *const c_char, timestamp: u32);
21989    pub fn gtk_show_uri_full(
21990        parent: *mut GtkWindow,
21991        uri: *const c_char,
21992        timestamp: u32,
21993        cancellable: *mut gio::GCancellable,
21994        callback: gio::GAsyncReadyCallback,
21995        user_data: gpointer,
21996    );
21997    pub fn gtk_show_uri_full_finish(
21998        parent: *mut GtkWindow,
21999        result: *mut gio::GAsyncResult,
22000        error: *mut *mut glib::GError,
22001    ) -> gboolean;
22002    pub fn gtk_test_accessible_assertion_message_role(
22003        domain: *const c_char,
22004        file: *const c_char,
22005        line: c_int,
22006        func: *const c_char,
22007        expr: *const c_char,
22008        accessible: *mut GtkAccessible,
22009        expected_role: GtkAccessibleRole,
22010        actual_role: GtkAccessibleRole,
22011    );
22012    pub fn gtk_test_accessible_check_property(
22013        accessible: *mut GtkAccessible,
22014        property: GtkAccessibleProperty,
22015        ...
22016    ) -> *mut c_char;
22017    pub fn gtk_test_accessible_check_relation(
22018        accessible: *mut GtkAccessible,
22019        relation: GtkAccessibleRelation,
22020        ...
22021    ) -> *mut c_char;
22022    pub fn gtk_test_accessible_check_state(
22023        accessible: *mut GtkAccessible,
22024        state: GtkAccessibleState,
22025        ...
22026    ) -> *mut c_char;
22027    pub fn gtk_test_accessible_has_property(
22028        accessible: *mut GtkAccessible,
22029        property: GtkAccessibleProperty,
22030    ) -> gboolean;
22031    pub fn gtk_test_accessible_has_relation(
22032        accessible: *mut GtkAccessible,
22033        relation: GtkAccessibleRelation,
22034    ) -> gboolean;
22035    pub fn gtk_test_accessible_has_role(
22036        accessible: *mut GtkAccessible,
22037        role: GtkAccessibleRole,
22038    ) -> gboolean;
22039    pub fn gtk_test_accessible_has_state(
22040        accessible: *mut GtkAccessible,
22041        state: GtkAccessibleState,
22042    ) -> gboolean;
22043    pub fn gtk_test_init(argcp: *mut c_int, argvp: *mut *mut *mut c_char, ...);
22044    pub fn gtk_test_list_all_types(n_types: *mut c_uint) -> *const GType;
22045    pub fn gtk_test_register_all_types();
22046    pub fn gtk_test_widget_wait_for_draw(widget: *mut GtkWidget);
22047    pub fn gtk_tree_create_row_drag_content(
22048        tree_model: *mut GtkTreeModel,
22049        path: *mut GtkTreePath,
22050    ) -> *mut gdk::GdkContentProvider;
22051    pub fn gtk_tree_get_row_drag_data(
22052        value: *const gobject::GValue,
22053        tree_model: *mut *mut GtkTreeModel,
22054        path: *mut *mut GtkTreePath,
22055    ) -> gboolean;
22056    pub fn gtk_value_dup_expression(value: *const gobject::GValue) -> *mut GtkExpression;
22057    pub fn gtk_value_get_expression(value: *const gobject::GValue) -> *mut GtkExpression;
22058    pub fn gtk_value_set_expression(value: *mut gobject::GValue, expression: *mut GtkExpression);
22059    pub fn gtk_value_take_expression(value: *mut gobject::GValue, expression: *mut GtkExpression);
22060
22061}