Skip to main content

gtk_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 atk_sys as atk;
15use cairo_sys as cairo;
16use gdk_pixbuf_sys as gdk_pixbuf;
17use gdk_sys as gdk;
18use gio_sys as gio;
19use glib_sys as glib;
20use gobject_sys as gobject;
21use pango_sys as pango;
22
23mod manual;
24
25pub use manual::*;
26
27#[allow(unused_imports)]
28use libc::{FILE, intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t};
29#[cfg(unix)]
30#[allow(unused_imports)]
31use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
32#[allow(unused_imports)]
33use std::ffi::{
34    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
35};
36
37#[allow(unused_imports)]
38use glib::{GType, gboolean, gconstpointer, gpointer};
39
40pub const GTK_ENTRY_BUFFER_MAX_SIZE: u16 = u16::MAX;
41
42// Aliases
43pub type GtkAllocation = gdk::GdkRectangle;
44pub type GtkStock = *mut c_char;
45
46// Enums
47pub type GtkAlign = c_int;
48pub const GTK_ALIGN_FILL: GtkAlign = 0;
49pub const GTK_ALIGN_START: GtkAlign = 1;
50pub const GTK_ALIGN_END: GtkAlign = 2;
51pub const GTK_ALIGN_CENTER: GtkAlign = 3;
52pub const GTK_ALIGN_BASELINE: GtkAlign = 4;
53
54pub type GtkArrowPlacement = c_int;
55pub const GTK_ARROWS_BOTH: GtkArrowPlacement = 0;
56pub const GTK_ARROWS_START: GtkArrowPlacement = 1;
57pub const GTK_ARROWS_END: GtkArrowPlacement = 2;
58
59pub type GtkArrowType = c_int;
60pub const GTK_ARROW_UP: GtkArrowType = 0;
61pub const GTK_ARROW_DOWN: GtkArrowType = 1;
62pub const GTK_ARROW_LEFT: GtkArrowType = 2;
63pub const GTK_ARROW_RIGHT: GtkArrowType = 3;
64pub const GTK_ARROW_NONE: GtkArrowType = 4;
65
66pub type GtkAssistantPageType = c_int;
67pub const GTK_ASSISTANT_PAGE_CONTENT: GtkAssistantPageType = 0;
68pub const GTK_ASSISTANT_PAGE_INTRO: GtkAssistantPageType = 1;
69pub const GTK_ASSISTANT_PAGE_CONFIRM: GtkAssistantPageType = 2;
70pub const GTK_ASSISTANT_PAGE_SUMMARY: GtkAssistantPageType = 3;
71pub const GTK_ASSISTANT_PAGE_PROGRESS: GtkAssistantPageType = 4;
72pub const GTK_ASSISTANT_PAGE_CUSTOM: GtkAssistantPageType = 5;
73
74pub type GtkBaselinePosition = c_int;
75pub const GTK_BASELINE_POSITION_TOP: GtkBaselinePosition = 0;
76pub const GTK_BASELINE_POSITION_CENTER: GtkBaselinePosition = 1;
77pub const GTK_BASELINE_POSITION_BOTTOM: GtkBaselinePosition = 2;
78
79pub type GtkBorderStyle = c_int;
80pub const GTK_BORDER_STYLE_NONE: GtkBorderStyle = 0;
81pub const GTK_BORDER_STYLE_SOLID: GtkBorderStyle = 1;
82pub const GTK_BORDER_STYLE_INSET: GtkBorderStyle = 2;
83pub const GTK_BORDER_STYLE_OUTSET: GtkBorderStyle = 3;
84pub const GTK_BORDER_STYLE_HIDDEN: GtkBorderStyle = 4;
85pub const GTK_BORDER_STYLE_DOTTED: GtkBorderStyle = 5;
86pub const GTK_BORDER_STYLE_DASHED: GtkBorderStyle = 6;
87pub const GTK_BORDER_STYLE_DOUBLE: GtkBorderStyle = 7;
88pub const GTK_BORDER_STYLE_GROOVE: GtkBorderStyle = 8;
89pub const GTK_BORDER_STYLE_RIDGE: GtkBorderStyle = 9;
90
91pub type GtkBuilderError = c_int;
92pub const GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION: GtkBuilderError = 0;
93pub const GTK_BUILDER_ERROR_UNHANDLED_TAG: GtkBuilderError = 1;
94pub const GTK_BUILDER_ERROR_MISSING_ATTRIBUTE: GtkBuilderError = 2;
95pub const GTK_BUILDER_ERROR_INVALID_ATTRIBUTE: GtkBuilderError = 3;
96pub const GTK_BUILDER_ERROR_INVALID_TAG: GtkBuilderError = 4;
97pub const GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE: GtkBuilderError = 5;
98pub const GTK_BUILDER_ERROR_INVALID_VALUE: GtkBuilderError = 6;
99pub const GTK_BUILDER_ERROR_VERSION_MISMATCH: GtkBuilderError = 7;
100pub const GTK_BUILDER_ERROR_DUPLICATE_ID: GtkBuilderError = 8;
101pub const GTK_BUILDER_ERROR_OBJECT_TYPE_REFUSED: GtkBuilderError = 9;
102pub const GTK_BUILDER_ERROR_TEMPLATE_MISMATCH: GtkBuilderError = 10;
103pub const GTK_BUILDER_ERROR_INVALID_PROPERTY: GtkBuilderError = 11;
104pub const GTK_BUILDER_ERROR_INVALID_SIGNAL: GtkBuilderError = 12;
105pub const GTK_BUILDER_ERROR_INVALID_ID: GtkBuilderError = 13;
106
107pub type GtkButtonBoxStyle = c_int;
108pub const GTK_BUTTONBOX_SPREAD: GtkButtonBoxStyle = 1;
109pub const GTK_BUTTONBOX_EDGE: GtkButtonBoxStyle = 2;
110pub const GTK_BUTTONBOX_START: GtkButtonBoxStyle = 3;
111pub const GTK_BUTTONBOX_END: GtkButtonBoxStyle = 4;
112pub const GTK_BUTTONBOX_CENTER: GtkButtonBoxStyle = 5;
113pub const GTK_BUTTONBOX_EXPAND: GtkButtonBoxStyle = 6;
114
115pub type GtkButtonRole = c_int;
116pub const GTK_BUTTON_ROLE_NORMAL: GtkButtonRole = 0;
117pub const GTK_BUTTON_ROLE_CHECK: GtkButtonRole = 1;
118pub const GTK_BUTTON_ROLE_RADIO: GtkButtonRole = 2;
119
120pub type GtkButtonsType = c_int;
121pub const GTK_BUTTONS_NONE: GtkButtonsType = 0;
122pub const GTK_BUTTONS_OK: GtkButtonsType = 1;
123pub const GTK_BUTTONS_CLOSE: GtkButtonsType = 2;
124pub const GTK_BUTTONS_CANCEL: GtkButtonsType = 3;
125pub const GTK_BUTTONS_YES_NO: GtkButtonsType = 4;
126pub const GTK_BUTTONS_OK_CANCEL: GtkButtonsType = 5;
127
128pub type GtkCellRendererAccelMode = c_int;
129pub const GTK_CELL_RENDERER_ACCEL_MODE_GTK: GtkCellRendererAccelMode = 0;
130pub const GTK_CELL_RENDERER_ACCEL_MODE_OTHER: GtkCellRendererAccelMode = 1;
131
132pub type GtkCellRendererMode = c_int;
133pub const GTK_CELL_RENDERER_MODE_INERT: GtkCellRendererMode = 0;
134pub const GTK_CELL_RENDERER_MODE_ACTIVATABLE: GtkCellRendererMode = 1;
135pub const GTK_CELL_RENDERER_MODE_EDITABLE: GtkCellRendererMode = 2;
136
137pub type GtkCornerType = c_int;
138pub const GTK_CORNER_TOP_LEFT: GtkCornerType = 0;
139pub const GTK_CORNER_BOTTOM_LEFT: GtkCornerType = 1;
140pub const GTK_CORNER_TOP_RIGHT: GtkCornerType = 2;
141pub const GTK_CORNER_BOTTOM_RIGHT: GtkCornerType = 3;
142
143pub type GtkCssProviderError = c_int;
144pub const GTK_CSS_PROVIDER_ERROR_FAILED: GtkCssProviderError = 0;
145pub const GTK_CSS_PROVIDER_ERROR_SYNTAX: GtkCssProviderError = 1;
146pub const GTK_CSS_PROVIDER_ERROR_IMPORT: GtkCssProviderError = 2;
147pub const GTK_CSS_PROVIDER_ERROR_NAME: GtkCssProviderError = 3;
148pub const GTK_CSS_PROVIDER_ERROR_DEPRECATED: GtkCssProviderError = 4;
149pub const GTK_CSS_PROVIDER_ERROR_UNKNOWN_VALUE: GtkCssProviderError = 5;
150
151pub type GtkCssSectionType = c_int;
152pub const GTK_CSS_SECTION_DOCUMENT: GtkCssSectionType = 0;
153pub const GTK_CSS_SECTION_IMPORT: GtkCssSectionType = 1;
154pub const GTK_CSS_SECTION_COLOR_DEFINITION: GtkCssSectionType = 2;
155pub const GTK_CSS_SECTION_BINDING_SET: GtkCssSectionType = 3;
156pub const GTK_CSS_SECTION_RULESET: GtkCssSectionType = 4;
157pub const GTK_CSS_SECTION_SELECTOR: GtkCssSectionType = 5;
158pub const GTK_CSS_SECTION_DECLARATION: GtkCssSectionType = 6;
159pub const GTK_CSS_SECTION_VALUE: GtkCssSectionType = 7;
160pub const GTK_CSS_SECTION_KEYFRAMES: GtkCssSectionType = 8;
161
162pub type GtkDeleteType = c_int;
163pub const GTK_DELETE_CHARS: GtkDeleteType = 0;
164pub const GTK_DELETE_WORD_ENDS: GtkDeleteType = 1;
165pub const GTK_DELETE_WORDS: GtkDeleteType = 2;
166pub const GTK_DELETE_DISPLAY_LINES: GtkDeleteType = 3;
167pub const GTK_DELETE_DISPLAY_LINE_ENDS: GtkDeleteType = 4;
168pub const GTK_DELETE_PARAGRAPH_ENDS: GtkDeleteType = 5;
169pub const GTK_DELETE_PARAGRAPHS: GtkDeleteType = 6;
170pub const GTK_DELETE_WHITESPACE: GtkDeleteType = 7;
171
172pub type GtkDirectionType = c_int;
173pub const GTK_DIR_TAB_FORWARD: GtkDirectionType = 0;
174pub const GTK_DIR_TAB_BACKWARD: GtkDirectionType = 1;
175pub const GTK_DIR_UP: GtkDirectionType = 2;
176pub const GTK_DIR_DOWN: GtkDirectionType = 3;
177pub const GTK_DIR_LEFT: GtkDirectionType = 4;
178pub const GTK_DIR_RIGHT: GtkDirectionType = 5;
179
180pub type GtkDragResult = c_int;
181pub const GTK_DRAG_RESULT_SUCCESS: GtkDragResult = 0;
182pub const GTK_DRAG_RESULT_NO_TARGET: GtkDragResult = 1;
183pub const GTK_DRAG_RESULT_USER_CANCELLED: GtkDragResult = 2;
184pub const GTK_DRAG_RESULT_TIMEOUT_EXPIRED: GtkDragResult = 3;
185pub const GTK_DRAG_RESULT_GRAB_BROKEN: GtkDragResult = 4;
186pub const GTK_DRAG_RESULT_ERROR: GtkDragResult = 5;
187
188pub type GtkEntryIconPosition = c_int;
189pub const GTK_ENTRY_ICON_PRIMARY: GtkEntryIconPosition = 0;
190pub const GTK_ENTRY_ICON_SECONDARY: GtkEntryIconPosition = 1;
191
192pub type GtkEventSequenceState = c_int;
193pub const GTK_EVENT_SEQUENCE_NONE: GtkEventSequenceState = 0;
194pub const GTK_EVENT_SEQUENCE_CLAIMED: GtkEventSequenceState = 1;
195pub const GTK_EVENT_SEQUENCE_DENIED: GtkEventSequenceState = 2;
196
197pub type GtkExpanderStyle = c_int;
198pub const GTK_EXPANDER_COLLAPSED: GtkExpanderStyle = 0;
199pub const GTK_EXPANDER_SEMI_COLLAPSED: GtkExpanderStyle = 1;
200pub const GTK_EXPANDER_SEMI_EXPANDED: GtkExpanderStyle = 2;
201pub const GTK_EXPANDER_EXPANDED: GtkExpanderStyle = 3;
202
203pub type GtkFileChooserAction = c_int;
204pub const GTK_FILE_CHOOSER_ACTION_OPEN: GtkFileChooserAction = 0;
205pub const GTK_FILE_CHOOSER_ACTION_SAVE: GtkFileChooserAction = 1;
206pub const GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER: GtkFileChooserAction = 2;
207pub const GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER: GtkFileChooserAction = 3;
208
209pub type GtkFileChooserConfirmation = c_int;
210pub const GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM: GtkFileChooserConfirmation = 0;
211pub const GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME: GtkFileChooserConfirmation = 1;
212pub const GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN: GtkFileChooserConfirmation = 2;
213
214pub type GtkFileChooserError = c_int;
215pub const GTK_FILE_CHOOSER_ERROR_NONEXISTENT: GtkFileChooserError = 0;
216pub const GTK_FILE_CHOOSER_ERROR_BAD_FILENAME: GtkFileChooserError = 1;
217pub const GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS: GtkFileChooserError = 2;
218pub const GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME: GtkFileChooserError = 3;
219
220pub type GtkIMPreeditStyle = c_int;
221pub const GTK_IM_PREEDIT_NOTHING: GtkIMPreeditStyle = 0;
222pub const GTK_IM_PREEDIT_CALLBACK: GtkIMPreeditStyle = 1;
223pub const GTK_IM_PREEDIT_NONE: GtkIMPreeditStyle = 2;
224
225pub type GtkIMStatusStyle = c_int;
226pub const GTK_IM_STATUS_NOTHING: GtkIMStatusStyle = 0;
227pub const GTK_IM_STATUS_CALLBACK: GtkIMStatusStyle = 1;
228pub const GTK_IM_STATUS_NONE: GtkIMStatusStyle = 2;
229
230pub type GtkIconSize = c_int;
231pub const GTK_ICON_SIZE_INVALID: GtkIconSize = 0;
232pub const GTK_ICON_SIZE_MENU: GtkIconSize = 1;
233pub const GTK_ICON_SIZE_SMALL_TOOLBAR: GtkIconSize = 2;
234pub const GTK_ICON_SIZE_LARGE_TOOLBAR: GtkIconSize = 3;
235pub const GTK_ICON_SIZE_BUTTON: GtkIconSize = 4;
236pub const GTK_ICON_SIZE_DND: GtkIconSize = 5;
237pub const GTK_ICON_SIZE_DIALOG: GtkIconSize = 6;
238
239pub type GtkIconThemeError = c_int;
240pub const GTK_ICON_THEME_NOT_FOUND: GtkIconThemeError = 0;
241pub const GTK_ICON_THEME_FAILED: GtkIconThemeError = 1;
242
243pub type GtkIconViewDropPosition = c_int;
244pub const GTK_ICON_VIEW_NO_DROP: GtkIconViewDropPosition = 0;
245pub const GTK_ICON_VIEW_DROP_INTO: GtkIconViewDropPosition = 1;
246pub const GTK_ICON_VIEW_DROP_LEFT: GtkIconViewDropPosition = 2;
247pub const GTK_ICON_VIEW_DROP_RIGHT: GtkIconViewDropPosition = 3;
248pub const GTK_ICON_VIEW_DROP_ABOVE: GtkIconViewDropPosition = 4;
249pub const GTK_ICON_VIEW_DROP_BELOW: GtkIconViewDropPosition = 5;
250
251pub type GtkImageType = c_int;
252pub const GTK_IMAGE_EMPTY: GtkImageType = 0;
253pub const GTK_IMAGE_PIXBUF: GtkImageType = 1;
254pub const GTK_IMAGE_STOCK: GtkImageType = 2;
255pub const GTK_IMAGE_ICON_SET: GtkImageType = 3;
256pub const GTK_IMAGE_ANIMATION: GtkImageType = 4;
257pub const GTK_IMAGE_ICON_NAME: GtkImageType = 5;
258pub const GTK_IMAGE_GICON: GtkImageType = 6;
259pub const GTK_IMAGE_SURFACE: GtkImageType = 7;
260
261pub type GtkInputPurpose = c_int;
262pub const GTK_INPUT_PURPOSE_FREE_FORM: GtkInputPurpose = 0;
263pub const GTK_INPUT_PURPOSE_ALPHA: GtkInputPurpose = 1;
264pub const GTK_INPUT_PURPOSE_DIGITS: GtkInputPurpose = 2;
265pub const GTK_INPUT_PURPOSE_NUMBER: GtkInputPurpose = 3;
266pub const GTK_INPUT_PURPOSE_PHONE: GtkInputPurpose = 4;
267pub const GTK_INPUT_PURPOSE_URL: GtkInputPurpose = 5;
268pub const GTK_INPUT_PURPOSE_EMAIL: GtkInputPurpose = 6;
269pub const GTK_INPUT_PURPOSE_NAME: GtkInputPurpose = 7;
270pub const GTK_INPUT_PURPOSE_PASSWORD: GtkInputPurpose = 8;
271pub const GTK_INPUT_PURPOSE_PIN: GtkInputPurpose = 9;
272pub const GTK_INPUT_PURPOSE_TERMINAL: GtkInputPurpose = 10;
273
274pub type GtkJustification = c_int;
275pub const GTK_JUSTIFY_LEFT: GtkJustification = 0;
276pub const GTK_JUSTIFY_RIGHT: GtkJustification = 1;
277pub const GTK_JUSTIFY_CENTER: GtkJustification = 2;
278pub const GTK_JUSTIFY_FILL: GtkJustification = 3;
279
280pub type GtkLevelBarMode = c_int;
281pub const GTK_LEVEL_BAR_MODE_CONTINUOUS: GtkLevelBarMode = 0;
282pub const GTK_LEVEL_BAR_MODE_DISCRETE: GtkLevelBarMode = 1;
283
284pub type GtkLicense = c_int;
285pub const GTK_LICENSE_UNKNOWN: GtkLicense = 0;
286pub const GTK_LICENSE_CUSTOM: GtkLicense = 1;
287pub const GTK_LICENSE_GPL_2_0: GtkLicense = 2;
288pub const GTK_LICENSE_GPL_3_0: GtkLicense = 3;
289pub const GTK_LICENSE_LGPL_2_1: GtkLicense = 4;
290pub const GTK_LICENSE_LGPL_3_0: GtkLicense = 5;
291pub const GTK_LICENSE_BSD: GtkLicense = 6;
292pub const GTK_LICENSE_MIT_X11: GtkLicense = 7;
293pub const GTK_LICENSE_ARTISTIC: GtkLicense = 8;
294pub const GTK_LICENSE_GPL_2_0_ONLY: GtkLicense = 9;
295pub const GTK_LICENSE_GPL_3_0_ONLY: GtkLicense = 10;
296pub const GTK_LICENSE_LGPL_2_1_ONLY: GtkLicense = 11;
297pub const GTK_LICENSE_LGPL_3_0_ONLY: GtkLicense = 12;
298pub const GTK_LICENSE_AGPL_3_0: GtkLicense = 13;
299pub const GTK_LICENSE_AGPL_3_0_ONLY: GtkLicense = 14;
300pub const GTK_LICENSE_BSD_3: GtkLicense = 15;
301pub const GTK_LICENSE_APACHE_2_0: GtkLicense = 16;
302pub const GTK_LICENSE_MPL_2_0: GtkLicense = 17;
303
304pub type GtkMenuDirectionType = c_int;
305pub const GTK_MENU_DIR_PARENT: GtkMenuDirectionType = 0;
306pub const GTK_MENU_DIR_CHILD: GtkMenuDirectionType = 1;
307pub const GTK_MENU_DIR_NEXT: GtkMenuDirectionType = 2;
308pub const GTK_MENU_DIR_PREV: GtkMenuDirectionType = 3;
309
310pub type GtkMessageType = c_int;
311pub const GTK_MESSAGE_INFO: GtkMessageType = 0;
312pub const GTK_MESSAGE_WARNING: GtkMessageType = 1;
313pub const GTK_MESSAGE_QUESTION: GtkMessageType = 2;
314pub const GTK_MESSAGE_ERROR: GtkMessageType = 3;
315pub const GTK_MESSAGE_OTHER: GtkMessageType = 4;
316
317pub type GtkMovementStep = c_int;
318pub const GTK_MOVEMENT_LOGICAL_POSITIONS: GtkMovementStep = 0;
319pub const GTK_MOVEMENT_VISUAL_POSITIONS: GtkMovementStep = 1;
320pub const GTK_MOVEMENT_WORDS: GtkMovementStep = 2;
321pub const GTK_MOVEMENT_DISPLAY_LINES: GtkMovementStep = 3;
322pub const GTK_MOVEMENT_DISPLAY_LINE_ENDS: GtkMovementStep = 4;
323pub const GTK_MOVEMENT_PARAGRAPHS: GtkMovementStep = 5;
324pub const GTK_MOVEMENT_PARAGRAPH_ENDS: GtkMovementStep = 6;
325pub const GTK_MOVEMENT_PAGES: GtkMovementStep = 7;
326pub const GTK_MOVEMENT_BUFFER_ENDS: GtkMovementStep = 8;
327pub const GTK_MOVEMENT_HORIZONTAL_PAGES: GtkMovementStep = 9;
328
329pub type GtkNotebookTab = c_int;
330pub const GTK_NOTEBOOK_TAB_FIRST: GtkNotebookTab = 0;
331pub const GTK_NOTEBOOK_TAB_LAST: GtkNotebookTab = 1;
332
333pub type GtkNumberUpLayout = c_int;
334pub const GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM: GtkNumberUpLayout = 0;
335pub const GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP: GtkNumberUpLayout = 1;
336pub const GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM: GtkNumberUpLayout = 2;
337pub const GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP: GtkNumberUpLayout = 3;
338pub const GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT: GtkNumberUpLayout = 4;
339pub const GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT: GtkNumberUpLayout = 5;
340pub const GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT: GtkNumberUpLayout = 6;
341pub const GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT: GtkNumberUpLayout = 7;
342
343pub type GtkOrientation = c_int;
344pub const GTK_ORIENTATION_HORIZONTAL: GtkOrientation = 0;
345pub const GTK_ORIENTATION_VERTICAL: GtkOrientation = 1;
346
347pub type GtkPackDirection = c_int;
348pub const GTK_PACK_DIRECTION_LTR: GtkPackDirection = 0;
349pub const GTK_PACK_DIRECTION_RTL: GtkPackDirection = 1;
350pub const GTK_PACK_DIRECTION_TTB: GtkPackDirection = 2;
351pub const GTK_PACK_DIRECTION_BTT: GtkPackDirection = 3;
352
353pub type GtkPackType = c_int;
354pub const GTK_PACK_START: GtkPackType = 0;
355pub const GTK_PACK_END: GtkPackType = 1;
356
357pub type GtkPadActionType = c_int;
358pub const GTK_PAD_ACTION_BUTTON: GtkPadActionType = 0;
359pub const GTK_PAD_ACTION_RING: GtkPadActionType = 1;
360pub const GTK_PAD_ACTION_STRIP: GtkPadActionType = 2;
361
362pub type GtkPageOrientation = c_int;
363pub const GTK_PAGE_ORIENTATION_PORTRAIT: GtkPageOrientation = 0;
364pub const GTK_PAGE_ORIENTATION_LANDSCAPE: GtkPageOrientation = 1;
365pub const GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT: GtkPageOrientation = 2;
366pub const GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE: GtkPageOrientation = 3;
367
368pub type GtkPageSet = c_int;
369pub const GTK_PAGE_SET_ALL: GtkPageSet = 0;
370pub const GTK_PAGE_SET_EVEN: GtkPageSet = 1;
371pub const GTK_PAGE_SET_ODD: GtkPageSet = 2;
372
373pub type GtkPanDirection = c_int;
374pub const GTK_PAN_DIRECTION_LEFT: GtkPanDirection = 0;
375pub const GTK_PAN_DIRECTION_RIGHT: GtkPanDirection = 1;
376pub const GTK_PAN_DIRECTION_UP: GtkPanDirection = 2;
377pub const GTK_PAN_DIRECTION_DOWN: GtkPanDirection = 3;
378
379pub type GtkPathPriorityType = c_int;
380pub const GTK_PATH_PRIO_LOWEST: GtkPathPriorityType = 0;
381pub const GTK_PATH_PRIO_GTK: GtkPathPriorityType = 4;
382pub const GTK_PATH_PRIO_APPLICATION: GtkPathPriorityType = 8;
383pub const GTK_PATH_PRIO_THEME: GtkPathPriorityType = 10;
384pub const GTK_PATH_PRIO_RC: GtkPathPriorityType = 12;
385pub const GTK_PATH_PRIO_HIGHEST: GtkPathPriorityType = 15;
386
387pub type GtkPathType = c_int;
388pub const GTK_PATH_WIDGET: GtkPathType = 0;
389pub const GTK_PATH_WIDGET_CLASS: GtkPathType = 1;
390pub const GTK_PATH_CLASS: GtkPathType = 2;
391
392pub type GtkPolicyType = c_int;
393pub const GTK_POLICY_ALWAYS: GtkPolicyType = 0;
394pub const GTK_POLICY_AUTOMATIC: GtkPolicyType = 1;
395pub const GTK_POLICY_NEVER: GtkPolicyType = 2;
396pub const GTK_POLICY_EXTERNAL: GtkPolicyType = 3;
397
398pub type GtkPopoverConstraint = c_int;
399pub const GTK_POPOVER_CONSTRAINT_NONE: GtkPopoverConstraint = 0;
400pub const GTK_POPOVER_CONSTRAINT_WINDOW: GtkPopoverConstraint = 1;
401
402pub type GtkPositionType = c_int;
403pub const GTK_POS_LEFT: GtkPositionType = 0;
404pub const GTK_POS_RIGHT: GtkPositionType = 1;
405pub const GTK_POS_TOP: GtkPositionType = 2;
406pub const GTK_POS_BOTTOM: GtkPositionType = 3;
407
408pub type GtkPrintDuplex = c_int;
409pub const GTK_PRINT_DUPLEX_SIMPLEX: GtkPrintDuplex = 0;
410pub const GTK_PRINT_DUPLEX_HORIZONTAL: GtkPrintDuplex = 1;
411pub const GTK_PRINT_DUPLEX_VERTICAL: GtkPrintDuplex = 2;
412
413pub type GtkPrintError = c_int;
414pub const GTK_PRINT_ERROR_GENERAL: GtkPrintError = 0;
415pub const GTK_PRINT_ERROR_INTERNAL_ERROR: GtkPrintError = 1;
416pub const GTK_PRINT_ERROR_NOMEM: GtkPrintError = 2;
417pub const GTK_PRINT_ERROR_INVALID_FILE: GtkPrintError = 3;
418
419pub type GtkPrintOperationAction = c_int;
420pub const GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG: GtkPrintOperationAction = 0;
421pub const GTK_PRINT_OPERATION_ACTION_PRINT: GtkPrintOperationAction = 1;
422pub const GTK_PRINT_OPERATION_ACTION_PREVIEW: GtkPrintOperationAction = 2;
423pub const GTK_PRINT_OPERATION_ACTION_EXPORT: GtkPrintOperationAction = 3;
424
425pub type GtkPrintOperationResult = c_int;
426pub const GTK_PRINT_OPERATION_RESULT_ERROR: GtkPrintOperationResult = 0;
427pub const GTK_PRINT_OPERATION_RESULT_APPLY: GtkPrintOperationResult = 1;
428pub const GTK_PRINT_OPERATION_RESULT_CANCEL: GtkPrintOperationResult = 2;
429pub const GTK_PRINT_OPERATION_RESULT_IN_PROGRESS: GtkPrintOperationResult = 3;
430
431pub type GtkPrintPages = c_int;
432pub const GTK_PRINT_PAGES_ALL: GtkPrintPages = 0;
433pub const GTK_PRINT_PAGES_CURRENT: GtkPrintPages = 1;
434pub const GTK_PRINT_PAGES_RANGES: GtkPrintPages = 2;
435pub const GTK_PRINT_PAGES_SELECTION: GtkPrintPages = 3;
436
437pub type GtkPrintQuality = c_int;
438pub const GTK_PRINT_QUALITY_LOW: GtkPrintQuality = 0;
439pub const GTK_PRINT_QUALITY_NORMAL: GtkPrintQuality = 1;
440pub const GTK_PRINT_QUALITY_HIGH: GtkPrintQuality = 2;
441pub const GTK_PRINT_QUALITY_DRAFT: GtkPrintQuality = 3;
442
443pub type GtkPrintStatus = c_int;
444pub const GTK_PRINT_STATUS_INITIAL: GtkPrintStatus = 0;
445pub const GTK_PRINT_STATUS_PREPARING: GtkPrintStatus = 1;
446pub const GTK_PRINT_STATUS_GENERATING_DATA: GtkPrintStatus = 2;
447pub const GTK_PRINT_STATUS_SENDING_DATA: GtkPrintStatus = 3;
448pub const GTK_PRINT_STATUS_PENDING: GtkPrintStatus = 4;
449pub const GTK_PRINT_STATUS_PENDING_ISSUE: GtkPrintStatus = 5;
450pub const GTK_PRINT_STATUS_PRINTING: GtkPrintStatus = 6;
451pub const GTK_PRINT_STATUS_FINISHED: GtkPrintStatus = 7;
452pub const GTK_PRINT_STATUS_FINISHED_ABORTED: GtkPrintStatus = 8;
453
454pub type GtkPropagationPhase = c_int;
455pub const GTK_PHASE_NONE: GtkPropagationPhase = 0;
456pub const GTK_PHASE_CAPTURE: GtkPropagationPhase = 1;
457pub const GTK_PHASE_BUBBLE: GtkPropagationPhase = 2;
458pub const GTK_PHASE_TARGET: GtkPropagationPhase = 3;
459
460pub type GtkRcTokenType = c_int;
461pub const GTK_RC_TOKEN_INVALID: GtkRcTokenType = 270;
462pub const GTK_RC_TOKEN_INCLUDE: GtkRcTokenType = 271;
463pub const GTK_RC_TOKEN_NORMAL: GtkRcTokenType = 272;
464pub const GTK_RC_TOKEN_ACTIVE: GtkRcTokenType = 273;
465pub const GTK_RC_TOKEN_PRELIGHT: GtkRcTokenType = 274;
466pub const GTK_RC_TOKEN_SELECTED: GtkRcTokenType = 275;
467pub const GTK_RC_TOKEN_INSENSITIVE: GtkRcTokenType = 276;
468pub const GTK_RC_TOKEN_FG: GtkRcTokenType = 277;
469pub const GTK_RC_TOKEN_BG: GtkRcTokenType = 278;
470pub const GTK_RC_TOKEN_TEXT: GtkRcTokenType = 279;
471pub const GTK_RC_TOKEN_BASE: GtkRcTokenType = 280;
472pub const GTK_RC_TOKEN_XTHICKNESS: GtkRcTokenType = 281;
473pub const GTK_RC_TOKEN_YTHICKNESS: GtkRcTokenType = 282;
474pub const GTK_RC_TOKEN_FONT: GtkRcTokenType = 283;
475pub const GTK_RC_TOKEN_FONTSET: GtkRcTokenType = 284;
476pub const GTK_RC_TOKEN_FONT_NAME: GtkRcTokenType = 285;
477pub const GTK_RC_TOKEN_BG_PIXMAP: GtkRcTokenType = 286;
478pub const GTK_RC_TOKEN_PIXMAP_PATH: GtkRcTokenType = 287;
479pub const GTK_RC_TOKEN_STYLE: GtkRcTokenType = 288;
480pub const GTK_RC_TOKEN_BINDING: GtkRcTokenType = 289;
481pub const GTK_RC_TOKEN_BIND: GtkRcTokenType = 290;
482pub const GTK_RC_TOKEN_WIDGET: GtkRcTokenType = 291;
483pub const GTK_RC_TOKEN_WIDGET_CLASS: GtkRcTokenType = 292;
484pub const GTK_RC_TOKEN_CLASS: GtkRcTokenType = 293;
485pub const GTK_RC_TOKEN_LOWEST: GtkRcTokenType = 294;
486pub const GTK_RC_TOKEN_GTK: GtkRcTokenType = 295;
487pub const GTK_RC_TOKEN_APPLICATION: GtkRcTokenType = 296;
488pub const GTK_RC_TOKEN_THEME: GtkRcTokenType = 297;
489pub const GTK_RC_TOKEN_RC: GtkRcTokenType = 298;
490pub const GTK_RC_TOKEN_HIGHEST: GtkRcTokenType = 299;
491pub const GTK_RC_TOKEN_ENGINE: GtkRcTokenType = 300;
492pub const GTK_RC_TOKEN_MODULE_PATH: GtkRcTokenType = 301;
493pub const GTK_RC_TOKEN_IM_MODULE_PATH: GtkRcTokenType = 302;
494pub const GTK_RC_TOKEN_IM_MODULE_FILE: GtkRcTokenType = 303;
495pub const GTK_RC_TOKEN_STOCK: GtkRcTokenType = 304;
496pub const GTK_RC_TOKEN_LTR: GtkRcTokenType = 305;
497pub const GTK_RC_TOKEN_RTL: GtkRcTokenType = 306;
498pub const GTK_RC_TOKEN_COLOR: GtkRcTokenType = 307;
499pub const GTK_RC_TOKEN_UNBIND: GtkRcTokenType = 308;
500pub const GTK_RC_TOKEN_LAST: GtkRcTokenType = 309;
501
502pub type GtkRecentChooserError = c_int;
503pub const GTK_RECENT_CHOOSER_ERROR_NOT_FOUND: GtkRecentChooserError = 0;
504pub const GTK_RECENT_CHOOSER_ERROR_INVALID_URI: GtkRecentChooserError = 1;
505
506pub type GtkRecentManagerError = c_int;
507pub const GTK_RECENT_MANAGER_ERROR_NOT_FOUND: GtkRecentManagerError = 0;
508pub const GTK_RECENT_MANAGER_ERROR_INVALID_URI: GtkRecentManagerError = 1;
509pub const GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING: GtkRecentManagerError = 2;
510pub const GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED: GtkRecentManagerError = 3;
511pub const GTK_RECENT_MANAGER_ERROR_READ: GtkRecentManagerError = 4;
512pub const GTK_RECENT_MANAGER_ERROR_WRITE: GtkRecentManagerError = 5;
513pub const GTK_RECENT_MANAGER_ERROR_UNKNOWN: GtkRecentManagerError = 6;
514
515pub type GtkRecentSortType = c_int;
516pub const GTK_RECENT_SORT_NONE: GtkRecentSortType = 0;
517pub const GTK_RECENT_SORT_MRU: GtkRecentSortType = 1;
518pub const GTK_RECENT_SORT_LRU: GtkRecentSortType = 2;
519pub const GTK_RECENT_SORT_CUSTOM: GtkRecentSortType = 3;
520
521pub type GtkReliefStyle = c_int;
522pub const GTK_RELIEF_NORMAL: GtkReliefStyle = 0;
523pub const GTK_RELIEF_HALF: GtkReliefStyle = 1;
524pub const GTK_RELIEF_NONE: GtkReliefStyle = 2;
525
526pub type GtkResizeMode = c_int;
527pub const GTK_RESIZE_PARENT: GtkResizeMode = 0;
528pub const GTK_RESIZE_QUEUE: GtkResizeMode = 1;
529pub const GTK_RESIZE_IMMEDIATE: GtkResizeMode = 2;
530
531pub type GtkResponseType = c_int;
532pub const GTK_RESPONSE_NONE: GtkResponseType = -1;
533pub const GTK_RESPONSE_REJECT: GtkResponseType = -2;
534pub const GTK_RESPONSE_ACCEPT: GtkResponseType = -3;
535pub const GTK_RESPONSE_DELETE_EVENT: GtkResponseType = -4;
536pub const GTK_RESPONSE_OK: GtkResponseType = -5;
537pub const GTK_RESPONSE_CANCEL: GtkResponseType = -6;
538pub const GTK_RESPONSE_CLOSE: GtkResponseType = -7;
539pub const GTK_RESPONSE_YES: GtkResponseType = -8;
540pub const GTK_RESPONSE_NO: GtkResponseType = -9;
541pub const GTK_RESPONSE_APPLY: GtkResponseType = -10;
542pub const GTK_RESPONSE_HELP: GtkResponseType = -11;
543
544pub type GtkRevealerTransitionType = c_int;
545pub const GTK_REVEALER_TRANSITION_TYPE_NONE: GtkRevealerTransitionType = 0;
546pub const GTK_REVEALER_TRANSITION_TYPE_CROSSFADE: GtkRevealerTransitionType = 1;
547pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT: GtkRevealerTransitionType = 2;
548pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT: GtkRevealerTransitionType = 3;
549pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP: GtkRevealerTransitionType = 4;
550pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN: GtkRevealerTransitionType = 5;
551
552pub type GtkScrollStep = c_int;
553pub const GTK_SCROLL_STEPS: GtkScrollStep = 0;
554pub const GTK_SCROLL_PAGES: GtkScrollStep = 1;
555pub const GTK_SCROLL_ENDS: GtkScrollStep = 2;
556pub const GTK_SCROLL_HORIZONTAL_STEPS: GtkScrollStep = 3;
557pub const GTK_SCROLL_HORIZONTAL_PAGES: GtkScrollStep = 4;
558pub const GTK_SCROLL_HORIZONTAL_ENDS: GtkScrollStep = 5;
559
560pub type GtkScrollType = c_int;
561pub const GTK_SCROLL_NONE: GtkScrollType = 0;
562pub const GTK_SCROLL_JUMP: GtkScrollType = 1;
563pub const GTK_SCROLL_STEP_BACKWARD: GtkScrollType = 2;
564pub const GTK_SCROLL_STEP_FORWARD: GtkScrollType = 3;
565pub const GTK_SCROLL_PAGE_BACKWARD: GtkScrollType = 4;
566pub const GTK_SCROLL_PAGE_FORWARD: GtkScrollType = 5;
567pub const GTK_SCROLL_STEP_UP: GtkScrollType = 6;
568pub const GTK_SCROLL_STEP_DOWN: GtkScrollType = 7;
569pub const GTK_SCROLL_PAGE_UP: GtkScrollType = 8;
570pub const GTK_SCROLL_PAGE_DOWN: GtkScrollType = 9;
571pub const GTK_SCROLL_STEP_LEFT: GtkScrollType = 10;
572pub const GTK_SCROLL_STEP_RIGHT: GtkScrollType = 11;
573pub const GTK_SCROLL_PAGE_LEFT: GtkScrollType = 12;
574pub const GTK_SCROLL_PAGE_RIGHT: GtkScrollType = 13;
575pub const GTK_SCROLL_START: GtkScrollType = 14;
576pub const GTK_SCROLL_END: GtkScrollType = 15;
577
578pub type GtkScrollablePolicy = c_int;
579pub const GTK_SCROLL_MINIMUM: GtkScrollablePolicy = 0;
580pub const GTK_SCROLL_NATURAL: GtkScrollablePolicy = 1;
581
582pub type GtkSelectionMode = c_int;
583pub const GTK_SELECTION_NONE: GtkSelectionMode = 0;
584pub const GTK_SELECTION_SINGLE: GtkSelectionMode = 1;
585pub const GTK_SELECTION_BROWSE: GtkSelectionMode = 2;
586pub const GTK_SELECTION_MULTIPLE: GtkSelectionMode = 3;
587
588pub type GtkSensitivityType = c_int;
589pub const GTK_SENSITIVITY_AUTO: GtkSensitivityType = 0;
590pub const GTK_SENSITIVITY_ON: GtkSensitivityType = 1;
591pub const GTK_SENSITIVITY_OFF: GtkSensitivityType = 2;
592
593pub type GtkShadowType = c_int;
594pub const GTK_SHADOW_NONE: GtkShadowType = 0;
595pub const GTK_SHADOW_IN: GtkShadowType = 1;
596pub const GTK_SHADOW_OUT: GtkShadowType = 2;
597pub const GTK_SHADOW_ETCHED_IN: GtkShadowType = 3;
598pub const GTK_SHADOW_ETCHED_OUT: GtkShadowType = 4;
599
600pub type GtkShortcutType = c_int;
601pub const GTK_SHORTCUT_ACCELERATOR: GtkShortcutType = 0;
602pub const GTK_SHORTCUT_GESTURE_PINCH: GtkShortcutType = 1;
603pub const GTK_SHORTCUT_GESTURE_STRETCH: GtkShortcutType = 2;
604pub const GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE: GtkShortcutType = 3;
605pub const GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE: GtkShortcutType = 4;
606pub const GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT: GtkShortcutType = 5;
607pub const GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT: GtkShortcutType = 6;
608pub const GTK_SHORTCUT_GESTURE: GtkShortcutType = 7;
609
610pub type GtkSizeGroupMode = c_int;
611pub const GTK_SIZE_GROUP_NONE: GtkSizeGroupMode = 0;
612pub const GTK_SIZE_GROUP_HORIZONTAL: GtkSizeGroupMode = 1;
613pub const GTK_SIZE_GROUP_VERTICAL: GtkSizeGroupMode = 2;
614pub const GTK_SIZE_GROUP_BOTH: GtkSizeGroupMode = 3;
615
616pub type GtkSizeRequestMode = c_int;
617pub const GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH: GtkSizeRequestMode = 0;
618pub const GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT: GtkSizeRequestMode = 1;
619pub const GTK_SIZE_REQUEST_CONSTANT_SIZE: GtkSizeRequestMode = 2;
620
621pub type GtkSortType = c_int;
622pub const GTK_SORT_ASCENDING: GtkSortType = 0;
623pub const GTK_SORT_DESCENDING: GtkSortType = 1;
624
625pub type GtkSpinButtonUpdatePolicy = c_int;
626pub const GTK_UPDATE_ALWAYS: GtkSpinButtonUpdatePolicy = 0;
627pub const GTK_UPDATE_IF_VALID: GtkSpinButtonUpdatePolicy = 1;
628
629pub type GtkSpinType = c_int;
630pub const GTK_SPIN_STEP_FORWARD: GtkSpinType = 0;
631pub const GTK_SPIN_STEP_BACKWARD: GtkSpinType = 1;
632pub const GTK_SPIN_PAGE_FORWARD: GtkSpinType = 2;
633pub const GTK_SPIN_PAGE_BACKWARD: GtkSpinType = 3;
634pub const GTK_SPIN_HOME: GtkSpinType = 4;
635pub const GTK_SPIN_END: GtkSpinType = 5;
636pub const GTK_SPIN_USER_DEFINED: GtkSpinType = 6;
637
638pub type GtkStackTransitionType = c_int;
639pub const GTK_STACK_TRANSITION_TYPE_NONE: GtkStackTransitionType = 0;
640pub const GTK_STACK_TRANSITION_TYPE_CROSSFADE: GtkStackTransitionType = 1;
641pub const GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT: GtkStackTransitionType = 2;
642pub const GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT: GtkStackTransitionType = 3;
643pub const GTK_STACK_TRANSITION_TYPE_SLIDE_UP: GtkStackTransitionType = 4;
644pub const GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN: GtkStackTransitionType = 5;
645pub const GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT: GtkStackTransitionType = 6;
646pub const GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN: GtkStackTransitionType = 7;
647pub const GTK_STACK_TRANSITION_TYPE_OVER_UP: GtkStackTransitionType = 8;
648pub const GTK_STACK_TRANSITION_TYPE_OVER_DOWN: GtkStackTransitionType = 9;
649pub const GTK_STACK_TRANSITION_TYPE_OVER_LEFT: GtkStackTransitionType = 10;
650pub const GTK_STACK_TRANSITION_TYPE_OVER_RIGHT: GtkStackTransitionType = 11;
651pub const GTK_STACK_TRANSITION_TYPE_UNDER_UP: GtkStackTransitionType = 12;
652pub const GTK_STACK_TRANSITION_TYPE_UNDER_DOWN: GtkStackTransitionType = 13;
653pub const GTK_STACK_TRANSITION_TYPE_UNDER_LEFT: GtkStackTransitionType = 14;
654pub const GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT: GtkStackTransitionType = 15;
655pub const GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN: GtkStackTransitionType = 16;
656pub const GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP: GtkStackTransitionType = 17;
657pub const GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT: GtkStackTransitionType = 18;
658pub const GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT: GtkStackTransitionType = 19;
659
660pub type GtkStateType = c_int;
661pub const GTK_STATE_NORMAL: GtkStateType = 0;
662pub const GTK_STATE_ACTIVE: GtkStateType = 1;
663pub const GTK_STATE_PRELIGHT: GtkStateType = 2;
664pub const GTK_STATE_SELECTED: GtkStateType = 3;
665pub const GTK_STATE_INSENSITIVE: GtkStateType = 4;
666pub const GTK_STATE_INCONSISTENT: GtkStateType = 5;
667pub const GTK_STATE_FOCUSED: GtkStateType = 6;
668
669pub type GtkTextBufferTargetInfo = c_int;
670pub const GTK_TEXT_BUFFER_TARGET_INFO_BUFFER_CONTENTS: GtkTextBufferTargetInfo = -1;
671pub const GTK_TEXT_BUFFER_TARGET_INFO_RICH_TEXT: GtkTextBufferTargetInfo = -2;
672pub const GTK_TEXT_BUFFER_TARGET_INFO_TEXT: GtkTextBufferTargetInfo = -3;
673
674pub type GtkTextDirection = c_int;
675pub const GTK_TEXT_DIR_NONE: GtkTextDirection = 0;
676pub const GTK_TEXT_DIR_LTR: GtkTextDirection = 1;
677pub const GTK_TEXT_DIR_RTL: GtkTextDirection = 2;
678
679pub type GtkTextExtendSelection = c_int;
680pub const GTK_TEXT_EXTEND_SELECTION_WORD: GtkTextExtendSelection = 0;
681pub const GTK_TEXT_EXTEND_SELECTION_LINE: GtkTextExtendSelection = 1;
682
683pub type GtkTextViewLayer = c_int;
684pub const GTK_TEXT_VIEW_LAYER_BELOW: GtkTextViewLayer = 0;
685pub const GTK_TEXT_VIEW_LAYER_ABOVE: GtkTextViewLayer = 1;
686pub const GTK_TEXT_VIEW_LAYER_BELOW_TEXT: GtkTextViewLayer = 2;
687pub const GTK_TEXT_VIEW_LAYER_ABOVE_TEXT: GtkTextViewLayer = 3;
688
689pub type GtkTextWindowType = c_int;
690pub const GTK_TEXT_WINDOW_PRIVATE: GtkTextWindowType = 0;
691pub const GTK_TEXT_WINDOW_WIDGET: GtkTextWindowType = 1;
692pub const GTK_TEXT_WINDOW_TEXT: GtkTextWindowType = 2;
693pub const GTK_TEXT_WINDOW_LEFT: GtkTextWindowType = 3;
694pub const GTK_TEXT_WINDOW_RIGHT: GtkTextWindowType = 4;
695pub const GTK_TEXT_WINDOW_TOP: GtkTextWindowType = 5;
696pub const GTK_TEXT_WINDOW_BOTTOM: GtkTextWindowType = 6;
697
698pub type GtkToolbarSpaceStyle = c_int;
699pub const GTK_TOOLBAR_SPACE_EMPTY: GtkToolbarSpaceStyle = 0;
700pub const GTK_TOOLBAR_SPACE_LINE: GtkToolbarSpaceStyle = 1;
701
702pub type GtkToolbarStyle = c_int;
703pub const GTK_TOOLBAR_ICONS: GtkToolbarStyle = 0;
704pub const GTK_TOOLBAR_TEXT: GtkToolbarStyle = 1;
705pub const GTK_TOOLBAR_BOTH: GtkToolbarStyle = 2;
706pub const GTK_TOOLBAR_BOTH_HORIZ: GtkToolbarStyle = 3;
707
708pub type GtkTreeViewColumnSizing = c_int;
709pub const GTK_TREE_VIEW_COLUMN_GROW_ONLY: GtkTreeViewColumnSizing = 0;
710pub const GTK_TREE_VIEW_COLUMN_AUTOSIZE: GtkTreeViewColumnSizing = 1;
711pub const GTK_TREE_VIEW_COLUMN_FIXED: GtkTreeViewColumnSizing = 2;
712
713pub type GtkTreeViewDropPosition = c_int;
714pub const GTK_TREE_VIEW_DROP_BEFORE: GtkTreeViewDropPosition = 0;
715pub const GTK_TREE_VIEW_DROP_AFTER: GtkTreeViewDropPosition = 1;
716pub const GTK_TREE_VIEW_DROP_INTO_OR_BEFORE: GtkTreeViewDropPosition = 2;
717pub const GTK_TREE_VIEW_DROP_INTO_OR_AFTER: GtkTreeViewDropPosition = 3;
718
719pub type GtkTreeViewGridLines = c_int;
720pub const GTK_TREE_VIEW_GRID_LINES_NONE: GtkTreeViewGridLines = 0;
721pub const GTK_TREE_VIEW_GRID_LINES_HORIZONTAL: GtkTreeViewGridLines = 1;
722pub const GTK_TREE_VIEW_GRID_LINES_VERTICAL: GtkTreeViewGridLines = 2;
723pub const GTK_TREE_VIEW_GRID_LINES_BOTH: GtkTreeViewGridLines = 3;
724
725pub type GtkUnit = c_int;
726pub const GTK_UNIT_NONE: GtkUnit = 0;
727pub const GTK_UNIT_POINTS: GtkUnit = 1;
728pub const GTK_UNIT_INCH: GtkUnit = 2;
729pub const GTK_UNIT_MM: GtkUnit = 3;
730
731pub type GtkWidgetHelpType = c_int;
732pub const GTK_WIDGET_HELP_TOOLTIP: GtkWidgetHelpType = 0;
733pub const GTK_WIDGET_HELP_WHATS_THIS: GtkWidgetHelpType = 1;
734
735pub type GtkWindowPosition = c_int;
736pub const GTK_WIN_POS_NONE: GtkWindowPosition = 0;
737pub const GTK_WIN_POS_CENTER: GtkWindowPosition = 1;
738pub const GTK_WIN_POS_MOUSE: GtkWindowPosition = 2;
739pub const GTK_WIN_POS_CENTER_ALWAYS: GtkWindowPosition = 3;
740pub const GTK_WIN_POS_CENTER_ON_PARENT: GtkWindowPosition = 4;
741
742pub type GtkWindowType = c_int;
743pub const GTK_WINDOW_TOPLEVEL: GtkWindowType = 0;
744pub const GTK_WINDOW_POPUP: GtkWindowType = 1;
745
746pub type GtkWrapMode = c_int;
747pub const GTK_WRAP_NONE: GtkWrapMode = 0;
748pub const GTK_WRAP_CHAR: GtkWrapMode = 1;
749pub const GTK_WRAP_WORD: GtkWrapMode = 2;
750pub const GTK_WRAP_WORD_CHAR: GtkWrapMode = 3;
751
752// Constants
753pub const GTK_INPUT_ERROR: c_int = -1;
754pub const GTK_LEVEL_BAR_OFFSET_FULL: &[u8] = b"full\0";
755pub const GTK_LEVEL_BAR_OFFSET_HIGH: &[u8] = b"high\0";
756pub const GTK_LEVEL_BAR_OFFSET_LOW: &[u8] = b"low\0";
757pub const GTK_MAX_COMPOSE_LEN: c_int = 7;
758pub const GTK_PAPER_NAME_A3: &[u8] = b"iso_a3\0";
759pub const GTK_PAPER_NAME_A4: &[u8] = b"iso_a4\0";
760pub const GTK_PAPER_NAME_A5: &[u8] = b"iso_a5\0";
761pub const GTK_PAPER_NAME_B5: &[u8] = b"iso_b5\0";
762pub const GTK_PAPER_NAME_EXECUTIVE: &[u8] = b"na_executive\0";
763pub const GTK_PAPER_NAME_LEGAL: &[u8] = b"na_legal\0";
764pub const GTK_PAPER_NAME_LETTER: &[u8] = b"na_letter\0";
765pub const GTK_PATH_PRIO_MASK: c_int = 15;
766pub const GTK_PRINT_SETTINGS_COLLATE: &[u8] = b"collate\0";
767pub const GTK_PRINT_SETTINGS_DEFAULT_SOURCE: &[u8] = b"default-source\0";
768pub const GTK_PRINT_SETTINGS_DITHER: &[u8] = b"dither\0";
769pub const GTK_PRINT_SETTINGS_DUPLEX: &[u8] = b"duplex\0";
770pub const GTK_PRINT_SETTINGS_FINISHINGS: &[u8] = b"finishings\0";
771pub const GTK_PRINT_SETTINGS_MEDIA_TYPE: &[u8] = b"media-type\0";
772pub const GTK_PRINT_SETTINGS_NUMBER_UP: &[u8] = b"number-up\0";
773pub const GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT: &[u8] = b"number-up-layout\0";
774pub const GTK_PRINT_SETTINGS_N_COPIES: &[u8] = b"n-copies\0";
775pub const GTK_PRINT_SETTINGS_ORIENTATION: &[u8] = b"orientation\0";
776pub const GTK_PRINT_SETTINGS_OUTPUT_BASENAME: &[u8] = b"output-basename\0";
777pub const GTK_PRINT_SETTINGS_OUTPUT_BIN: &[u8] = b"output-bin\0";
778pub const GTK_PRINT_SETTINGS_OUTPUT_DIR: &[u8] = b"output-dir\0";
779pub const GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT: &[u8] = b"output-file-format\0";
780pub const GTK_PRINT_SETTINGS_OUTPUT_URI: &[u8] = b"output-uri\0";
781pub const GTK_PRINT_SETTINGS_PAGE_RANGES: &[u8] = b"page-ranges\0";
782pub const GTK_PRINT_SETTINGS_PAGE_SET: &[u8] = b"page-set\0";
783pub const GTK_PRINT_SETTINGS_PAPER_FORMAT: &[u8] = b"paper-format\0";
784pub const GTK_PRINT_SETTINGS_PAPER_HEIGHT: &[u8] = b"paper-height\0";
785pub const GTK_PRINT_SETTINGS_PAPER_WIDTH: &[u8] = b"paper-width\0";
786pub const GTK_PRINT_SETTINGS_PRINTER: &[u8] = b"printer\0";
787pub const GTK_PRINT_SETTINGS_PRINTER_LPI: &[u8] = b"printer-lpi\0";
788pub const GTK_PRINT_SETTINGS_PRINT_PAGES: &[u8] = b"print-pages\0";
789pub const GTK_PRINT_SETTINGS_QUALITY: &[u8] = b"quality\0";
790pub const GTK_PRINT_SETTINGS_RESOLUTION: &[u8] = b"resolution\0";
791pub const GTK_PRINT_SETTINGS_RESOLUTION_X: &[u8] = b"resolution-x\0";
792pub const GTK_PRINT_SETTINGS_RESOLUTION_Y: &[u8] = b"resolution-y\0";
793pub const GTK_PRINT_SETTINGS_REVERSE: &[u8] = b"reverse\0";
794pub const GTK_PRINT_SETTINGS_SCALE: &[u8] = b"scale\0";
795pub const GTK_PRINT_SETTINGS_USE_COLOR: &[u8] = b"use-color\0";
796pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_EXTRA: &[u8] = b"win32-driver-extra\0";
797pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_VERSION: &[u8] = b"win32-driver-version\0";
798pub const GTK_PRIORITY_RESIZE: c_int = 110;
799pub const GTK_STOCK_ABOUT: &[u8] = b"gtk-about\0";
800pub const GTK_STOCK_ADD: &[u8] = b"gtk-add\0";
801pub const GTK_STOCK_APPLY: &[u8] = b"gtk-apply\0";
802pub const GTK_STOCK_BOLD: &[u8] = b"gtk-bold\0";
803pub const GTK_STOCK_CANCEL: &[u8] = b"gtk-cancel\0";
804pub const GTK_STOCK_CAPS_LOCK_WARNING: &[u8] = b"gtk-caps-lock-warning\0";
805pub const GTK_STOCK_CDROM: &[u8] = b"gtk-cdrom\0";
806pub const GTK_STOCK_CLEAR: &[u8] = b"gtk-clear\0";
807pub const GTK_STOCK_CLOSE: &[u8] = b"gtk-close\0";
808pub const GTK_STOCK_COLOR_PICKER: &[u8] = b"gtk-color-picker\0";
809pub const GTK_STOCK_CONNECT: &[u8] = b"gtk-connect\0";
810pub const GTK_STOCK_CONVERT: &[u8] = b"gtk-convert\0";
811pub const GTK_STOCK_COPY: &[u8] = b"gtk-copy\0";
812pub const GTK_STOCK_CUT: &[u8] = b"gtk-cut\0";
813pub const GTK_STOCK_DELETE: &[u8] = b"gtk-delete\0";
814pub const GTK_STOCK_DIALOG_AUTHENTICATION: &[u8] = b"gtk-dialog-authentication\0";
815pub const GTK_STOCK_DIALOG_ERROR: &[u8] = b"gtk-dialog-error\0";
816pub const GTK_STOCK_DIALOG_INFO: &[u8] = b"gtk-dialog-info\0";
817pub const GTK_STOCK_DIALOG_QUESTION: &[u8] = b"gtk-dialog-question\0";
818pub const GTK_STOCK_DIALOG_WARNING: &[u8] = b"gtk-dialog-warning\0";
819pub const GTK_STOCK_DIRECTORY: &[u8] = b"gtk-directory\0";
820pub const GTK_STOCK_DISCARD: &[u8] = b"gtk-discard\0";
821pub const GTK_STOCK_DISCONNECT: &[u8] = b"gtk-disconnect\0";
822pub const GTK_STOCK_DND: &[u8] = b"gtk-dnd\0";
823pub const GTK_STOCK_DND_MULTIPLE: &[u8] = b"gtk-dnd-multiple\0";
824pub const GTK_STOCK_EDIT: &[u8] = b"gtk-edit\0";
825pub const GTK_STOCK_EXECUTE: &[u8] = b"gtk-execute\0";
826pub const GTK_STOCK_FILE: &[u8] = b"gtk-file\0";
827pub const GTK_STOCK_FIND: &[u8] = b"gtk-find\0";
828pub const GTK_STOCK_FIND_AND_REPLACE: &[u8] = b"gtk-find-and-replace\0";
829pub const GTK_STOCK_FLOPPY: &[u8] = b"gtk-floppy\0";
830pub const GTK_STOCK_FULLSCREEN: &[u8] = b"gtk-fullscreen\0";
831pub const GTK_STOCK_GOTO_BOTTOM: &[u8] = b"gtk-goto-bottom\0";
832pub const GTK_STOCK_GOTO_FIRST: &[u8] = b"gtk-goto-first\0";
833pub const GTK_STOCK_GOTO_LAST: &[u8] = b"gtk-goto-last\0";
834pub const GTK_STOCK_GOTO_TOP: &[u8] = b"gtk-goto-top\0";
835pub const GTK_STOCK_GO_BACK: &[u8] = b"gtk-go-back\0";
836pub const GTK_STOCK_GO_DOWN: &[u8] = b"gtk-go-down\0";
837pub const GTK_STOCK_GO_FORWARD: &[u8] = b"gtk-go-forward\0";
838pub const GTK_STOCK_GO_UP: &[u8] = b"gtk-go-up\0";
839pub const GTK_STOCK_HARDDISK: &[u8] = b"gtk-harddisk\0";
840pub const GTK_STOCK_HELP: &[u8] = b"gtk-help\0";
841pub const GTK_STOCK_HOME: &[u8] = b"gtk-home\0";
842pub const GTK_STOCK_INDENT: &[u8] = b"gtk-indent\0";
843pub const GTK_STOCK_INDEX: &[u8] = b"gtk-index\0";
844pub const GTK_STOCK_INFO: &[u8] = b"gtk-info\0";
845pub const GTK_STOCK_ITALIC: &[u8] = b"gtk-italic\0";
846pub const GTK_STOCK_JUMP_TO: &[u8] = b"gtk-jump-to\0";
847pub const GTK_STOCK_JUSTIFY_CENTER: &[u8] = b"gtk-justify-center\0";
848pub const GTK_STOCK_JUSTIFY_FILL: &[u8] = b"gtk-justify-fill\0";
849pub const GTK_STOCK_JUSTIFY_LEFT: &[u8] = b"gtk-justify-left\0";
850pub const GTK_STOCK_JUSTIFY_RIGHT: &[u8] = b"gtk-justify-right\0";
851pub const GTK_STOCK_LEAVE_FULLSCREEN: &[u8] = b"gtk-leave-fullscreen\0";
852pub const GTK_STOCK_MEDIA_FORWARD: &[u8] = b"gtk-media-forward\0";
853pub const GTK_STOCK_MEDIA_NEXT: &[u8] = b"gtk-media-next\0";
854pub const GTK_STOCK_MEDIA_PAUSE: &[u8] = b"gtk-media-pause\0";
855pub const GTK_STOCK_MEDIA_PLAY: &[u8] = b"gtk-media-play\0";
856pub const GTK_STOCK_MEDIA_PREVIOUS: &[u8] = b"gtk-media-previous\0";
857pub const GTK_STOCK_MEDIA_RECORD: &[u8] = b"gtk-media-record\0";
858pub const GTK_STOCK_MEDIA_REWIND: &[u8] = b"gtk-media-rewind\0";
859pub const GTK_STOCK_MEDIA_STOP: &[u8] = b"gtk-media-stop\0";
860pub const GTK_STOCK_MISSING_IMAGE: &[u8] = b"gtk-missing-image\0";
861pub const GTK_STOCK_NETWORK: &[u8] = b"gtk-network\0";
862pub const GTK_STOCK_NEW: &[u8] = b"gtk-new\0";
863pub const GTK_STOCK_NO: &[u8] = b"gtk-no\0";
864pub const GTK_STOCK_OK: &[u8] = b"gtk-ok\0";
865pub const GTK_STOCK_OPEN: &[u8] = b"gtk-open\0";
866pub const GTK_STOCK_ORIENTATION_LANDSCAPE: &[u8] = b"gtk-orientation-landscape\0";
867pub const GTK_STOCK_ORIENTATION_PORTRAIT: &[u8] = b"gtk-orientation-portrait\0";
868pub const GTK_STOCK_ORIENTATION_REVERSE_LANDSCAPE: &[u8] = b"gtk-orientation-reverse-landscape\0";
869pub const GTK_STOCK_ORIENTATION_REVERSE_PORTRAIT: &[u8] = b"gtk-orientation-reverse-portrait\0";
870pub const GTK_STOCK_PAGE_SETUP: &[u8] = b"gtk-page-setup\0";
871pub const GTK_STOCK_PASTE: &[u8] = b"gtk-paste\0";
872pub const GTK_STOCK_PREFERENCES: &[u8] = b"gtk-preferences\0";
873pub const GTK_STOCK_PRINT: &[u8] = b"gtk-print\0";
874pub const GTK_STOCK_PRINT_ERROR: &[u8] = b"gtk-print-error\0";
875pub const GTK_STOCK_PRINT_PAUSED: &[u8] = b"gtk-print-paused\0";
876pub const GTK_STOCK_PRINT_PREVIEW: &[u8] = b"gtk-print-preview\0";
877pub const GTK_STOCK_PRINT_REPORT: &[u8] = b"gtk-print-report\0";
878pub const GTK_STOCK_PRINT_WARNING: &[u8] = b"gtk-print-warning\0";
879pub const GTK_STOCK_PROPERTIES: &[u8] = b"gtk-properties\0";
880pub const GTK_STOCK_QUIT: &[u8] = b"gtk-quit\0";
881pub const GTK_STOCK_REDO: &[u8] = b"gtk-redo\0";
882pub const GTK_STOCK_REFRESH: &[u8] = b"gtk-refresh\0";
883pub const GTK_STOCK_REMOVE: &[u8] = b"gtk-remove\0";
884pub const GTK_STOCK_REVERT_TO_SAVED: &[u8] = b"gtk-revert-to-saved\0";
885pub const GTK_STOCK_SAVE: &[u8] = b"gtk-save\0";
886pub const GTK_STOCK_SAVE_AS: &[u8] = b"gtk-save-as\0";
887pub const GTK_STOCK_SELECT_ALL: &[u8] = b"gtk-select-all\0";
888pub const GTK_STOCK_SELECT_COLOR: &[u8] = b"gtk-select-color\0";
889pub const GTK_STOCK_SELECT_FONT: &[u8] = b"gtk-select-font\0";
890pub const GTK_STOCK_SORT_ASCENDING: &[u8] = b"gtk-sort-ascending\0";
891pub const GTK_STOCK_SORT_DESCENDING: &[u8] = b"gtk-sort-descending\0";
892pub const GTK_STOCK_SPELL_CHECK: &[u8] = b"gtk-spell-check\0";
893pub const GTK_STOCK_STOP: &[u8] = b"gtk-stop\0";
894pub const GTK_STOCK_STRIKETHROUGH: &[u8] = b"gtk-strikethrough\0";
895pub const GTK_STOCK_UNDELETE: &[u8] = b"gtk-undelete\0";
896pub const GTK_STOCK_UNDERLINE: &[u8] = b"gtk-underline\0";
897pub const GTK_STOCK_UNDO: &[u8] = b"gtk-undo\0";
898pub const GTK_STOCK_UNINDENT: &[u8] = b"gtk-unindent\0";
899pub const GTK_STOCK_YES: &[u8] = b"gtk-yes\0";
900pub const GTK_STOCK_ZOOM_100: &[u8] = b"gtk-zoom-100\0";
901pub const GTK_STOCK_ZOOM_FIT: &[u8] = b"gtk-zoom-fit\0";
902pub const GTK_STOCK_ZOOM_IN: &[u8] = b"gtk-zoom-in\0";
903pub const GTK_STOCK_ZOOM_OUT: &[u8] = b"gtk-zoom-out\0";
904pub const GTK_STYLE_CLASS_ACCELERATOR: &[u8] = b"accelerator\0";
905pub const GTK_STYLE_CLASS_ARROW: &[u8] = b"arrow\0";
906pub const GTK_STYLE_CLASS_BACKGROUND: &[u8] = b"background\0";
907pub const GTK_STYLE_CLASS_BOTTOM: &[u8] = b"bottom\0";
908pub const GTK_STYLE_CLASS_BUTTON: &[u8] = b"button\0";
909pub const GTK_STYLE_CLASS_CALENDAR: &[u8] = b"calendar\0";
910pub const GTK_STYLE_CLASS_CELL: &[u8] = b"cell\0";
911pub const GTK_STYLE_CLASS_CHECK: &[u8] = b"check\0";
912pub const GTK_STYLE_CLASS_COMBOBOX_ENTRY: &[u8] = b"combobox-entry\0";
913pub const GTK_STYLE_CLASS_CONTEXT_MENU: &[u8] = b"context-menu\0";
914pub const GTK_STYLE_CLASS_CSD: &[u8] = b"csd\0";
915pub const GTK_STYLE_CLASS_CURSOR_HANDLE: &[u8] = b"cursor-handle\0";
916pub const GTK_STYLE_CLASS_DEFAULT: &[u8] = b"default\0";
917pub const GTK_STYLE_CLASS_DESTRUCTIVE_ACTION: &[u8] = b"destructive-action\0";
918pub const GTK_STYLE_CLASS_DIM_LABEL: &[u8] = b"dim-label\0";
919pub const GTK_STYLE_CLASS_DND: &[u8] = b"dnd\0";
920pub const GTK_STYLE_CLASS_DOCK: &[u8] = b"dock\0";
921pub const GTK_STYLE_CLASS_ENTRY: &[u8] = b"entry\0";
922pub const GTK_STYLE_CLASS_ERROR: &[u8] = b"error\0";
923pub const GTK_STYLE_CLASS_EXPANDER: &[u8] = b"expander\0";
924pub const GTK_STYLE_CLASS_FLAT: &[u8] = b"flat\0";
925pub const GTK_STYLE_CLASS_FRAME: &[u8] = b"frame\0";
926pub const GTK_STYLE_CLASS_GRIP: &[u8] = b"grip\0";
927pub const GTK_STYLE_CLASS_HEADER: &[u8] = b"header\0";
928pub const GTK_STYLE_CLASS_HIGHLIGHT: &[u8] = b"highlight\0";
929pub const GTK_STYLE_CLASS_HORIZONTAL: &[u8] = b"horizontal\0";
930pub const GTK_STYLE_CLASS_IMAGE: &[u8] = b"image\0";
931pub const GTK_STYLE_CLASS_INFO: &[u8] = b"info\0";
932pub const GTK_STYLE_CLASS_INLINE_TOOLBAR: &[u8] = b"inline-toolbar\0";
933pub const GTK_STYLE_CLASS_INSERTION_CURSOR: &[u8] = b"insertion-cursor\0";
934pub const GTK_STYLE_CLASS_LABEL: &[u8] = b"label\0";
935pub const GTK_STYLE_CLASS_LEFT: &[u8] = b"left\0";
936pub const GTK_STYLE_CLASS_LEVEL_BAR: &[u8] = b"level-bar\0";
937pub const GTK_STYLE_CLASS_LINKED: &[u8] = b"linked\0";
938pub const GTK_STYLE_CLASS_LIST: &[u8] = b"list\0";
939pub const GTK_STYLE_CLASS_LIST_ROW: &[u8] = b"list-row\0";
940pub const GTK_STYLE_CLASS_MARK: &[u8] = b"mark\0";
941pub const GTK_STYLE_CLASS_MENU: &[u8] = b"menu\0";
942pub const GTK_STYLE_CLASS_MENUBAR: &[u8] = b"menubar\0";
943pub const GTK_STYLE_CLASS_MENUITEM: &[u8] = b"menuitem\0";
944pub const GTK_STYLE_CLASS_MESSAGE_DIALOG: &[u8] = b"message-dialog\0";
945pub const GTK_STYLE_CLASS_MONOSPACE: &[u8] = b"monospace\0";
946pub const GTK_STYLE_CLASS_NEEDS_ATTENTION: &[u8] = b"needs-attention\0";
947pub const GTK_STYLE_CLASS_NOTEBOOK: &[u8] = b"notebook\0";
948pub const GTK_STYLE_CLASS_OSD: &[u8] = b"osd\0";
949pub const GTK_STYLE_CLASS_OVERSHOOT: &[u8] = b"overshoot\0";
950pub const GTK_STYLE_CLASS_PANE_SEPARATOR: &[u8] = b"pane-separator\0";
951pub const GTK_STYLE_CLASS_PAPER: &[u8] = b"paper\0";
952pub const GTK_STYLE_CLASS_POPOVER: &[u8] = b"popover\0";
953pub const GTK_STYLE_CLASS_POPUP: &[u8] = b"popup\0";
954pub const GTK_STYLE_CLASS_PRIMARY_TOOLBAR: &[u8] = b"primary-toolbar\0";
955pub const GTK_STYLE_CLASS_PROGRESSBAR: &[u8] = b"progressbar\0";
956pub const GTK_STYLE_CLASS_PULSE: &[u8] = b"pulse\0";
957pub const GTK_STYLE_CLASS_QUESTION: &[u8] = b"question\0";
958pub const GTK_STYLE_CLASS_RADIO: &[u8] = b"radio\0";
959pub const GTK_STYLE_CLASS_RAISED: &[u8] = b"raised\0";
960pub const GTK_STYLE_CLASS_READ_ONLY: &[u8] = b"read-only\0";
961pub const GTK_STYLE_CLASS_RIGHT: &[u8] = b"right\0";
962pub const GTK_STYLE_CLASS_RUBBERBAND: &[u8] = b"rubberband\0";
963pub const GTK_STYLE_CLASS_SCALE: &[u8] = b"scale\0";
964pub const GTK_STYLE_CLASS_SCALE_HAS_MARKS_ABOVE: &[u8] = b"scale-has-marks-above\0";
965pub const GTK_STYLE_CLASS_SCALE_HAS_MARKS_BELOW: &[u8] = b"scale-has-marks-below\0";
966pub const GTK_STYLE_CLASS_SCROLLBAR: &[u8] = b"scrollbar\0";
967pub const GTK_STYLE_CLASS_SCROLLBARS_JUNCTION: &[u8] = b"scrollbars-junction\0";
968pub const GTK_STYLE_CLASS_SEPARATOR: &[u8] = b"separator\0";
969pub const GTK_STYLE_CLASS_SIDEBAR: &[u8] = b"sidebar\0";
970pub const GTK_STYLE_CLASS_SLIDER: &[u8] = b"slider\0";
971pub const GTK_STYLE_CLASS_SPINBUTTON: &[u8] = b"spinbutton\0";
972pub const GTK_STYLE_CLASS_SPINNER: &[u8] = b"spinner\0";
973pub const GTK_STYLE_CLASS_STATUSBAR: &[u8] = b"statusbar\0";
974pub const GTK_STYLE_CLASS_SUBTITLE: &[u8] = b"subtitle\0";
975pub const GTK_STYLE_CLASS_SUGGESTED_ACTION: &[u8] = b"suggested-action\0";
976pub const GTK_STYLE_CLASS_TITLE: &[u8] = b"title\0";
977pub const GTK_STYLE_CLASS_TITLEBAR: &[u8] = b"titlebar\0";
978pub const GTK_STYLE_CLASS_TOOLBAR: &[u8] = b"toolbar\0";
979pub const GTK_STYLE_CLASS_TOOLTIP: &[u8] = b"tooltip\0";
980pub const GTK_STYLE_CLASS_TOP: &[u8] = b"top\0";
981pub const GTK_STYLE_CLASS_TOUCH_SELECTION: &[u8] = b"touch-selection\0";
982pub const GTK_STYLE_CLASS_TROUGH: &[u8] = b"trough\0";
983pub const GTK_STYLE_CLASS_UNDERSHOOT: &[u8] = b"undershoot\0";
984pub const GTK_STYLE_CLASS_VERTICAL: &[u8] = b"vertical\0";
985pub const GTK_STYLE_CLASS_VIEW: &[u8] = b"view\0";
986pub const GTK_STYLE_CLASS_WARNING: &[u8] = b"warning\0";
987pub const GTK_STYLE_CLASS_WIDE: &[u8] = b"wide\0";
988pub const GTK_STYLE_PROPERTY_BACKGROUND_COLOR: &[u8] = b"background-color\0";
989pub const GTK_STYLE_PROPERTY_BACKGROUND_IMAGE: &[u8] = b"background-image\0";
990pub const GTK_STYLE_PROPERTY_BORDER_COLOR: &[u8] = b"border-color\0";
991pub const GTK_STYLE_PROPERTY_BORDER_RADIUS: &[u8] = b"border-radius\0";
992pub const GTK_STYLE_PROPERTY_BORDER_STYLE: &[u8] = b"border-style\0";
993pub const GTK_STYLE_PROPERTY_BORDER_WIDTH: &[u8] = b"border-width\0";
994pub const GTK_STYLE_PROPERTY_COLOR: &[u8] = b"color\0";
995pub const GTK_STYLE_PROPERTY_FONT: &[u8] = b"font\0";
996pub const GTK_STYLE_PROPERTY_MARGIN: &[u8] = b"margin\0";
997pub const GTK_STYLE_PROPERTY_PADDING: &[u8] = b"padding\0";
998pub const GTK_STYLE_PROVIDER_PRIORITY_APPLICATION: c_int = 600;
999pub const GTK_STYLE_PROVIDER_PRIORITY_FALLBACK: c_int = 1;
1000pub const GTK_STYLE_PROVIDER_PRIORITY_SETTINGS: c_int = 400;
1001pub const GTK_STYLE_PROVIDER_PRIORITY_THEME: c_int = 200;
1002pub const GTK_STYLE_PROVIDER_PRIORITY_USER: c_int = 800;
1003pub const GTK_STYLE_REGION_COLUMN: &[u8] = b"column\0";
1004pub const GTK_STYLE_REGION_COLUMN_HEADER: &[u8] = b"column-header\0";
1005pub const GTK_STYLE_REGION_ROW: &[u8] = b"row\0";
1006pub const GTK_STYLE_REGION_TAB: &[u8] = b"tab\0";
1007pub const GTK_TEXT_VIEW_PRIORITY_VALIDATE: c_int = 125;
1008pub const GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID: c_int = -1;
1009pub const GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID: c_int = -2;
1010
1011// Flags
1012pub type GtkAccelFlags = c_uint;
1013pub const GTK_ACCEL_VISIBLE: GtkAccelFlags = 1;
1014pub const GTK_ACCEL_LOCKED: GtkAccelFlags = 2;
1015pub const GTK_ACCEL_MASK: GtkAccelFlags = 7;
1016
1017pub type GtkApplicationInhibitFlags = c_uint;
1018pub const GTK_APPLICATION_INHIBIT_LOGOUT: GtkApplicationInhibitFlags = 1;
1019pub const GTK_APPLICATION_INHIBIT_SWITCH: GtkApplicationInhibitFlags = 2;
1020pub const GTK_APPLICATION_INHIBIT_SUSPEND: GtkApplicationInhibitFlags = 4;
1021pub const GTK_APPLICATION_INHIBIT_IDLE: GtkApplicationInhibitFlags = 8;
1022
1023pub type GtkAttachOptions = c_uint;
1024pub const GTK_EXPAND: GtkAttachOptions = 1;
1025pub const GTK_SHRINK: GtkAttachOptions = 2;
1026pub const GTK_FILL: GtkAttachOptions = 4;
1027
1028pub type GtkCalendarDisplayOptions = c_uint;
1029pub const GTK_CALENDAR_SHOW_HEADING: GtkCalendarDisplayOptions = 1;
1030pub const GTK_CALENDAR_SHOW_DAY_NAMES: GtkCalendarDisplayOptions = 2;
1031pub const GTK_CALENDAR_NO_MONTH_CHANGE: GtkCalendarDisplayOptions = 4;
1032pub const GTK_CALENDAR_SHOW_WEEK_NUMBERS: GtkCalendarDisplayOptions = 8;
1033pub const GTK_CALENDAR_SHOW_DETAILS: GtkCalendarDisplayOptions = 32;
1034
1035pub type GtkCellRendererState = c_uint;
1036pub const GTK_CELL_RENDERER_SELECTED: GtkCellRendererState = 1;
1037pub const GTK_CELL_RENDERER_PRELIT: GtkCellRendererState = 2;
1038pub const GTK_CELL_RENDERER_INSENSITIVE: GtkCellRendererState = 4;
1039pub const GTK_CELL_RENDERER_SORTED: GtkCellRendererState = 8;
1040pub const GTK_CELL_RENDERER_FOCUSED: GtkCellRendererState = 16;
1041pub const GTK_CELL_RENDERER_EXPANDABLE: GtkCellRendererState = 32;
1042pub const GTK_CELL_RENDERER_EXPANDED: GtkCellRendererState = 64;
1043
1044pub type GtkDebugFlag = c_uint;
1045pub const GTK_DEBUG_MISC: GtkDebugFlag = 1;
1046pub const GTK_DEBUG_PLUGSOCKET: GtkDebugFlag = 2;
1047pub const GTK_DEBUG_TEXT: GtkDebugFlag = 4;
1048pub const GTK_DEBUG_TREE: GtkDebugFlag = 8;
1049pub const GTK_DEBUG_UPDATES: GtkDebugFlag = 16;
1050pub const GTK_DEBUG_KEYBINDINGS: GtkDebugFlag = 32;
1051pub const GTK_DEBUG_MULTIHEAD: GtkDebugFlag = 64;
1052pub const GTK_DEBUG_MODULES: GtkDebugFlag = 128;
1053pub const GTK_DEBUG_GEOMETRY: GtkDebugFlag = 256;
1054pub const GTK_DEBUG_ICONTHEME: GtkDebugFlag = 512;
1055pub const GTK_DEBUG_PRINTING: GtkDebugFlag = 1024;
1056pub const GTK_DEBUG_BUILDER: GtkDebugFlag = 2048;
1057pub const GTK_DEBUG_SIZE_REQUEST: GtkDebugFlag = 4096;
1058pub const GTK_DEBUG_NO_CSS_CACHE: GtkDebugFlag = 8192;
1059pub const GTK_DEBUG_BASELINES: GtkDebugFlag = 16384;
1060pub const GTK_DEBUG_PIXEL_CACHE: GtkDebugFlag = 32768;
1061pub const GTK_DEBUG_NO_PIXEL_CACHE: GtkDebugFlag = 65536;
1062pub const GTK_DEBUG_INTERACTIVE: GtkDebugFlag = 131072;
1063pub const GTK_DEBUG_TOUCHSCREEN: GtkDebugFlag = 262144;
1064pub const GTK_DEBUG_ACTIONS: GtkDebugFlag = 524288;
1065pub const GTK_DEBUG_RESIZE: GtkDebugFlag = 1048576;
1066pub const GTK_DEBUG_LAYOUT: GtkDebugFlag = 2097152;
1067
1068pub type GtkDestDefaults = c_uint;
1069pub const GTK_DEST_DEFAULT_MOTION: GtkDestDefaults = 1;
1070pub const GTK_DEST_DEFAULT_HIGHLIGHT: GtkDestDefaults = 2;
1071pub const GTK_DEST_DEFAULT_DROP: GtkDestDefaults = 4;
1072pub const GTK_DEST_DEFAULT_ALL: GtkDestDefaults = 7;
1073
1074pub type GtkDialogFlags = c_uint;
1075pub const GTK_DIALOG_MODAL: GtkDialogFlags = 1;
1076pub const GTK_DIALOG_DESTROY_WITH_PARENT: GtkDialogFlags = 2;
1077pub const GTK_DIALOG_USE_HEADER_BAR: GtkDialogFlags = 4;
1078
1079pub type GtkEventControllerScrollFlags = c_uint;
1080pub const GTK_EVENT_CONTROLLER_SCROLL_NONE: GtkEventControllerScrollFlags = 0;
1081pub const GTK_EVENT_CONTROLLER_SCROLL_VERTICAL: GtkEventControllerScrollFlags = 1;
1082pub const GTK_EVENT_CONTROLLER_SCROLL_HORIZONTAL: GtkEventControllerScrollFlags = 2;
1083pub const GTK_EVENT_CONTROLLER_SCROLL_DISCRETE: GtkEventControllerScrollFlags = 4;
1084pub const GTK_EVENT_CONTROLLER_SCROLL_KINETIC: GtkEventControllerScrollFlags = 8;
1085pub const GTK_EVENT_CONTROLLER_SCROLL_BOTH_AXES: GtkEventControllerScrollFlags = 3;
1086
1087pub type GtkFileFilterFlags = c_uint;
1088pub const GTK_FILE_FILTER_FILENAME: GtkFileFilterFlags = 1;
1089pub const GTK_FILE_FILTER_URI: GtkFileFilterFlags = 2;
1090pub const GTK_FILE_FILTER_DISPLAY_NAME: GtkFileFilterFlags = 4;
1091pub const GTK_FILE_FILTER_MIME_TYPE: GtkFileFilterFlags = 8;
1092
1093pub type GtkFontChooserLevel = c_uint;
1094pub const GTK_FONT_CHOOSER_LEVEL_FAMILY: GtkFontChooserLevel = 0;
1095pub const GTK_FONT_CHOOSER_LEVEL_STYLE: GtkFontChooserLevel = 1;
1096pub const GTK_FONT_CHOOSER_LEVEL_SIZE: GtkFontChooserLevel = 2;
1097pub const GTK_FONT_CHOOSER_LEVEL_VARIATIONS: GtkFontChooserLevel = 4;
1098pub const GTK_FONT_CHOOSER_LEVEL_FEATURES: GtkFontChooserLevel = 8;
1099
1100pub type GtkIconLookupFlags = c_uint;
1101pub const GTK_ICON_LOOKUP_NO_SVG: GtkIconLookupFlags = 1;
1102pub const GTK_ICON_LOOKUP_FORCE_SVG: GtkIconLookupFlags = 2;
1103pub const GTK_ICON_LOOKUP_USE_BUILTIN: GtkIconLookupFlags = 4;
1104pub const GTK_ICON_LOOKUP_GENERIC_FALLBACK: GtkIconLookupFlags = 8;
1105pub const GTK_ICON_LOOKUP_FORCE_SIZE: GtkIconLookupFlags = 16;
1106pub const GTK_ICON_LOOKUP_FORCE_REGULAR: GtkIconLookupFlags = 32;
1107pub const GTK_ICON_LOOKUP_FORCE_SYMBOLIC: GtkIconLookupFlags = 64;
1108pub const GTK_ICON_LOOKUP_DIR_LTR: GtkIconLookupFlags = 128;
1109pub const GTK_ICON_LOOKUP_DIR_RTL: GtkIconLookupFlags = 256;
1110
1111pub type GtkInputHints = c_uint;
1112pub const GTK_INPUT_HINT_NONE: GtkInputHints = 0;
1113pub const GTK_INPUT_HINT_SPELLCHECK: GtkInputHints = 1;
1114pub const GTK_INPUT_HINT_NO_SPELLCHECK: GtkInputHints = 2;
1115pub const GTK_INPUT_HINT_WORD_COMPLETION: GtkInputHints = 4;
1116pub const GTK_INPUT_HINT_LOWERCASE: GtkInputHints = 8;
1117pub const GTK_INPUT_HINT_UPPERCASE_CHARS: GtkInputHints = 16;
1118pub const GTK_INPUT_HINT_UPPERCASE_WORDS: GtkInputHints = 32;
1119pub const GTK_INPUT_HINT_UPPERCASE_SENTENCES: GtkInputHints = 64;
1120pub const GTK_INPUT_HINT_INHIBIT_OSK: GtkInputHints = 128;
1121pub const GTK_INPUT_HINT_VERTICAL_WRITING: GtkInputHints = 256;
1122pub const GTK_INPUT_HINT_EMOJI: GtkInputHints = 512;
1123pub const GTK_INPUT_HINT_NO_EMOJI: GtkInputHints = 1024;
1124
1125pub type GtkJunctionSides = c_uint;
1126pub const GTK_JUNCTION_NONE: GtkJunctionSides = 0;
1127pub const GTK_JUNCTION_CORNER_TOPLEFT: GtkJunctionSides = 1;
1128pub const GTK_JUNCTION_CORNER_TOPRIGHT: GtkJunctionSides = 2;
1129pub const GTK_JUNCTION_CORNER_BOTTOMLEFT: GtkJunctionSides = 4;
1130pub const GTK_JUNCTION_CORNER_BOTTOMRIGHT: GtkJunctionSides = 8;
1131pub const GTK_JUNCTION_TOP: GtkJunctionSides = 3;
1132pub const GTK_JUNCTION_BOTTOM: GtkJunctionSides = 12;
1133pub const GTK_JUNCTION_LEFT: GtkJunctionSides = 5;
1134pub const GTK_JUNCTION_RIGHT: GtkJunctionSides = 10;
1135
1136pub type GtkPlacesOpenFlags = c_uint;
1137pub const GTK_PLACES_OPEN_NORMAL: GtkPlacesOpenFlags = 1;
1138pub const GTK_PLACES_OPEN_NEW_TAB: GtkPlacesOpenFlags = 2;
1139pub const GTK_PLACES_OPEN_NEW_WINDOW: GtkPlacesOpenFlags = 4;
1140
1141pub type GtkRcFlags = c_uint;
1142pub const GTK_RC_FG: GtkRcFlags = 1;
1143pub const GTK_RC_BG: GtkRcFlags = 2;
1144pub const GTK_RC_TEXT: GtkRcFlags = 4;
1145pub const GTK_RC_BASE: GtkRcFlags = 8;
1146
1147pub type GtkRecentFilterFlags = c_uint;
1148pub const GTK_RECENT_FILTER_URI: GtkRecentFilterFlags = 1;
1149pub const GTK_RECENT_FILTER_DISPLAY_NAME: GtkRecentFilterFlags = 2;
1150pub const GTK_RECENT_FILTER_MIME_TYPE: GtkRecentFilterFlags = 4;
1151pub const GTK_RECENT_FILTER_APPLICATION: GtkRecentFilterFlags = 8;
1152pub const GTK_RECENT_FILTER_GROUP: GtkRecentFilterFlags = 16;
1153pub const GTK_RECENT_FILTER_AGE: GtkRecentFilterFlags = 32;
1154
1155pub type GtkRegionFlags = c_uint;
1156pub const GTK_REGION_EVEN: GtkRegionFlags = 1;
1157pub const GTK_REGION_ODD: GtkRegionFlags = 2;
1158pub const GTK_REGION_FIRST: GtkRegionFlags = 4;
1159pub const GTK_REGION_LAST: GtkRegionFlags = 8;
1160pub const GTK_REGION_ONLY: GtkRegionFlags = 16;
1161pub const GTK_REGION_SORTED: GtkRegionFlags = 32;
1162
1163pub type GtkStateFlags = c_uint;
1164pub const GTK_STATE_FLAG_NORMAL: GtkStateFlags = 0;
1165pub const GTK_STATE_FLAG_ACTIVE: GtkStateFlags = 1;
1166pub const GTK_STATE_FLAG_PRELIGHT: GtkStateFlags = 2;
1167pub const GTK_STATE_FLAG_SELECTED: GtkStateFlags = 4;
1168pub const GTK_STATE_FLAG_INSENSITIVE: GtkStateFlags = 8;
1169pub const GTK_STATE_FLAG_INCONSISTENT: GtkStateFlags = 16;
1170pub const GTK_STATE_FLAG_FOCUSED: GtkStateFlags = 32;
1171pub const GTK_STATE_FLAG_BACKDROP: GtkStateFlags = 64;
1172pub const GTK_STATE_FLAG_DIR_LTR: GtkStateFlags = 128;
1173pub const GTK_STATE_FLAG_DIR_RTL: GtkStateFlags = 256;
1174pub const GTK_STATE_FLAG_LINK: GtkStateFlags = 512;
1175pub const GTK_STATE_FLAG_VISITED: GtkStateFlags = 1024;
1176pub const GTK_STATE_FLAG_CHECKED: GtkStateFlags = 2048;
1177pub const GTK_STATE_FLAG_DROP_ACTIVE: GtkStateFlags = 4096;
1178
1179pub type GtkStyleContextPrintFlags = c_uint;
1180pub const GTK_STYLE_CONTEXT_PRINT_NONE: GtkStyleContextPrintFlags = 0;
1181pub const GTK_STYLE_CONTEXT_PRINT_RECURSE: GtkStyleContextPrintFlags = 1;
1182pub const GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE: GtkStyleContextPrintFlags = 2;
1183
1184pub type GtkTargetFlags = c_uint;
1185pub const GTK_TARGET_SAME_APP: GtkTargetFlags = 1;
1186pub const GTK_TARGET_SAME_WIDGET: GtkTargetFlags = 2;
1187pub const GTK_TARGET_OTHER_APP: GtkTargetFlags = 4;
1188pub const GTK_TARGET_OTHER_WIDGET: GtkTargetFlags = 8;
1189
1190pub type GtkTextSearchFlags = c_uint;
1191pub const GTK_TEXT_SEARCH_VISIBLE_ONLY: GtkTextSearchFlags = 1;
1192pub const GTK_TEXT_SEARCH_TEXT_ONLY: GtkTextSearchFlags = 2;
1193pub const GTK_TEXT_SEARCH_CASE_INSENSITIVE: GtkTextSearchFlags = 4;
1194
1195pub type GtkToolPaletteDragTargets = c_uint;
1196pub const GTK_TOOL_PALETTE_DRAG_ITEMS: GtkToolPaletteDragTargets = 1;
1197pub const GTK_TOOL_PALETTE_DRAG_GROUPS: GtkToolPaletteDragTargets = 2;
1198
1199pub type GtkTreeModelFlags = c_uint;
1200pub const GTK_TREE_MODEL_ITERS_PERSIST: GtkTreeModelFlags = 1;
1201pub const GTK_TREE_MODEL_LIST_ONLY: GtkTreeModelFlags = 2;
1202
1203pub type GtkUIManagerItemType = c_uint;
1204pub const GTK_UI_MANAGER_AUTO: GtkUIManagerItemType = 0;
1205pub const GTK_UI_MANAGER_MENUBAR: GtkUIManagerItemType = 1;
1206pub const GTK_UI_MANAGER_MENU: GtkUIManagerItemType = 2;
1207pub const GTK_UI_MANAGER_TOOLBAR: GtkUIManagerItemType = 4;
1208pub const GTK_UI_MANAGER_PLACEHOLDER: GtkUIManagerItemType = 8;
1209pub const GTK_UI_MANAGER_POPUP: GtkUIManagerItemType = 16;
1210pub const GTK_UI_MANAGER_MENUITEM: GtkUIManagerItemType = 32;
1211pub const GTK_UI_MANAGER_TOOLITEM: GtkUIManagerItemType = 64;
1212pub const GTK_UI_MANAGER_SEPARATOR: GtkUIManagerItemType = 128;
1213pub const GTK_UI_MANAGER_ACCELERATOR: GtkUIManagerItemType = 256;
1214pub const GTK_UI_MANAGER_POPUP_WITH_ACCELS: GtkUIManagerItemType = 512;
1215
1216// Unions
1217#[derive(Copy, Clone)]
1218#[repr(C)]
1219pub union GtkBindingArg_d {
1220    pub long_data: c_long,
1221    pub double_data: c_double,
1222    pub string_data: *mut c_char,
1223}
1224
1225impl ::std::fmt::Debug for GtkBindingArg_d {
1226    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1227        f.debug_struct(&format!("GtkBindingArg_d @ {self:p}"))
1228            .field("long_data", unsafe { &self.long_data })
1229            .field("double_data", unsafe { &self.double_data })
1230            .field("string_data", unsafe { &self.string_data })
1231            .finish()
1232    }
1233}
1234
1235#[derive(Copy, Clone)]
1236#[repr(C)]
1237pub union GtkTextAppearance_u1 {
1238    pub rgba: [*mut gdk::GdkRGBA; 2],
1239    pub padding: [c_uint; 4],
1240}
1241
1242impl ::std::fmt::Debug for GtkTextAppearance_u1 {
1243    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1244        f.debug_struct(&format!("GtkTextAppearance_u1 @ {self:p}"))
1245            .field("rgba", unsafe { &self.rgba })
1246            .finish()
1247    }
1248}
1249
1250#[derive(Copy, Clone)]
1251#[repr(C)]
1252pub union GtkTextAttributes_u1 {
1253    pub font_features: *mut c_char,
1254    pub padding: [c_uint; 2],
1255}
1256
1257impl ::std::fmt::Debug for GtkTextAttributes_u1 {
1258    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1259        f.debug_struct(&format!("GtkTextAttributes_u1 @ {self:p}"))
1260            .field("font_features", unsafe { &self.font_features })
1261            .finish()
1262    }
1263}
1264
1265// Callbacks
1266pub type GtkAccelGroupActivate = Option<
1267    unsafe extern "C" fn(
1268        *mut GtkAccelGroup,
1269        *mut gobject::GObject,
1270        c_uint,
1271        gdk::GdkModifierType,
1272    ) -> gboolean,
1273>;
1274pub type GtkAccelGroupFindFunc =
1275    Option<unsafe extern "C" fn(*mut GtkAccelKey, *mut gobject::GClosure, gpointer) -> gboolean>;
1276pub type GtkAccelMapForeach =
1277    Option<unsafe extern "C" fn(gpointer, *const c_char, c_uint, gdk::GdkModifierType, gboolean)>;
1278pub type GtkAssistantPageFunc = Option<unsafe extern "C" fn(c_int, gpointer) -> c_int>;
1279pub type GtkBuilderConnectFunc = Option<
1280    unsafe extern "C" fn(
1281        *mut GtkBuilder,
1282        *mut gobject::GObject,
1283        *const c_char,
1284        *const c_char,
1285        *mut gobject::GObject,
1286        gobject::GConnectFlags,
1287        gpointer,
1288    ),
1289>;
1290pub type GtkCalendarDetailFunc =
1291    Option<unsafe extern "C" fn(*mut GtkCalendar, c_uint, c_uint, c_uint, gpointer) -> *mut c_char>;
1292pub type GtkCallback = Option<unsafe extern "C" fn(*mut GtkWidget, gpointer)>;
1293pub type GtkCellAllocCallback = Option<
1294    unsafe extern "C" fn(
1295        *mut GtkCellRenderer,
1296        *const gdk::GdkRectangle,
1297        *const gdk::GdkRectangle,
1298        gpointer,
1299    ) -> gboolean,
1300>;
1301pub type GtkCellCallback = Option<unsafe extern "C" fn(*mut GtkCellRenderer, gpointer) -> gboolean>;
1302pub type GtkCellLayoutDataFunc = Option<
1303    unsafe extern "C" fn(
1304        *mut GtkCellLayout,
1305        *mut GtkCellRenderer,
1306        *mut GtkTreeModel,
1307        *mut GtkTreeIter,
1308        gpointer,
1309    ),
1310>;
1311pub type GtkClipboardClearFunc = Option<unsafe extern "C" fn(*mut GtkClipboard, gpointer)>;
1312pub type GtkClipboardGetFunc =
1313    Option<unsafe extern "C" fn(*mut GtkClipboard, *mut GtkSelectionData, c_uint, gpointer)>;
1314pub type GtkClipboardImageReceivedFunc =
1315    Option<unsafe extern "C" fn(*mut GtkClipboard, *mut gdk_pixbuf::GdkPixbuf, gpointer)>;
1316pub type GtkClipboardReceivedFunc =
1317    Option<unsafe extern "C" fn(*mut GtkClipboard, *mut GtkSelectionData, gpointer)>;
1318pub type GtkClipboardRichTextReceivedFunc =
1319    Option<unsafe extern "C" fn(*mut GtkClipboard, gdk::GdkAtom, *const c_char, size_t, gpointer)>;
1320pub type GtkClipboardTargetsReceivedFunc =
1321    Option<unsafe extern "C" fn(*mut GtkClipboard, *mut gdk::GdkAtom, c_int, gpointer)>;
1322pub type GtkClipboardTextReceivedFunc =
1323    Option<unsafe extern "C" fn(*mut GtkClipboard, *const c_char, gpointer)>;
1324pub type GtkClipboardURIReceivedFunc =
1325    Option<unsafe extern "C" fn(*mut GtkClipboard, *mut *mut c_char, gpointer)>;
1326pub type GtkColorSelectionChangePaletteFunc =
1327    Option<unsafe extern "C" fn(*const gdk::GdkColor, c_int)>;
1328pub type GtkColorSelectionChangePaletteWithScreenFunc =
1329    Option<unsafe extern "C" fn(*mut gdk::GdkScreen, *const gdk::GdkColor, c_int)>;
1330pub type GtkEntryCompletionMatchFunc = Option<
1331    unsafe extern "C" fn(
1332        *mut GtkEntryCompletion,
1333        *const c_char,
1334        *mut GtkTreeIter,
1335        gpointer,
1336    ) -> gboolean,
1337>;
1338pub type GtkFileFilterFunc =
1339    Option<unsafe extern "C" fn(*const GtkFileFilterInfo, gpointer) -> gboolean>;
1340pub type GtkFlowBoxCreateWidgetFunc =
1341    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1342pub type GtkFlowBoxFilterFunc =
1343    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, gpointer) -> gboolean>;
1344pub type GtkFlowBoxForeachFunc =
1345    Option<unsafe extern "C" fn(*mut GtkFlowBox, *mut GtkFlowBoxChild, gpointer)>;
1346pub type GtkFlowBoxSortFunc =
1347    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, *mut GtkFlowBoxChild, gpointer) -> c_int>;
1348pub type GtkFontFilterFunc = Option<
1349    unsafe extern "C" fn(
1350        *const pango::PangoFontFamily,
1351        *const pango::PangoFontFace,
1352        gpointer,
1353    ) -> gboolean,
1354>;
1355pub type GtkIconViewForeachFunc =
1356    Option<unsafe extern "C" fn(*mut GtkIconView, *mut GtkTreePath, gpointer)>;
1357pub type GtkKeySnoopFunc =
1358    Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventKey, gpointer) -> c_int>;
1359pub type GtkListBoxCreateWidgetFunc =
1360    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1361pub type GtkListBoxFilterFunc =
1362    Option<unsafe extern "C" fn(*mut GtkListBoxRow, gpointer) -> gboolean>;
1363pub type GtkListBoxForeachFunc =
1364    Option<unsafe extern "C" fn(*mut GtkListBox, *mut GtkListBoxRow, gpointer)>;
1365pub type GtkListBoxSortFunc =
1366    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer) -> c_int>;
1367pub type GtkListBoxUpdateHeaderFunc =
1368    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer)>;
1369pub type GtkMenuDetachFunc = Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkMenu)>;
1370pub type GtkMenuPositionFunc =
1371    Option<unsafe extern "C" fn(*mut GtkMenu, *mut c_int, *mut c_int, *mut gboolean, gpointer)>;
1372pub type GtkModuleDisplayInitFunc = Option<unsafe extern "C" fn(*mut gdk::GdkDisplay)>;
1373pub type GtkModuleInitFunc = Option<unsafe extern "C" fn(*mut c_int, *mut *mut *mut c_char)>;
1374pub type GtkPageSetupDoneFunc = Option<unsafe extern "C" fn(*mut GtkPageSetup, gpointer)>;
1375pub type GtkPrintSettingsFunc =
1376    Option<unsafe extern "C" fn(*const c_char, *const c_char, gpointer)>;
1377pub type GtkRcPropertyParser = Option<
1378    unsafe extern "C" fn(
1379        *const gobject::GParamSpec,
1380        *const glib::GString,
1381        *mut gobject::GValue,
1382    ) -> gboolean,
1383>;
1384pub type GtkRecentFilterFunc =
1385    Option<unsafe extern "C" fn(*const GtkRecentFilterInfo, gpointer) -> gboolean>;
1386pub type GtkRecentSortFunc =
1387    Option<unsafe extern "C" fn(*mut GtkRecentInfo, *mut GtkRecentInfo, gpointer) -> c_int>;
1388pub type GtkStylePropertyParser = Option<
1389    unsafe extern "C" fn(*const c_char, *mut gobject::GValue, *mut *mut glib::GError) -> gboolean,
1390>;
1391pub type GtkTextBufferDeserializeFunc = Option<
1392    unsafe extern "C" fn(
1393        *mut GtkTextBuffer,
1394        *mut GtkTextBuffer,
1395        *mut GtkTextIter,
1396        *const u8,
1397        size_t,
1398        gboolean,
1399        gpointer,
1400        *mut *mut glib::GError,
1401    ) -> gboolean,
1402>;
1403pub type GtkTextBufferSerializeFunc = Option<
1404    unsafe extern "C" fn(
1405        *mut GtkTextBuffer,
1406        *mut GtkTextBuffer,
1407        *const GtkTextIter,
1408        *const GtkTextIter,
1409        *mut size_t,
1410        gpointer,
1411    ) -> *mut u8,
1412>;
1413pub type GtkTextCharPredicate = Option<unsafe extern "C" fn(u32, gpointer) -> gboolean>;
1414pub type GtkTextTagTableForeach = Option<unsafe extern "C" fn(*mut GtkTextTag, gpointer)>;
1415pub type GtkTickCallback =
1416    Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkFrameClock, gpointer) -> gboolean>;
1417pub type GtkTranslateFunc = Option<unsafe extern "C" fn(*const c_char, gpointer) -> *mut c_char>;
1418pub type GtkTreeCellDataFunc = Option<
1419    unsafe extern "C" fn(
1420        *mut GtkTreeViewColumn,
1421        *mut GtkCellRenderer,
1422        *mut GtkTreeModel,
1423        *mut GtkTreeIter,
1424        gpointer,
1425    ),
1426>;
1427pub type GtkTreeDestroyCountFunc =
1428    Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, c_int, gpointer)>;
1429pub type GtkTreeIterCompareFunc = Option<
1430    unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter, gpointer) -> c_int,
1431>;
1432pub type GtkTreeModelFilterModifyFunc = Option<
1433    unsafe extern "C" fn(
1434        *mut GtkTreeModel,
1435        *mut GtkTreeIter,
1436        *mut gobject::GValue,
1437        c_int,
1438        gpointer,
1439    ),
1440>;
1441pub type GtkTreeModelFilterVisibleFunc =
1442    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1443pub type GtkTreeModelForeachFunc = Option<
1444    unsafe extern "C" fn(
1445        *mut GtkTreeModel,
1446        *mut GtkTreePath,
1447        *mut GtkTreeIter,
1448        gpointer,
1449    ) -> gboolean,
1450>;
1451pub type GtkTreeSelectionForeachFunc =
1452    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, gpointer)>;
1453pub type GtkTreeSelectionFunc = Option<
1454    unsafe extern "C" fn(
1455        *mut GtkTreeSelection,
1456        *mut GtkTreeModel,
1457        *mut GtkTreePath,
1458        gboolean,
1459        gpointer,
1460    ) -> gboolean,
1461>;
1462pub type GtkTreeViewColumnDropFunc = Option<
1463    unsafe extern "C" fn(
1464        *mut GtkTreeView,
1465        *mut GtkTreeViewColumn,
1466        *mut GtkTreeViewColumn,
1467        *mut GtkTreeViewColumn,
1468        gpointer,
1469    ) -> gboolean,
1470>;
1471pub type GtkTreeViewMappingFunc =
1472    Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, gpointer)>;
1473pub type GtkTreeViewRowSeparatorFunc =
1474    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1475pub type GtkTreeViewSearchEqualFunc = Option<
1476    unsafe extern "C" fn(
1477        *mut GtkTreeModel,
1478        c_int,
1479        *const c_char,
1480        *mut GtkTreeIter,
1481        gpointer,
1482    ) -> gboolean,
1483>;
1484pub type GtkTreeViewSearchPositionFunc =
1485    Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkWidget, gpointer)>;
1486
1487// Records
1488#[derive(Copy, Clone)]
1489#[repr(C)]
1490pub struct GtkAboutDialogClass {
1491    pub parent_class: GtkDialogClass,
1492    pub activate_link: Option<unsafe extern "C" fn(*mut GtkAboutDialog, *const c_char) -> gboolean>,
1493    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1494    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1495    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1496    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1497}
1498
1499impl ::std::fmt::Debug for GtkAboutDialogClass {
1500    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1501        f.debug_struct(&format!("GtkAboutDialogClass @ {self:p}"))
1502            .field("parent_class", &self.parent_class)
1503            .field("activate_link", &self.activate_link)
1504            .field("_gtk_reserved1", &self._gtk_reserved1)
1505            .field("_gtk_reserved2", &self._gtk_reserved2)
1506            .field("_gtk_reserved3", &self._gtk_reserved3)
1507            .field("_gtk_reserved4", &self._gtk_reserved4)
1508            .finish()
1509    }
1510}
1511
1512#[repr(C)]
1513#[allow(dead_code)]
1514pub struct _GtkAboutDialogPrivate {
1515    _data: [u8; 0],
1516    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1517}
1518
1519pub type GtkAboutDialogPrivate = _GtkAboutDialogPrivate;
1520
1521#[derive(Copy, Clone)]
1522#[repr(C)]
1523pub struct GtkAccelGroupClass {
1524    pub parent_class: gobject::GObjectClass,
1525    pub accel_changed: Option<
1526        unsafe extern "C" fn(
1527            *mut GtkAccelGroup,
1528            c_uint,
1529            gdk::GdkModifierType,
1530            *mut gobject::GClosure,
1531        ),
1532    >,
1533    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1534    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1535    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1536    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1537}
1538
1539impl ::std::fmt::Debug for GtkAccelGroupClass {
1540    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1541        f.debug_struct(&format!("GtkAccelGroupClass @ {self:p}"))
1542            .field("parent_class", &self.parent_class)
1543            .field("accel_changed", &self.accel_changed)
1544            .field("_gtk_reserved1", &self._gtk_reserved1)
1545            .field("_gtk_reserved2", &self._gtk_reserved2)
1546            .field("_gtk_reserved3", &self._gtk_reserved3)
1547            .field("_gtk_reserved4", &self._gtk_reserved4)
1548            .finish()
1549    }
1550}
1551
1552#[derive(Copy, Clone)]
1553#[repr(C)]
1554pub struct GtkAccelGroupEntry {
1555    pub key: GtkAccelKey,
1556    pub closure: *mut gobject::GClosure,
1557    pub accel_path_quark: glib::GQuark,
1558}
1559
1560impl ::std::fmt::Debug for GtkAccelGroupEntry {
1561    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1562        f.debug_struct(&format!("GtkAccelGroupEntry @ {self:p}"))
1563            .field("key", &self.key)
1564            .field("closure", &self.closure)
1565            .field("accel_path_quark", &self.accel_path_quark)
1566            .finish()
1567    }
1568}
1569
1570#[repr(C)]
1571#[allow(dead_code)]
1572pub struct _GtkAccelGroupPrivate {
1573    _data: [u8; 0],
1574    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1575}
1576
1577pub type GtkAccelGroupPrivate = _GtkAccelGroupPrivate;
1578
1579#[derive(Copy, Clone)]
1580#[repr(C)]
1581pub struct GtkAccelKey {
1582    pub accel_key: c_uint,
1583    pub accel_mods: gdk::GdkModifierType,
1584    pub accel_flags: c_uint,
1585}
1586
1587impl ::std::fmt::Debug for GtkAccelKey {
1588    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1589        f.debug_struct(&format!("GtkAccelKey @ {self:p}"))
1590            .field("accel_key", &self.accel_key)
1591            .field("accel_mods", &self.accel_mods)
1592            .field("accel_flags", &self.accel_flags)
1593            .finish()
1594    }
1595}
1596
1597#[derive(Copy, Clone)]
1598#[repr(C)]
1599pub struct GtkAccelLabelClass {
1600    pub parent_class: GtkLabelClass,
1601    pub signal_quote1: *mut c_char,
1602    pub signal_quote2: *mut c_char,
1603    pub mod_name_shift: *mut c_char,
1604    pub mod_name_control: *mut c_char,
1605    pub mod_name_alt: *mut c_char,
1606    pub mod_separator: *mut c_char,
1607    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1608    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1609    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1610    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1611}
1612
1613impl ::std::fmt::Debug for GtkAccelLabelClass {
1614    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1615        f.debug_struct(&format!("GtkAccelLabelClass @ {self:p}"))
1616            .field("parent_class", &self.parent_class)
1617            .field("signal_quote1", &self.signal_quote1)
1618            .field("signal_quote2", &self.signal_quote2)
1619            .field("mod_name_shift", &self.mod_name_shift)
1620            .field("mod_name_control", &self.mod_name_control)
1621            .field("mod_name_alt", &self.mod_name_alt)
1622            .field("mod_separator", &self.mod_separator)
1623            .field("_gtk_reserved1", &self._gtk_reserved1)
1624            .field("_gtk_reserved2", &self._gtk_reserved2)
1625            .field("_gtk_reserved3", &self._gtk_reserved3)
1626            .field("_gtk_reserved4", &self._gtk_reserved4)
1627            .finish()
1628    }
1629}
1630
1631#[repr(C)]
1632#[allow(dead_code)]
1633pub struct _GtkAccelLabelPrivate {
1634    _data: [u8; 0],
1635    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1636}
1637
1638pub type GtkAccelLabelPrivate = _GtkAccelLabelPrivate;
1639
1640#[repr(C)]
1641#[allow(dead_code)]
1642pub struct _GtkAccelMapClass {
1643    _data: [u8; 0],
1644    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1645}
1646
1647pub type GtkAccelMapClass = _GtkAccelMapClass;
1648
1649#[derive(Copy, Clone)]
1650#[repr(C)]
1651pub struct GtkAccessibleClass {
1652    pub parent_class: atk::AtkObjectClass,
1653    pub connect_widget_destroyed: Option<unsafe extern "C" fn(*mut GtkAccessible)>,
1654    pub widget_set: Option<unsafe extern "C" fn(*mut GtkAccessible)>,
1655    pub widget_unset: Option<unsafe extern "C" fn(*mut GtkAccessible)>,
1656    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1657    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1658}
1659
1660impl ::std::fmt::Debug for GtkAccessibleClass {
1661    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1662        f.debug_struct(&format!("GtkAccessibleClass @ {self:p}"))
1663            .field("parent_class", &self.parent_class)
1664            .field("connect_widget_destroyed", &self.connect_widget_destroyed)
1665            .field("widget_set", &self.widget_set)
1666            .field("widget_unset", &self.widget_unset)
1667            .field("_gtk_reserved3", &self._gtk_reserved3)
1668            .field("_gtk_reserved4", &self._gtk_reserved4)
1669            .finish()
1670    }
1671}
1672
1673#[repr(C)]
1674#[allow(dead_code)]
1675pub struct _GtkAccessiblePrivate {
1676    _data: [u8; 0],
1677    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1678}
1679
1680pub type GtkAccessiblePrivate = _GtkAccessiblePrivate;
1681
1682#[derive(Copy, Clone)]
1683#[repr(C)]
1684pub struct GtkActionBarClass {
1685    pub parent_class: GtkBinClass,
1686    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1687    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1688    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1689    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1690}
1691
1692impl ::std::fmt::Debug for GtkActionBarClass {
1693    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1694        f.debug_struct(&format!("GtkActionBarClass @ {self:p}"))
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#[repr(C)]
1704#[allow(dead_code)]
1705pub struct _GtkActionBarPrivate {
1706    _data: [u8; 0],
1707    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1708}
1709
1710pub type GtkActionBarPrivate = _GtkActionBarPrivate;
1711
1712#[derive(Copy, Clone)]
1713#[repr(C)]
1714pub struct GtkActionClass {
1715    pub parent_class: gobject::GObjectClass,
1716    pub activate: Option<unsafe extern "C" fn(*mut GtkAction)>,
1717    pub menu_item_type: GType,
1718    pub toolbar_item_type: GType,
1719    pub create_menu_item: Option<unsafe extern "C" fn(*mut GtkAction) -> *mut GtkWidget>,
1720    pub create_tool_item: Option<unsafe extern "C" fn(*mut GtkAction) -> *mut GtkWidget>,
1721    pub connect_proxy: Option<unsafe extern "C" fn(*mut GtkAction, *mut GtkWidget)>,
1722    pub disconnect_proxy: Option<unsafe extern "C" fn(*mut GtkAction, *mut GtkWidget)>,
1723    pub create_menu: Option<unsafe extern "C" fn(*mut GtkAction) -> *mut GtkWidget>,
1724    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1725    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1726    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1727    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1728}
1729
1730impl ::std::fmt::Debug for GtkActionClass {
1731    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1732        f.debug_struct(&format!("GtkActionClass @ {self:p}"))
1733            .field("parent_class", &self.parent_class)
1734            .field("activate", &self.activate)
1735            .field("create_menu_item", &self.create_menu_item)
1736            .field("create_tool_item", &self.create_tool_item)
1737            .field("connect_proxy", &self.connect_proxy)
1738            .field("disconnect_proxy", &self.disconnect_proxy)
1739            .field("create_menu", &self.create_menu)
1740            .field("_gtk_reserved1", &self._gtk_reserved1)
1741            .field("_gtk_reserved2", &self._gtk_reserved2)
1742            .field("_gtk_reserved3", &self._gtk_reserved3)
1743            .field("_gtk_reserved4", &self._gtk_reserved4)
1744            .finish()
1745    }
1746}
1747
1748#[derive(Copy, Clone)]
1749#[repr(C)]
1750pub struct GtkActionEntry {
1751    pub name: *const c_char,
1752    pub stock_id: *const c_char,
1753    pub label: *const c_char,
1754    pub accelerator: *const c_char,
1755    pub tooltip: *const c_char,
1756    pub callback: gobject::GCallback,
1757}
1758
1759impl ::std::fmt::Debug for GtkActionEntry {
1760    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1761        f.debug_struct(&format!("GtkActionEntry @ {self:p}"))
1762            .field("name", &self.name)
1763            .field("stock_id", &self.stock_id)
1764            .field("label", &self.label)
1765            .field("accelerator", &self.accelerator)
1766            .field("tooltip", &self.tooltip)
1767            .field("callback", &self.callback)
1768            .finish()
1769    }
1770}
1771
1772#[derive(Copy, Clone)]
1773#[repr(C)]
1774pub struct GtkActionGroupClass {
1775    pub parent_class: gobject::GObjectClass,
1776    pub get_action:
1777        Option<unsafe extern "C" fn(*mut GtkActionGroup, *const c_char) -> *mut GtkAction>,
1778    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1779    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1780    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1781    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1782}
1783
1784impl ::std::fmt::Debug for GtkActionGroupClass {
1785    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1786        f.debug_struct(&format!("GtkActionGroupClass @ {self:p}"))
1787            .field("parent_class", &self.parent_class)
1788            .field("get_action", &self.get_action)
1789            .field("_gtk_reserved1", &self._gtk_reserved1)
1790            .field("_gtk_reserved2", &self._gtk_reserved2)
1791            .field("_gtk_reserved3", &self._gtk_reserved3)
1792            .field("_gtk_reserved4", &self._gtk_reserved4)
1793            .finish()
1794    }
1795}
1796
1797#[repr(C)]
1798#[allow(dead_code)]
1799pub struct _GtkActionGroupPrivate {
1800    _data: [u8; 0],
1801    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1802}
1803
1804pub type GtkActionGroupPrivate = _GtkActionGroupPrivate;
1805
1806#[repr(C)]
1807#[allow(dead_code)]
1808pub struct _GtkActionPrivate {
1809    _data: [u8; 0],
1810    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1811}
1812
1813pub type GtkActionPrivate = _GtkActionPrivate;
1814
1815#[derive(Copy, Clone)]
1816#[repr(C)]
1817pub struct GtkActionableInterface {
1818    pub g_iface: gobject::GTypeInterface,
1819    pub get_action_name: Option<unsafe extern "C" fn(*mut GtkActionable) -> *const c_char>,
1820    pub set_action_name: Option<unsafe extern "C" fn(*mut GtkActionable, *const c_char)>,
1821    pub get_action_target_value:
1822        Option<unsafe extern "C" fn(*mut GtkActionable) -> *mut glib::GVariant>,
1823    pub set_action_target_value:
1824        Option<unsafe extern "C" fn(*mut GtkActionable, *mut glib::GVariant)>,
1825}
1826
1827impl ::std::fmt::Debug for GtkActionableInterface {
1828    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1829        f.debug_struct(&format!("GtkActionableInterface @ {self:p}"))
1830            .field("get_action_name", &self.get_action_name)
1831            .field("set_action_name", &self.set_action_name)
1832            .field("get_action_target_value", &self.get_action_target_value)
1833            .field("set_action_target_value", &self.set_action_target_value)
1834            .finish()
1835    }
1836}
1837
1838#[derive(Copy, Clone)]
1839#[repr(C)]
1840pub struct GtkActivatableIface {
1841    pub g_iface: gobject::GTypeInterface,
1842    pub update: Option<unsafe extern "C" fn(*mut GtkActivatable, *mut GtkAction, *const c_char)>,
1843    pub sync_action_properties: Option<unsafe extern "C" fn(*mut GtkActivatable, *mut GtkAction)>,
1844}
1845
1846impl ::std::fmt::Debug for GtkActivatableIface {
1847    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1848        f.debug_struct(&format!("GtkActivatableIface @ {self:p}"))
1849            .field("update", &self.update)
1850            .field("sync_action_properties", &self.sync_action_properties)
1851            .finish()
1852    }
1853}
1854
1855#[derive(Copy, Clone)]
1856#[repr(C)]
1857pub struct GtkAdjustmentClass {
1858    pub parent_class: gobject::GInitiallyUnownedClass,
1859    pub changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1860    pub value_changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1861    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1862    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1863    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1864    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1865}
1866
1867impl ::std::fmt::Debug for GtkAdjustmentClass {
1868    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1869        f.debug_struct(&format!("GtkAdjustmentClass @ {self:p}"))
1870            .field("parent_class", &self.parent_class)
1871            .field("changed", &self.changed)
1872            .field("value_changed", &self.value_changed)
1873            .field("_gtk_reserved1", &self._gtk_reserved1)
1874            .field("_gtk_reserved2", &self._gtk_reserved2)
1875            .field("_gtk_reserved3", &self._gtk_reserved3)
1876            .field("_gtk_reserved4", &self._gtk_reserved4)
1877            .finish()
1878    }
1879}
1880
1881#[repr(C)]
1882#[allow(dead_code)]
1883pub struct _GtkAdjustmentPrivate {
1884    _data: [u8; 0],
1885    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1886}
1887
1888pub type GtkAdjustmentPrivate = _GtkAdjustmentPrivate;
1889
1890#[derive(Copy, Clone)]
1891#[repr(C)]
1892pub struct GtkAlignmentClass {
1893    pub parent_class: GtkBinClass,
1894    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1895    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1896    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1897    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1898}
1899
1900impl ::std::fmt::Debug for GtkAlignmentClass {
1901    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1902        f.debug_struct(&format!("GtkAlignmentClass @ {self:p}"))
1903            .field("parent_class", &self.parent_class)
1904            .field("_gtk_reserved1", &self._gtk_reserved1)
1905            .field("_gtk_reserved2", &self._gtk_reserved2)
1906            .field("_gtk_reserved3", &self._gtk_reserved3)
1907            .field("_gtk_reserved4", &self._gtk_reserved4)
1908            .finish()
1909    }
1910}
1911
1912#[repr(C)]
1913#[allow(dead_code)]
1914pub struct _GtkAlignmentPrivate {
1915    _data: [u8; 0],
1916    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1917}
1918
1919pub type GtkAlignmentPrivate = _GtkAlignmentPrivate;
1920
1921#[derive(Copy, Clone)]
1922#[repr(C)]
1923pub struct GtkAppChooserButtonClass {
1924    pub parent_class: GtkComboBoxClass,
1925    pub custom_item_activated:
1926        Option<unsafe extern "C" fn(*mut GtkAppChooserButton, *const c_char)>,
1927    pub padding: [gpointer; 16],
1928}
1929
1930impl ::std::fmt::Debug for GtkAppChooserButtonClass {
1931    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1932        f.debug_struct(&format!("GtkAppChooserButtonClass @ {self:p}"))
1933            .field("parent_class", &self.parent_class)
1934            .field("custom_item_activated", &self.custom_item_activated)
1935            .finish()
1936    }
1937}
1938
1939#[repr(C)]
1940#[allow(dead_code)]
1941pub struct _GtkAppChooserButtonPrivate {
1942    _data: [u8; 0],
1943    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1944}
1945
1946pub type GtkAppChooserButtonPrivate = _GtkAppChooserButtonPrivate;
1947
1948#[derive(Copy, Clone)]
1949#[repr(C)]
1950pub struct GtkAppChooserDialogClass {
1951    pub parent_class: GtkDialogClass,
1952    pub padding: [gpointer; 16],
1953}
1954
1955impl ::std::fmt::Debug for GtkAppChooserDialogClass {
1956    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1957        f.debug_struct(&format!("GtkAppChooserDialogClass @ {self:p}"))
1958            .field("parent_class", &self.parent_class)
1959            .finish()
1960    }
1961}
1962
1963#[repr(C)]
1964#[allow(dead_code)]
1965pub struct _GtkAppChooserDialogPrivate {
1966    _data: [u8; 0],
1967    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1968}
1969
1970pub type GtkAppChooserDialogPrivate = _GtkAppChooserDialogPrivate;
1971
1972#[derive(Copy, Clone)]
1973#[repr(C)]
1974pub struct GtkAppChooserWidgetClass {
1975    pub parent_class: GtkBoxClass,
1976    pub application_selected:
1977        Option<unsafe extern "C" fn(*mut GtkAppChooserWidget, *mut gio::GAppInfo)>,
1978    pub application_activated:
1979        Option<unsafe extern "C" fn(*mut GtkAppChooserWidget, *mut gio::GAppInfo)>,
1980    pub populate_popup:
1981        Option<unsafe extern "C" fn(*mut GtkAppChooserWidget, *mut GtkMenu, *mut gio::GAppInfo)>,
1982    pub padding: [gpointer; 16],
1983}
1984
1985impl ::std::fmt::Debug for GtkAppChooserWidgetClass {
1986    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1987        f.debug_struct(&format!("GtkAppChooserWidgetClass @ {self:p}"))
1988            .field("parent_class", &self.parent_class)
1989            .field("application_selected", &self.application_selected)
1990            .field("application_activated", &self.application_activated)
1991            .field("populate_popup", &self.populate_popup)
1992            .finish()
1993    }
1994}
1995
1996#[repr(C)]
1997#[allow(dead_code)]
1998pub struct _GtkAppChooserWidgetPrivate {
1999    _data: [u8; 0],
2000    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2001}
2002
2003pub type GtkAppChooserWidgetPrivate = _GtkAppChooserWidgetPrivate;
2004
2005#[derive(Copy, Clone)]
2006#[repr(C)]
2007pub struct GtkApplicationClass {
2008    pub parent_class: gio::GApplicationClass,
2009    pub window_added: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
2010    pub window_removed: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
2011    pub padding: [gpointer; 12],
2012}
2013
2014impl ::std::fmt::Debug for GtkApplicationClass {
2015    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2016        f.debug_struct(&format!("GtkApplicationClass @ {self:p}"))
2017            .field("parent_class", &self.parent_class)
2018            .field("window_added", &self.window_added)
2019            .field("window_removed", &self.window_removed)
2020            .finish()
2021    }
2022}
2023
2024#[repr(C)]
2025#[allow(dead_code)]
2026pub struct _GtkApplicationPrivate {
2027    _data: [u8; 0],
2028    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2029}
2030
2031pub type GtkApplicationPrivate = _GtkApplicationPrivate;
2032
2033#[derive(Copy, Clone)]
2034#[repr(C)]
2035pub struct GtkApplicationWindowClass {
2036    pub parent_class: GtkWindowClass,
2037    pub padding: [gpointer; 14],
2038}
2039
2040impl ::std::fmt::Debug for GtkApplicationWindowClass {
2041    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2042        f.debug_struct(&format!("GtkApplicationWindowClass @ {self:p}"))
2043            .field("parent_class", &self.parent_class)
2044            .finish()
2045    }
2046}
2047
2048#[repr(C)]
2049#[allow(dead_code)]
2050pub struct _GtkApplicationWindowPrivate {
2051    _data: [u8; 0],
2052    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2053}
2054
2055pub type GtkApplicationWindowPrivate = _GtkApplicationWindowPrivate;
2056
2057#[derive(Copy, Clone)]
2058#[repr(C)]
2059pub struct GtkArrowAccessibleClass {
2060    pub parent_class: GtkWidgetAccessibleClass,
2061}
2062
2063impl ::std::fmt::Debug for GtkArrowAccessibleClass {
2064    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2065        f.debug_struct(&format!("GtkArrowAccessibleClass @ {self:p}"))
2066            .field("parent_class", &self.parent_class)
2067            .finish()
2068    }
2069}
2070
2071#[repr(C)]
2072#[allow(dead_code)]
2073pub struct _GtkArrowAccessiblePrivate {
2074    _data: [u8; 0],
2075    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2076}
2077
2078pub type GtkArrowAccessiblePrivate = _GtkArrowAccessiblePrivate;
2079
2080#[derive(Copy, Clone)]
2081#[repr(C)]
2082pub struct GtkArrowClass {
2083    pub parent_class: GtkMiscClass,
2084    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2085    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2086    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2087    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2088}
2089
2090impl ::std::fmt::Debug for GtkArrowClass {
2091    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2092        f.debug_struct(&format!("GtkArrowClass @ {self:p}"))
2093            .field("parent_class", &self.parent_class)
2094            .field("_gtk_reserved1", &self._gtk_reserved1)
2095            .field("_gtk_reserved2", &self._gtk_reserved2)
2096            .field("_gtk_reserved3", &self._gtk_reserved3)
2097            .field("_gtk_reserved4", &self._gtk_reserved4)
2098            .finish()
2099    }
2100}
2101
2102#[repr(C)]
2103#[allow(dead_code)]
2104pub struct _GtkArrowPrivate {
2105    _data: [u8; 0],
2106    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2107}
2108
2109pub type GtkArrowPrivate = _GtkArrowPrivate;
2110
2111#[derive(Copy, Clone)]
2112#[repr(C)]
2113pub struct GtkAspectFrameClass {
2114    pub parent_class: GtkFrameClass,
2115    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2116    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2117    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2118    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2119}
2120
2121impl ::std::fmt::Debug for GtkAspectFrameClass {
2122    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2123        f.debug_struct(&format!("GtkAspectFrameClass @ {self:p}"))
2124            .field("parent_class", &self.parent_class)
2125            .field("_gtk_reserved1", &self._gtk_reserved1)
2126            .field("_gtk_reserved2", &self._gtk_reserved2)
2127            .field("_gtk_reserved3", &self._gtk_reserved3)
2128            .field("_gtk_reserved4", &self._gtk_reserved4)
2129            .finish()
2130    }
2131}
2132
2133#[repr(C)]
2134#[allow(dead_code)]
2135pub struct _GtkAspectFramePrivate {
2136    _data: [u8; 0],
2137    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2138}
2139
2140pub type GtkAspectFramePrivate = _GtkAspectFramePrivate;
2141
2142#[derive(Copy, Clone)]
2143#[repr(C)]
2144pub struct GtkAssistantClass {
2145    pub parent_class: GtkWindowClass,
2146    pub prepare: Option<unsafe extern "C" fn(*mut GtkAssistant, *mut GtkWidget)>,
2147    pub apply: Option<unsafe extern "C" fn(*mut GtkAssistant)>,
2148    pub close: Option<unsafe extern "C" fn(*mut GtkAssistant)>,
2149    pub cancel: Option<unsafe extern "C" fn(*mut GtkAssistant)>,
2150    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2151    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2152    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2153    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2154    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
2155}
2156
2157impl ::std::fmt::Debug for GtkAssistantClass {
2158    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2159        f.debug_struct(&format!("GtkAssistantClass @ {self:p}"))
2160            .field("parent_class", &self.parent_class)
2161            .field("prepare", &self.prepare)
2162            .field("apply", &self.apply)
2163            .field("close", &self.close)
2164            .field("cancel", &self.cancel)
2165            .field("_gtk_reserved1", &self._gtk_reserved1)
2166            .field("_gtk_reserved2", &self._gtk_reserved2)
2167            .field("_gtk_reserved3", &self._gtk_reserved3)
2168            .field("_gtk_reserved4", &self._gtk_reserved4)
2169            .field("_gtk_reserved5", &self._gtk_reserved5)
2170            .finish()
2171    }
2172}
2173
2174#[repr(C)]
2175#[allow(dead_code)]
2176pub struct _GtkAssistantPrivate {
2177    _data: [u8; 0],
2178    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2179}
2180
2181pub type GtkAssistantPrivate = _GtkAssistantPrivate;
2182
2183#[derive(Copy, Clone)]
2184#[repr(C)]
2185pub struct GtkBinClass {
2186    pub parent_class: GtkContainerClass,
2187    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2188    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2189    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2190    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2191}
2192
2193impl ::std::fmt::Debug for GtkBinClass {
2194    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2195        f.debug_struct(&format!("GtkBinClass @ {self:p}"))
2196            .field("parent_class", &self.parent_class)
2197            .field("_gtk_reserved1", &self._gtk_reserved1)
2198            .field("_gtk_reserved2", &self._gtk_reserved2)
2199            .field("_gtk_reserved3", &self._gtk_reserved3)
2200            .field("_gtk_reserved4", &self._gtk_reserved4)
2201            .finish()
2202    }
2203}
2204
2205#[repr(C)]
2206#[allow(dead_code)]
2207pub struct _GtkBinPrivate {
2208    _data: [u8; 0],
2209    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2210}
2211
2212pub type GtkBinPrivate = _GtkBinPrivate;
2213
2214#[derive(Copy, Clone)]
2215#[repr(C)]
2216pub struct GtkBindingArg {
2217    pub arg_type: GType,
2218    pub d: GtkBindingArg_d,
2219}
2220
2221impl ::std::fmt::Debug for GtkBindingArg {
2222    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2223        f.debug_struct(&format!("GtkBindingArg @ {self:p}"))
2224            .field("arg_type", &self.arg_type)
2225            .field("d", &self.d)
2226            .finish()
2227    }
2228}
2229
2230#[repr(C)]
2231#[allow(dead_code)]
2232pub struct GtkBindingEntry {
2233    pub keyval: c_uint,
2234    pub modifiers: gdk::GdkModifierType,
2235    pub binding_set: *mut GtkBindingSet,
2236    pub destroyed: c_uint,
2237    _truncated_record_marker: c_void,
2238    // field in_emission has incomplete type
2239}
2240
2241impl ::std::fmt::Debug for GtkBindingEntry {
2242    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2243        f.debug_struct(&format!("GtkBindingEntry @ {self:p}"))
2244            .field("keyval", &self.keyval)
2245            .field("modifiers", &self.modifiers)
2246            .field("binding_set", &self.binding_set)
2247            .field("destroyed", &self.destroyed)
2248            .finish()
2249    }
2250}
2251
2252#[derive(Copy, Clone)]
2253#[repr(C)]
2254pub struct GtkBindingSet {
2255    pub set_name: *mut c_char,
2256    pub priority: c_int,
2257    pub widget_path_pspecs: *mut glib::GSList,
2258    pub widget_class_pspecs: *mut glib::GSList,
2259    pub class_branch_pspecs: *mut glib::GSList,
2260    pub entries: *mut GtkBindingEntry,
2261    pub current: *mut GtkBindingEntry,
2262    pub parsed: c_uint,
2263}
2264
2265impl ::std::fmt::Debug for GtkBindingSet {
2266    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2267        f.debug_struct(&format!("GtkBindingSet @ {self:p}"))
2268            .field("set_name", &self.set_name)
2269            .field("priority", &self.priority)
2270            .field("widget_path_pspecs", &self.widget_path_pspecs)
2271            .field("widget_class_pspecs", &self.widget_class_pspecs)
2272            .field("class_branch_pspecs", &self.class_branch_pspecs)
2273            .field("entries", &self.entries)
2274            .field("current", &self.current)
2275            .field("parsed", &self.parsed)
2276            .finish()
2277    }
2278}
2279
2280#[derive(Copy, Clone)]
2281#[repr(C)]
2282pub struct GtkBindingSignal {
2283    pub next: *mut GtkBindingSignal,
2284    pub signal_name: *mut c_char,
2285    pub n_args: c_uint,
2286    pub args: *mut GtkBindingArg,
2287}
2288
2289impl ::std::fmt::Debug for GtkBindingSignal {
2290    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2291        f.debug_struct(&format!("GtkBindingSignal @ {self:p}"))
2292            .field("next", &self.next)
2293            .field("signal_name", &self.signal_name)
2294            .field("n_args", &self.n_args)
2295            .field("args", &self.args)
2296            .finish()
2297    }
2298}
2299
2300#[derive(Copy, Clone)]
2301#[repr(C)]
2302pub struct GtkBooleanCellAccessibleClass {
2303    pub parent_class: GtkRendererCellAccessibleClass,
2304}
2305
2306impl ::std::fmt::Debug for GtkBooleanCellAccessibleClass {
2307    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2308        f.debug_struct(&format!("GtkBooleanCellAccessibleClass @ {self:p}"))
2309            .field("parent_class", &self.parent_class)
2310            .finish()
2311    }
2312}
2313
2314#[repr(C)]
2315#[allow(dead_code)]
2316pub struct _GtkBooleanCellAccessiblePrivate {
2317    _data: [u8; 0],
2318    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2319}
2320
2321pub type GtkBooleanCellAccessiblePrivate = _GtkBooleanCellAccessiblePrivate;
2322
2323#[derive(Copy, Clone)]
2324#[repr(C)]
2325pub struct GtkBorder {
2326    pub left: i16,
2327    pub right: i16,
2328    pub top: i16,
2329    pub bottom: i16,
2330}
2331
2332impl ::std::fmt::Debug for GtkBorder {
2333    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2334        f.debug_struct(&format!("GtkBorder @ {self:p}"))
2335            .field("left", &self.left)
2336            .field("right", &self.right)
2337            .field("top", &self.top)
2338            .field("bottom", &self.bottom)
2339            .finish()
2340    }
2341}
2342
2343#[derive(Copy, Clone)]
2344#[repr(C)]
2345pub struct GtkBoxClass {
2346    pub parent_class: GtkContainerClass,
2347    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2348    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2349    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2350    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2351}
2352
2353impl ::std::fmt::Debug for GtkBoxClass {
2354    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2355        f.debug_struct(&format!("GtkBoxClass @ {self:p}"))
2356            .field("parent_class", &self.parent_class)
2357            .field("_gtk_reserved1", &self._gtk_reserved1)
2358            .field("_gtk_reserved2", &self._gtk_reserved2)
2359            .field("_gtk_reserved3", &self._gtk_reserved3)
2360            .field("_gtk_reserved4", &self._gtk_reserved4)
2361            .finish()
2362    }
2363}
2364
2365#[repr(C)]
2366#[allow(dead_code)]
2367pub struct _GtkBoxPrivate {
2368    _data: [u8; 0],
2369    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2370}
2371
2372pub type GtkBoxPrivate = _GtkBoxPrivate;
2373
2374#[derive(Copy, Clone)]
2375#[repr(C)]
2376pub struct GtkBuildableIface {
2377    pub g_iface: gobject::GTypeInterface,
2378    pub set_name: Option<unsafe extern "C" fn(*mut GtkBuildable, *const c_char)>,
2379    pub get_name: Option<unsafe extern "C" fn(*mut GtkBuildable) -> *const c_char>,
2380    pub add_child: Option<
2381        unsafe extern "C" fn(
2382            *mut GtkBuildable,
2383            *mut GtkBuilder,
2384            *mut gobject::GObject,
2385            *const c_char,
2386        ),
2387    >,
2388    pub set_buildable_property: Option<
2389        unsafe extern "C" fn(
2390            *mut GtkBuildable,
2391            *mut GtkBuilder,
2392            *const c_char,
2393            *const gobject::GValue,
2394        ),
2395    >,
2396    pub construct_child: Option<
2397        unsafe extern "C" fn(
2398            *mut GtkBuildable,
2399            *mut GtkBuilder,
2400            *const c_char,
2401        ) -> *mut gobject::GObject,
2402    >,
2403    pub custom_tag_start: Option<
2404        unsafe extern "C" fn(
2405            *mut GtkBuildable,
2406            *mut GtkBuilder,
2407            *mut gobject::GObject,
2408            *const c_char,
2409            *mut glib::GMarkupParser,
2410            *mut gpointer,
2411        ) -> gboolean,
2412    >,
2413    pub custom_tag_end: Option<
2414        unsafe extern "C" fn(
2415            *mut GtkBuildable,
2416            *mut GtkBuilder,
2417            *mut gobject::GObject,
2418            *const c_char,
2419            gpointer,
2420        ),
2421    >,
2422    pub custom_finished: Option<
2423        unsafe extern "C" fn(
2424            *mut GtkBuildable,
2425            *mut GtkBuilder,
2426            *mut gobject::GObject,
2427            *const c_char,
2428            gpointer,
2429        ),
2430    >,
2431    pub parser_finished: Option<unsafe extern "C" fn(*mut GtkBuildable, *mut GtkBuilder)>,
2432    pub get_internal_child: Option<
2433        unsafe extern "C" fn(
2434            *mut GtkBuildable,
2435            *mut GtkBuilder,
2436            *const c_char,
2437        ) -> *mut gobject::GObject,
2438    >,
2439}
2440
2441impl ::std::fmt::Debug for GtkBuildableIface {
2442    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2443        f.debug_struct(&format!("GtkBuildableIface @ {self:p}"))
2444            .field("g_iface", &self.g_iface)
2445            .field("set_name", &self.set_name)
2446            .field("get_name", &self.get_name)
2447            .field("add_child", &self.add_child)
2448            .field("set_buildable_property", &self.set_buildable_property)
2449            .field("construct_child", &self.construct_child)
2450            .field("custom_tag_start", &self.custom_tag_start)
2451            .field("custom_tag_end", &self.custom_tag_end)
2452            .field("custom_finished", &self.custom_finished)
2453            .field("parser_finished", &self.parser_finished)
2454            .field("get_internal_child", &self.get_internal_child)
2455            .finish()
2456    }
2457}
2458
2459#[derive(Copy, Clone)]
2460#[repr(C)]
2461pub struct GtkBuilderClass {
2462    pub parent_class: gobject::GObjectClass,
2463    pub get_type_from_name: Option<unsafe extern "C" fn(*mut GtkBuilder, *const c_char) -> GType>,
2464    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2465    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2466    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2467    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2468    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
2469    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
2470    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
2471    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
2472}
2473
2474impl ::std::fmt::Debug for GtkBuilderClass {
2475    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2476        f.debug_struct(&format!("GtkBuilderClass @ {self:p}"))
2477            .field("parent_class", &self.parent_class)
2478            .field("get_type_from_name", &self.get_type_from_name)
2479            .field("_gtk_reserved1", &self._gtk_reserved1)
2480            .field("_gtk_reserved2", &self._gtk_reserved2)
2481            .field("_gtk_reserved3", &self._gtk_reserved3)
2482            .field("_gtk_reserved4", &self._gtk_reserved4)
2483            .field("_gtk_reserved5", &self._gtk_reserved5)
2484            .field("_gtk_reserved6", &self._gtk_reserved6)
2485            .field("_gtk_reserved7", &self._gtk_reserved7)
2486            .field("_gtk_reserved8", &self._gtk_reserved8)
2487            .finish()
2488    }
2489}
2490
2491#[repr(C)]
2492#[allow(dead_code)]
2493pub struct _GtkBuilderPrivate {
2494    _data: [u8; 0],
2495    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2496}
2497
2498pub type GtkBuilderPrivate = _GtkBuilderPrivate;
2499
2500#[derive(Copy, Clone)]
2501#[repr(C)]
2502pub struct GtkButtonAccessibleClass {
2503    pub parent_class: GtkContainerAccessibleClass,
2504}
2505
2506impl ::std::fmt::Debug for GtkButtonAccessibleClass {
2507    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2508        f.debug_struct(&format!("GtkButtonAccessibleClass @ {self:p}"))
2509            .field("parent_class", &self.parent_class)
2510            .finish()
2511    }
2512}
2513
2514#[repr(C)]
2515#[allow(dead_code)]
2516pub struct _GtkButtonAccessiblePrivate {
2517    _data: [u8; 0],
2518    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2519}
2520
2521pub type GtkButtonAccessiblePrivate = _GtkButtonAccessiblePrivate;
2522
2523#[derive(Copy, Clone)]
2524#[repr(C)]
2525pub struct GtkButtonBoxClass {
2526    pub parent_class: GtkBoxClass,
2527    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2528    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2529    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2530    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2531}
2532
2533impl ::std::fmt::Debug for GtkButtonBoxClass {
2534    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2535        f.debug_struct(&format!("GtkButtonBoxClass @ {self:p}"))
2536            .field("parent_class", &self.parent_class)
2537            .field("_gtk_reserved1", &self._gtk_reserved1)
2538            .field("_gtk_reserved2", &self._gtk_reserved2)
2539            .field("_gtk_reserved3", &self._gtk_reserved3)
2540            .field("_gtk_reserved4", &self._gtk_reserved4)
2541            .finish()
2542    }
2543}
2544
2545#[repr(C)]
2546#[allow(dead_code)]
2547pub struct _GtkButtonBoxPrivate {
2548    _data: [u8; 0],
2549    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2550}
2551
2552pub type GtkButtonBoxPrivate = _GtkButtonBoxPrivate;
2553
2554#[derive(Copy, Clone)]
2555#[repr(C)]
2556pub struct GtkButtonClass {
2557    pub parent_class: GtkBinClass,
2558    pub pressed: Option<unsafe extern "C" fn(*mut GtkButton)>,
2559    pub released: Option<unsafe extern "C" fn(*mut GtkButton)>,
2560    pub clicked: Option<unsafe extern "C" fn(*mut GtkButton)>,
2561    pub enter: Option<unsafe extern "C" fn(*mut GtkButton)>,
2562    pub leave: Option<unsafe extern "C" fn(*mut GtkButton)>,
2563    pub activate: Option<unsafe extern "C" fn(*mut GtkButton)>,
2564    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2565    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2566    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2567    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2568}
2569
2570impl ::std::fmt::Debug for GtkButtonClass {
2571    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2572        f.debug_struct(&format!("GtkButtonClass @ {self:p}"))
2573            .field("parent_class", &self.parent_class)
2574            .field("pressed", &self.pressed)
2575            .field("released", &self.released)
2576            .field("clicked", &self.clicked)
2577            .field("enter", &self.enter)
2578            .field("leave", &self.leave)
2579            .field("activate", &self.activate)
2580            .field("_gtk_reserved1", &self._gtk_reserved1)
2581            .field("_gtk_reserved2", &self._gtk_reserved2)
2582            .field("_gtk_reserved3", &self._gtk_reserved3)
2583            .field("_gtk_reserved4", &self._gtk_reserved4)
2584            .finish()
2585    }
2586}
2587
2588#[repr(C)]
2589#[allow(dead_code)]
2590pub struct _GtkButtonPrivate {
2591    _data: [u8; 0],
2592    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2593}
2594
2595pub type GtkButtonPrivate = _GtkButtonPrivate;
2596
2597#[derive(Copy, Clone)]
2598#[repr(C)]
2599pub struct GtkCalendarClass {
2600    pub parent_class: GtkWidgetClass,
2601    pub month_changed: Option<unsafe extern "C" fn(*mut GtkCalendar)>,
2602    pub day_selected: Option<unsafe extern "C" fn(*mut GtkCalendar)>,
2603    pub day_selected_double_click: Option<unsafe extern "C" fn(*mut GtkCalendar)>,
2604    pub prev_month: Option<unsafe extern "C" fn(*mut GtkCalendar)>,
2605    pub next_month: Option<unsafe extern "C" fn(*mut GtkCalendar)>,
2606    pub prev_year: Option<unsafe extern "C" fn(*mut GtkCalendar)>,
2607    pub next_year: Option<unsafe extern "C" fn(*mut GtkCalendar)>,
2608    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2609    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2610    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2611    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2612}
2613
2614impl ::std::fmt::Debug for GtkCalendarClass {
2615    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2616        f.debug_struct(&format!("GtkCalendarClass @ {self:p}"))
2617            .field("parent_class", &self.parent_class)
2618            .field("month_changed", &self.month_changed)
2619            .field("day_selected", &self.day_selected)
2620            .field("day_selected_double_click", &self.day_selected_double_click)
2621            .field("prev_month", &self.prev_month)
2622            .field("next_month", &self.next_month)
2623            .field("prev_year", &self.prev_year)
2624            .field("next_year", &self.next_year)
2625            .field("_gtk_reserved1", &self._gtk_reserved1)
2626            .field("_gtk_reserved2", &self._gtk_reserved2)
2627            .field("_gtk_reserved3", &self._gtk_reserved3)
2628            .field("_gtk_reserved4", &self._gtk_reserved4)
2629            .finish()
2630    }
2631}
2632
2633#[repr(C)]
2634#[allow(dead_code)]
2635pub struct _GtkCalendarPrivate {
2636    _data: [u8; 0],
2637    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2638}
2639
2640pub type GtkCalendarPrivate = _GtkCalendarPrivate;
2641
2642#[derive(Copy, Clone)]
2643#[repr(C)]
2644pub struct GtkCellAccessibleClass {
2645    pub parent_class: GtkAccessibleClass,
2646    pub update_cache: Option<unsafe extern "C" fn(*mut GtkCellAccessible, gboolean)>,
2647}
2648
2649impl ::std::fmt::Debug for GtkCellAccessibleClass {
2650    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2651        f.debug_struct(&format!("GtkCellAccessibleClass @ {self:p}"))
2652            .field("parent_class", &self.parent_class)
2653            .field("update_cache", &self.update_cache)
2654            .finish()
2655    }
2656}
2657
2658#[derive(Copy, Clone)]
2659#[repr(C)]
2660pub struct GtkCellAccessibleParentIface {
2661    pub parent: gobject::GTypeInterface,
2662    pub get_cell_extents: Option<
2663        unsafe extern "C" fn(
2664            *mut GtkCellAccessibleParent,
2665            *mut GtkCellAccessible,
2666            *mut c_int,
2667            *mut c_int,
2668            *mut c_int,
2669            *mut c_int,
2670            atk::AtkCoordType,
2671        ),
2672    >,
2673    pub get_cell_area: Option<
2674        unsafe extern "C" fn(
2675            *mut GtkCellAccessibleParent,
2676            *mut GtkCellAccessible,
2677            *mut gdk::GdkRectangle,
2678        ),
2679    >,
2680    pub grab_focus: Option<
2681        unsafe extern "C" fn(*mut GtkCellAccessibleParent, *mut GtkCellAccessible) -> gboolean,
2682    >,
2683    pub get_child_index:
2684        Option<unsafe extern "C" fn(*mut GtkCellAccessibleParent, *mut GtkCellAccessible) -> c_int>,
2685    pub get_renderer_state: Option<
2686        unsafe extern "C" fn(
2687            *mut GtkCellAccessibleParent,
2688            *mut GtkCellAccessible,
2689        ) -> GtkCellRendererState,
2690    >,
2691    pub expand_collapse:
2692        Option<unsafe extern "C" fn(*mut GtkCellAccessibleParent, *mut GtkCellAccessible)>,
2693    pub activate:
2694        Option<unsafe extern "C" fn(*mut GtkCellAccessibleParent, *mut GtkCellAccessible)>,
2695    pub edit: Option<unsafe extern "C" fn(*mut GtkCellAccessibleParent, *mut GtkCellAccessible)>,
2696    pub update_relationset: Option<
2697        unsafe extern "C" fn(
2698            *mut GtkCellAccessibleParent,
2699            *mut GtkCellAccessible,
2700            *mut atk::AtkRelationSet,
2701        ),
2702    >,
2703    pub get_cell_position: Option<
2704        unsafe extern "C" fn(
2705            *mut GtkCellAccessibleParent,
2706            *mut GtkCellAccessible,
2707            *mut c_int,
2708            *mut c_int,
2709        ),
2710    >,
2711    pub get_column_header_cells: Option<
2712        unsafe extern "C" fn(
2713            *mut GtkCellAccessibleParent,
2714            *mut GtkCellAccessible,
2715        ) -> *mut glib::GPtrArray,
2716    >,
2717    pub get_row_header_cells: Option<
2718        unsafe extern "C" fn(
2719            *mut GtkCellAccessibleParent,
2720            *mut GtkCellAccessible,
2721        ) -> *mut glib::GPtrArray,
2722    >,
2723}
2724
2725impl ::std::fmt::Debug for GtkCellAccessibleParentIface {
2726    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2727        f.debug_struct(&format!("GtkCellAccessibleParentIface @ {self:p}"))
2728            .field("parent", &self.parent)
2729            .field("get_cell_extents", &self.get_cell_extents)
2730            .field("get_cell_area", &self.get_cell_area)
2731            .field("grab_focus", &self.grab_focus)
2732            .field("get_child_index", &self.get_child_index)
2733            .field("get_renderer_state", &self.get_renderer_state)
2734            .field("expand_collapse", &self.expand_collapse)
2735            .field("activate", &self.activate)
2736            .field("edit", &self.edit)
2737            .field("update_relationset", &self.update_relationset)
2738            .field("get_cell_position", &self.get_cell_position)
2739            .field("get_column_header_cells", &self.get_column_header_cells)
2740            .field("get_row_header_cells", &self.get_row_header_cells)
2741            .finish()
2742    }
2743}
2744
2745#[repr(C)]
2746#[allow(dead_code)]
2747pub struct _GtkCellAccessiblePrivate {
2748    _data: [u8; 0],
2749    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2750}
2751
2752pub type GtkCellAccessiblePrivate = _GtkCellAccessiblePrivate;
2753
2754#[derive(Copy, Clone)]
2755#[repr(C)]
2756pub struct GtkCellAreaBoxClass {
2757    pub parent_class: GtkCellAreaClass,
2758    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2759    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2760    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2761    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2762}
2763
2764impl ::std::fmt::Debug for GtkCellAreaBoxClass {
2765    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2766        f.debug_struct(&format!("GtkCellAreaBoxClass @ {self:p}"))
2767            .field("_gtk_reserved1", &self._gtk_reserved1)
2768            .field("_gtk_reserved2", &self._gtk_reserved2)
2769            .field("_gtk_reserved3", &self._gtk_reserved3)
2770            .field("_gtk_reserved4", &self._gtk_reserved4)
2771            .finish()
2772    }
2773}
2774
2775#[repr(C)]
2776#[allow(dead_code)]
2777pub struct _GtkCellAreaBoxPrivate {
2778    _data: [u8; 0],
2779    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2780}
2781
2782pub type GtkCellAreaBoxPrivate = _GtkCellAreaBoxPrivate;
2783
2784#[derive(Copy, Clone)]
2785#[repr(C)]
2786pub struct GtkCellAreaClass {
2787    pub parent_class: gobject::GInitiallyUnownedClass,
2788    pub add: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2789    pub remove: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2790    pub foreach: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkCellCallback, gpointer)>,
2791    pub foreach_alloc: Option<
2792        unsafe extern "C" fn(
2793            *mut GtkCellArea,
2794            *mut GtkCellAreaContext,
2795            *mut GtkWidget,
2796            *const gdk::GdkRectangle,
2797            *const gdk::GdkRectangle,
2798            GtkCellAllocCallback,
2799            gpointer,
2800        ),
2801    >,
2802    pub event: Option<
2803        unsafe extern "C" fn(
2804            *mut GtkCellArea,
2805            *mut GtkCellAreaContext,
2806            *mut GtkWidget,
2807            *mut gdk::GdkEvent,
2808            *const gdk::GdkRectangle,
2809            GtkCellRendererState,
2810        ) -> c_int,
2811    >,
2812    pub render: Option<
2813        unsafe extern "C" fn(
2814            *mut GtkCellArea,
2815            *mut GtkCellAreaContext,
2816            *mut GtkWidget,
2817            *mut cairo::cairo_t,
2818            *const gdk::GdkRectangle,
2819            *const gdk::GdkRectangle,
2820            GtkCellRendererState,
2821            gboolean,
2822        ),
2823    >,
2824    pub apply_attributes: Option<
2825        unsafe extern "C" fn(
2826            *mut GtkCellArea,
2827            *mut GtkTreeModel,
2828            *mut GtkTreeIter,
2829            gboolean,
2830            gboolean,
2831        ),
2832    >,
2833    pub create_context: Option<unsafe extern "C" fn(*mut GtkCellArea) -> *mut GtkCellAreaContext>,
2834    pub copy_context: Option<
2835        unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellAreaContext) -> *mut GtkCellAreaContext,
2836    >,
2837    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellArea) -> GtkSizeRequestMode>,
2838    pub get_preferred_width: Option<
2839        unsafe extern "C" fn(
2840            *mut GtkCellArea,
2841            *mut GtkCellAreaContext,
2842            *mut GtkWidget,
2843            *mut c_int,
2844            *mut c_int,
2845        ),
2846    >,
2847    pub get_preferred_height_for_width: Option<
2848        unsafe extern "C" fn(
2849            *mut GtkCellArea,
2850            *mut GtkCellAreaContext,
2851            *mut GtkWidget,
2852            c_int,
2853            *mut c_int,
2854            *mut c_int,
2855        ),
2856    >,
2857    pub get_preferred_height: Option<
2858        unsafe extern "C" fn(
2859            *mut GtkCellArea,
2860            *mut GtkCellAreaContext,
2861            *mut GtkWidget,
2862            *mut c_int,
2863            *mut c_int,
2864        ),
2865    >,
2866    pub get_preferred_width_for_height: Option<
2867        unsafe extern "C" fn(
2868            *mut GtkCellArea,
2869            *mut GtkCellAreaContext,
2870            *mut GtkWidget,
2871            c_int,
2872            *mut c_int,
2873            *mut c_int,
2874        ),
2875    >,
2876    pub set_cell_property: Option<
2877        unsafe extern "C" fn(
2878            *mut GtkCellArea,
2879            *mut GtkCellRenderer,
2880            c_uint,
2881            *mut gobject::GValue,
2882            *mut gobject::GParamSpec,
2883        ),
2884    >,
2885    pub get_cell_property: Option<
2886        unsafe extern "C" fn(
2887            *mut GtkCellArea,
2888            *mut GtkCellRenderer,
2889            c_uint,
2890            *mut gobject::GValue,
2891            *mut gobject::GParamSpec,
2892        ),
2893    >,
2894    pub focus: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkDirectionType) -> gboolean>,
2895    pub is_activatable: Option<unsafe extern "C" fn(*mut GtkCellArea) -> gboolean>,
2896    pub activate: Option<
2897        unsafe extern "C" fn(
2898            *mut GtkCellArea,
2899            *mut GtkCellAreaContext,
2900            *mut GtkWidget,
2901            *const gdk::GdkRectangle,
2902            GtkCellRendererState,
2903            gboolean,
2904        ) -> gboolean,
2905    >,
2906    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2907    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2908    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2909    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2910    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
2911    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
2912    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
2913    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
2914}
2915
2916impl ::std::fmt::Debug for GtkCellAreaClass {
2917    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2918        f.debug_struct(&format!("GtkCellAreaClass @ {self:p}"))
2919            .field("add", &self.add)
2920            .field("remove", &self.remove)
2921            .field("foreach", &self.foreach)
2922            .field("foreach_alloc", &self.foreach_alloc)
2923            .field("event", &self.event)
2924            .field("render", &self.render)
2925            .field("apply_attributes", &self.apply_attributes)
2926            .field("create_context", &self.create_context)
2927            .field("copy_context", &self.copy_context)
2928            .field("get_request_mode", &self.get_request_mode)
2929            .field("get_preferred_width", &self.get_preferred_width)
2930            .field(
2931                "get_preferred_height_for_width",
2932                &self.get_preferred_height_for_width,
2933            )
2934            .field("get_preferred_height", &self.get_preferred_height)
2935            .field(
2936                "get_preferred_width_for_height",
2937                &self.get_preferred_width_for_height,
2938            )
2939            .field("set_cell_property", &self.set_cell_property)
2940            .field("get_cell_property", &self.get_cell_property)
2941            .field("focus", &self.focus)
2942            .field("is_activatable", &self.is_activatable)
2943            .field("activate", &self.activate)
2944            .field("_gtk_reserved1", &self._gtk_reserved1)
2945            .field("_gtk_reserved2", &self._gtk_reserved2)
2946            .field("_gtk_reserved3", &self._gtk_reserved3)
2947            .field("_gtk_reserved4", &self._gtk_reserved4)
2948            .field("_gtk_reserved5", &self._gtk_reserved5)
2949            .field("_gtk_reserved6", &self._gtk_reserved6)
2950            .field("_gtk_reserved7", &self._gtk_reserved7)
2951            .field("_gtk_reserved8", &self._gtk_reserved8)
2952            .finish()
2953    }
2954}
2955
2956#[derive(Copy, Clone)]
2957#[repr(C)]
2958pub struct GtkCellAreaContextClass {
2959    pub parent_class: gobject::GObjectClass,
2960    pub allocate: Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, c_int)>,
2961    pub reset: Option<unsafe extern "C" fn(*mut GtkCellAreaContext)>,
2962    pub get_preferred_height_for_width:
2963        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2964    pub get_preferred_width_for_height:
2965        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2966    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2967    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2968    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2969    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2970    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
2971    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
2972}
2973
2974impl ::std::fmt::Debug for GtkCellAreaContextClass {
2975    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2976        f.debug_struct(&format!("GtkCellAreaContextClass @ {self:p}"))
2977            .field("allocate", &self.allocate)
2978            .field("reset", &self.reset)
2979            .field(
2980                "get_preferred_height_for_width",
2981                &self.get_preferred_height_for_width,
2982            )
2983            .field(
2984                "get_preferred_width_for_height",
2985                &self.get_preferred_width_for_height,
2986            )
2987            .field("_gtk_reserved1", &self._gtk_reserved1)
2988            .field("_gtk_reserved2", &self._gtk_reserved2)
2989            .field("_gtk_reserved3", &self._gtk_reserved3)
2990            .field("_gtk_reserved4", &self._gtk_reserved4)
2991            .field("_gtk_reserved5", &self._gtk_reserved5)
2992            .field("_gtk_reserved6", &self._gtk_reserved6)
2993            .finish()
2994    }
2995}
2996
2997#[repr(C)]
2998#[allow(dead_code)]
2999pub struct _GtkCellAreaContextPrivate {
3000    _data: [u8; 0],
3001    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3002}
3003
3004pub type GtkCellAreaContextPrivate = _GtkCellAreaContextPrivate;
3005
3006#[repr(C)]
3007#[allow(dead_code)]
3008pub struct _GtkCellAreaPrivate {
3009    _data: [u8; 0],
3010    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3011}
3012
3013pub type GtkCellAreaPrivate = _GtkCellAreaPrivate;
3014
3015#[derive(Copy, Clone)]
3016#[repr(C)]
3017pub struct GtkCellEditableIface {
3018    pub g_iface: gobject::GTypeInterface,
3019    pub editing_done: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
3020    pub remove_widget: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
3021    pub start_editing: Option<unsafe extern "C" fn(*mut GtkCellEditable, *mut gdk::GdkEvent)>,
3022}
3023
3024impl ::std::fmt::Debug for GtkCellEditableIface {
3025    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3026        f.debug_struct(&format!("GtkCellEditableIface @ {self:p}"))
3027            .field("editing_done", &self.editing_done)
3028            .field("remove_widget", &self.remove_widget)
3029            .field("start_editing", &self.start_editing)
3030            .finish()
3031    }
3032}
3033
3034#[derive(Copy, Clone)]
3035#[repr(C)]
3036pub struct GtkCellLayoutIface {
3037    pub g_iface: gobject::GTypeInterface,
3038    pub pack_start:
3039        Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
3040    pub pack_end: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
3041    pub clear: Option<unsafe extern "C" fn(*mut GtkCellLayout)>,
3042    pub add_attribute: Option<
3043        unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, *const c_char, c_int),
3044    >,
3045    pub set_cell_data_func: Option<
3046        unsafe extern "C" fn(
3047            *mut GtkCellLayout,
3048            *mut GtkCellRenderer,
3049            GtkCellLayoutDataFunc,
3050            gpointer,
3051            glib::GDestroyNotify,
3052        ),
3053    >,
3054    pub clear_attributes: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer)>,
3055    pub reorder: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, c_int)>,
3056    pub get_cells: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut glib::GList>,
3057    pub get_area: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut GtkCellArea>,
3058}
3059
3060impl ::std::fmt::Debug for GtkCellLayoutIface {
3061    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3062        f.debug_struct(&format!("GtkCellLayoutIface @ {self:p}"))
3063            .field("pack_start", &self.pack_start)
3064            .field("pack_end", &self.pack_end)
3065            .field("clear", &self.clear)
3066            .field("add_attribute", &self.add_attribute)
3067            .field("set_cell_data_func", &self.set_cell_data_func)
3068            .field("clear_attributes", &self.clear_attributes)
3069            .field("reorder", &self.reorder)
3070            .field("get_cells", &self.get_cells)
3071            .field("get_area", &self.get_area)
3072            .finish()
3073    }
3074}
3075
3076#[derive(Copy, Clone)]
3077#[repr(C)]
3078pub struct GtkCellRendererAccelClass {
3079    pub parent_class: GtkCellRendererTextClass,
3080    pub accel_edited: Option<
3081        unsafe extern "C" fn(
3082            *mut GtkCellRendererAccel,
3083            *const c_char,
3084            c_uint,
3085            gdk::GdkModifierType,
3086            c_uint,
3087        ),
3088    >,
3089    pub accel_cleared: Option<unsafe extern "C" fn(*mut GtkCellRendererAccel, *const c_char)>,
3090    pub _gtk_reserved0: Option<unsafe extern "C" fn()>,
3091    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3092    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3093    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3094    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3095}
3096
3097impl ::std::fmt::Debug for GtkCellRendererAccelClass {
3098    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3099        f.debug_struct(&format!("GtkCellRendererAccelClass @ {self:p}"))
3100            .field("parent_class", &self.parent_class)
3101            .field("accel_edited", &self.accel_edited)
3102            .field("accel_cleared", &self.accel_cleared)
3103            .field("_gtk_reserved0", &self._gtk_reserved0)
3104            .field("_gtk_reserved1", &self._gtk_reserved1)
3105            .field("_gtk_reserved2", &self._gtk_reserved2)
3106            .field("_gtk_reserved3", &self._gtk_reserved3)
3107            .field("_gtk_reserved4", &self._gtk_reserved4)
3108            .finish()
3109    }
3110}
3111
3112#[repr(C)]
3113#[allow(dead_code)]
3114pub struct _GtkCellRendererAccelPrivate {
3115    _data: [u8; 0],
3116    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3117}
3118
3119pub type GtkCellRendererAccelPrivate = _GtkCellRendererAccelPrivate;
3120
3121#[derive(Copy, Clone)]
3122#[repr(C)]
3123pub struct GtkCellRendererClass {
3124    pub parent_class: gobject::GInitiallyUnownedClass,
3125    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellRenderer) -> GtkSizeRequestMode>,
3126    pub get_preferred_width:
3127        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
3128    pub get_preferred_height_for_width: Option<
3129        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
3130    >,
3131    pub get_preferred_height:
3132        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
3133    pub get_preferred_width_for_height: Option<
3134        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
3135    >,
3136    pub get_aligned_area: Option<
3137        unsafe extern "C" fn(
3138            *mut GtkCellRenderer,
3139            *mut GtkWidget,
3140            GtkCellRendererState,
3141            *const gdk::GdkRectangle,
3142            *mut gdk::GdkRectangle,
3143        ),
3144    >,
3145    pub get_size: Option<
3146        unsafe extern "C" fn(
3147            *mut GtkCellRenderer,
3148            *mut GtkWidget,
3149            *const gdk::GdkRectangle,
3150            *mut c_int,
3151            *mut c_int,
3152            *mut c_int,
3153            *mut c_int,
3154        ),
3155    >,
3156    pub render: Option<
3157        unsafe extern "C" fn(
3158            *mut GtkCellRenderer,
3159            *mut cairo::cairo_t,
3160            *mut GtkWidget,
3161            *const gdk::GdkRectangle,
3162            *const gdk::GdkRectangle,
3163            GtkCellRendererState,
3164        ),
3165    >,
3166    pub activate: Option<
3167        unsafe extern "C" fn(
3168            *mut GtkCellRenderer,
3169            *mut gdk::GdkEvent,
3170            *mut GtkWidget,
3171            *const c_char,
3172            *const gdk::GdkRectangle,
3173            *const gdk::GdkRectangle,
3174            GtkCellRendererState,
3175        ) -> gboolean,
3176    >,
3177    pub start_editing: Option<
3178        unsafe extern "C" fn(
3179            *mut GtkCellRenderer,
3180            *mut gdk::GdkEvent,
3181            *mut GtkWidget,
3182            *const c_char,
3183            *const gdk::GdkRectangle,
3184            *const gdk::GdkRectangle,
3185            GtkCellRendererState,
3186        ) -> *mut GtkCellEditable,
3187    >,
3188    pub editing_canceled: Option<unsafe extern "C" fn(*mut GtkCellRenderer)>,
3189    pub editing_started:
3190        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkCellEditable, *const c_char)>,
3191    pub priv_: *mut GtkCellRendererClassPrivate,
3192    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3193    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3194    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3195}
3196
3197impl ::std::fmt::Debug for GtkCellRendererClass {
3198    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3199        f.debug_struct(&format!("GtkCellRendererClass @ {self:p}"))
3200            .field("get_request_mode", &self.get_request_mode)
3201            .field("get_preferred_width", &self.get_preferred_width)
3202            .field(
3203                "get_preferred_height_for_width",
3204                &self.get_preferred_height_for_width,
3205            )
3206            .field("get_preferred_height", &self.get_preferred_height)
3207            .field(
3208                "get_preferred_width_for_height",
3209                &self.get_preferred_width_for_height,
3210            )
3211            .field("get_aligned_area", &self.get_aligned_area)
3212            .field("get_size", &self.get_size)
3213            .field("render", &self.render)
3214            .field("activate", &self.activate)
3215            .field("start_editing", &self.start_editing)
3216            .field("editing_canceled", &self.editing_canceled)
3217            .field("editing_started", &self.editing_started)
3218            .field("_gtk_reserved2", &self._gtk_reserved2)
3219            .field("_gtk_reserved3", &self._gtk_reserved3)
3220            .field("_gtk_reserved4", &self._gtk_reserved4)
3221            .finish()
3222    }
3223}
3224
3225#[repr(C)]
3226#[allow(dead_code)]
3227pub struct _GtkCellRendererClassPrivate {
3228    _data: [u8; 0],
3229    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3230}
3231
3232pub type GtkCellRendererClassPrivate = _GtkCellRendererClassPrivate;
3233
3234#[derive(Copy, Clone)]
3235#[repr(C)]
3236pub struct GtkCellRendererComboClass {
3237    pub parent: GtkCellRendererTextClass,
3238    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3239    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3240    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3241    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3242}
3243
3244impl ::std::fmt::Debug for GtkCellRendererComboClass {
3245    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3246        f.debug_struct(&format!("GtkCellRendererComboClass @ {self:p}"))
3247            .field("parent", &self.parent)
3248            .field("_gtk_reserved1", &self._gtk_reserved1)
3249            .field("_gtk_reserved2", &self._gtk_reserved2)
3250            .field("_gtk_reserved3", &self._gtk_reserved3)
3251            .field("_gtk_reserved4", &self._gtk_reserved4)
3252            .finish()
3253    }
3254}
3255
3256#[repr(C)]
3257#[allow(dead_code)]
3258pub struct _GtkCellRendererComboPrivate {
3259    _data: [u8; 0],
3260    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3261}
3262
3263pub type GtkCellRendererComboPrivate = _GtkCellRendererComboPrivate;
3264
3265#[derive(Copy, Clone)]
3266#[repr(C)]
3267pub struct GtkCellRendererPixbufClass {
3268    pub parent_class: GtkCellRendererClass,
3269    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3270    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3271    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3272    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3273}
3274
3275impl ::std::fmt::Debug for GtkCellRendererPixbufClass {
3276    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3277        f.debug_struct(&format!("GtkCellRendererPixbufClass @ {self:p}"))
3278            .field("parent_class", &self.parent_class)
3279            .field("_gtk_reserved1", &self._gtk_reserved1)
3280            .field("_gtk_reserved2", &self._gtk_reserved2)
3281            .field("_gtk_reserved3", &self._gtk_reserved3)
3282            .field("_gtk_reserved4", &self._gtk_reserved4)
3283            .finish()
3284    }
3285}
3286
3287#[repr(C)]
3288#[allow(dead_code)]
3289pub struct _GtkCellRendererPixbufPrivate {
3290    _data: [u8; 0],
3291    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3292}
3293
3294pub type GtkCellRendererPixbufPrivate = _GtkCellRendererPixbufPrivate;
3295
3296#[repr(C)]
3297#[allow(dead_code)]
3298pub struct _GtkCellRendererPrivate {
3299    _data: [u8; 0],
3300    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3301}
3302
3303pub type GtkCellRendererPrivate = _GtkCellRendererPrivate;
3304
3305#[derive(Copy, Clone)]
3306#[repr(C)]
3307pub struct GtkCellRendererProgressClass {
3308    pub parent_class: GtkCellRendererClass,
3309    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3310    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3311    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3312    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3313}
3314
3315impl ::std::fmt::Debug for GtkCellRendererProgressClass {
3316    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3317        f.debug_struct(&format!("GtkCellRendererProgressClass @ {self:p}"))
3318            .field("parent_class", &self.parent_class)
3319            .field("_gtk_reserved1", &self._gtk_reserved1)
3320            .field("_gtk_reserved2", &self._gtk_reserved2)
3321            .field("_gtk_reserved3", &self._gtk_reserved3)
3322            .field("_gtk_reserved4", &self._gtk_reserved4)
3323            .finish()
3324    }
3325}
3326
3327#[repr(C)]
3328#[allow(dead_code)]
3329pub struct _GtkCellRendererProgressPrivate {
3330    _data: [u8; 0],
3331    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3332}
3333
3334pub type GtkCellRendererProgressPrivate = _GtkCellRendererProgressPrivate;
3335
3336#[derive(Copy, Clone)]
3337#[repr(C)]
3338pub struct GtkCellRendererSpinClass {
3339    pub parent: GtkCellRendererTextClass,
3340    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3341    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3342    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3343    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3344}
3345
3346impl ::std::fmt::Debug for GtkCellRendererSpinClass {
3347    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3348        f.debug_struct(&format!("GtkCellRendererSpinClass @ {self:p}"))
3349            .field("parent", &self.parent)
3350            .field("_gtk_reserved1", &self._gtk_reserved1)
3351            .field("_gtk_reserved2", &self._gtk_reserved2)
3352            .field("_gtk_reserved3", &self._gtk_reserved3)
3353            .field("_gtk_reserved4", &self._gtk_reserved4)
3354            .finish()
3355    }
3356}
3357
3358#[repr(C)]
3359#[allow(dead_code)]
3360pub struct _GtkCellRendererSpinPrivate {
3361    _data: [u8; 0],
3362    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3363}
3364
3365pub type GtkCellRendererSpinPrivate = _GtkCellRendererSpinPrivate;
3366
3367#[derive(Copy, Clone)]
3368#[repr(C)]
3369pub struct GtkCellRendererSpinnerClass {
3370    pub parent_class: GtkCellRendererClass,
3371    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3372    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3373    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3374    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3375}
3376
3377impl ::std::fmt::Debug for GtkCellRendererSpinnerClass {
3378    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3379        f.debug_struct(&format!("GtkCellRendererSpinnerClass @ {self:p}"))
3380            .field("parent_class", &self.parent_class)
3381            .field("_gtk_reserved1", &self._gtk_reserved1)
3382            .field("_gtk_reserved2", &self._gtk_reserved2)
3383            .field("_gtk_reserved3", &self._gtk_reserved3)
3384            .field("_gtk_reserved4", &self._gtk_reserved4)
3385            .finish()
3386    }
3387}
3388
3389#[repr(C)]
3390#[allow(dead_code)]
3391pub struct _GtkCellRendererSpinnerPrivate {
3392    _data: [u8; 0],
3393    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3394}
3395
3396pub type GtkCellRendererSpinnerPrivate = _GtkCellRendererSpinnerPrivate;
3397
3398#[derive(Copy, Clone)]
3399#[repr(C)]
3400pub struct GtkCellRendererTextClass {
3401    pub parent_class: GtkCellRendererClass,
3402    pub edited:
3403        Option<unsafe extern "C" fn(*mut GtkCellRendererText, *const c_char, *const c_char)>,
3404    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3405    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3406    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3407    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3408}
3409
3410impl ::std::fmt::Debug for GtkCellRendererTextClass {
3411    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3412        f.debug_struct(&format!("GtkCellRendererTextClass @ {self:p}"))
3413            .field("parent_class", &self.parent_class)
3414            .field("edited", &self.edited)
3415            .field("_gtk_reserved1", &self._gtk_reserved1)
3416            .field("_gtk_reserved2", &self._gtk_reserved2)
3417            .field("_gtk_reserved3", &self._gtk_reserved3)
3418            .field("_gtk_reserved4", &self._gtk_reserved4)
3419            .finish()
3420    }
3421}
3422
3423#[repr(C)]
3424#[allow(dead_code)]
3425pub struct _GtkCellRendererTextPrivate {
3426    _data: [u8; 0],
3427    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3428}
3429
3430pub type GtkCellRendererTextPrivate = _GtkCellRendererTextPrivate;
3431
3432#[derive(Copy, Clone)]
3433#[repr(C)]
3434pub struct GtkCellRendererToggleClass {
3435    pub parent_class: GtkCellRendererClass,
3436    pub toggled: Option<unsafe extern "C" fn(*mut GtkCellRendererToggle, *const c_char)>,
3437    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3438    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3439    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3440    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3441}
3442
3443impl ::std::fmt::Debug for GtkCellRendererToggleClass {
3444    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3445        f.debug_struct(&format!("GtkCellRendererToggleClass @ {self:p}"))
3446            .field("parent_class", &self.parent_class)
3447            .field("toggled", &self.toggled)
3448            .field("_gtk_reserved1", &self._gtk_reserved1)
3449            .field("_gtk_reserved2", &self._gtk_reserved2)
3450            .field("_gtk_reserved3", &self._gtk_reserved3)
3451            .field("_gtk_reserved4", &self._gtk_reserved4)
3452            .finish()
3453    }
3454}
3455
3456#[repr(C)]
3457#[allow(dead_code)]
3458pub struct _GtkCellRendererTogglePrivate {
3459    _data: [u8; 0],
3460    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3461}
3462
3463pub type GtkCellRendererTogglePrivate = _GtkCellRendererTogglePrivate;
3464
3465#[derive(Copy, Clone)]
3466#[repr(C)]
3467pub struct GtkCellViewClass {
3468    pub parent_class: GtkWidgetClass,
3469    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3470    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3471    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3472    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3473}
3474
3475impl ::std::fmt::Debug for GtkCellViewClass {
3476    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3477        f.debug_struct(&format!("GtkCellViewClass @ {self:p}"))
3478            .field("parent_class", &self.parent_class)
3479            .field("_gtk_reserved1", &self._gtk_reserved1)
3480            .field("_gtk_reserved2", &self._gtk_reserved2)
3481            .field("_gtk_reserved3", &self._gtk_reserved3)
3482            .field("_gtk_reserved4", &self._gtk_reserved4)
3483            .finish()
3484    }
3485}
3486
3487#[repr(C)]
3488#[allow(dead_code)]
3489pub struct _GtkCellViewPrivate {
3490    _data: [u8; 0],
3491    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3492}
3493
3494pub type GtkCellViewPrivate = _GtkCellViewPrivate;
3495
3496#[derive(Copy, Clone)]
3497#[repr(C)]
3498pub struct GtkCheckButtonClass {
3499    pub parent_class: GtkToggleButtonClass,
3500    pub draw_indicator: Option<unsafe extern "C" fn(*mut GtkCheckButton, *mut cairo::cairo_t)>,
3501    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3502    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3503    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3504    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3505}
3506
3507impl ::std::fmt::Debug for GtkCheckButtonClass {
3508    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3509        f.debug_struct(&format!("GtkCheckButtonClass @ {self:p}"))
3510            .field("parent_class", &self.parent_class)
3511            .field("draw_indicator", &self.draw_indicator)
3512            .field("_gtk_reserved1", &self._gtk_reserved1)
3513            .field("_gtk_reserved2", &self._gtk_reserved2)
3514            .field("_gtk_reserved3", &self._gtk_reserved3)
3515            .field("_gtk_reserved4", &self._gtk_reserved4)
3516            .finish()
3517    }
3518}
3519
3520#[derive(Copy, Clone)]
3521#[repr(C)]
3522pub struct GtkCheckMenuItemAccessibleClass {
3523    pub parent_class: GtkMenuItemAccessibleClass,
3524}
3525
3526impl ::std::fmt::Debug for GtkCheckMenuItemAccessibleClass {
3527    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3528        f.debug_struct(&format!("GtkCheckMenuItemAccessibleClass @ {self:p}"))
3529            .field("parent_class", &self.parent_class)
3530            .finish()
3531    }
3532}
3533
3534#[repr(C)]
3535#[allow(dead_code)]
3536pub struct _GtkCheckMenuItemAccessiblePrivate {
3537    _data: [u8; 0],
3538    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3539}
3540
3541pub type GtkCheckMenuItemAccessiblePrivate = _GtkCheckMenuItemAccessiblePrivate;
3542
3543#[derive(Copy, Clone)]
3544#[repr(C)]
3545pub struct GtkCheckMenuItemClass {
3546    pub parent_class: GtkMenuItemClass,
3547    pub toggled: Option<unsafe extern "C" fn(*mut GtkCheckMenuItem)>,
3548    pub draw_indicator: Option<unsafe extern "C" fn(*mut GtkCheckMenuItem, *mut cairo::cairo_t)>,
3549    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3550    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3551    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3552    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3553}
3554
3555impl ::std::fmt::Debug for GtkCheckMenuItemClass {
3556    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3557        f.debug_struct(&format!("GtkCheckMenuItemClass @ {self:p}"))
3558            .field("parent_class", &self.parent_class)
3559            .field("toggled", &self.toggled)
3560            .field("draw_indicator", &self.draw_indicator)
3561            .field("_gtk_reserved1", &self._gtk_reserved1)
3562            .field("_gtk_reserved2", &self._gtk_reserved2)
3563            .field("_gtk_reserved3", &self._gtk_reserved3)
3564            .field("_gtk_reserved4", &self._gtk_reserved4)
3565            .finish()
3566    }
3567}
3568
3569#[repr(C)]
3570#[allow(dead_code)]
3571pub struct _GtkCheckMenuItemPrivate {
3572    _data: [u8; 0],
3573    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3574}
3575
3576pub type GtkCheckMenuItemPrivate = _GtkCheckMenuItemPrivate;
3577
3578#[derive(Copy, Clone)]
3579#[repr(C)]
3580pub struct GtkColorButtonClass {
3581    pub parent_class: GtkButtonClass,
3582    pub color_set: Option<unsafe extern "C" fn(*mut GtkColorButton)>,
3583    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3584    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3585    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3586    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3587}
3588
3589impl ::std::fmt::Debug for GtkColorButtonClass {
3590    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3591        f.debug_struct(&format!("GtkColorButtonClass @ {self:p}"))
3592            .field("parent_class", &self.parent_class)
3593            .field("color_set", &self.color_set)
3594            .field("_gtk_reserved1", &self._gtk_reserved1)
3595            .field("_gtk_reserved2", &self._gtk_reserved2)
3596            .field("_gtk_reserved3", &self._gtk_reserved3)
3597            .field("_gtk_reserved4", &self._gtk_reserved4)
3598            .finish()
3599    }
3600}
3601
3602#[repr(C)]
3603#[allow(dead_code)]
3604pub struct _GtkColorButtonPrivate {
3605    _data: [u8; 0],
3606    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3607}
3608
3609pub type GtkColorButtonPrivate = _GtkColorButtonPrivate;
3610
3611#[derive(Copy, Clone)]
3612#[repr(C)]
3613pub struct GtkColorChooserDialogClass {
3614    pub parent_class: GtkDialogClass,
3615    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3616    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3617    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3618    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3619}
3620
3621impl ::std::fmt::Debug for GtkColorChooserDialogClass {
3622    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3623        f.debug_struct(&format!("GtkColorChooserDialogClass @ {self:p}"))
3624            .field("parent_class", &self.parent_class)
3625            .field("_gtk_reserved1", &self._gtk_reserved1)
3626            .field("_gtk_reserved2", &self._gtk_reserved2)
3627            .field("_gtk_reserved3", &self._gtk_reserved3)
3628            .field("_gtk_reserved4", &self._gtk_reserved4)
3629            .finish()
3630    }
3631}
3632
3633#[repr(C)]
3634#[allow(dead_code)]
3635pub struct _GtkColorChooserDialogPrivate {
3636    _data: [u8; 0],
3637    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3638}
3639
3640pub type GtkColorChooserDialogPrivate = _GtkColorChooserDialogPrivate;
3641
3642#[derive(Copy, Clone)]
3643#[repr(C)]
3644pub struct GtkColorChooserInterface {
3645    pub base_interface: gobject::GTypeInterface,
3646    pub get_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
3647    pub set_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
3648    pub add_palette: Option<
3649        unsafe extern "C" fn(*mut GtkColorChooser, GtkOrientation, c_int, c_int, *mut gdk::GdkRGBA),
3650    >,
3651    pub color_activated: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
3652    pub padding: [gpointer; 12],
3653}
3654
3655impl ::std::fmt::Debug for GtkColorChooserInterface {
3656    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3657        f.debug_struct(&format!("GtkColorChooserInterface @ {self:p}"))
3658            .field("base_interface", &self.base_interface)
3659            .field("get_rgba", &self.get_rgba)
3660            .field("set_rgba", &self.set_rgba)
3661            .field("add_palette", &self.add_palette)
3662            .field("color_activated", &self.color_activated)
3663            .field("padding", &self.padding)
3664            .finish()
3665    }
3666}
3667
3668#[derive(Copy, Clone)]
3669#[repr(C)]
3670pub struct GtkColorChooserWidgetClass {
3671    pub parent_class: GtkBoxClass,
3672    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3673    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3674    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3675    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3676    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3677    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3678    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3679    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3680}
3681
3682impl ::std::fmt::Debug for GtkColorChooserWidgetClass {
3683    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3684        f.debug_struct(&format!("GtkColorChooserWidgetClass @ {self:p}"))
3685            .field("parent_class", &self.parent_class)
3686            .field("_gtk_reserved1", &self._gtk_reserved1)
3687            .field("_gtk_reserved2", &self._gtk_reserved2)
3688            .field("_gtk_reserved3", &self._gtk_reserved3)
3689            .field("_gtk_reserved4", &self._gtk_reserved4)
3690            .field("_gtk_reserved5", &self._gtk_reserved5)
3691            .field("_gtk_reserved6", &self._gtk_reserved6)
3692            .field("_gtk_reserved7", &self._gtk_reserved7)
3693            .field("_gtk_reserved8", &self._gtk_reserved8)
3694            .finish()
3695    }
3696}
3697
3698#[repr(C)]
3699#[allow(dead_code)]
3700pub struct _GtkColorChooserWidgetPrivate {
3701    _data: [u8; 0],
3702    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3703}
3704
3705pub type GtkColorChooserWidgetPrivate = _GtkColorChooserWidgetPrivate;
3706
3707#[derive(Copy, Clone)]
3708#[repr(C)]
3709pub struct GtkColorSelectionClass {
3710    pub parent_class: GtkBoxClass,
3711    pub color_changed: Option<unsafe extern "C" fn(*mut GtkColorSelection)>,
3712    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3713    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3714    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3715    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3716}
3717
3718impl ::std::fmt::Debug for GtkColorSelectionClass {
3719    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3720        f.debug_struct(&format!("GtkColorSelectionClass @ {self:p}"))
3721            .field("parent_class", &self.parent_class)
3722            .field("color_changed", &self.color_changed)
3723            .field("_gtk_reserved1", &self._gtk_reserved1)
3724            .field("_gtk_reserved2", &self._gtk_reserved2)
3725            .field("_gtk_reserved3", &self._gtk_reserved3)
3726            .field("_gtk_reserved4", &self._gtk_reserved4)
3727            .finish()
3728    }
3729}
3730
3731#[derive(Copy, Clone)]
3732#[repr(C)]
3733pub struct GtkColorSelectionDialogClass {
3734    pub parent_class: GtkDialogClass,
3735    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3736    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3737    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3738    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3739}
3740
3741impl ::std::fmt::Debug for GtkColorSelectionDialogClass {
3742    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3743        f.debug_struct(&format!("GtkColorSelectionDialogClass @ {self:p}"))
3744            .field("parent_class", &self.parent_class)
3745            .field("_gtk_reserved1", &self._gtk_reserved1)
3746            .field("_gtk_reserved2", &self._gtk_reserved2)
3747            .field("_gtk_reserved3", &self._gtk_reserved3)
3748            .field("_gtk_reserved4", &self._gtk_reserved4)
3749            .finish()
3750    }
3751}
3752
3753#[repr(C)]
3754#[allow(dead_code)]
3755pub struct _GtkColorSelectionDialogPrivate {
3756    _data: [u8; 0],
3757    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3758}
3759
3760pub type GtkColorSelectionDialogPrivate = _GtkColorSelectionDialogPrivate;
3761
3762#[repr(C)]
3763#[allow(dead_code)]
3764pub struct _GtkColorSelectionPrivate {
3765    _data: [u8; 0],
3766    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3767}
3768
3769pub type GtkColorSelectionPrivate = _GtkColorSelectionPrivate;
3770
3771#[derive(Copy, Clone)]
3772#[repr(C)]
3773pub struct GtkComboBoxAccessibleClass {
3774    pub parent_class: GtkContainerAccessibleClass,
3775}
3776
3777impl ::std::fmt::Debug for GtkComboBoxAccessibleClass {
3778    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3779        f.debug_struct(&format!("GtkComboBoxAccessibleClass @ {self:p}"))
3780            .field("parent_class", &self.parent_class)
3781            .finish()
3782    }
3783}
3784
3785#[repr(C)]
3786#[allow(dead_code)]
3787pub struct _GtkComboBoxAccessiblePrivate {
3788    _data: [u8; 0],
3789    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3790}
3791
3792pub type GtkComboBoxAccessiblePrivate = _GtkComboBoxAccessiblePrivate;
3793
3794#[derive(Copy, Clone)]
3795#[repr(C)]
3796pub struct GtkComboBoxClass {
3797    pub parent_class: GtkBinClass,
3798    pub changed: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
3799    pub format_entry_text:
3800        Option<unsafe extern "C" fn(*mut GtkComboBox, *const c_char) -> *mut c_char>,
3801    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3802    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3803    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3804}
3805
3806impl ::std::fmt::Debug for GtkComboBoxClass {
3807    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3808        f.debug_struct(&format!("GtkComboBoxClass @ {self:p}"))
3809            .field("parent_class", &self.parent_class)
3810            .field("changed", &self.changed)
3811            .field("format_entry_text", &self.format_entry_text)
3812            .field("_gtk_reserved1", &self._gtk_reserved1)
3813            .field("_gtk_reserved2", &self._gtk_reserved2)
3814            .field("_gtk_reserved3", &self._gtk_reserved3)
3815            .finish()
3816    }
3817}
3818
3819#[repr(C)]
3820#[allow(dead_code)]
3821pub struct _GtkComboBoxPrivate {
3822    _data: [u8; 0],
3823    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3824}
3825
3826pub type GtkComboBoxPrivate = _GtkComboBoxPrivate;
3827
3828#[derive(Copy, Clone)]
3829#[repr(C)]
3830pub struct GtkComboBoxTextClass {
3831    pub parent_class: GtkComboBoxClass,
3832    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3833    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3834    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3835    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3836}
3837
3838impl ::std::fmt::Debug for GtkComboBoxTextClass {
3839    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3840        f.debug_struct(&format!("GtkComboBoxTextClass @ {self:p}"))
3841            .field("parent_class", &self.parent_class)
3842            .field("_gtk_reserved1", &self._gtk_reserved1)
3843            .field("_gtk_reserved2", &self._gtk_reserved2)
3844            .field("_gtk_reserved3", &self._gtk_reserved3)
3845            .field("_gtk_reserved4", &self._gtk_reserved4)
3846            .finish()
3847    }
3848}
3849
3850#[repr(C)]
3851#[allow(dead_code)]
3852pub struct _GtkComboBoxTextPrivate {
3853    _data: [u8; 0],
3854    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3855}
3856
3857pub type GtkComboBoxTextPrivate = _GtkComboBoxTextPrivate;
3858
3859#[derive(Copy, Clone)]
3860#[repr(C)]
3861pub struct GtkContainerAccessibleClass {
3862    pub parent_class: GtkWidgetAccessibleClass,
3863    pub add_gtk: Option<unsafe extern "C" fn(*mut GtkContainer, *mut GtkWidget, gpointer) -> c_int>,
3864    pub remove_gtk:
3865        Option<unsafe extern "C" fn(*mut GtkContainer, *mut GtkWidget, gpointer) -> c_int>,
3866}
3867
3868impl ::std::fmt::Debug for GtkContainerAccessibleClass {
3869    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3870        f.debug_struct(&format!("GtkContainerAccessibleClass @ {self:p}"))
3871            .field("parent_class", &self.parent_class)
3872            .field("add_gtk", &self.add_gtk)
3873            .field("remove_gtk", &self.remove_gtk)
3874            .finish()
3875    }
3876}
3877
3878#[repr(C)]
3879#[allow(dead_code)]
3880pub struct _GtkContainerAccessiblePrivate {
3881    _data: [u8; 0],
3882    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3883}
3884
3885pub type GtkContainerAccessiblePrivate = _GtkContainerAccessiblePrivate;
3886
3887#[derive(Copy, Clone)]
3888#[repr(C)]
3889pub struct GtkContainerCellAccessibleClass {
3890    pub parent_class: GtkCellAccessibleClass,
3891}
3892
3893impl ::std::fmt::Debug for GtkContainerCellAccessibleClass {
3894    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3895        f.debug_struct(&format!("GtkContainerCellAccessibleClass @ {self:p}"))
3896            .field("parent_class", &self.parent_class)
3897            .finish()
3898    }
3899}
3900
3901#[repr(C)]
3902#[allow(dead_code)]
3903pub struct _GtkContainerCellAccessiblePrivate {
3904    _data: [u8; 0],
3905    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3906}
3907
3908pub type GtkContainerCellAccessiblePrivate = _GtkContainerCellAccessiblePrivate;
3909
3910#[derive(Copy, Clone)]
3911#[repr(C)]
3912pub struct GtkContainerClass {
3913    pub parent_class: GtkWidgetClass,
3914    pub add: Option<unsafe extern "C" fn(*mut GtkContainer, *mut GtkWidget)>,
3915    pub remove: Option<unsafe extern "C" fn(*mut GtkContainer, *mut GtkWidget)>,
3916    pub check_resize: Option<unsafe extern "C" fn(*mut GtkContainer)>,
3917    pub forall: Option<unsafe extern "C" fn(*mut GtkContainer, gboolean, GtkCallback, gpointer)>,
3918    pub set_focus_child: Option<unsafe extern "C" fn(*mut GtkContainer, *mut GtkWidget)>,
3919    pub child_type: Option<unsafe extern "C" fn(*mut GtkContainer) -> GType>,
3920    pub composite_name:
3921        Option<unsafe extern "C" fn(*mut GtkContainer, *mut GtkWidget) -> *mut c_char>,
3922    pub set_child_property: Option<
3923        unsafe extern "C" fn(
3924            *mut GtkContainer,
3925            *mut GtkWidget,
3926            c_uint,
3927            *mut gobject::GValue,
3928            *mut gobject::GParamSpec,
3929        ),
3930    >,
3931    pub get_child_property: Option<
3932        unsafe extern "C" fn(
3933            *mut GtkContainer,
3934            *mut GtkWidget,
3935            c_uint,
3936            *mut gobject::GValue,
3937            *mut gobject::GParamSpec,
3938        ),
3939    >,
3940    pub get_path_for_child:
3941        Option<unsafe extern "C" fn(*mut GtkContainer, *mut GtkWidget) -> *mut GtkWidgetPath>,
3942    pub _handle_border_width: c_uint,
3943    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3944    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3945    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3946    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3947    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3948    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3949    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3950    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3951}
3952
3953impl ::std::fmt::Debug for GtkContainerClass {
3954    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3955        f.debug_struct(&format!("GtkContainerClass @ {self:p}"))
3956            .field("parent_class", &self.parent_class)
3957            .field("add", &self.add)
3958            .field("remove", &self.remove)
3959            .field("check_resize", &self.check_resize)
3960            .field("forall", &self.forall)
3961            .field("set_focus_child", &self.set_focus_child)
3962            .field("child_type", &self.child_type)
3963            .field("composite_name", &self.composite_name)
3964            .field("set_child_property", &self.set_child_property)
3965            .field("get_child_property", &self.get_child_property)
3966            .field("get_path_for_child", &self.get_path_for_child)
3967            .field("_gtk_reserved1", &self._gtk_reserved1)
3968            .field("_gtk_reserved2", &self._gtk_reserved2)
3969            .field("_gtk_reserved3", &self._gtk_reserved3)
3970            .field("_gtk_reserved4", &self._gtk_reserved4)
3971            .field("_gtk_reserved5", &self._gtk_reserved5)
3972            .field("_gtk_reserved6", &self._gtk_reserved6)
3973            .field("_gtk_reserved7", &self._gtk_reserved7)
3974            .field("_gtk_reserved8", &self._gtk_reserved8)
3975            .finish()
3976    }
3977}
3978
3979#[repr(C)]
3980#[allow(dead_code)]
3981pub struct _GtkContainerPrivate {
3982    _data: [u8; 0],
3983    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3984}
3985
3986pub type GtkContainerPrivate = _GtkContainerPrivate;
3987
3988#[derive(Copy, Clone)]
3989#[repr(C)]
3990pub struct GtkCssProviderClass {
3991    pub parent_class: gobject::GObjectClass,
3992    pub parsing_error:
3993        Option<unsafe extern "C" fn(*mut GtkCssProvider, *mut GtkCssSection, *const glib::GError)>,
3994    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3995    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3996    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3997}
3998
3999impl ::std::fmt::Debug for GtkCssProviderClass {
4000    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4001        f.debug_struct(&format!("GtkCssProviderClass @ {self:p}"))
4002            .field("parent_class", &self.parent_class)
4003            .field("parsing_error", &self.parsing_error)
4004            .field("_gtk_reserved2", &self._gtk_reserved2)
4005            .field("_gtk_reserved3", &self._gtk_reserved3)
4006            .field("_gtk_reserved4", &self._gtk_reserved4)
4007            .finish()
4008    }
4009}
4010
4011#[repr(C)]
4012#[allow(dead_code)]
4013pub struct _GtkCssProviderPrivate {
4014    _data: [u8; 0],
4015    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4016}
4017
4018pub type GtkCssProviderPrivate = _GtkCssProviderPrivate;
4019
4020#[repr(C)]
4021#[allow(dead_code)]
4022pub struct GtkCssSection {
4023    _data: [u8; 0],
4024    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4025}
4026
4027impl ::std::fmt::Debug for GtkCssSection {
4028    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4029        f.debug_struct(&format!("GtkCssSection @ {self:p}"))
4030            .finish()
4031    }
4032}
4033
4034#[derive(Copy, Clone)]
4035#[repr(C)]
4036pub struct GtkDialogClass {
4037    pub parent_class: GtkWindowClass,
4038    pub response: Option<unsafe extern "C" fn(*mut GtkDialog, GtkResponseType)>,
4039    pub close: Option<unsafe extern "C" fn(*mut GtkDialog)>,
4040    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4041    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4042    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4043    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4044}
4045
4046impl ::std::fmt::Debug for GtkDialogClass {
4047    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4048        f.debug_struct(&format!("GtkDialogClass @ {self:p}"))
4049            .field("parent_class", &self.parent_class)
4050            .field("response", &self.response)
4051            .field("close", &self.close)
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 _GtkDialogPrivate {
4063    _data: [u8; 0],
4064    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4065}
4066
4067pub type GtkDialogPrivate = _GtkDialogPrivate;
4068
4069#[derive(Copy, Clone)]
4070#[repr(C)]
4071pub struct GtkDrawingAreaClass {
4072    pub parent_class: GtkWidgetClass,
4073    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4074    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4075    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4076    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4077}
4078
4079impl ::std::fmt::Debug for GtkDrawingAreaClass {
4080    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4081        f.debug_struct(&format!("GtkDrawingAreaClass @ {self:p}"))
4082            .field("parent_class", &self.parent_class)
4083            .field("_gtk_reserved1", &self._gtk_reserved1)
4084            .field("_gtk_reserved2", &self._gtk_reserved2)
4085            .field("_gtk_reserved3", &self._gtk_reserved3)
4086            .field("_gtk_reserved4", &self._gtk_reserved4)
4087            .finish()
4088    }
4089}
4090
4091#[derive(Copy, Clone)]
4092#[repr(C)]
4093pub struct GtkEditableInterface {
4094    pub base_iface: gobject::GTypeInterface,
4095    pub insert_text:
4096        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
4097    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
4098    pub changed: Option<unsafe extern "C" fn(*mut GtkEditable)>,
4099    pub do_insert_text:
4100        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
4101    pub do_delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
4102    pub get_chars: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int) -> *mut c_char>,
4103    pub set_selection_bounds: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
4104    pub get_selection_bounds:
4105        Option<unsafe extern "C" fn(*mut GtkEditable, *mut c_int, *mut c_int) -> gboolean>,
4106    pub set_position: Option<unsafe extern "C" fn(*mut GtkEditable, c_int)>,
4107    pub get_position: Option<unsafe extern "C" fn(*mut GtkEditable) -> c_int>,
4108}
4109
4110impl ::std::fmt::Debug for GtkEditableInterface {
4111    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4112        f.debug_struct(&format!("GtkEditableInterface @ {self:p}"))
4113            .field("base_iface", &self.base_iface)
4114            .field("insert_text", &self.insert_text)
4115            .field("delete_text", &self.delete_text)
4116            .field("changed", &self.changed)
4117            .field("do_insert_text", &self.do_insert_text)
4118            .field("do_delete_text", &self.do_delete_text)
4119            .field("get_chars", &self.get_chars)
4120            .field("set_selection_bounds", &self.set_selection_bounds)
4121            .field("get_selection_bounds", &self.get_selection_bounds)
4122            .field("set_position", &self.set_position)
4123            .field("get_position", &self.get_position)
4124            .finish()
4125    }
4126}
4127
4128#[derive(Copy, Clone)]
4129#[repr(C)]
4130pub struct GtkEntryAccessibleClass {
4131    pub parent_class: GtkWidgetAccessibleClass,
4132}
4133
4134impl ::std::fmt::Debug for GtkEntryAccessibleClass {
4135    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4136        f.debug_struct(&format!("GtkEntryAccessibleClass @ {self:p}"))
4137            .field("parent_class", &self.parent_class)
4138            .finish()
4139    }
4140}
4141
4142#[repr(C)]
4143#[allow(dead_code)]
4144pub struct _GtkEntryAccessiblePrivate {
4145    _data: [u8; 0],
4146    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4147}
4148
4149pub type GtkEntryAccessiblePrivate = _GtkEntryAccessiblePrivate;
4150
4151#[derive(Copy, Clone)]
4152#[repr(C)]
4153pub struct GtkEntryBufferClass {
4154    pub parent_class: gobject::GObjectClass,
4155    pub inserted_text:
4156        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint)>,
4157    pub deleted_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint)>,
4158    pub get_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, *mut size_t) -> *const c_char>,
4159    pub get_length: Option<unsafe extern "C" fn(*mut GtkEntryBuffer) -> c_uint>,
4160    pub insert_text:
4161        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint) -> c_uint>,
4162    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint) -> c_uint>,
4163    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4164    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4165    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4166    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4167    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4168    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4169    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4170    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4171}
4172
4173impl ::std::fmt::Debug for GtkEntryBufferClass {
4174    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4175        f.debug_struct(&format!("GtkEntryBufferClass @ {self:p}"))
4176            .field("parent_class", &self.parent_class)
4177            .field("inserted_text", &self.inserted_text)
4178            .field("deleted_text", &self.deleted_text)
4179            .field("get_text", &self.get_text)
4180            .field("get_length", &self.get_length)
4181            .field("insert_text", &self.insert_text)
4182            .field("delete_text", &self.delete_text)
4183            .field("_gtk_reserved1", &self._gtk_reserved1)
4184            .field("_gtk_reserved2", &self._gtk_reserved2)
4185            .field("_gtk_reserved3", &self._gtk_reserved3)
4186            .field("_gtk_reserved4", &self._gtk_reserved4)
4187            .field("_gtk_reserved5", &self._gtk_reserved5)
4188            .field("_gtk_reserved6", &self._gtk_reserved6)
4189            .field("_gtk_reserved7", &self._gtk_reserved7)
4190            .field("_gtk_reserved8", &self._gtk_reserved8)
4191            .finish()
4192    }
4193}
4194
4195#[repr(C)]
4196#[allow(dead_code)]
4197pub struct _GtkEntryBufferPrivate {
4198    _data: [u8; 0],
4199    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4200}
4201
4202pub type GtkEntryBufferPrivate = _GtkEntryBufferPrivate;
4203
4204#[derive(Copy, Clone)]
4205#[repr(C)]
4206pub struct GtkEntryClass {
4207    pub parent_class: GtkWidgetClass,
4208    pub populate_popup: Option<unsafe extern "C" fn(*mut GtkEntry, *mut GtkWidget)>,
4209    pub activate: Option<unsafe extern "C" fn(*mut GtkEntry)>,
4210    pub move_cursor: Option<unsafe extern "C" fn(*mut GtkEntry, GtkMovementStep, c_int, gboolean)>,
4211    pub insert_at_cursor: Option<unsafe extern "C" fn(*mut GtkEntry, *const c_char)>,
4212    pub delete_from_cursor: Option<unsafe extern "C" fn(*mut GtkEntry, GtkDeleteType, c_int)>,
4213    pub backspace: Option<unsafe extern "C" fn(*mut GtkEntry)>,
4214    pub cut_clipboard: Option<unsafe extern "C" fn(*mut GtkEntry)>,
4215    pub copy_clipboard: Option<unsafe extern "C" fn(*mut GtkEntry)>,
4216    pub paste_clipboard: Option<unsafe extern "C" fn(*mut GtkEntry)>,
4217    pub toggle_overwrite: Option<unsafe extern "C" fn(*mut GtkEntry)>,
4218    pub get_text_area_size:
4219        Option<unsafe extern "C" fn(*mut GtkEntry, *mut c_int, *mut c_int, *mut c_int, *mut c_int)>,
4220    pub get_frame_size:
4221        Option<unsafe extern "C" fn(*mut GtkEntry, *mut c_int, *mut c_int, *mut c_int, *mut c_int)>,
4222    pub insert_emoji: Option<unsafe extern "C" fn(*mut GtkEntry)>,
4223    pub toggle_direction: Option<unsafe extern "C" fn(*mut GtkEntry)>,
4224    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4225    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4226    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4227    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4228    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4229}
4230
4231impl ::std::fmt::Debug for GtkEntryClass {
4232    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4233        f.debug_struct(&format!("GtkEntryClass @ {self:p}"))
4234            .field("parent_class", &self.parent_class)
4235            .field("populate_popup", &self.populate_popup)
4236            .field("activate", &self.activate)
4237            .field("move_cursor", &self.move_cursor)
4238            .field("insert_at_cursor", &self.insert_at_cursor)
4239            .field("delete_from_cursor", &self.delete_from_cursor)
4240            .field("backspace", &self.backspace)
4241            .field("cut_clipboard", &self.cut_clipboard)
4242            .field("copy_clipboard", &self.copy_clipboard)
4243            .field("paste_clipboard", &self.paste_clipboard)
4244            .field("toggle_overwrite", &self.toggle_overwrite)
4245            .field("get_text_area_size", &self.get_text_area_size)
4246            .field("get_frame_size", &self.get_frame_size)
4247            .field("insert_emoji", &self.insert_emoji)
4248            .field("toggle_direction", &self.toggle_direction)
4249            .field("_gtk_reserved1", &self._gtk_reserved1)
4250            .field("_gtk_reserved2", &self._gtk_reserved2)
4251            .field("_gtk_reserved3", &self._gtk_reserved3)
4252            .field("_gtk_reserved4", &self._gtk_reserved4)
4253            .field("_gtk_reserved5", &self._gtk_reserved5)
4254            .finish()
4255    }
4256}
4257
4258#[derive(Copy, Clone)]
4259#[repr(C)]
4260pub struct GtkEntryCompletionClass {
4261    pub parent_class: gobject::GObjectClass,
4262    pub match_selected: Option<
4263        unsafe extern "C" fn(
4264            *mut GtkEntryCompletion,
4265            *mut GtkTreeModel,
4266            *mut GtkTreeIter,
4267        ) -> gboolean,
4268    >,
4269    pub action_activated: Option<unsafe extern "C" fn(*mut GtkEntryCompletion, c_int)>,
4270    pub insert_prefix:
4271        Option<unsafe extern "C" fn(*mut GtkEntryCompletion, *const c_char) -> gboolean>,
4272    pub cursor_on_match: Option<
4273        unsafe extern "C" fn(
4274            *mut GtkEntryCompletion,
4275            *mut GtkTreeModel,
4276            *mut GtkTreeIter,
4277        ) -> gboolean,
4278    >,
4279    pub no_matches: Option<unsafe extern "C" fn(*mut GtkEntryCompletion)>,
4280    pub _gtk_reserved0: Option<unsafe extern "C" fn()>,
4281    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4282    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4283}
4284
4285impl ::std::fmt::Debug for GtkEntryCompletionClass {
4286    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4287        f.debug_struct(&format!("GtkEntryCompletionClass @ {self:p}"))
4288            .field("parent_class", &self.parent_class)
4289            .field("match_selected", &self.match_selected)
4290            .field("action_activated", &self.action_activated)
4291            .field("insert_prefix", &self.insert_prefix)
4292            .field("cursor_on_match", &self.cursor_on_match)
4293            .field("no_matches", &self.no_matches)
4294            .field("_gtk_reserved0", &self._gtk_reserved0)
4295            .field("_gtk_reserved1", &self._gtk_reserved1)
4296            .field("_gtk_reserved2", &self._gtk_reserved2)
4297            .finish()
4298    }
4299}
4300
4301#[repr(C)]
4302#[allow(dead_code)]
4303pub struct _GtkEntryCompletionPrivate {
4304    _data: [u8; 0],
4305    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4306}
4307
4308pub type GtkEntryCompletionPrivate = _GtkEntryCompletionPrivate;
4309
4310#[repr(C)]
4311#[allow(dead_code)]
4312pub struct _GtkEntryPrivate {
4313    _data: [u8; 0],
4314    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4315}
4316
4317pub type GtkEntryPrivate = _GtkEntryPrivate;
4318
4319#[derive(Copy, Clone)]
4320#[repr(C)]
4321pub struct GtkEventBoxClass {
4322    pub parent_class: GtkBinClass,
4323    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4324    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4325    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4326    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4327}
4328
4329impl ::std::fmt::Debug for GtkEventBoxClass {
4330    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4331        f.debug_struct(&format!("GtkEventBoxClass @ {self:p}"))
4332            .field("parent_class", &self.parent_class)
4333            .field("_gtk_reserved1", &self._gtk_reserved1)
4334            .field("_gtk_reserved2", &self._gtk_reserved2)
4335            .field("_gtk_reserved3", &self._gtk_reserved3)
4336            .field("_gtk_reserved4", &self._gtk_reserved4)
4337            .finish()
4338    }
4339}
4340
4341#[repr(C)]
4342#[allow(dead_code)]
4343pub struct _GtkEventBoxPrivate {
4344    _data: [u8; 0],
4345    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4346}
4347
4348pub type GtkEventBoxPrivate = _GtkEventBoxPrivate;
4349
4350#[repr(C)]
4351#[allow(dead_code)]
4352pub struct _GtkEventControllerClass {
4353    _data: [u8; 0],
4354    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4355}
4356
4357pub type GtkEventControllerClass = _GtkEventControllerClass;
4358
4359#[repr(C)]
4360#[allow(dead_code)]
4361pub struct _GtkEventControllerKeyClass {
4362    _data: [u8; 0],
4363    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4364}
4365
4366pub type GtkEventControllerKeyClass = _GtkEventControllerKeyClass;
4367
4368#[repr(C)]
4369#[allow(dead_code)]
4370pub struct _GtkEventControllerMotionClass {
4371    _data: [u8; 0],
4372    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4373}
4374
4375pub type GtkEventControllerMotionClass = _GtkEventControllerMotionClass;
4376
4377#[repr(C)]
4378#[allow(dead_code)]
4379pub struct _GtkEventControllerScrollClass {
4380    _data: [u8; 0],
4381    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4382}
4383
4384pub type GtkEventControllerScrollClass = _GtkEventControllerScrollClass;
4385
4386#[derive(Copy, Clone)]
4387#[repr(C)]
4388pub struct GtkExpanderAccessibleClass {
4389    pub parent_class: GtkContainerAccessibleClass,
4390}
4391
4392impl ::std::fmt::Debug for GtkExpanderAccessibleClass {
4393    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4394        f.debug_struct(&format!("GtkExpanderAccessibleClass @ {self:p}"))
4395            .field("parent_class", &self.parent_class)
4396            .finish()
4397    }
4398}
4399
4400#[repr(C)]
4401#[allow(dead_code)]
4402pub struct _GtkExpanderAccessiblePrivate {
4403    _data: [u8; 0],
4404    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4405}
4406
4407pub type GtkExpanderAccessiblePrivate = _GtkExpanderAccessiblePrivate;
4408
4409#[derive(Copy, Clone)]
4410#[repr(C)]
4411pub struct GtkExpanderClass {
4412    pub parent_class: GtkBinClass,
4413    pub activate: Option<unsafe extern "C" fn(*mut GtkExpander)>,
4414    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4415    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4416    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4417    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4418}
4419
4420impl ::std::fmt::Debug for GtkExpanderClass {
4421    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4422        f.debug_struct(&format!("GtkExpanderClass @ {self:p}"))
4423            .field("parent_class", &self.parent_class)
4424            .field("activate", &self.activate)
4425            .field("_gtk_reserved1", &self._gtk_reserved1)
4426            .field("_gtk_reserved2", &self._gtk_reserved2)
4427            .field("_gtk_reserved3", &self._gtk_reserved3)
4428            .field("_gtk_reserved4", &self._gtk_reserved4)
4429            .finish()
4430    }
4431}
4432
4433#[repr(C)]
4434#[allow(dead_code)]
4435pub struct _GtkExpanderPrivate {
4436    _data: [u8; 0],
4437    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4438}
4439
4440pub type GtkExpanderPrivate = _GtkExpanderPrivate;
4441
4442#[derive(Copy, Clone)]
4443#[repr(C)]
4444pub struct GtkFileChooserButtonClass {
4445    pub parent_class: GtkBoxClass,
4446    pub file_set: Option<unsafe extern "C" fn(*mut GtkFileChooserButton)>,
4447    pub __gtk_reserved1: Option<unsafe extern "C" fn()>,
4448    pub __gtk_reserved2: Option<unsafe extern "C" fn()>,
4449    pub __gtk_reserved3: Option<unsafe extern "C" fn()>,
4450    pub __gtk_reserved4: Option<unsafe extern "C" fn()>,
4451}
4452
4453impl ::std::fmt::Debug for GtkFileChooserButtonClass {
4454    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4455        f.debug_struct(&format!("GtkFileChooserButtonClass @ {self:p}"))
4456            .field("parent_class", &self.parent_class)
4457            .field("file_set", &self.file_set)
4458            .field("__gtk_reserved1", &self.__gtk_reserved1)
4459            .field("__gtk_reserved2", &self.__gtk_reserved2)
4460            .field("__gtk_reserved3", &self.__gtk_reserved3)
4461            .field("__gtk_reserved4", &self.__gtk_reserved4)
4462            .finish()
4463    }
4464}
4465
4466#[repr(C)]
4467#[allow(dead_code)]
4468pub struct _GtkFileChooserButtonPrivate {
4469    _data: [u8; 0],
4470    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4471}
4472
4473pub type GtkFileChooserButtonPrivate = _GtkFileChooserButtonPrivate;
4474
4475#[derive(Copy, Clone)]
4476#[repr(C)]
4477pub struct GtkFileChooserDialogClass {
4478    pub parent_class: GtkDialogClass,
4479    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4480    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4481    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4482    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4483}
4484
4485impl ::std::fmt::Debug for GtkFileChooserDialogClass {
4486    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4487        f.debug_struct(&format!("GtkFileChooserDialogClass @ {self:p}"))
4488            .field("parent_class", &self.parent_class)
4489            .field("_gtk_reserved1", &self._gtk_reserved1)
4490            .field("_gtk_reserved2", &self._gtk_reserved2)
4491            .field("_gtk_reserved3", &self._gtk_reserved3)
4492            .field("_gtk_reserved4", &self._gtk_reserved4)
4493            .finish()
4494    }
4495}
4496
4497#[repr(C)]
4498#[allow(dead_code)]
4499pub struct _GtkFileChooserDialogPrivate {
4500    _data: [u8; 0],
4501    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4502}
4503
4504pub type GtkFileChooserDialogPrivate = _GtkFileChooserDialogPrivate;
4505
4506#[derive(Copy, Clone)]
4507#[repr(C)]
4508pub struct GtkFileChooserNativeClass {
4509    pub parent_class: GtkNativeDialogClass,
4510}
4511
4512impl ::std::fmt::Debug for GtkFileChooserNativeClass {
4513    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4514        f.debug_struct(&format!("GtkFileChooserNativeClass @ {self:p}"))
4515            .field("parent_class", &self.parent_class)
4516            .finish()
4517    }
4518}
4519
4520#[derive(Copy, Clone)]
4521#[repr(C)]
4522pub struct GtkFileChooserWidgetAccessibleClass {
4523    pub parent_class: GtkContainerAccessibleClass,
4524}
4525
4526impl ::std::fmt::Debug for GtkFileChooserWidgetAccessibleClass {
4527    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4528        f.debug_struct(&format!("GtkFileChooserWidgetAccessibleClass @ {self:p}"))
4529            .field("parent_class", &self.parent_class)
4530            .finish()
4531    }
4532}
4533
4534#[repr(C)]
4535#[allow(dead_code)]
4536pub struct _GtkFileChooserWidgetAccessiblePrivate {
4537    _data: [u8; 0],
4538    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4539}
4540
4541pub type GtkFileChooserWidgetAccessiblePrivate = _GtkFileChooserWidgetAccessiblePrivate;
4542
4543#[derive(Copy, Clone)]
4544#[repr(C)]
4545pub struct GtkFileChooserWidgetClass {
4546    pub parent_class: GtkBoxClass,
4547    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4548    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4549    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4550    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4551}
4552
4553impl ::std::fmt::Debug for GtkFileChooserWidgetClass {
4554    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4555        f.debug_struct(&format!("GtkFileChooserWidgetClass @ {self:p}"))
4556            .field("parent_class", &self.parent_class)
4557            .field("_gtk_reserved1", &self._gtk_reserved1)
4558            .field("_gtk_reserved2", &self._gtk_reserved2)
4559            .field("_gtk_reserved3", &self._gtk_reserved3)
4560            .field("_gtk_reserved4", &self._gtk_reserved4)
4561            .finish()
4562    }
4563}
4564
4565#[repr(C)]
4566#[allow(dead_code)]
4567pub struct _GtkFileChooserWidgetPrivate {
4568    _data: [u8; 0],
4569    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4570}
4571
4572pub type GtkFileChooserWidgetPrivate = _GtkFileChooserWidgetPrivate;
4573
4574#[derive(Copy, Clone)]
4575#[repr(C)]
4576pub struct GtkFileFilterInfo {
4577    pub contains: GtkFileFilterFlags,
4578    pub filename: *const c_char,
4579    pub uri: *const c_char,
4580    pub display_name: *const c_char,
4581    pub mime_type: *const c_char,
4582}
4583
4584impl ::std::fmt::Debug for GtkFileFilterInfo {
4585    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4586        f.debug_struct(&format!("GtkFileFilterInfo @ {self:p}"))
4587            .field("contains", &self.contains)
4588            .field("filename", &self.filename)
4589            .field("uri", &self.uri)
4590            .field("display_name", &self.display_name)
4591            .field("mime_type", &self.mime_type)
4592            .finish()
4593    }
4594}
4595
4596#[derive(Copy, Clone)]
4597#[repr(C)]
4598pub struct GtkFixedChild {
4599    pub widget: *mut GtkWidget,
4600    pub x: c_int,
4601    pub y: c_int,
4602}
4603
4604impl ::std::fmt::Debug for GtkFixedChild {
4605    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4606        f.debug_struct(&format!("GtkFixedChild @ {self:p}"))
4607            .field("widget", &self.widget)
4608            .field("x", &self.x)
4609            .field("y", &self.y)
4610            .finish()
4611    }
4612}
4613
4614#[derive(Copy, Clone)]
4615#[repr(C)]
4616pub struct GtkFixedClass {
4617    pub parent_class: GtkContainerClass,
4618    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4619    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4620    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4621    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4622}
4623
4624impl ::std::fmt::Debug for GtkFixedClass {
4625    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4626        f.debug_struct(&format!("GtkFixedClass @ {self:p}"))
4627            .field("parent_class", &self.parent_class)
4628            .field("_gtk_reserved1", &self._gtk_reserved1)
4629            .field("_gtk_reserved2", &self._gtk_reserved2)
4630            .field("_gtk_reserved3", &self._gtk_reserved3)
4631            .field("_gtk_reserved4", &self._gtk_reserved4)
4632            .finish()
4633    }
4634}
4635
4636#[repr(C)]
4637#[allow(dead_code)]
4638pub struct _GtkFixedPrivate {
4639    _data: [u8; 0],
4640    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4641}
4642
4643pub type GtkFixedPrivate = _GtkFixedPrivate;
4644
4645#[derive(Copy, Clone)]
4646#[repr(C)]
4647pub struct GtkFlowBoxAccessibleClass {
4648    pub parent_class: GtkContainerAccessibleClass,
4649}
4650
4651impl ::std::fmt::Debug for GtkFlowBoxAccessibleClass {
4652    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4653        f.debug_struct(&format!("GtkFlowBoxAccessibleClass @ {self:p}"))
4654            .field("parent_class", &self.parent_class)
4655            .finish()
4656    }
4657}
4658
4659#[repr(C)]
4660#[allow(dead_code)]
4661pub struct _GtkFlowBoxAccessiblePrivate {
4662    _data: [u8; 0],
4663    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4664}
4665
4666pub type GtkFlowBoxAccessiblePrivate = _GtkFlowBoxAccessiblePrivate;
4667
4668#[derive(Copy, Clone)]
4669#[repr(C)]
4670pub struct GtkFlowBoxChildAccessibleClass {
4671    pub parent_class: GtkContainerAccessibleClass,
4672}
4673
4674impl ::std::fmt::Debug for GtkFlowBoxChildAccessibleClass {
4675    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4676        f.debug_struct(&format!("GtkFlowBoxChildAccessibleClass @ {self:p}"))
4677            .field("parent_class", &self.parent_class)
4678            .finish()
4679    }
4680}
4681
4682#[derive(Copy, Clone)]
4683#[repr(C)]
4684pub struct GtkFlowBoxChildClass {
4685    pub parent_class: GtkBinClass,
4686    pub activate: Option<unsafe extern "C" fn(*mut GtkFlowBoxChild)>,
4687    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4688    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4689}
4690
4691impl ::std::fmt::Debug for GtkFlowBoxChildClass {
4692    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4693        f.debug_struct(&format!("GtkFlowBoxChildClass @ {self:p}"))
4694            .field("parent_class", &self.parent_class)
4695            .field("activate", &self.activate)
4696            .field("_gtk_reserved1", &self._gtk_reserved1)
4697            .field("_gtk_reserved2", &self._gtk_reserved2)
4698            .finish()
4699    }
4700}
4701
4702#[derive(Copy, Clone)]
4703#[repr(C)]
4704pub struct GtkFlowBoxClass {
4705    pub parent_class: GtkContainerClass,
4706    pub child_activated: Option<unsafe extern "C" fn(*mut GtkFlowBox, *mut GtkFlowBoxChild)>,
4707    pub selected_children_changed: Option<unsafe extern "C" fn(*mut GtkFlowBox)>,
4708    pub activate_cursor_child: Option<unsafe extern "C" fn(*mut GtkFlowBox)>,
4709    pub toggle_cursor_child: Option<unsafe extern "C" fn(*mut GtkFlowBox)>,
4710    pub move_cursor:
4711        Option<unsafe extern "C" fn(*mut GtkFlowBox, GtkMovementStep, c_int) -> gboolean>,
4712    pub select_all: Option<unsafe extern "C" fn(*mut GtkFlowBox)>,
4713    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkFlowBox)>,
4714    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4715    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4716    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4717    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4718    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4719    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4720}
4721
4722impl ::std::fmt::Debug for GtkFlowBoxClass {
4723    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4724        f.debug_struct(&format!("GtkFlowBoxClass @ {self:p}"))
4725            .field("parent_class", &self.parent_class)
4726            .field("child_activated", &self.child_activated)
4727            .field("selected_children_changed", &self.selected_children_changed)
4728            .field("activate_cursor_child", &self.activate_cursor_child)
4729            .field("toggle_cursor_child", &self.toggle_cursor_child)
4730            .field("move_cursor", &self.move_cursor)
4731            .field("select_all", &self.select_all)
4732            .field("unselect_all", &self.unselect_all)
4733            .field("_gtk_reserved1", &self._gtk_reserved1)
4734            .field("_gtk_reserved2", &self._gtk_reserved2)
4735            .field("_gtk_reserved3", &self._gtk_reserved3)
4736            .field("_gtk_reserved4", &self._gtk_reserved4)
4737            .field("_gtk_reserved5", &self._gtk_reserved5)
4738            .field("_gtk_reserved6", &self._gtk_reserved6)
4739            .finish()
4740    }
4741}
4742
4743#[derive(Copy, Clone)]
4744#[repr(C)]
4745pub struct GtkFontButtonClass {
4746    pub parent_class: GtkButtonClass,
4747    pub font_set: Option<unsafe extern "C" fn(*mut GtkFontButton)>,
4748    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4749    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4750    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4751    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4752}
4753
4754impl ::std::fmt::Debug for GtkFontButtonClass {
4755    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4756        f.debug_struct(&format!("GtkFontButtonClass @ {self:p}"))
4757            .field("parent_class", &self.parent_class)
4758            .field("font_set", &self.font_set)
4759            .field("_gtk_reserved1", &self._gtk_reserved1)
4760            .field("_gtk_reserved2", &self._gtk_reserved2)
4761            .field("_gtk_reserved3", &self._gtk_reserved3)
4762            .field("_gtk_reserved4", &self._gtk_reserved4)
4763            .finish()
4764    }
4765}
4766
4767#[repr(C)]
4768#[allow(dead_code)]
4769pub struct _GtkFontButtonPrivate {
4770    _data: [u8; 0],
4771    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4772}
4773
4774pub type GtkFontButtonPrivate = _GtkFontButtonPrivate;
4775
4776#[derive(Copy, Clone)]
4777#[repr(C)]
4778pub struct GtkFontChooserDialogClass {
4779    pub parent_class: GtkDialogClass,
4780    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4781    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4782    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4783    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4784}
4785
4786impl ::std::fmt::Debug for GtkFontChooserDialogClass {
4787    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4788        f.debug_struct(&format!("GtkFontChooserDialogClass @ {self:p}"))
4789            .field("parent_class", &self.parent_class)
4790            .field("_gtk_reserved1", &self._gtk_reserved1)
4791            .field("_gtk_reserved2", &self._gtk_reserved2)
4792            .field("_gtk_reserved3", &self._gtk_reserved3)
4793            .field("_gtk_reserved4", &self._gtk_reserved4)
4794            .finish()
4795    }
4796}
4797
4798#[repr(C)]
4799#[allow(dead_code)]
4800pub struct _GtkFontChooserDialogPrivate {
4801    _data: [u8; 0],
4802    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4803}
4804
4805pub type GtkFontChooserDialogPrivate = _GtkFontChooserDialogPrivate;
4806
4807#[derive(Copy, Clone)]
4808#[repr(C)]
4809pub struct GtkFontChooserIface {
4810    pub base_iface: gobject::GTypeInterface,
4811    pub get_font_family:
4812        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFamily>,
4813    pub get_font_face:
4814        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFace>,
4815    pub get_font_size: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> c_int>,
4816    pub set_filter_func: Option<
4817        unsafe extern "C" fn(
4818            *mut GtkFontChooser,
4819            GtkFontFilterFunc,
4820            gpointer,
4821            glib::GDestroyNotify,
4822        ),
4823    >,
4824    pub font_activated: Option<unsafe extern "C" fn(*mut GtkFontChooser, *const c_char)>,
4825    pub set_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser, *mut pango::PangoFontMap)>,
4826    pub get_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontMap>,
4827    pub padding: [gpointer; 10],
4828}
4829
4830impl ::std::fmt::Debug for GtkFontChooserIface {
4831    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4832        f.debug_struct(&format!("GtkFontChooserIface @ {self:p}"))
4833            .field("base_iface", &self.base_iface)
4834            .field("get_font_family", &self.get_font_family)
4835            .field("get_font_face", &self.get_font_face)
4836            .field("get_font_size", &self.get_font_size)
4837            .field("set_filter_func", &self.set_filter_func)
4838            .field("font_activated", &self.font_activated)
4839            .field("set_font_map", &self.set_font_map)
4840            .field("get_font_map", &self.get_font_map)
4841            .field("padding", &self.padding)
4842            .finish()
4843    }
4844}
4845
4846#[derive(Copy, Clone)]
4847#[repr(C)]
4848pub struct GtkFontChooserWidgetClass {
4849    pub parent_class: GtkBoxClass,
4850    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4851    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4852    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4853    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4854    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4855    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4856    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4857    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4858}
4859
4860impl ::std::fmt::Debug for GtkFontChooserWidgetClass {
4861    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4862        f.debug_struct(&format!("GtkFontChooserWidgetClass @ {self:p}"))
4863            .field("parent_class", &self.parent_class)
4864            .field("_gtk_reserved1", &self._gtk_reserved1)
4865            .field("_gtk_reserved2", &self._gtk_reserved2)
4866            .field("_gtk_reserved3", &self._gtk_reserved3)
4867            .field("_gtk_reserved4", &self._gtk_reserved4)
4868            .field("_gtk_reserved5", &self._gtk_reserved5)
4869            .field("_gtk_reserved6", &self._gtk_reserved6)
4870            .field("_gtk_reserved7", &self._gtk_reserved7)
4871            .field("_gtk_reserved8", &self._gtk_reserved8)
4872            .finish()
4873    }
4874}
4875
4876#[repr(C)]
4877#[allow(dead_code)]
4878pub struct _GtkFontChooserWidgetPrivate {
4879    _data: [u8; 0],
4880    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4881}
4882
4883pub type GtkFontChooserWidgetPrivate = _GtkFontChooserWidgetPrivate;
4884
4885#[derive(Copy, Clone)]
4886#[repr(C)]
4887pub struct GtkFontSelectionClass {
4888    pub parent_class: GtkBoxClass,
4889    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4890    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4891    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4892    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4893}
4894
4895impl ::std::fmt::Debug for GtkFontSelectionClass {
4896    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4897        f.debug_struct(&format!("GtkFontSelectionClass @ {self:p}"))
4898            .field("parent_class", &self.parent_class)
4899            .field("_gtk_reserved1", &self._gtk_reserved1)
4900            .field("_gtk_reserved2", &self._gtk_reserved2)
4901            .field("_gtk_reserved3", &self._gtk_reserved3)
4902            .field("_gtk_reserved4", &self._gtk_reserved4)
4903            .finish()
4904    }
4905}
4906
4907#[derive(Copy, Clone)]
4908#[repr(C)]
4909pub struct GtkFontSelectionDialogClass {
4910    pub parent_class: GtkDialogClass,
4911    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4912    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4913    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4914    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4915}
4916
4917impl ::std::fmt::Debug for GtkFontSelectionDialogClass {
4918    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4919        f.debug_struct(&format!("GtkFontSelectionDialogClass @ {self:p}"))
4920            .field("parent_class", &self.parent_class)
4921            .field("_gtk_reserved1", &self._gtk_reserved1)
4922            .field("_gtk_reserved2", &self._gtk_reserved2)
4923            .field("_gtk_reserved3", &self._gtk_reserved3)
4924            .field("_gtk_reserved4", &self._gtk_reserved4)
4925            .finish()
4926    }
4927}
4928
4929#[repr(C)]
4930#[allow(dead_code)]
4931pub struct _GtkFontSelectionDialogPrivate {
4932    _data: [u8; 0],
4933    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4934}
4935
4936pub type GtkFontSelectionDialogPrivate = _GtkFontSelectionDialogPrivate;
4937
4938#[repr(C)]
4939#[allow(dead_code)]
4940pub struct _GtkFontSelectionPrivate {
4941    _data: [u8; 0],
4942    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4943}
4944
4945pub type GtkFontSelectionPrivate = _GtkFontSelectionPrivate;
4946
4947#[derive(Copy, Clone)]
4948#[repr(C)]
4949pub struct GtkFrameAccessibleClass {
4950    pub parent_class: GtkContainerAccessibleClass,
4951}
4952
4953impl ::std::fmt::Debug for GtkFrameAccessibleClass {
4954    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4955        f.debug_struct(&format!("GtkFrameAccessibleClass @ {self:p}"))
4956            .field("parent_class", &self.parent_class)
4957            .finish()
4958    }
4959}
4960
4961#[repr(C)]
4962#[allow(dead_code)]
4963pub struct _GtkFrameAccessiblePrivate {
4964    _data: [u8; 0],
4965    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4966}
4967
4968pub type GtkFrameAccessiblePrivate = _GtkFrameAccessiblePrivate;
4969
4970#[derive(Copy, Clone)]
4971#[repr(C)]
4972pub struct GtkFrameClass {
4973    pub parent_class: GtkBinClass,
4974    pub compute_child_allocation: Option<unsafe extern "C" fn(*mut GtkFrame, *mut GtkAllocation)>,
4975    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4976    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4977    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4978    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4979}
4980
4981impl ::std::fmt::Debug for GtkFrameClass {
4982    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4983        f.debug_struct(&format!("GtkFrameClass @ {self:p}"))
4984            .field("parent_class", &self.parent_class)
4985            .field("compute_child_allocation", &self.compute_child_allocation)
4986            .field("_gtk_reserved1", &self._gtk_reserved1)
4987            .field("_gtk_reserved2", &self._gtk_reserved2)
4988            .field("_gtk_reserved3", &self._gtk_reserved3)
4989            .field("_gtk_reserved4", &self._gtk_reserved4)
4990            .finish()
4991    }
4992}
4993
4994#[repr(C)]
4995#[allow(dead_code)]
4996pub struct _GtkFramePrivate {
4997    _data: [u8; 0],
4998    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4999}
5000
5001pub type GtkFramePrivate = _GtkFramePrivate;
5002
5003#[derive(Copy, Clone)]
5004#[repr(C)]
5005pub struct GtkGLAreaClass {
5006    pub parent_class: GtkWidgetClass,
5007    pub render: Option<unsafe extern "C" fn(*mut GtkGLArea, *mut gdk::GdkGLContext) -> gboolean>,
5008    pub resize: Option<unsafe extern "C" fn(*mut GtkGLArea, c_int, c_int)>,
5009    pub create_context: Option<unsafe extern "C" fn(*mut GtkGLArea) -> *mut gdk::GdkGLContext>,
5010    pub _padding: [gpointer; 6],
5011}
5012
5013impl ::std::fmt::Debug for GtkGLAreaClass {
5014    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5015        f.debug_struct(&format!("GtkGLAreaClass @ {self:p}"))
5016            .field("render", &self.render)
5017            .field("resize", &self.resize)
5018            .field("create_context", &self.create_context)
5019            .finish()
5020    }
5021}
5022
5023#[repr(C)]
5024#[allow(dead_code)]
5025pub struct _GtkGestureClass {
5026    _data: [u8; 0],
5027    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5028}
5029
5030pub type GtkGestureClass = _GtkGestureClass;
5031
5032#[repr(C)]
5033#[allow(dead_code)]
5034pub struct _GtkGestureDragClass {
5035    _data: [u8; 0],
5036    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5037}
5038
5039pub type GtkGestureDragClass = _GtkGestureDragClass;
5040
5041#[repr(C)]
5042#[allow(dead_code)]
5043pub struct _GtkGestureLongPressClass {
5044    _data: [u8; 0],
5045    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5046}
5047
5048pub type GtkGestureLongPressClass = _GtkGestureLongPressClass;
5049
5050#[repr(C)]
5051#[allow(dead_code)]
5052pub struct _GtkGestureMultiPressClass {
5053    _data: [u8; 0],
5054    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5055}
5056
5057pub type GtkGestureMultiPressClass = _GtkGestureMultiPressClass;
5058
5059#[repr(C)]
5060#[allow(dead_code)]
5061pub struct _GtkGesturePanClass {
5062    _data: [u8; 0],
5063    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5064}
5065
5066pub type GtkGesturePanClass = _GtkGesturePanClass;
5067
5068#[repr(C)]
5069#[allow(dead_code)]
5070pub struct _GtkGestureRotateClass {
5071    _data: [u8; 0],
5072    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5073}
5074
5075pub type GtkGestureRotateClass = _GtkGestureRotateClass;
5076
5077#[repr(C)]
5078#[allow(dead_code)]
5079pub struct _GtkGestureSingleClass {
5080    _data: [u8; 0],
5081    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5082}
5083
5084pub type GtkGestureSingleClass = _GtkGestureSingleClass;
5085
5086#[repr(C)]
5087#[allow(dead_code)]
5088pub struct _GtkGestureStylusClass {
5089    _data: [u8; 0],
5090    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5091}
5092
5093pub type GtkGestureStylusClass = _GtkGestureStylusClass;
5094
5095#[repr(C)]
5096#[allow(dead_code)]
5097pub struct _GtkGestureSwipeClass {
5098    _data: [u8; 0],
5099    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5100}
5101
5102pub type GtkGestureSwipeClass = _GtkGestureSwipeClass;
5103
5104#[repr(C)]
5105#[allow(dead_code)]
5106pub struct _GtkGestureZoomClass {
5107    _data: [u8; 0],
5108    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5109}
5110
5111pub type GtkGestureZoomClass = _GtkGestureZoomClass;
5112
5113#[repr(C)]
5114#[allow(dead_code)]
5115pub struct GtkGradient {
5116    _data: [u8; 0],
5117    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5118}
5119
5120impl ::std::fmt::Debug for GtkGradient {
5121    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5122        f.debug_struct(&format!("GtkGradient @ {self:p}")).finish()
5123    }
5124}
5125
5126#[derive(Copy, Clone)]
5127#[repr(C)]
5128pub struct GtkGridClass {
5129    pub parent_class: GtkContainerClass,
5130    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5131    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5132    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5133    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5134    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
5135    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
5136    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
5137    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
5138}
5139
5140impl ::std::fmt::Debug for GtkGridClass {
5141    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5142        f.debug_struct(&format!("GtkGridClass @ {self:p}"))
5143            .field("parent_class", &self.parent_class)
5144            .field("_gtk_reserved1", &self._gtk_reserved1)
5145            .field("_gtk_reserved2", &self._gtk_reserved2)
5146            .field("_gtk_reserved3", &self._gtk_reserved3)
5147            .field("_gtk_reserved4", &self._gtk_reserved4)
5148            .field("_gtk_reserved5", &self._gtk_reserved5)
5149            .field("_gtk_reserved6", &self._gtk_reserved6)
5150            .field("_gtk_reserved7", &self._gtk_reserved7)
5151            .field("_gtk_reserved8", &self._gtk_reserved8)
5152            .finish()
5153    }
5154}
5155
5156#[repr(C)]
5157#[allow(dead_code)]
5158pub struct _GtkGridPrivate {
5159    _data: [u8; 0],
5160    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5161}
5162
5163pub type GtkGridPrivate = _GtkGridPrivate;
5164
5165#[derive(Copy, Clone)]
5166#[repr(C)]
5167pub struct GtkHBoxClass {
5168    pub parent_class: GtkBoxClass,
5169}
5170
5171impl ::std::fmt::Debug for GtkHBoxClass {
5172    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5173        f.debug_struct(&format!("GtkHBoxClass @ {self:p}"))
5174            .field("parent_class", &self.parent_class)
5175            .finish()
5176    }
5177}
5178
5179#[derive(Copy, Clone)]
5180#[repr(C)]
5181pub struct GtkHButtonBoxClass {
5182    pub parent_class: GtkButtonBoxClass,
5183}
5184
5185impl ::std::fmt::Debug for GtkHButtonBoxClass {
5186    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5187        f.debug_struct(&format!("GtkHButtonBoxClass @ {self:p}"))
5188            .field("parent_class", &self.parent_class)
5189            .finish()
5190    }
5191}
5192
5193#[derive(Copy, Clone)]
5194#[repr(C)]
5195pub struct GtkHPanedClass {
5196    pub parent_class: GtkPanedClass,
5197}
5198
5199impl ::std::fmt::Debug for GtkHPanedClass {
5200    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5201        f.debug_struct(&format!("GtkHPanedClass @ {self:p}"))
5202            .field("parent_class", &self.parent_class)
5203            .finish()
5204    }
5205}
5206
5207#[derive(Copy, Clone)]
5208#[repr(C)]
5209pub struct GtkHSVClass {
5210    pub parent_class: GtkWidgetClass,
5211    pub changed: Option<unsafe extern "C" fn(*mut GtkHSV)>,
5212    pub move_: Option<unsafe extern "C" fn(*mut GtkHSV, GtkDirectionType)>,
5213    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5214    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5215    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5216    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5217}
5218
5219impl ::std::fmt::Debug for GtkHSVClass {
5220    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5221        f.debug_struct(&format!("GtkHSVClass @ {self:p}"))
5222            .field("parent_class", &self.parent_class)
5223            .field("changed", &self.changed)
5224            .field("move_", &self.move_)
5225            .field("_gtk_reserved1", &self._gtk_reserved1)
5226            .field("_gtk_reserved2", &self._gtk_reserved2)
5227            .field("_gtk_reserved3", &self._gtk_reserved3)
5228            .field("_gtk_reserved4", &self._gtk_reserved4)
5229            .finish()
5230    }
5231}
5232
5233#[repr(C)]
5234#[allow(dead_code)]
5235pub struct _GtkHSVPrivate {
5236    _data: [u8; 0],
5237    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5238}
5239
5240pub type GtkHSVPrivate = _GtkHSVPrivate;
5241
5242#[derive(Copy, Clone)]
5243#[repr(C)]
5244pub struct GtkHScaleClass {
5245    pub parent_class: GtkScaleClass,
5246}
5247
5248impl ::std::fmt::Debug for GtkHScaleClass {
5249    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5250        f.debug_struct(&format!("GtkHScaleClass @ {self:p}"))
5251            .field("parent_class", &self.parent_class)
5252            .finish()
5253    }
5254}
5255
5256#[derive(Copy, Clone)]
5257#[repr(C)]
5258pub struct GtkHScrollbarClass {
5259    pub parent_class: GtkScrollbarClass,
5260}
5261
5262impl ::std::fmt::Debug for GtkHScrollbarClass {
5263    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5264        f.debug_struct(&format!("GtkHScrollbarClass @ {self:p}"))
5265            .field("parent_class", &self.parent_class)
5266            .finish()
5267    }
5268}
5269
5270#[derive(Copy, Clone)]
5271#[repr(C)]
5272pub struct GtkHSeparatorClass {
5273    pub parent_class: GtkSeparatorClass,
5274}
5275
5276impl ::std::fmt::Debug for GtkHSeparatorClass {
5277    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5278        f.debug_struct(&format!("GtkHSeparatorClass @ {self:p}"))
5279            .field("parent_class", &self.parent_class)
5280            .finish()
5281    }
5282}
5283
5284#[derive(Copy, Clone)]
5285#[repr(C)]
5286pub struct GtkHandleBoxClass {
5287    pub parent_class: GtkBinClass,
5288    pub child_attached: Option<unsafe extern "C" fn(*mut GtkHandleBox, *mut GtkWidget)>,
5289    pub child_detached: Option<unsafe extern "C" fn(*mut GtkHandleBox, *mut GtkWidget)>,
5290    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5291    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5292    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5293    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5294}
5295
5296impl ::std::fmt::Debug for GtkHandleBoxClass {
5297    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5298        f.debug_struct(&format!("GtkHandleBoxClass @ {self:p}"))
5299            .field("parent_class", &self.parent_class)
5300            .field("child_attached", &self.child_attached)
5301            .field("child_detached", &self.child_detached)
5302            .field("_gtk_reserved1", &self._gtk_reserved1)
5303            .field("_gtk_reserved2", &self._gtk_reserved2)
5304            .field("_gtk_reserved3", &self._gtk_reserved3)
5305            .field("_gtk_reserved4", &self._gtk_reserved4)
5306            .finish()
5307    }
5308}
5309
5310#[repr(C)]
5311#[allow(dead_code)]
5312pub struct _GtkHandleBoxPrivate {
5313    _data: [u8; 0],
5314    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5315}
5316
5317pub type GtkHandleBoxPrivate = _GtkHandleBoxPrivate;
5318
5319#[derive(Copy, Clone)]
5320#[repr(C)]
5321pub struct GtkHeaderBarAccessibleClass {
5322    pub parent_class: GtkContainerAccessibleClass,
5323}
5324
5325impl ::std::fmt::Debug for GtkHeaderBarAccessibleClass {
5326    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5327        f.debug_struct(&format!("GtkHeaderBarAccessibleClass @ {self:p}"))
5328            .field("parent_class", &self.parent_class)
5329            .finish()
5330    }
5331}
5332
5333#[repr(C)]
5334#[allow(dead_code)]
5335pub struct _GtkHeaderBarAccessiblePrivate {
5336    _data: [u8; 0],
5337    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5338}
5339
5340pub type GtkHeaderBarAccessiblePrivate = _GtkHeaderBarAccessiblePrivate;
5341
5342#[derive(Copy, Clone)]
5343#[repr(C)]
5344pub struct GtkHeaderBarClass {
5345    pub parent_class: GtkContainerClass,
5346    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5347    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5348    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5349    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5350}
5351
5352impl ::std::fmt::Debug for GtkHeaderBarClass {
5353    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5354        f.debug_struct(&format!("GtkHeaderBarClass @ {self:p}"))
5355            .field("parent_class", &self.parent_class)
5356            .field("_gtk_reserved1", &self._gtk_reserved1)
5357            .field("_gtk_reserved2", &self._gtk_reserved2)
5358            .field("_gtk_reserved3", &self._gtk_reserved3)
5359            .field("_gtk_reserved4", &self._gtk_reserved4)
5360            .finish()
5361    }
5362}
5363
5364#[repr(C)]
5365#[allow(dead_code)]
5366pub struct _GtkHeaderBarPrivate {
5367    _data: [u8; 0],
5368    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5369}
5370
5371pub type GtkHeaderBarPrivate = _GtkHeaderBarPrivate;
5372
5373#[derive(Copy, Clone)]
5374#[repr(C)]
5375pub struct GtkIMContextClass {
5376    pub parent_class: gobject::GObjectClass,
5377    pub preedit_start: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
5378    pub preedit_end: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
5379    pub preedit_changed: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
5380    pub commit: Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char)>,
5381    pub retrieve_surrounding: Option<unsafe extern "C" fn(*mut GtkIMContext) -> gboolean>,
5382    pub delete_surrounding:
5383        Option<unsafe extern "C" fn(*mut GtkIMContext, c_int, c_int) -> gboolean>,
5384    pub set_client_window: Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkWindow)>,
5385    pub get_preedit_string: Option<
5386        unsafe extern "C" fn(
5387            *mut GtkIMContext,
5388            *mut *mut c_char,
5389            *mut *mut pango::PangoAttrList,
5390            *mut c_int,
5391        ),
5392    >,
5393    pub filter_keypress:
5394        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEventKey) -> gboolean>,
5395    pub focus_in: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
5396    pub focus_out: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
5397    pub reset: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
5398    pub set_cursor_location:
5399        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkRectangle)>,
5400    pub set_use_preedit: Option<unsafe extern "C" fn(*mut GtkIMContext, gboolean)>,
5401    pub set_surrounding:
5402        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int)>,
5403    pub get_surrounding:
5404        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut *mut c_char, *mut c_int) -> gboolean>,
5405    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5406    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5407    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5408    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5409    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
5410    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
5411}
5412
5413impl ::std::fmt::Debug for GtkIMContextClass {
5414    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5415        f.debug_struct(&format!("GtkIMContextClass @ {self:p}"))
5416            .field("preedit_start", &self.preedit_start)
5417            .field("preedit_end", &self.preedit_end)
5418            .field("preedit_changed", &self.preedit_changed)
5419            .field("commit", &self.commit)
5420            .field("retrieve_surrounding", &self.retrieve_surrounding)
5421            .field("delete_surrounding", &self.delete_surrounding)
5422            .field("set_client_window", &self.set_client_window)
5423            .field("get_preedit_string", &self.get_preedit_string)
5424            .field("filter_keypress", &self.filter_keypress)
5425            .field("focus_in", &self.focus_in)
5426            .field("focus_out", &self.focus_out)
5427            .field("reset", &self.reset)
5428            .field("set_cursor_location", &self.set_cursor_location)
5429            .field("set_use_preedit", &self.set_use_preedit)
5430            .field("set_surrounding", &self.set_surrounding)
5431            .field("get_surrounding", &self.get_surrounding)
5432            .field("_gtk_reserved1", &self._gtk_reserved1)
5433            .field("_gtk_reserved2", &self._gtk_reserved2)
5434            .field("_gtk_reserved3", &self._gtk_reserved3)
5435            .field("_gtk_reserved4", &self._gtk_reserved4)
5436            .field("_gtk_reserved5", &self._gtk_reserved5)
5437            .field("_gtk_reserved6", &self._gtk_reserved6)
5438            .finish()
5439    }
5440}
5441
5442#[derive(Copy, Clone)]
5443#[repr(C)]
5444pub struct GtkIMContextInfo {
5445    pub context_id: *const c_char,
5446    pub context_name: *const c_char,
5447    pub domain: *const c_char,
5448    pub domain_dirname: *const c_char,
5449    pub default_locales: *const c_char,
5450}
5451
5452impl ::std::fmt::Debug for GtkIMContextInfo {
5453    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5454        f.debug_struct(&format!("GtkIMContextInfo @ {self:p}"))
5455            .field("context_id", &self.context_id)
5456            .field("context_name", &self.context_name)
5457            .field("domain", &self.domain)
5458            .field("domain_dirname", &self.domain_dirname)
5459            .field("default_locales", &self.default_locales)
5460            .finish()
5461    }
5462}
5463
5464#[derive(Copy, Clone)]
5465#[repr(C)]
5466pub struct GtkIMContextSimpleClass {
5467    pub parent_class: GtkIMContextClass,
5468}
5469
5470impl ::std::fmt::Debug for GtkIMContextSimpleClass {
5471    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5472        f.debug_struct(&format!("GtkIMContextSimpleClass @ {self:p}"))
5473            .field("parent_class", &self.parent_class)
5474            .finish()
5475    }
5476}
5477
5478#[repr(C)]
5479#[allow(dead_code)]
5480pub struct _GtkIMContextSimplePrivate {
5481    _data: [u8; 0],
5482    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5483}
5484
5485pub type GtkIMContextSimplePrivate = _GtkIMContextSimplePrivate;
5486
5487#[derive(Copy, Clone)]
5488#[repr(C)]
5489pub struct GtkIMMulticontextClass {
5490    pub parent_class: GtkIMContextClass,
5491    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5492    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5493    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5494    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5495}
5496
5497impl ::std::fmt::Debug for GtkIMMulticontextClass {
5498    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5499        f.debug_struct(&format!("GtkIMMulticontextClass @ {self:p}"))
5500            .field("parent_class", &self.parent_class)
5501            .field("_gtk_reserved1", &self._gtk_reserved1)
5502            .field("_gtk_reserved2", &self._gtk_reserved2)
5503            .field("_gtk_reserved3", &self._gtk_reserved3)
5504            .field("_gtk_reserved4", &self._gtk_reserved4)
5505            .finish()
5506    }
5507}
5508
5509#[repr(C)]
5510#[allow(dead_code)]
5511pub struct _GtkIMMulticontextPrivate {
5512    _data: [u8; 0],
5513    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5514}
5515
5516pub type GtkIMMulticontextPrivate = _GtkIMMulticontextPrivate;
5517
5518#[derive(Copy, Clone)]
5519#[repr(C)]
5520pub struct GtkIconFactoryClass {
5521    pub parent_class: gobject::GObjectClass,
5522    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5523    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5524    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5525    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5526}
5527
5528impl ::std::fmt::Debug for GtkIconFactoryClass {
5529    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5530        f.debug_struct(&format!("GtkIconFactoryClass @ {self:p}"))
5531            .field("parent_class", &self.parent_class)
5532            .field("_gtk_reserved1", &self._gtk_reserved1)
5533            .field("_gtk_reserved2", &self._gtk_reserved2)
5534            .field("_gtk_reserved3", &self._gtk_reserved3)
5535            .field("_gtk_reserved4", &self._gtk_reserved4)
5536            .finish()
5537    }
5538}
5539
5540#[repr(C)]
5541#[allow(dead_code)]
5542pub struct _GtkIconFactoryPrivate {
5543    _data: [u8; 0],
5544    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5545}
5546
5547pub type GtkIconFactoryPrivate = _GtkIconFactoryPrivate;
5548
5549#[repr(C)]
5550#[allow(dead_code)]
5551pub struct _GtkIconInfoClass {
5552    _data: [u8; 0],
5553    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5554}
5555
5556pub type GtkIconInfoClass = _GtkIconInfoClass;
5557
5558#[repr(C)]
5559#[allow(dead_code)]
5560pub struct GtkIconSet {
5561    _data: [u8; 0],
5562    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5563}
5564
5565impl ::std::fmt::Debug for GtkIconSet {
5566    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5567        f.debug_struct(&format!("GtkIconSet @ {self:p}")).finish()
5568    }
5569}
5570
5571#[repr(C)]
5572#[allow(dead_code)]
5573pub struct GtkIconSource {
5574    _data: [u8; 0],
5575    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5576}
5577
5578impl ::std::fmt::Debug for GtkIconSource {
5579    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5580        f.debug_struct(&format!("GtkIconSource @ {self:p}"))
5581            .finish()
5582    }
5583}
5584
5585#[derive(Copy, Clone)]
5586#[repr(C)]
5587pub struct GtkIconThemeClass {
5588    pub parent_class: gobject::GObjectClass,
5589    pub changed: Option<unsafe extern "C" fn(*mut GtkIconTheme)>,
5590    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5591    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5592    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5593    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5594}
5595
5596impl ::std::fmt::Debug for GtkIconThemeClass {
5597    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5598        f.debug_struct(&format!("GtkIconThemeClass @ {self:p}"))
5599            .field("parent_class", &self.parent_class)
5600            .field("changed", &self.changed)
5601            .field("_gtk_reserved1", &self._gtk_reserved1)
5602            .field("_gtk_reserved2", &self._gtk_reserved2)
5603            .field("_gtk_reserved3", &self._gtk_reserved3)
5604            .field("_gtk_reserved4", &self._gtk_reserved4)
5605            .finish()
5606    }
5607}
5608
5609#[repr(C)]
5610#[allow(dead_code)]
5611pub struct _GtkIconThemePrivate {
5612    _data: [u8; 0],
5613    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5614}
5615
5616pub type GtkIconThemePrivate = _GtkIconThemePrivate;
5617
5618#[derive(Copy, Clone)]
5619#[repr(C)]
5620pub struct GtkIconViewAccessibleClass {
5621    pub parent_class: GtkContainerAccessibleClass,
5622}
5623
5624impl ::std::fmt::Debug for GtkIconViewAccessibleClass {
5625    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5626        f.debug_struct(&format!("GtkIconViewAccessibleClass @ {self:p}"))
5627            .field("parent_class", &self.parent_class)
5628            .finish()
5629    }
5630}
5631
5632#[repr(C)]
5633#[allow(dead_code)]
5634pub struct _GtkIconViewAccessiblePrivate {
5635    _data: [u8; 0],
5636    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5637}
5638
5639pub type GtkIconViewAccessiblePrivate = _GtkIconViewAccessiblePrivate;
5640
5641#[derive(Copy, Clone)]
5642#[repr(C)]
5643pub struct GtkIconViewClass {
5644    pub parent_class: GtkContainerClass,
5645    pub item_activated: Option<unsafe extern "C" fn(*mut GtkIconView, *mut GtkTreePath)>,
5646    pub selection_changed: Option<unsafe extern "C" fn(*mut GtkIconView)>,
5647    pub select_all: Option<unsafe extern "C" fn(*mut GtkIconView)>,
5648    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkIconView)>,
5649    pub select_cursor_item: Option<unsafe extern "C" fn(*mut GtkIconView)>,
5650    pub toggle_cursor_item: Option<unsafe extern "C" fn(*mut GtkIconView)>,
5651    pub move_cursor:
5652        Option<unsafe extern "C" fn(*mut GtkIconView, GtkMovementStep, c_int) -> gboolean>,
5653    pub activate_cursor_item: Option<unsafe extern "C" fn(*mut GtkIconView) -> gboolean>,
5654    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5655    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5656    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5657    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5658}
5659
5660impl ::std::fmt::Debug for GtkIconViewClass {
5661    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5662        f.debug_struct(&format!("GtkIconViewClass @ {self:p}"))
5663            .field("parent_class", &self.parent_class)
5664            .field("item_activated", &self.item_activated)
5665            .field("selection_changed", &self.selection_changed)
5666            .field("select_all", &self.select_all)
5667            .field("unselect_all", &self.unselect_all)
5668            .field("select_cursor_item", &self.select_cursor_item)
5669            .field("toggle_cursor_item", &self.toggle_cursor_item)
5670            .field("move_cursor", &self.move_cursor)
5671            .field("activate_cursor_item", &self.activate_cursor_item)
5672            .field("_gtk_reserved1", &self._gtk_reserved1)
5673            .field("_gtk_reserved2", &self._gtk_reserved2)
5674            .field("_gtk_reserved3", &self._gtk_reserved3)
5675            .field("_gtk_reserved4", &self._gtk_reserved4)
5676            .finish()
5677    }
5678}
5679
5680#[repr(C)]
5681#[allow(dead_code)]
5682pub struct _GtkIconViewPrivate {
5683    _data: [u8; 0],
5684    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5685}
5686
5687pub type GtkIconViewPrivate = _GtkIconViewPrivate;
5688
5689#[derive(Copy, Clone)]
5690#[repr(C)]
5691pub struct GtkImageAccessibleClass {
5692    pub parent_class: GtkWidgetAccessibleClass,
5693}
5694
5695impl ::std::fmt::Debug for GtkImageAccessibleClass {
5696    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5697        f.debug_struct(&format!("GtkImageAccessibleClass @ {self:p}"))
5698            .field("parent_class", &self.parent_class)
5699            .finish()
5700    }
5701}
5702
5703#[repr(C)]
5704#[allow(dead_code)]
5705pub struct _GtkImageAccessiblePrivate {
5706    _data: [u8; 0],
5707    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5708}
5709
5710pub type GtkImageAccessiblePrivate = _GtkImageAccessiblePrivate;
5711
5712#[derive(Copy, Clone)]
5713#[repr(C)]
5714pub struct GtkImageCellAccessibleClass {
5715    pub parent_class: GtkRendererCellAccessibleClass,
5716}
5717
5718impl ::std::fmt::Debug for GtkImageCellAccessibleClass {
5719    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5720        f.debug_struct(&format!("GtkImageCellAccessibleClass @ {self:p}"))
5721            .field("parent_class", &self.parent_class)
5722            .finish()
5723    }
5724}
5725
5726#[repr(C)]
5727#[allow(dead_code)]
5728pub struct _GtkImageCellAccessiblePrivate {
5729    _data: [u8; 0],
5730    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5731}
5732
5733pub type GtkImageCellAccessiblePrivate = _GtkImageCellAccessiblePrivate;
5734
5735#[derive(Copy, Clone)]
5736#[repr(C)]
5737pub struct GtkImageClass {
5738    pub parent_class: GtkMiscClass,
5739    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5740    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5741    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5742    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5743}
5744
5745impl ::std::fmt::Debug for GtkImageClass {
5746    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5747        f.debug_struct(&format!("GtkImageClass @ {self:p}"))
5748            .field("parent_class", &self.parent_class)
5749            .field("_gtk_reserved1", &self._gtk_reserved1)
5750            .field("_gtk_reserved2", &self._gtk_reserved2)
5751            .field("_gtk_reserved3", &self._gtk_reserved3)
5752            .field("_gtk_reserved4", &self._gtk_reserved4)
5753            .finish()
5754    }
5755}
5756
5757#[derive(Copy, Clone)]
5758#[repr(C)]
5759pub struct GtkImageMenuItemClass {
5760    pub parent_class: GtkMenuItemClass,
5761    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5762    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5763    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5764    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5765}
5766
5767impl ::std::fmt::Debug for GtkImageMenuItemClass {
5768    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5769        f.debug_struct(&format!("GtkImageMenuItemClass @ {self:p}"))
5770            .field("parent_class", &self.parent_class)
5771            .field("_gtk_reserved1", &self._gtk_reserved1)
5772            .field("_gtk_reserved2", &self._gtk_reserved2)
5773            .field("_gtk_reserved3", &self._gtk_reserved3)
5774            .field("_gtk_reserved4", &self._gtk_reserved4)
5775            .finish()
5776    }
5777}
5778
5779#[repr(C)]
5780#[allow(dead_code)]
5781pub struct _GtkImageMenuItemPrivate {
5782    _data: [u8; 0],
5783    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5784}
5785
5786pub type GtkImageMenuItemPrivate = _GtkImageMenuItemPrivate;
5787
5788#[repr(C)]
5789#[allow(dead_code)]
5790pub struct _GtkImagePrivate {
5791    _data: [u8; 0],
5792    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5793}
5794
5795pub type GtkImagePrivate = _GtkImagePrivate;
5796
5797#[derive(Copy, Clone)]
5798#[repr(C)]
5799pub struct GtkInfoBarClass {
5800    pub parent_class: GtkBoxClass,
5801    pub response: Option<unsafe extern "C" fn(*mut GtkInfoBar, GtkResponseType)>,
5802    pub close: Option<unsafe extern "C" fn(*mut GtkInfoBar)>,
5803    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5804    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5805    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5806    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5807}
5808
5809impl ::std::fmt::Debug for GtkInfoBarClass {
5810    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5811        f.debug_struct(&format!("GtkInfoBarClass @ {self:p}"))
5812            .field("parent_class", &self.parent_class)
5813            .field("response", &self.response)
5814            .field("close", &self.close)
5815            .field("_gtk_reserved1", &self._gtk_reserved1)
5816            .field("_gtk_reserved2", &self._gtk_reserved2)
5817            .field("_gtk_reserved3", &self._gtk_reserved3)
5818            .field("_gtk_reserved4", &self._gtk_reserved4)
5819            .finish()
5820    }
5821}
5822
5823#[repr(C)]
5824#[allow(dead_code)]
5825pub struct _GtkInfoBarPrivate {
5826    _data: [u8; 0],
5827    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5828}
5829
5830pub type GtkInfoBarPrivate = _GtkInfoBarPrivate;
5831
5832#[derive(Copy, Clone)]
5833#[repr(C)]
5834pub struct GtkInvisibleClass {
5835    pub parent_class: GtkWidgetClass,
5836    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5837    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5838    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5839    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5840}
5841
5842impl ::std::fmt::Debug for GtkInvisibleClass {
5843    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5844        f.debug_struct(&format!("GtkInvisibleClass @ {self:p}"))
5845            .field("parent_class", &self.parent_class)
5846            .field("_gtk_reserved1", &self._gtk_reserved1)
5847            .field("_gtk_reserved2", &self._gtk_reserved2)
5848            .field("_gtk_reserved3", &self._gtk_reserved3)
5849            .field("_gtk_reserved4", &self._gtk_reserved4)
5850            .finish()
5851    }
5852}
5853
5854#[repr(C)]
5855#[allow(dead_code)]
5856pub struct _GtkInvisiblePrivate {
5857    _data: [u8; 0],
5858    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5859}
5860
5861pub type GtkInvisiblePrivate = _GtkInvisiblePrivate;
5862
5863#[derive(Copy, Clone)]
5864#[repr(C)]
5865pub struct GtkLabelAccessibleClass {
5866    pub parent_class: GtkWidgetAccessibleClass,
5867}
5868
5869impl ::std::fmt::Debug for GtkLabelAccessibleClass {
5870    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5871        f.debug_struct(&format!("GtkLabelAccessibleClass @ {self:p}"))
5872            .field("parent_class", &self.parent_class)
5873            .finish()
5874    }
5875}
5876
5877#[repr(C)]
5878#[allow(dead_code)]
5879pub struct _GtkLabelAccessiblePrivate {
5880    _data: [u8; 0],
5881    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5882}
5883
5884pub type GtkLabelAccessiblePrivate = _GtkLabelAccessiblePrivate;
5885
5886#[derive(Copy, Clone)]
5887#[repr(C)]
5888pub struct GtkLabelClass {
5889    pub parent_class: GtkMiscClass,
5890    pub move_cursor: Option<unsafe extern "C" fn(*mut GtkLabel, GtkMovementStep, c_int, gboolean)>,
5891    pub copy_clipboard: Option<unsafe extern "C" fn(*mut GtkLabel)>,
5892    pub populate_popup: Option<unsafe extern "C" fn(*mut GtkLabel, *mut GtkMenu)>,
5893    pub activate_link: Option<unsafe extern "C" fn(*mut GtkLabel, *const c_char) -> gboolean>,
5894    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5895    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5896    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5897    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5898    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
5899    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
5900    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
5901    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
5902}
5903
5904impl ::std::fmt::Debug for GtkLabelClass {
5905    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5906        f.debug_struct(&format!("GtkLabelClass @ {self:p}"))
5907            .field("parent_class", &self.parent_class)
5908            .field("move_cursor", &self.move_cursor)
5909            .field("copy_clipboard", &self.copy_clipboard)
5910            .field("populate_popup", &self.populate_popup)
5911            .field("activate_link", &self.activate_link)
5912            .field("_gtk_reserved1", &self._gtk_reserved1)
5913            .field("_gtk_reserved2", &self._gtk_reserved2)
5914            .field("_gtk_reserved3", &self._gtk_reserved3)
5915            .field("_gtk_reserved4", &self._gtk_reserved4)
5916            .field("_gtk_reserved5", &self._gtk_reserved5)
5917            .field("_gtk_reserved6", &self._gtk_reserved6)
5918            .field("_gtk_reserved7", &self._gtk_reserved7)
5919            .field("_gtk_reserved8", &self._gtk_reserved8)
5920            .finish()
5921    }
5922}
5923
5924#[repr(C)]
5925#[allow(dead_code)]
5926pub struct _GtkLabelPrivate {
5927    _data: [u8; 0],
5928    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5929}
5930
5931pub type GtkLabelPrivate = _GtkLabelPrivate;
5932
5933#[repr(C)]
5934#[allow(dead_code)]
5935pub struct _GtkLabelSelectionInfo {
5936    _data: [u8; 0],
5937    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5938}
5939
5940pub type GtkLabelSelectionInfo = _GtkLabelSelectionInfo;
5941
5942#[derive(Copy, Clone)]
5943#[repr(C)]
5944pub struct GtkLayoutClass {
5945    pub parent_class: GtkContainerClass,
5946    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5947    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5948    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5949    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5950}
5951
5952impl ::std::fmt::Debug for GtkLayoutClass {
5953    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5954        f.debug_struct(&format!("GtkLayoutClass @ {self:p}"))
5955            .field("parent_class", &self.parent_class)
5956            .field("_gtk_reserved1", &self._gtk_reserved1)
5957            .field("_gtk_reserved2", &self._gtk_reserved2)
5958            .field("_gtk_reserved3", &self._gtk_reserved3)
5959            .field("_gtk_reserved4", &self._gtk_reserved4)
5960            .finish()
5961    }
5962}
5963
5964#[repr(C)]
5965#[allow(dead_code)]
5966pub struct _GtkLayoutPrivate {
5967    _data: [u8; 0],
5968    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5969}
5970
5971pub type GtkLayoutPrivate = _GtkLayoutPrivate;
5972
5973#[derive(Copy, Clone)]
5974#[repr(C)]
5975pub struct GtkLevelBarAccessibleClass {
5976    pub parent_class: GtkWidgetAccessibleClass,
5977}
5978
5979impl ::std::fmt::Debug for GtkLevelBarAccessibleClass {
5980    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5981        f.debug_struct(&format!("GtkLevelBarAccessibleClass @ {self:p}"))
5982            .field("parent_class", &self.parent_class)
5983            .finish()
5984    }
5985}
5986
5987#[repr(C)]
5988#[allow(dead_code)]
5989pub struct _GtkLevelBarAccessiblePrivate {
5990    _data: [u8; 0],
5991    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5992}
5993
5994pub type GtkLevelBarAccessiblePrivate = _GtkLevelBarAccessiblePrivate;
5995
5996#[derive(Copy, Clone)]
5997#[repr(C)]
5998pub struct GtkLevelBarClass {
5999    pub parent_class: GtkWidgetClass,
6000    pub offset_changed: Option<unsafe extern "C" fn(*mut GtkLevelBar, *const c_char)>,
6001    pub padding: [gpointer; 16],
6002}
6003
6004impl ::std::fmt::Debug for GtkLevelBarClass {
6005    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6006        f.debug_struct(&format!("GtkLevelBarClass @ {self:p}"))
6007            .field("offset_changed", &self.offset_changed)
6008            .finish()
6009    }
6010}
6011
6012#[repr(C)]
6013#[allow(dead_code)]
6014pub struct _GtkLevelBarPrivate {
6015    _data: [u8; 0],
6016    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6017}
6018
6019pub type GtkLevelBarPrivate = _GtkLevelBarPrivate;
6020
6021#[derive(Copy, Clone)]
6022#[repr(C)]
6023pub struct GtkLinkButtonAccessibleClass {
6024    pub parent_class: GtkButtonAccessibleClass,
6025}
6026
6027impl ::std::fmt::Debug for GtkLinkButtonAccessibleClass {
6028    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6029        f.debug_struct(&format!("GtkLinkButtonAccessibleClass @ {self:p}"))
6030            .field("parent_class", &self.parent_class)
6031            .finish()
6032    }
6033}
6034
6035#[repr(C)]
6036#[allow(dead_code)]
6037pub struct _GtkLinkButtonAccessiblePrivate {
6038    _data: [u8; 0],
6039    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6040}
6041
6042pub type GtkLinkButtonAccessiblePrivate = _GtkLinkButtonAccessiblePrivate;
6043
6044#[derive(Copy, Clone)]
6045#[repr(C)]
6046pub struct GtkLinkButtonClass {
6047    pub parent_class: GtkButtonClass,
6048    pub activate_link: Option<unsafe extern "C" fn(*mut GtkLinkButton) -> gboolean>,
6049    pub _gtk_padding1: Option<unsafe extern "C" fn()>,
6050    pub _gtk_padding2: Option<unsafe extern "C" fn()>,
6051    pub _gtk_padding3: Option<unsafe extern "C" fn()>,
6052    pub _gtk_padding4: Option<unsafe extern "C" fn()>,
6053}
6054
6055impl ::std::fmt::Debug for GtkLinkButtonClass {
6056    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6057        f.debug_struct(&format!("GtkLinkButtonClass @ {self:p}"))
6058            .field("activate_link", &self.activate_link)
6059            .field("_gtk_padding1", &self._gtk_padding1)
6060            .field("_gtk_padding2", &self._gtk_padding2)
6061            .field("_gtk_padding3", &self._gtk_padding3)
6062            .field("_gtk_padding4", &self._gtk_padding4)
6063            .finish()
6064    }
6065}
6066
6067#[repr(C)]
6068#[allow(dead_code)]
6069pub struct _GtkLinkButtonPrivate {
6070    _data: [u8; 0],
6071    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6072}
6073
6074pub type GtkLinkButtonPrivate = _GtkLinkButtonPrivate;
6075
6076#[derive(Copy, Clone)]
6077#[repr(C)]
6078pub struct GtkListBoxAccessibleClass {
6079    pub parent_class: GtkContainerAccessibleClass,
6080}
6081
6082impl ::std::fmt::Debug for GtkListBoxAccessibleClass {
6083    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6084        f.debug_struct(&format!("GtkListBoxAccessibleClass @ {self:p}"))
6085            .field("parent_class", &self.parent_class)
6086            .finish()
6087    }
6088}
6089
6090#[repr(C)]
6091#[allow(dead_code)]
6092pub struct _GtkListBoxAccessiblePrivate {
6093    _data: [u8; 0],
6094    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6095}
6096
6097pub type GtkListBoxAccessiblePrivate = _GtkListBoxAccessiblePrivate;
6098
6099#[derive(Copy, Clone)]
6100#[repr(C)]
6101pub struct GtkListBoxClass {
6102    pub parent_class: GtkContainerClass,
6103    pub row_selected: Option<unsafe extern "C" fn(*mut GtkListBox, *mut GtkListBoxRow)>,
6104    pub row_activated: Option<unsafe extern "C" fn(*mut GtkListBox, *mut GtkListBoxRow)>,
6105    pub activate_cursor_row: Option<unsafe extern "C" fn(*mut GtkListBox)>,
6106    pub toggle_cursor_row: Option<unsafe extern "C" fn(*mut GtkListBox)>,
6107    pub move_cursor: Option<unsafe extern "C" fn(*mut GtkListBox, GtkMovementStep, c_int)>,
6108    pub selected_rows_changed: Option<unsafe extern "C" fn(*mut GtkListBox)>,
6109    pub select_all: Option<unsafe extern "C" fn(*mut GtkListBox)>,
6110    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkListBox)>,
6111    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6112    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6113    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6114}
6115
6116impl ::std::fmt::Debug for GtkListBoxClass {
6117    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6118        f.debug_struct(&format!("GtkListBoxClass @ {self:p}"))
6119            .field("parent_class", &self.parent_class)
6120            .field("row_selected", &self.row_selected)
6121            .field("row_activated", &self.row_activated)
6122            .field("activate_cursor_row", &self.activate_cursor_row)
6123            .field("toggle_cursor_row", &self.toggle_cursor_row)
6124            .field("move_cursor", &self.move_cursor)
6125            .field("selected_rows_changed", &self.selected_rows_changed)
6126            .field("select_all", &self.select_all)
6127            .field("unselect_all", &self.unselect_all)
6128            .field("_gtk_reserved1", &self._gtk_reserved1)
6129            .field("_gtk_reserved2", &self._gtk_reserved2)
6130            .field("_gtk_reserved3", &self._gtk_reserved3)
6131            .finish()
6132    }
6133}
6134
6135#[derive(Copy, Clone)]
6136#[repr(C)]
6137pub struct GtkListBoxRowAccessibleClass {
6138    pub parent_class: GtkContainerAccessibleClass,
6139}
6140
6141impl ::std::fmt::Debug for GtkListBoxRowAccessibleClass {
6142    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6143        f.debug_struct(&format!("GtkListBoxRowAccessibleClass @ {self:p}"))
6144            .field("parent_class", &self.parent_class)
6145            .finish()
6146    }
6147}
6148
6149#[derive(Copy, Clone)]
6150#[repr(C)]
6151pub struct GtkListBoxRowClass {
6152    pub parent_class: GtkBinClass,
6153    pub activate: Option<unsafe extern "C" fn(*mut GtkListBoxRow)>,
6154    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6155    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6156}
6157
6158impl ::std::fmt::Debug for GtkListBoxRowClass {
6159    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6160        f.debug_struct(&format!("GtkListBoxRowClass @ {self:p}"))
6161            .field("parent_class", &self.parent_class)
6162            .field("activate", &self.activate)
6163            .field("_gtk_reserved1", &self._gtk_reserved1)
6164            .field("_gtk_reserved2", &self._gtk_reserved2)
6165            .finish()
6166    }
6167}
6168
6169#[derive(Copy, Clone)]
6170#[repr(C)]
6171pub struct GtkListStoreClass {
6172    pub parent_class: gobject::GObjectClass,
6173    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6174    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6175    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6176    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6177}
6178
6179impl ::std::fmt::Debug for GtkListStoreClass {
6180    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6181        f.debug_struct(&format!("GtkListStoreClass @ {self:p}"))
6182            .field("parent_class", &self.parent_class)
6183            .field("_gtk_reserved1", &self._gtk_reserved1)
6184            .field("_gtk_reserved2", &self._gtk_reserved2)
6185            .field("_gtk_reserved3", &self._gtk_reserved3)
6186            .field("_gtk_reserved4", &self._gtk_reserved4)
6187            .finish()
6188    }
6189}
6190
6191#[repr(C)]
6192#[allow(dead_code)]
6193pub struct _GtkListStorePrivate {
6194    _data: [u8; 0],
6195    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6196}
6197
6198pub type GtkListStorePrivate = _GtkListStorePrivate;
6199
6200#[derive(Copy, Clone)]
6201#[repr(C)]
6202pub struct GtkLockButtonAccessibleClass {
6203    pub parent_class: GtkButtonAccessibleClass,
6204}
6205
6206impl ::std::fmt::Debug for GtkLockButtonAccessibleClass {
6207    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6208        f.debug_struct(&format!("GtkLockButtonAccessibleClass @ {self:p}"))
6209            .field("parent_class", &self.parent_class)
6210            .finish()
6211    }
6212}
6213
6214#[repr(C)]
6215#[allow(dead_code)]
6216pub struct _GtkLockButtonAccessiblePrivate {
6217    _data: [u8; 0],
6218    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6219}
6220
6221pub type GtkLockButtonAccessiblePrivate = _GtkLockButtonAccessiblePrivate;
6222
6223#[derive(Copy, Clone)]
6224#[repr(C)]
6225pub struct GtkLockButtonClass {
6226    pub parent_class: GtkButtonClass,
6227    pub reserved0: Option<unsafe extern "C" fn()>,
6228    pub reserved1: Option<unsafe extern "C" fn()>,
6229    pub reserved2: Option<unsafe extern "C" fn()>,
6230    pub reserved3: Option<unsafe extern "C" fn()>,
6231    pub reserved4: Option<unsafe extern "C" fn()>,
6232    pub reserved5: Option<unsafe extern "C" fn()>,
6233    pub reserved6: Option<unsafe extern "C" fn()>,
6234    pub reserved7: Option<unsafe extern "C" fn()>,
6235}
6236
6237impl ::std::fmt::Debug for GtkLockButtonClass {
6238    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6239        f.debug_struct(&format!("GtkLockButtonClass @ {self:p}"))
6240            .field("parent_class", &self.parent_class)
6241            .field("reserved0", &self.reserved0)
6242            .field("reserved1", &self.reserved1)
6243            .field("reserved2", &self.reserved2)
6244            .field("reserved3", &self.reserved3)
6245            .field("reserved4", &self.reserved4)
6246            .field("reserved5", &self.reserved5)
6247            .field("reserved6", &self.reserved6)
6248            .field("reserved7", &self.reserved7)
6249            .finish()
6250    }
6251}
6252
6253#[repr(C)]
6254#[allow(dead_code)]
6255pub struct _GtkLockButtonPrivate {
6256    _data: [u8; 0],
6257    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6258}
6259
6260pub type GtkLockButtonPrivate = _GtkLockButtonPrivate;
6261
6262#[derive(Copy, Clone)]
6263#[repr(C)]
6264pub struct GtkMenuAccessibleClass {
6265    pub parent_class: GtkMenuShellAccessibleClass,
6266}
6267
6268impl ::std::fmt::Debug for GtkMenuAccessibleClass {
6269    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6270        f.debug_struct(&format!("GtkMenuAccessibleClass @ {self:p}"))
6271            .field("parent_class", &self.parent_class)
6272            .finish()
6273    }
6274}
6275
6276#[repr(C)]
6277#[allow(dead_code)]
6278pub struct _GtkMenuAccessiblePrivate {
6279    _data: [u8; 0],
6280    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6281}
6282
6283pub type GtkMenuAccessiblePrivate = _GtkMenuAccessiblePrivate;
6284
6285#[derive(Copy, Clone)]
6286#[repr(C)]
6287pub struct GtkMenuBarClass {
6288    pub parent_class: GtkMenuShellClass,
6289    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6290    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6291    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6292    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6293}
6294
6295impl ::std::fmt::Debug for GtkMenuBarClass {
6296    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6297        f.debug_struct(&format!("GtkMenuBarClass @ {self:p}"))
6298            .field("parent_class", &self.parent_class)
6299            .field("_gtk_reserved1", &self._gtk_reserved1)
6300            .field("_gtk_reserved2", &self._gtk_reserved2)
6301            .field("_gtk_reserved3", &self._gtk_reserved3)
6302            .field("_gtk_reserved4", &self._gtk_reserved4)
6303            .finish()
6304    }
6305}
6306
6307#[repr(C)]
6308#[allow(dead_code)]
6309pub struct _GtkMenuBarPrivate {
6310    _data: [u8; 0],
6311    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6312}
6313
6314pub type GtkMenuBarPrivate = _GtkMenuBarPrivate;
6315
6316#[derive(Copy, Clone)]
6317#[repr(C)]
6318pub struct GtkMenuButtonAccessibleClass {
6319    pub parent_class: GtkToggleButtonAccessibleClass,
6320}
6321
6322impl ::std::fmt::Debug for GtkMenuButtonAccessibleClass {
6323    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6324        f.debug_struct(&format!("GtkMenuButtonAccessibleClass @ {self:p}"))
6325            .field("parent_class", &self.parent_class)
6326            .finish()
6327    }
6328}
6329
6330#[repr(C)]
6331#[allow(dead_code)]
6332pub struct _GtkMenuButtonAccessiblePrivate {
6333    _data: [u8; 0],
6334    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6335}
6336
6337pub type GtkMenuButtonAccessiblePrivate = _GtkMenuButtonAccessiblePrivate;
6338
6339#[derive(Copy, Clone)]
6340#[repr(C)]
6341pub struct GtkMenuButtonClass {
6342    pub parent_class: GtkToggleButtonClass,
6343    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6344    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6345    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6346    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6347}
6348
6349impl ::std::fmt::Debug for GtkMenuButtonClass {
6350    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6351        f.debug_struct(&format!("GtkMenuButtonClass @ {self:p}"))
6352            .field("parent_class", &self.parent_class)
6353            .field("_gtk_reserved1", &self._gtk_reserved1)
6354            .field("_gtk_reserved2", &self._gtk_reserved2)
6355            .field("_gtk_reserved3", &self._gtk_reserved3)
6356            .field("_gtk_reserved4", &self._gtk_reserved4)
6357            .finish()
6358    }
6359}
6360
6361#[repr(C)]
6362#[allow(dead_code)]
6363pub struct _GtkMenuButtonPrivate {
6364    _data: [u8; 0],
6365    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6366}
6367
6368pub type GtkMenuButtonPrivate = _GtkMenuButtonPrivate;
6369
6370#[derive(Copy, Clone)]
6371#[repr(C)]
6372pub struct GtkMenuClass {
6373    pub parent_class: GtkMenuShellClass,
6374    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6375    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6376    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6377    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6378}
6379
6380impl ::std::fmt::Debug for GtkMenuClass {
6381    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6382        f.debug_struct(&format!("GtkMenuClass @ {self:p}"))
6383            .field("parent_class", &self.parent_class)
6384            .field("_gtk_reserved1", &self._gtk_reserved1)
6385            .field("_gtk_reserved2", &self._gtk_reserved2)
6386            .field("_gtk_reserved3", &self._gtk_reserved3)
6387            .field("_gtk_reserved4", &self._gtk_reserved4)
6388            .finish()
6389    }
6390}
6391
6392#[derive(Copy, Clone)]
6393#[repr(C)]
6394pub struct GtkMenuItemAccessibleClass {
6395    pub parent_class: GtkContainerAccessibleClass,
6396}
6397
6398impl ::std::fmt::Debug for GtkMenuItemAccessibleClass {
6399    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6400        f.debug_struct(&format!("GtkMenuItemAccessibleClass @ {self:p}"))
6401            .field("parent_class", &self.parent_class)
6402            .finish()
6403    }
6404}
6405
6406#[repr(C)]
6407#[allow(dead_code)]
6408pub struct _GtkMenuItemAccessiblePrivate {
6409    _data: [u8; 0],
6410    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6411}
6412
6413pub type GtkMenuItemAccessiblePrivate = _GtkMenuItemAccessiblePrivate;
6414
6415#[derive(Copy, Clone)]
6416#[repr(C)]
6417pub struct GtkMenuItemClass {
6418    pub parent_class: GtkBinClass,
6419    pub hide_on_activate: c_uint,
6420    pub activate: Option<unsafe extern "C" fn(*mut GtkMenuItem)>,
6421    pub activate_item: Option<unsafe extern "C" fn(*mut GtkMenuItem)>,
6422    pub toggle_size_request: Option<unsafe extern "C" fn(*mut GtkMenuItem, c_int)>,
6423    pub toggle_size_allocate: Option<unsafe extern "C" fn(*mut GtkMenuItem, c_int)>,
6424    pub set_label: Option<unsafe extern "C" fn(*mut GtkMenuItem, *const c_char)>,
6425    pub get_label: Option<unsafe extern "C" fn(*mut GtkMenuItem) -> *const c_char>,
6426    pub select: Option<unsafe extern "C" fn(*mut GtkMenuItem)>,
6427    pub deselect: Option<unsafe extern "C" fn(*mut GtkMenuItem)>,
6428    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6429    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6430    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6431    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6432}
6433
6434impl ::std::fmt::Debug for GtkMenuItemClass {
6435    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6436        f.debug_struct(&format!("GtkMenuItemClass @ {self:p}"))
6437            .field("parent_class", &self.parent_class)
6438            .field("hide_on_activate", &self.hide_on_activate)
6439            .field("activate", &self.activate)
6440            .field("activate_item", &self.activate_item)
6441            .field("toggle_size_request", &self.toggle_size_request)
6442            .field("toggle_size_allocate", &self.toggle_size_allocate)
6443            .field("set_label", &self.set_label)
6444            .field("get_label", &self.get_label)
6445            .field("select", &self.select)
6446            .field("deselect", &self.deselect)
6447            .field("_gtk_reserved1", &self._gtk_reserved1)
6448            .field("_gtk_reserved2", &self._gtk_reserved2)
6449            .field("_gtk_reserved3", &self._gtk_reserved3)
6450            .field("_gtk_reserved4", &self._gtk_reserved4)
6451            .finish()
6452    }
6453}
6454
6455#[repr(C)]
6456#[allow(dead_code)]
6457pub struct _GtkMenuItemPrivate {
6458    _data: [u8; 0],
6459    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6460}
6461
6462pub type GtkMenuItemPrivate = _GtkMenuItemPrivate;
6463
6464#[repr(C)]
6465#[allow(dead_code)]
6466pub struct _GtkMenuPrivate {
6467    _data: [u8; 0],
6468    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6469}
6470
6471pub type GtkMenuPrivate = _GtkMenuPrivate;
6472
6473#[derive(Copy, Clone)]
6474#[repr(C)]
6475pub struct GtkMenuShellAccessibleClass {
6476    pub parent_class: GtkContainerAccessibleClass,
6477}
6478
6479impl ::std::fmt::Debug for GtkMenuShellAccessibleClass {
6480    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6481        f.debug_struct(&format!("GtkMenuShellAccessibleClass @ {self:p}"))
6482            .field("parent_class", &self.parent_class)
6483            .finish()
6484    }
6485}
6486
6487#[repr(C)]
6488#[allow(dead_code)]
6489pub struct _GtkMenuShellAccessiblePrivate {
6490    _data: [u8; 0],
6491    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6492}
6493
6494pub type GtkMenuShellAccessiblePrivate = _GtkMenuShellAccessiblePrivate;
6495
6496#[derive(Copy, Clone)]
6497#[repr(C)]
6498pub struct GtkMenuShellClass {
6499    pub parent_class: GtkContainerClass,
6500    pub submenu_placement: c_uint,
6501    pub deactivate: Option<unsafe extern "C" fn(*mut GtkMenuShell)>,
6502    pub selection_done: Option<unsafe extern "C" fn(*mut GtkMenuShell)>,
6503    pub move_current: Option<unsafe extern "C" fn(*mut GtkMenuShell, GtkMenuDirectionType)>,
6504    pub activate_current: Option<unsafe extern "C" fn(*mut GtkMenuShell, gboolean)>,
6505    pub cancel: Option<unsafe extern "C" fn(*mut GtkMenuShell)>,
6506    pub select_item: Option<unsafe extern "C" fn(*mut GtkMenuShell, *mut GtkWidget)>,
6507    pub insert: Option<unsafe extern "C" fn(*mut GtkMenuShell, *mut GtkWidget, c_int)>,
6508    pub get_popup_delay: Option<unsafe extern "C" fn(*mut GtkMenuShell) -> c_int>,
6509    pub move_selected: Option<unsafe extern "C" fn(*mut GtkMenuShell, c_int) -> gboolean>,
6510    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6511    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6512    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6513    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6514}
6515
6516impl ::std::fmt::Debug for GtkMenuShellClass {
6517    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6518        f.debug_struct(&format!("GtkMenuShellClass @ {self:p}"))
6519            .field("parent_class", &self.parent_class)
6520            .field("submenu_placement", &self.submenu_placement)
6521            .field("deactivate", &self.deactivate)
6522            .field("selection_done", &self.selection_done)
6523            .field("move_current", &self.move_current)
6524            .field("activate_current", &self.activate_current)
6525            .field("cancel", &self.cancel)
6526            .field("select_item", &self.select_item)
6527            .field("insert", &self.insert)
6528            .field("get_popup_delay", &self.get_popup_delay)
6529            .field("move_selected", &self.move_selected)
6530            .field("_gtk_reserved1", &self._gtk_reserved1)
6531            .field("_gtk_reserved2", &self._gtk_reserved2)
6532            .field("_gtk_reserved3", &self._gtk_reserved3)
6533            .field("_gtk_reserved4", &self._gtk_reserved4)
6534            .finish()
6535    }
6536}
6537
6538#[repr(C)]
6539#[allow(dead_code)]
6540pub struct _GtkMenuShellPrivate {
6541    _data: [u8; 0],
6542    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6543}
6544
6545pub type GtkMenuShellPrivate = _GtkMenuShellPrivate;
6546
6547#[derive(Copy, Clone)]
6548#[repr(C)]
6549pub struct GtkMenuToolButtonClass {
6550    pub parent_class: GtkToolButtonClass,
6551    pub show_menu: Option<unsafe extern "C" fn(*mut GtkMenuToolButton)>,
6552    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6553    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6554    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6555    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6556}
6557
6558impl ::std::fmt::Debug for GtkMenuToolButtonClass {
6559    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6560        f.debug_struct(&format!("GtkMenuToolButtonClass @ {self:p}"))
6561            .field("parent_class", &self.parent_class)
6562            .field("show_menu", &self.show_menu)
6563            .field("_gtk_reserved1", &self._gtk_reserved1)
6564            .field("_gtk_reserved2", &self._gtk_reserved2)
6565            .field("_gtk_reserved3", &self._gtk_reserved3)
6566            .field("_gtk_reserved4", &self._gtk_reserved4)
6567            .finish()
6568    }
6569}
6570
6571#[repr(C)]
6572#[allow(dead_code)]
6573pub struct _GtkMenuToolButtonPrivate {
6574    _data: [u8; 0],
6575    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6576}
6577
6578pub type GtkMenuToolButtonPrivate = _GtkMenuToolButtonPrivate;
6579
6580#[derive(Copy, Clone)]
6581#[repr(C)]
6582pub struct GtkMessageDialogClass {
6583    pub parent_class: GtkDialogClass,
6584    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6585    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6586    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6587    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6588}
6589
6590impl ::std::fmt::Debug for GtkMessageDialogClass {
6591    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6592        f.debug_struct(&format!("GtkMessageDialogClass @ {self:p}"))
6593            .field("parent_class", &self.parent_class)
6594            .field("_gtk_reserved1", &self._gtk_reserved1)
6595            .field("_gtk_reserved2", &self._gtk_reserved2)
6596            .field("_gtk_reserved3", &self._gtk_reserved3)
6597            .field("_gtk_reserved4", &self._gtk_reserved4)
6598            .finish()
6599    }
6600}
6601
6602#[repr(C)]
6603#[allow(dead_code)]
6604pub struct _GtkMessageDialogPrivate {
6605    _data: [u8; 0],
6606    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6607}
6608
6609pub type GtkMessageDialogPrivate = _GtkMessageDialogPrivate;
6610
6611#[derive(Copy, Clone)]
6612#[repr(C)]
6613pub struct GtkMiscClass {
6614    pub parent_class: GtkWidgetClass,
6615    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6616    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6617    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6618    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6619}
6620
6621impl ::std::fmt::Debug for GtkMiscClass {
6622    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6623        f.debug_struct(&format!("GtkMiscClass @ {self:p}"))
6624            .field("parent_class", &self.parent_class)
6625            .field("_gtk_reserved1", &self._gtk_reserved1)
6626            .field("_gtk_reserved2", &self._gtk_reserved2)
6627            .field("_gtk_reserved3", &self._gtk_reserved3)
6628            .field("_gtk_reserved4", &self._gtk_reserved4)
6629            .finish()
6630    }
6631}
6632
6633#[repr(C)]
6634#[allow(dead_code)]
6635pub struct _GtkMiscPrivate {
6636    _data: [u8; 0],
6637    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6638}
6639
6640pub type GtkMiscPrivate = _GtkMiscPrivate;
6641
6642#[derive(Copy, Clone)]
6643#[repr(C)]
6644pub struct GtkMountOperationClass {
6645    pub parent_class: gio::GMountOperationClass,
6646    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6647    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6648    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6649    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6650}
6651
6652impl ::std::fmt::Debug for GtkMountOperationClass {
6653    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6654        f.debug_struct(&format!("GtkMountOperationClass @ {self:p}"))
6655            .field("parent_class", &self.parent_class)
6656            .field("_gtk_reserved1", &self._gtk_reserved1)
6657            .field("_gtk_reserved2", &self._gtk_reserved2)
6658            .field("_gtk_reserved3", &self._gtk_reserved3)
6659            .field("_gtk_reserved4", &self._gtk_reserved4)
6660            .finish()
6661    }
6662}
6663
6664#[repr(C)]
6665#[allow(dead_code)]
6666pub struct _GtkMountOperationPrivate {
6667    _data: [u8; 0],
6668    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6669}
6670
6671pub type GtkMountOperationPrivate = _GtkMountOperationPrivate;
6672
6673#[derive(Copy, Clone)]
6674#[repr(C)]
6675pub struct GtkNativeDialogClass {
6676    pub parent_class: gobject::GObjectClass,
6677    pub response: Option<unsafe extern "C" fn(*mut GtkNativeDialog, GtkResponseType)>,
6678    pub show: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
6679    pub hide: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
6680    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6681    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6682    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6683    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6684}
6685
6686impl ::std::fmt::Debug for GtkNativeDialogClass {
6687    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6688        f.debug_struct(&format!("GtkNativeDialogClass @ {self:p}"))
6689            .field("parent_class", &self.parent_class)
6690            .field("response", &self.response)
6691            .field("show", &self.show)
6692            .field("hide", &self.hide)
6693            .field("_gtk_reserved1", &self._gtk_reserved1)
6694            .field("_gtk_reserved2", &self._gtk_reserved2)
6695            .field("_gtk_reserved3", &self._gtk_reserved3)
6696            .field("_gtk_reserved4", &self._gtk_reserved4)
6697            .finish()
6698    }
6699}
6700
6701#[derive(Copy, Clone)]
6702#[repr(C)]
6703pub struct GtkNotebookAccessibleClass {
6704    pub parent_class: GtkContainerAccessibleClass,
6705}
6706
6707impl ::std::fmt::Debug for GtkNotebookAccessibleClass {
6708    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6709        f.debug_struct(&format!("GtkNotebookAccessibleClass @ {self:p}"))
6710            .field("parent_class", &self.parent_class)
6711            .finish()
6712    }
6713}
6714
6715#[repr(C)]
6716#[allow(dead_code)]
6717pub struct _GtkNotebookAccessiblePrivate {
6718    _data: [u8; 0],
6719    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6720}
6721
6722pub type GtkNotebookAccessiblePrivate = _GtkNotebookAccessiblePrivate;
6723
6724#[derive(Copy, Clone)]
6725#[repr(C)]
6726pub struct GtkNotebookClass {
6727    pub parent_class: GtkContainerClass,
6728    pub switch_page: Option<unsafe extern "C" fn(*mut GtkNotebook, *mut GtkWidget, c_uint)>,
6729    pub select_page: Option<unsafe extern "C" fn(*mut GtkNotebook, gboolean) -> gboolean>,
6730    pub focus_tab: Option<unsafe extern "C" fn(*mut GtkNotebook, GtkNotebookTab) -> gboolean>,
6731    pub change_current_page: Option<unsafe extern "C" fn(*mut GtkNotebook, c_int) -> gboolean>,
6732    pub move_focus_out: Option<unsafe extern "C" fn(*mut GtkNotebook, GtkDirectionType)>,
6733    pub reorder_tab:
6734        Option<unsafe extern "C" fn(*mut GtkNotebook, GtkDirectionType, gboolean) -> gboolean>,
6735    pub insert_page: Option<
6736        unsafe extern "C" fn(
6737            *mut GtkNotebook,
6738            *mut GtkWidget,
6739            *mut GtkWidget,
6740            *mut GtkWidget,
6741            c_int,
6742        ) -> c_int,
6743    >,
6744    pub create_window: Option<
6745        unsafe extern "C" fn(*mut GtkNotebook, *mut GtkWidget, c_int, c_int) -> *mut GtkNotebook,
6746    >,
6747    pub page_reordered: Option<unsafe extern "C" fn(*mut GtkNotebook, *mut GtkWidget, c_uint)>,
6748    pub page_removed: Option<unsafe extern "C" fn(*mut GtkNotebook, *mut GtkWidget, c_uint)>,
6749    pub page_added: Option<unsafe extern "C" fn(*mut GtkNotebook, *mut GtkWidget, c_uint)>,
6750    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6751    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6752    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6753    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6754    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
6755    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
6756    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
6757    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
6758}
6759
6760impl ::std::fmt::Debug for GtkNotebookClass {
6761    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6762        f.debug_struct(&format!("GtkNotebookClass @ {self:p}"))
6763            .field("parent_class", &self.parent_class)
6764            .field("switch_page", &self.switch_page)
6765            .field("select_page", &self.select_page)
6766            .field("focus_tab", &self.focus_tab)
6767            .field("change_current_page", &self.change_current_page)
6768            .field("move_focus_out", &self.move_focus_out)
6769            .field("reorder_tab", &self.reorder_tab)
6770            .field("insert_page", &self.insert_page)
6771            .field("create_window", &self.create_window)
6772            .field("page_reordered", &self.page_reordered)
6773            .field("page_removed", &self.page_removed)
6774            .field("page_added", &self.page_added)
6775            .field("_gtk_reserved1", &self._gtk_reserved1)
6776            .field("_gtk_reserved2", &self._gtk_reserved2)
6777            .field("_gtk_reserved3", &self._gtk_reserved3)
6778            .field("_gtk_reserved4", &self._gtk_reserved4)
6779            .field("_gtk_reserved5", &self._gtk_reserved5)
6780            .field("_gtk_reserved6", &self._gtk_reserved6)
6781            .field("_gtk_reserved7", &self._gtk_reserved7)
6782            .field("_gtk_reserved8", &self._gtk_reserved8)
6783            .finish()
6784    }
6785}
6786
6787#[derive(Copy, Clone)]
6788#[repr(C)]
6789pub struct GtkNotebookPageAccessibleClass {
6790    pub parent_class: atk::AtkObjectClass,
6791}
6792
6793impl ::std::fmt::Debug for GtkNotebookPageAccessibleClass {
6794    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6795        f.debug_struct(&format!("GtkNotebookPageAccessibleClass @ {self:p}"))
6796            .field("parent_class", &self.parent_class)
6797            .finish()
6798    }
6799}
6800
6801#[repr(C)]
6802#[allow(dead_code)]
6803pub struct _GtkNotebookPageAccessiblePrivate {
6804    _data: [u8; 0],
6805    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6806}
6807
6808pub type GtkNotebookPageAccessiblePrivate = _GtkNotebookPageAccessiblePrivate;
6809
6810#[repr(C)]
6811#[allow(dead_code)]
6812pub struct _GtkNotebookPrivate {
6813    _data: [u8; 0],
6814    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6815}
6816
6817pub type GtkNotebookPrivate = _GtkNotebookPrivate;
6818
6819#[derive(Copy, Clone)]
6820#[repr(C)]
6821pub struct GtkNumerableIconClass {
6822    pub parent_class: gio::GEmblemedIconClass,
6823    pub padding: [gpointer; 16],
6824}
6825
6826impl ::std::fmt::Debug for GtkNumerableIconClass {
6827    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6828        f.debug_struct(&format!("GtkNumerableIconClass @ {self:p}"))
6829            .field("parent_class", &self.parent_class)
6830            .field("padding", &self.padding)
6831            .finish()
6832    }
6833}
6834
6835#[repr(C)]
6836#[allow(dead_code)]
6837pub struct _GtkNumerableIconPrivate {
6838    _data: [u8; 0],
6839    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6840}
6841
6842pub type GtkNumerableIconPrivate = _GtkNumerableIconPrivate;
6843
6844#[derive(Copy, Clone)]
6845#[repr(C)]
6846pub struct GtkOffscreenWindowClass {
6847    pub parent_class: GtkWindowClass,
6848    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6849    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6850    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6851    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6852}
6853
6854impl ::std::fmt::Debug for GtkOffscreenWindowClass {
6855    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6856        f.debug_struct(&format!("GtkOffscreenWindowClass @ {self:p}"))
6857            .field("parent_class", &self.parent_class)
6858            .field("_gtk_reserved1", &self._gtk_reserved1)
6859            .field("_gtk_reserved2", &self._gtk_reserved2)
6860            .field("_gtk_reserved3", &self._gtk_reserved3)
6861            .field("_gtk_reserved4", &self._gtk_reserved4)
6862            .finish()
6863    }
6864}
6865
6866#[derive(Copy, Clone)]
6867#[repr(C)]
6868pub struct GtkOrientableIface {
6869    pub base_iface: gobject::GTypeInterface,
6870}
6871
6872impl ::std::fmt::Debug for GtkOrientableIface {
6873    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6874        f.debug_struct(&format!("GtkOrientableIface @ {self:p}"))
6875            .field("base_iface", &self.base_iface)
6876            .finish()
6877    }
6878}
6879
6880#[derive(Copy, Clone)]
6881#[repr(C)]
6882pub struct GtkOverlayClass {
6883    pub parent_class: GtkBinClass,
6884    pub get_child_position: Option<
6885        unsafe extern "C" fn(*mut GtkOverlay, *mut GtkWidget, *mut GtkAllocation) -> gboolean,
6886    >,
6887    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6888    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6889    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6890    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6891    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
6892    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
6893    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
6894    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
6895}
6896
6897impl ::std::fmt::Debug for GtkOverlayClass {
6898    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6899        f.debug_struct(&format!("GtkOverlayClass @ {self:p}"))
6900            .field("parent_class", &self.parent_class)
6901            .field("get_child_position", &self.get_child_position)
6902            .field("_gtk_reserved1", &self._gtk_reserved1)
6903            .field("_gtk_reserved2", &self._gtk_reserved2)
6904            .field("_gtk_reserved3", &self._gtk_reserved3)
6905            .field("_gtk_reserved4", &self._gtk_reserved4)
6906            .field("_gtk_reserved5", &self._gtk_reserved5)
6907            .field("_gtk_reserved6", &self._gtk_reserved6)
6908            .field("_gtk_reserved7", &self._gtk_reserved7)
6909            .field("_gtk_reserved8", &self._gtk_reserved8)
6910            .finish()
6911    }
6912}
6913
6914#[repr(C)]
6915#[allow(dead_code)]
6916pub struct _GtkOverlayPrivate {
6917    _data: [u8; 0],
6918    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6919}
6920
6921pub type GtkOverlayPrivate = _GtkOverlayPrivate;
6922
6923#[derive(Copy, Clone)]
6924#[repr(C)]
6925pub struct GtkPadActionEntry {
6926    pub type_: GtkPadActionType,
6927    pub index: c_int,
6928    pub mode: c_int,
6929    pub label: *mut c_char,
6930    pub action_name: *mut c_char,
6931}
6932
6933impl ::std::fmt::Debug for GtkPadActionEntry {
6934    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6935        f.debug_struct(&format!("GtkPadActionEntry @ {self:p}"))
6936            .field("type_", &self.type_)
6937            .field("index", &self.index)
6938            .field("mode", &self.mode)
6939            .field("label", &self.label)
6940            .field("action_name", &self.action_name)
6941            .finish()
6942    }
6943}
6944
6945#[repr(C)]
6946#[allow(dead_code)]
6947pub struct _GtkPadControllerClass {
6948    _data: [u8; 0],
6949    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6950}
6951
6952pub type GtkPadControllerClass = _GtkPadControllerClass;
6953
6954#[derive(Copy, Clone)]
6955#[repr(C)]
6956pub struct GtkPageRange {
6957    pub start: c_int,
6958    pub end: c_int,
6959}
6960
6961impl ::std::fmt::Debug for GtkPageRange {
6962    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6963        f.debug_struct(&format!("GtkPageRange @ {self:p}"))
6964            .field("start", &self.start)
6965            .field("end", &self.end)
6966            .finish()
6967    }
6968}
6969
6970#[derive(Copy, Clone)]
6971#[repr(C)]
6972pub struct GtkPanedAccessibleClass {
6973    pub parent_class: GtkContainerAccessibleClass,
6974}
6975
6976impl ::std::fmt::Debug for GtkPanedAccessibleClass {
6977    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6978        f.debug_struct(&format!("GtkPanedAccessibleClass @ {self:p}"))
6979            .field("parent_class", &self.parent_class)
6980            .finish()
6981    }
6982}
6983
6984#[repr(C)]
6985#[allow(dead_code)]
6986pub struct _GtkPanedAccessiblePrivate {
6987    _data: [u8; 0],
6988    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6989}
6990
6991pub type GtkPanedAccessiblePrivate = _GtkPanedAccessiblePrivate;
6992
6993#[derive(Copy, Clone)]
6994#[repr(C)]
6995pub struct GtkPanedClass {
6996    pub parent_class: GtkContainerClass,
6997    pub cycle_child_focus: Option<unsafe extern "C" fn(*mut GtkPaned, gboolean) -> gboolean>,
6998    pub toggle_handle_focus: Option<unsafe extern "C" fn(*mut GtkPaned) -> gboolean>,
6999    pub move_handle: Option<unsafe extern "C" fn(*mut GtkPaned, GtkScrollType) -> gboolean>,
7000    pub cycle_handle_focus: Option<unsafe extern "C" fn(*mut GtkPaned, gboolean) -> gboolean>,
7001    pub accept_position: Option<unsafe extern "C" fn(*mut GtkPaned) -> gboolean>,
7002    pub cancel_position: Option<unsafe extern "C" fn(*mut GtkPaned) -> gboolean>,
7003    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7004    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7005    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7006    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7007}
7008
7009impl ::std::fmt::Debug for GtkPanedClass {
7010    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7011        f.debug_struct(&format!("GtkPanedClass @ {self:p}"))
7012            .field("parent_class", &self.parent_class)
7013            .field("cycle_child_focus", &self.cycle_child_focus)
7014            .field("toggle_handle_focus", &self.toggle_handle_focus)
7015            .field("move_handle", &self.move_handle)
7016            .field("cycle_handle_focus", &self.cycle_handle_focus)
7017            .field("accept_position", &self.accept_position)
7018            .field("cancel_position", &self.cancel_position)
7019            .field("_gtk_reserved1", &self._gtk_reserved1)
7020            .field("_gtk_reserved2", &self._gtk_reserved2)
7021            .field("_gtk_reserved3", &self._gtk_reserved3)
7022            .field("_gtk_reserved4", &self._gtk_reserved4)
7023            .finish()
7024    }
7025}
7026
7027#[repr(C)]
7028#[allow(dead_code)]
7029pub struct _GtkPanedPrivate {
7030    _data: [u8; 0],
7031    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7032}
7033
7034pub type GtkPanedPrivate = _GtkPanedPrivate;
7035
7036#[repr(C)]
7037#[allow(dead_code)]
7038pub struct GtkPaperSize {
7039    _data: [u8; 0],
7040    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7041}
7042
7043impl ::std::fmt::Debug for GtkPaperSize {
7044    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7045        f.debug_struct(&format!("GtkPaperSize @ {self:p}")).finish()
7046    }
7047}
7048
7049#[repr(C)]
7050#[allow(dead_code)]
7051pub struct _GtkPlacesSidebarClass {
7052    _data: [u8; 0],
7053    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7054}
7055
7056pub type GtkPlacesSidebarClass = _GtkPlacesSidebarClass;
7057
7058#[derive(Copy, Clone)]
7059#[repr(C)]
7060pub struct GtkPlugAccessibleClass {
7061    pub parent_class: GtkWindowAccessibleClass,
7062}
7063
7064impl ::std::fmt::Debug for GtkPlugAccessibleClass {
7065    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7066        f.debug_struct(&format!("GtkPlugAccessibleClass @ {self:p}"))
7067            .field("parent_class", &self.parent_class)
7068            .finish()
7069    }
7070}
7071
7072#[repr(C)]
7073#[allow(dead_code)]
7074pub struct _GtkPlugAccessiblePrivate {
7075    _data: [u8; 0],
7076    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7077}
7078
7079pub type GtkPlugAccessiblePrivate = _GtkPlugAccessiblePrivate;
7080
7081#[derive(Copy, Clone)]
7082#[repr(C)]
7083pub struct GtkPlugClass {
7084    pub parent_class: GtkWindowClass,
7085    pub embedded: Option<unsafe extern "C" fn(*mut GtkPlug)>,
7086    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7087    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7088    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7089    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7090}
7091
7092impl ::std::fmt::Debug for GtkPlugClass {
7093    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7094        f.debug_struct(&format!("GtkPlugClass @ {self:p}"))
7095            .field("parent_class", &self.parent_class)
7096            .field("embedded", &self.embedded)
7097            .field("_gtk_reserved1", &self._gtk_reserved1)
7098            .field("_gtk_reserved2", &self._gtk_reserved2)
7099            .field("_gtk_reserved3", &self._gtk_reserved3)
7100            .field("_gtk_reserved4", &self._gtk_reserved4)
7101            .finish()
7102    }
7103}
7104
7105#[repr(C)]
7106#[allow(dead_code)]
7107pub struct _GtkPlugPrivate {
7108    _data: [u8; 0],
7109    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7110}
7111
7112pub type GtkPlugPrivate = _GtkPlugPrivate;
7113
7114#[derive(Copy, Clone)]
7115#[repr(C)]
7116pub struct GtkPopoverAccessibleClass {
7117    pub parent_class: GtkContainerAccessibleClass,
7118}
7119
7120impl ::std::fmt::Debug for GtkPopoverAccessibleClass {
7121    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7122        f.debug_struct(&format!("GtkPopoverAccessibleClass @ {self:p}"))
7123            .field("parent_class", &self.parent_class)
7124            .finish()
7125    }
7126}
7127
7128#[derive(Copy, Clone)]
7129#[repr(C)]
7130pub struct GtkPopoverClass {
7131    pub parent_class: GtkBinClass,
7132    pub closed: Option<unsafe extern "C" fn(*mut GtkPopover)>,
7133    pub reserved: [gpointer; 10],
7134}
7135
7136impl ::std::fmt::Debug for GtkPopoverClass {
7137    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7138        f.debug_struct(&format!("GtkPopoverClass @ {self:p}"))
7139            .field("parent_class", &self.parent_class)
7140            .field("closed", &self.closed)
7141            .finish()
7142    }
7143}
7144
7145#[derive(Copy, Clone)]
7146#[repr(C)]
7147pub struct GtkPopoverMenuClass {
7148    pub parent_class: GtkPopoverClass,
7149    pub reserved: [gpointer; 10],
7150}
7151
7152impl ::std::fmt::Debug for GtkPopoverMenuClass {
7153    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7154        f.debug_struct(&format!("GtkPopoverMenuClass @ {self:p}"))
7155            .field("parent_class", &self.parent_class)
7156            .finish()
7157    }
7158}
7159
7160#[repr(C)]
7161#[allow(dead_code)]
7162pub struct _GtkPopoverPrivate {
7163    _data: [u8; 0],
7164    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7165}
7166
7167pub type GtkPopoverPrivate = _GtkPopoverPrivate;
7168
7169#[derive(Copy, Clone)]
7170#[repr(C)]
7171pub struct GtkPrintOperationClass {
7172    pub parent_class: gobject::GObjectClass,
7173    pub done: Option<unsafe extern "C" fn(*mut GtkPrintOperation, GtkPrintOperationResult)>,
7174    pub begin_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
7175    pub paginate:
7176        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext) -> gboolean>,
7177    pub request_page_setup: Option<
7178        unsafe extern "C" fn(
7179            *mut GtkPrintOperation,
7180            *mut GtkPrintContext,
7181            c_int,
7182            *mut GtkPageSetup,
7183        ),
7184    >,
7185    pub draw_page:
7186        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext, c_int)>,
7187    pub end_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
7188    pub status_changed: Option<unsafe extern "C" fn(*mut GtkPrintOperation)>,
7189    pub create_custom_widget:
7190        Option<unsafe extern "C" fn(*mut GtkPrintOperation) -> *mut GtkWidget>,
7191    pub custom_widget_apply: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkWidget)>,
7192    pub preview: Option<
7193        unsafe extern "C" fn(
7194            *mut GtkPrintOperation,
7195            *mut GtkPrintOperationPreview,
7196            *mut GtkPrintContext,
7197            *mut GtkWindow,
7198        ) -> gboolean,
7199    >,
7200    pub update_custom_widget: Option<
7201        unsafe extern "C" fn(
7202            *mut GtkPrintOperation,
7203            *mut GtkWidget,
7204            *mut GtkPageSetup,
7205            *mut GtkPrintSettings,
7206        ),
7207    >,
7208    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7209    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7210    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7211    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7212    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
7213    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
7214    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
7215    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
7216}
7217
7218impl ::std::fmt::Debug for GtkPrintOperationClass {
7219    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7220        f.debug_struct(&format!("GtkPrintOperationClass @ {self:p}"))
7221            .field("parent_class", &self.parent_class)
7222            .field("done", &self.done)
7223            .field("begin_print", &self.begin_print)
7224            .field("paginate", &self.paginate)
7225            .field("request_page_setup", &self.request_page_setup)
7226            .field("draw_page", &self.draw_page)
7227            .field("end_print", &self.end_print)
7228            .field("status_changed", &self.status_changed)
7229            .field("create_custom_widget", &self.create_custom_widget)
7230            .field("custom_widget_apply", &self.custom_widget_apply)
7231            .field("preview", &self.preview)
7232            .field("update_custom_widget", &self.update_custom_widget)
7233            .field("_gtk_reserved1", &self._gtk_reserved1)
7234            .field("_gtk_reserved2", &self._gtk_reserved2)
7235            .field("_gtk_reserved3", &self._gtk_reserved3)
7236            .field("_gtk_reserved4", &self._gtk_reserved4)
7237            .field("_gtk_reserved5", &self._gtk_reserved5)
7238            .field("_gtk_reserved6", &self._gtk_reserved6)
7239            .field("_gtk_reserved7", &self._gtk_reserved7)
7240            .field("_gtk_reserved8", &self._gtk_reserved8)
7241            .finish()
7242    }
7243}
7244
7245#[derive(Copy, Clone)]
7246#[repr(C)]
7247pub struct GtkPrintOperationPreviewIface {
7248    pub g_iface: gobject::GTypeInterface,
7249    pub ready: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, *mut GtkPrintContext)>,
7250    pub got_page_size: Option<
7251        unsafe extern "C" fn(
7252            *mut GtkPrintOperationPreview,
7253            *mut GtkPrintContext,
7254            *mut GtkPageSetup,
7255        ),
7256    >,
7257    pub render_page: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int)>,
7258    pub is_selected: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int) -> gboolean>,
7259    pub end_preview: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview)>,
7260    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7261    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7262    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7263    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7264    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
7265    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
7266    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
7267    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
7268}
7269
7270impl ::std::fmt::Debug for GtkPrintOperationPreviewIface {
7271    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7272        f.debug_struct(&format!("GtkPrintOperationPreviewIface @ {self:p}"))
7273            .field("g_iface", &self.g_iface)
7274            .field("ready", &self.ready)
7275            .field("got_page_size", &self.got_page_size)
7276            .field("render_page", &self.render_page)
7277            .field("is_selected", &self.is_selected)
7278            .field("end_preview", &self.end_preview)
7279            .field("_gtk_reserved1", &self._gtk_reserved1)
7280            .field("_gtk_reserved2", &self._gtk_reserved2)
7281            .field("_gtk_reserved3", &self._gtk_reserved3)
7282            .field("_gtk_reserved4", &self._gtk_reserved4)
7283            .field("_gtk_reserved5", &self._gtk_reserved5)
7284            .field("_gtk_reserved6", &self._gtk_reserved6)
7285            .field("_gtk_reserved7", &self._gtk_reserved7)
7286            .field("_gtk_reserved8", &self._gtk_reserved8)
7287            .finish()
7288    }
7289}
7290
7291#[repr(C)]
7292#[allow(dead_code)]
7293pub struct _GtkPrintOperationPrivate {
7294    _data: [u8; 0],
7295    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7296}
7297
7298pub type GtkPrintOperationPrivate = _GtkPrintOperationPrivate;
7299
7300#[derive(Copy, Clone)]
7301#[repr(C)]
7302pub struct GtkProgressBarAccessibleClass {
7303    pub parent_class: GtkWidgetAccessibleClass,
7304}
7305
7306impl ::std::fmt::Debug for GtkProgressBarAccessibleClass {
7307    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7308        f.debug_struct(&format!("GtkProgressBarAccessibleClass @ {self:p}"))
7309            .field("parent_class", &self.parent_class)
7310            .finish()
7311    }
7312}
7313
7314#[repr(C)]
7315#[allow(dead_code)]
7316pub struct _GtkProgressBarAccessiblePrivate {
7317    _data: [u8; 0],
7318    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7319}
7320
7321pub type GtkProgressBarAccessiblePrivate = _GtkProgressBarAccessiblePrivate;
7322
7323#[derive(Copy, Clone)]
7324#[repr(C)]
7325pub struct GtkProgressBarClass {
7326    pub parent_class: GtkWidgetClass,
7327    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7328    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7329    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7330    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7331}
7332
7333impl ::std::fmt::Debug for GtkProgressBarClass {
7334    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7335        f.debug_struct(&format!("GtkProgressBarClass @ {self:p}"))
7336            .field("parent_class", &self.parent_class)
7337            .field("_gtk_reserved1", &self._gtk_reserved1)
7338            .field("_gtk_reserved2", &self._gtk_reserved2)
7339            .field("_gtk_reserved3", &self._gtk_reserved3)
7340            .field("_gtk_reserved4", &self._gtk_reserved4)
7341            .finish()
7342    }
7343}
7344
7345#[repr(C)]
7346#[allow(dead_code)]
7347pub struct _GtkProgressBarPrivate {
7348    _data: [u8; 0],
7349    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7350}
7351
7352pub type GtkProgressBarPrivate = _GtkProgressBarPrivate;
7353
7354#[derive(Copy, Clone)]
7355#[repr(C)]
7356pub struct GtkRadioActionClass {
7357    pub parent_class: GtkToggleActionClass,
7358    pub changed: Option<unsafe extern "C" fn(*mut GtkRadioAction, *mut GtkRadioAction)>,
7359    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7360    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7361    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7362    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7363}
7364
7365impl ::std::fmt::Debug for GtkRadioActionClass {
7366    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7367        f.debug_struct(&format!("GtkRadioActionClass @ {self:p}"))
7368            .field("parent_class", &self.parent_class)
7369            .field("changed", &self.changed)
7370            .field("_gtk_reserved1", &self._gtk_reserved1)
7371            .field("_gtk_reserved2", &self._gtk_reserved2)
7372            .field("_gtk_reserved3", &self._gtk_reserved3)
7373            .field("_gtk_reserved4", &self._gtk_reserved4)
7374            .finish()
7375    }
7376}
7377
7378#[derive(Copy, Clone)]
7379#[repr(C)]
7380pub struct GtkRadioActionEntry {
7381    pub name: *const c_char,
7382    pub stock_id: *const c_char,
7383    pub label: *const c_char,
7384    pub accelerator: *const c_char,
7385    pub tooltip: *const c_char,
7386    pub value: c_int,
7387}
7388
7389impl ::std::fmt::Debug for GtkRadioActionEntry {
7390    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7391        f.debug_struct(&format!("GtkRadioActionEntry @ {self:p}"))
7392            .field("name", &self.name)
7393            .field("stock_id", &self.stock_id)
7394            .field("label", &self.label)
7395            .field("accelerator", &self.accelerator)
7396            .field("tooltip", &self.tooltip)
7397            .field("value", &self.value)
7398            .finish()
7399    }
7400}
7401
7402#[repr(C)]
7403#[allow(dead_code)]
7404pub struct _GtkRadioActionPrivate {
7405    _data: [u8; 0],
7406    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7407}
7408
7409pub type GtkRadioActionPrivate = _GtkRadioActionPrivate;
7410
7411#[derive(Copy, Clone)]
7412#[repr(C)]
7413pub struct GtkRadioButtonAccessibleClass {
7414    pub parent_class: GtkToggleButtonAccessibleClass,
7415}
7416
7417impl ::std::fmt::Debug for GtkRadioButtonAccessibleClass {
7418    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7419        f.debug_struct(&format!("GtkRadioButtonAccessibleClass @ {self:p}"))
7420            .field("parent_class", &self.parent_class)
7421            .finish()
7422    }
7423}
7424
7425#[repr(C)]
7426#[allow(dead_code)]
7427pub struct _GtkRadioButtonAccessiblePrivate {
7428    _data: [u8; 0],
7429    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7430}
7431
7432pub type GtkRadioButtonAccessiblePrivate = _GtkRadioButtonAccessiblePrivate;
7433
7434#[derive(Copy, Clone)]
7435#[repr(C)]
7436pub struct GtkRadioButtonClass {
7437    pub parent_class: GtkCheckButtonClass,
7438    pub group_changed: Option<unsafe extern "C" fn(*mut GtkRadioButton)>,
7439    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7440    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7441    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7442    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7443}
7444
7445impl ::std::fmt::Debug for GtkRadioButtonClass {
7446    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7447        f.debug_struct(&format!("GtkRadioButtonClass @ {self:p}"))
7448            .field("parent_class", &self.parent_class)
7449            .field("group_changed", &self.group_changed)
7450            .field("_gtk_reserved1", &self._gtk_reserved1)
7451            .field("_gtk_reserved2", &self._gtk_reserved2)
7452            .field("_gtk_reserved3", &self._gtk_reserved3)
7453            .field("_gtk_reserved4", &self._gtk_reserved4)
7454            .finish()
7455    }
7456}
7457
7458#[repr(C)]
7459#[allow(dead_code)]
7460pub struct _GtkRadioButtonPrivate {
7461    _data: [u8; 0],
7462    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7463}
7464
7465pub type GtkRadioButtonPrivate = _GtkRadioButtonPrivate;
7466
7467#[derive(Copy, Clone)]
7468#[repr(C)]
7469pub struct GtkRadioMenuItemAccessibleClass {
7470    pub parent_class: GtkCheckMenuItemAccessibleClass,
7471}
7472
7473impl ::std::fmt::Debug for GtkRadioMenuItemAccessibleClass {
7474    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7475        f.debug_struct(&format!("GtkRadioMenuItemAccessibleClass @ {self:p}"))
7476            .field("parent_class", &self.parent_class)
7477            .finish()
7478    }
7479}
7480
7481#[repr(C)]
7482#[allow(dead_code)]
7483pub struct _GtkRadioMenuItemAccessiblePrivate {
7484    _data: [u8; 0],
7485    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7486}
7487
7488pub type GtkRadioMenuItemAccessiblePrivate = _GtkRadioMenuItemAccessiblePrivate;
7489
7490#[derive(Copy, Clone)]
7491#[repr(C)]
7492pub struct GtkRadioMenuItemClass {
7493    pub parent_class: GtkCheckMenuItemClass,
7494    pub group_changed: Option<unsafe extern "C" fn(*mut GtkRadioMenuItem)>,
7495    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7496    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7497    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7498    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7499}
7500
7501impl ::std::fmt::Debug for GtkRadioMenuItemClass {
7502    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7503        f.debug_struct(&format!("GtkRadioMenuItemClass @ {self:p}"))
7504            .field("parent_class", &self.parent_class)
7505            .field("group_changed", &self.group_changed)
7506            .field("_gtk_reserved1", &self._gtk_reserved1)
7507            .field("_gtk_reserved2", &self._gtk_reserved2)
7508            .field("_gtk_reserved3", &self._gtk_reserved3)
7509            .field("_gtk_reserved4", &self._gtk_reserved4)
7510            .finish()
7511    }
7512}
7513
7514#[repr(C)]
7515#[allow(dead_code)]
7516pub struct _GtkRadioMenuItemPrivate {
7517    _data: [u8; 0],
7518    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7519}
7520
7521pub type GtkRadioMenuItemPrivate = _GtkRadioMenuItemPrivate;
7522
7523#[derive(Copy, Clone)]
7524#[repr(C)]
7525pub struct GtkRadioToolButtonClass {
7526    pub parent_class: GtkToggleToolButtonClass,
7527    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7528    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7529    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7530    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7531}
7532
7533impl ::std::fmt::Debug for GtkRadioToolButtonClass {
7534    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7535        f.debug_struct(&format!("GtkRadioToolButtonClass @ {self:p}"))
7536            .field("parent_class", &self.parent_class)
7537            .field("_gtk_reserved1", &self._gtk_reserved1)
7538            .field("_gtk_reserved2", &self._gtk_reserved2)
7539            .field("_gtk_reserved3", &self._gtk_reserved3)
7540            .field("_gtk_reserved4", &self._gtk_reserved4)
7541            .finish()
7542    }
7543}
7544
7545#[derive(Copy, Clone)]
7546#[repr(C)]
7547pub struct GtkRangeAccessibleClass {
7548    pub parent_class: GtkWidgetAccessibleClass,
7549}
7550
7551impl ::std::fmt::Debug for GtkRangeAccessibleClass {
7552    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7553        f.debug_struct(&format!("GtkRangeAccessibleClass @ {self:p}"))
7554            .field("parent_class", &self.parent_class)
7555            .finish()
7556    }
7557}
7558
7559#[repr(C)]
7560#[allow(dead_code)]
7561pub struct _GtkRangeAccessiblePrivate {
7562    _data: [u8; 0],
7563    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7564}
7565
7566pub type GtkRangeAccessiblePrivate = _GtkRangeAccessiblePrivate;
7567
7568#[derive(Copy, Clone)]
7569#[repr(C)]
7570pub struct GtkRangeClass {
7571    pub parent_class: GtkWidgetClass,
7572    pub slider_detail: *mut c_char,
7573    pub stepper_detail: *mut c_char,
7574    pub value_changed: Option<unsafe extern "C" fn(*mut GtkRange)>,
7575    pub adjust_bounds: Option<unsafe extern "C" fn(*mut GtkRange, c_double)>,
7576    pub move_slider: Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType)>,
7577    pub get_range_border: Option<unsafe extern "C" fn(*mut GtkRange, *mut GtkBorder)>,
7578    pub change_value:
7579        Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType, c_double) -> gboolean>,
7580    pub get_range_size_request:
7581        Option<unsafe extern "C" fn(*mut GtkRange, GtkOrientation, *mut c_int, *mut c_int)>,
7582    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7583    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7584    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7585}
7586
7587impl ::std::fmt::Debug for GtkRangeClass {
7588    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7589        f.debug_struct(&format!("GtkRangeClass @ {self:p}"))
7590            .field("parent_class", &self.parent_class)
7591            .field("slider_detail", &self.slider_detail)
7592            .field("stepper_detail", &self.stepper_detail)
7593            .field("value_changed", &self.value_changed)
7594            .field("adjust_bounds", &self.adjust_bounds)
7595            .field("move_slider", &self.move_slider)
7596            .field("get_range_border", &self.get_range_border)
7597            .field("change_value", &self.change_value)
7598            .field("get_range_size_request", &self.get_range_size_request)
7599            .field("_gtk_reserved1", &self._gtk_reserved1)
7600            .field("_gtk_reserved2", &self._gtk_reserved2)
7601            .field("_gtk_reserved3", &self._gtk_reserved3)
7602            .finish()
7603    }
7604}
7605
7606#[repr(C)]
7607#[allow(dead_code)]
7608pub struct _GtkRangePrivate {
7609    _data: [u8; 0],
7610    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7611}
7612
7613pub type GtkRangePrivate = _GtkRangePrivate;
7614
7615#[repr(C)]
7616#[allow(dead_code)]
7617pub struct _GtkRcContext {
7618    _data: [u8; 0],
7619    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7620}
7621
7622pub type GtkRcContext = _GtkRcContext;
7623
7624#[derive(Copy, Clone)]
7625#[repr(C)]
7626pub struct GtkRcProperty {
7627    pub type_name: glib::GQuark,
7628    pub property_name: glib::GQuark,
7629    pub origin: *mut c_char,
7630    pub value: gobject::GValue,
7631}
7632
7633impl ::std::fmt::Debug for GtkRcProperty {
7634    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7635        f.debug_struct(&format!("GtkRcProperty @ {self:p}"))
7636            .field("type_name", &self.type_name)
7637            .field("property_name", &self.property_name)
7638            .field("origin", &self.origin)
7639            .field("value", &self.value)
7640            .finish()
7641    }
7642}
7643
7644#[derive(Copy, Clone)]
7645#[repr(C)]
7646pub struct GtkRcStyleClass {
7647    pub parent_class: gobject::GObjectClass,
7648    pub create_rc_style: Option<unsafe extern "C" fn(*mut GtkRcStyle) -> *mut GtkRcStyle>,
7649    pub parse: Option<
7650        unsafe extern "C" fn(*mut GtkRcStyle, *mut GtkSettings, *mut glib::GScanner) -> c_uint,
7651    >,
7652    pub merge: Option<unsafe extern "C" fn(*mut GtkRcStyle, *mut GtkRcStyle)>,
7653    pub create_style: Option<unsafe extern "C" fn(*mut GtkRcStyle) -> *mut GtkStyle>,
7654    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7655    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7656    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7657    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7658}
7659
7660impl ::std::fmt::Debug for GtkRcStyleClass {
7661    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7662        f.debug_struct(&format!("GtkRcStyleClass @ {self:p}"))
7663            .field("parent_class", &self.parent_class)
7664            .field("create_rc_style", &self.create_rc_style)
7665            .field("parse", &self.parse)
7666            .field("merge", &self.merge)
7667            .field("create_style", &self.create_style)
7668            .field("_gtk_reserved1", &self._gtk_reserved1)
7669            .field("_gtk_reserved2", &self._gtk_reserved2)
7670            .field("_gtk_reserved3", &self._gtk_reserved3)
7671            .field("_gtk_reserved4", &self._gtk_reserved4)
7672            .finish()
7673    }
7674}
7675
7676#[derive(Copy, Clone)]
7677#[repr(C)]
7678pub struct GtkRecentActionClass {
7679    pub parent_class: GtkActionClass,
7680    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7681    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7682    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7683    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7684}
7685
7686impl ::std::fmt::Debug for GtkRecentActionClass {
7687    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7688        f.debug_struct(&format!("GtkRecentActionClass @ {self:p}"))
7689            .field("parent_class", &self.parent_class)
7690            .field("_gtk_reserved1", &self._gtk_reserved1)
7691            .field("_gtk_reserved2", &self._gtk_reserved2)
7692            .field("_gtk_reserved3", &self._gtk_reserved3)
7693            .field("_gtk_reserved4", &self._gtk_reserved4)
7694            .finish()
7695    }
7696}
7697
7698#[repr(C)]
7699#[allow(dead_code)]
7700pub struct _GtkRecentActionPrivate {
7701    _data: [u8; 0],
7702    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7703}
7704
7705pub type GtkRecentActionPrivate = _GtkRecentActionPrivate;
7706
7707#[derive(Copy, Clone)]
7708#[repr(C)]
7709pub struct GtkRecentChooserDialogClass {
7710    pub parent_class: GtkDialogClass,
7711    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7712    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7713    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7714    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7715}
7716
7717impl ::std::fmt::Debug for GtkRecentChooserDialogClass {
7718    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7719        f.debug_struct(&format!("GtkRecentChooserDialogClass @ {self:p}"))
7720            .field("parent_class", &self.parent_class)
7721            .field("_gtk_reserved1", &self._gtk_reserved1)
7722            .field("_gtk_reserved2", &self._gtk_reserved2)
7723            .field("_gtk_reserved3", &self._gtk_reserved3)
7724            .field("_gtk_reserved4", &self._gtk_reserved4)
7725            .finish()
7726    }
7727}
7728
7729#[repr(C)]
7730#[allow(dead_code)]
7731pub struct _GtkRecentChooserDialogPrivate {
7732    _data: [u8; 0],
7733    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7734}
7735
7736pub type GtkRecentChooserDialogPrivate = _GtkRecentChooserDialogPrivate;
7737
7738#[derive(Copy, Clone)]
7739#[repr(C)]
7740pub struct GtkRecentChooserIface {
7741    pub base_iface: gobject::GTypeInterface,
7742    pub set_current_uri: Option<
7743        unsafe extern "C" fn(
7744            *mut GtkRecentChooser,
7745            *const c_char,
7746            *mut *mut glib::GError,
7747        ) -> gboolean,
7748    >,
7749    pub get_current_uri: Option<unsafe extern "C" fn(*mut GtkRecentChooser) -> *mut c_char>,
7750    pub select_uri: Option<
7751        unsafe extern "C" fn(
7752            *mut GtkRecentChooser,
7753            *const c_char,
7754            *mut *mut glib::GError,
7755        ) -> gboolean,
7756    >,
7757    pub unselect_uri: Option<unsafe extern "C" fn(*mut GtkRecentChooser, *const c_char)>,
7758    pub select_all: Option<unsafe extern "C" fn(*mut GtkRecentChooser)>,
7759    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkRecentChooser)>,
7760    pub get_items: Option<unsafe extern "C" fn(*mut GtkRecentChooser) -> *mut glib::GList>,
7761    pub get_recent_manager:
7762        Option<unsafe extern "C" fn(*mut GtkRecentChooser) -> *mut GtkRecentManager>,
7763    pub add_filter: Option<unsafe extern "C" fn(*mut GtkRecentChooser, *mut GtkRecentFilter)>,
7764    pub remove_filter: Option<unsafe extern "C" fn(*mut GtkRecentChooser, *mut GtkRecentFilter)>,
7765    pub list_filters: Option<unsafe extern "C" fn(*mut GtkRecentChooser) -> *mut glib::GSList>,
7766    pub set_sort_func: Option<
7767        unsafe extern "C" fn(
7768            *mut GtkRecentChooser,
7769            GtkRecentSortFunc,
7770            gpointer,
7771            glib::GDestroyNotify,
7772        ),
7773    >,
7774    pub item_activated: Option<unsafe extern "C" fn(*mut GtkRecentChooser)>,
7775    pub selection_changed: Option<unsafe extern "C" fn(*mut GtkRecentChooser)>,
7776}
7777
7778impl ::std::fmt::Debug for GtkRecentChooserIface {
7779    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7780        f.debug_struct(&format!("GtkRecentChooserIface @ {self:p}"))
7781            .field("set_current_uri", &self.set_current_uri)
7782            .field("get_current_uri", &self.get_current_uri)
7783            .field("select_uri", &self.select_uri)
7784            .field("unselect_uri", &self.unselect_uri)
7785            .field("select_all", &self.select_all)
7786            .field("unselect_all", &self.unselect_all)
7787            .field("get_items", &self.get_items)
7788            .field("get_recent_manager", &self.get_recent_manager)
7789            .field("add_filter", &self.add_filter)
7790            .field("remove_filter", &self.remove_filter)
7791            .field("list_filters", &self.list_filters)
7792            .field("set_sort_func", &self.set_sort_func)
7793            .field("item_activated", &self.item_activated)
7794            .field("selection_changed", &self.selection_changed)
7795            .finish()
7796    }
7797}
7798
7799#[derive(Copy, Clone)]
7800#[repr(C)]
7801pub struct GtkRecentChooserMenuClass {
7802    pub parent_class: GtkMenuClass,
7803    pub gtk_recent1: Option<unsafe extern "C" fn()>,
7804    pub gtk_recent2: Option<unsafe extern "C" fn()>,
7805    pub gtk_recent3: Option<unsafe extern "C" fn()>,
7806    pub gtk_recent4: Option<unsafe extern "C" fn()>,
7807}
7808
7809impl ::std::fmt::Debug for GtkRecentChooserMenuClass {
7810    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7811        f.debug_struct(&format!("GtkRecentChooserMenuClass @ {self:p}"))
7812            .field("parent_class", &self.parent_class)
7813            .field("gtk_recent1", &self.gtk_recent1)
7814            .field("gtk_recent2", &self.gtk_recent2)
7815            .field("gtk_recent3", &self.gtk_recent3)
7816            .field("gtk_recent4", &self.gtk_recent4)
7817            .finish()
7818    }
7819}
7820
7821#[repr(C)]
7822#[allow(dead_code)]
7823pub struct _GtkRecentChooserMenuPrivate {
7824    _data: [u8; 0],
7825    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7826}
7827
7828pub type GtkRecentChooserMenuPrivate = _GtkRecentChooserMenuPrivate;
7829
7830#[derive(Copy, Clone)]
7831#[repr(C)]
7832pub struct GtkRecentChooserWidgetClass {
7833    pub parent_class: GtkBoxClass,
7834    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
7835    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
7836    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
7837    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
7838}
7839
7840impl ::std::fmt::Debug for GtkRecentChooserWidgetClass {
7841    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7842        f.debug_struct(&format!("GtkRecentChooserWidgetClass @ {self:p}"))
7843            .field("parent_class", &self.parent_class)
7844            .field("_gtk_reserved1", &self._gtk_reserved1)
7845            .field("_gtk_reserved2", &self._gtk_reserved2)
7846            .field("_gtk_reserved3", &self._gtk_reserved3)
7847            .field("_gtk_reserved4", &self._gtk_reserved4)
7848            .finish()
7849    }
7850}
7851
7852#[repr(C)]
7853#[allow(dead_code)]
7854pub struct _GtkRecentChooserWidgetPrivate {
7855    _data: [u8; 0],
7856    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7857}
7858
7859pub type GtkRecentChooserWidgetPrivate = _GtkRecentChooserWidgetPrivate;
7860
7861#[derive(Copy, Clone)]
7862#[repr(C)]
7863pub struct GtkRecentData {
7864    pub display_name: *mut c_char,
7865    pub description: *mut c_char,
7866    pub mime_type: *mut c_char,
7867    pub app_name: *mut c_char,
7868    pub app_exec: *mut c_char,
7869    pub groups: *mut *mut c_char,
7870    pub is_private: gboolean,
7871}
7872
7873impl ::std::fmt::Debug for GtkRecentData {
7874    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7875        f.debug_struct(&format!("GtkRecentData @ {self:p}"))
7876            .field("display_name", &self.display_name)
7877            .field("description", &self.description)
7878            .field("mime_type", &self.mime_type)
7879            .field("app_name", &self.app_name)
7880            .field("app_exec", &self.app_exec)
7881            .field("groups", &self.groups)
7882            .field("is_private", &self.is_private)
7883            .finish()
7884    }
7885}
7886
7887#[derive(Copy, Clone)]
7888#[repr(C)]
7889pub struct GtkRecentFilterInfo {
7890    pub contains: GtkRecentFilterFlags,
7891    pub uri: *const c_char,
7892    pub display_name: *const c_char,
7893    pub mime_type: *const c_char,
7894    pub applications: *mut *const c_char,
7895    pub groups: *mut *const c_char,
7896    pub age: c_int,
7897}
7898
7899impl ::std::fmt::Debug for GtkRecentFilterInfo {
7900    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7901        f.debug_struct(&format!("GtkRecentFilterInfo @ {self:p}"))
7902            .field("contains", &self.contains)
7903            .field("uri", &self.uri)
7904            .field("display_name", &self.display_name)
7905            .field("mime_type", &self.mime_type)
7906            .field("applications", &self.applications)
7907            .field("groups", &self.groups)
7908            .field("age", &self.age)
7909            .finish()
7910    }
7911}
7912
7913#[repr(C)]
7914#[allow(dead_code)]
7915pub struct GtkRecentInfo {
7916    _data: [u8; 0],
7917    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7918}
7919
7920impl ::std::fmt::Debug for GtkRecentInfo {
7921    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7922        f.debug_struct(&format!("GtkRecentInfo @ {self:p}"))
7923            .finish()
7924    }
7925}
7926
7927#[derive(Copy, Clone)]
7928#[repr(C)]
7929pub struct GtkRecentManagerClass {
7930    pub parent_class: gobject::GObjectClass,
7931    pub changed: Option<unsafe extern "C" fn(*mut GtkRecentManager)>,
7932    pub _gtk_recent1: Option<unsafe extern "C" fn()>,
7933    pub _gtk_recent2: Option<unsafe extern "C" fn()>,
7934    pub _gtk_recent3: Option<unsafe extern "C" fn()>,
7935    pub _gtk_recent4: Option<unsafe extern "C" fn()>,
7936}
7937
7938impl ::std::fmt::Debug for GtkRecentManagerClass {
7939    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7940        f.debug_struct(&format!("GtkRecentManagerClass @ {self:p}"))
7941            .field("changed", &self.changed)
7942            .field("_gtk_recent1", &self._gtk_recent1)
7943            .field("_gtk_recent2", &self._gtk_recent2)
7944            .field("_gtk_recent3", &self._gtk_recent3)
7945            .field("_gtk_recent4", &self._gtk_recent4)
7946            .finish()
7947    }
7948}
7949
7950#[repr(C)]
7951#[allow(dead_code)]
7952pub struct _GtkRecentManagerPrivate {
7953    _data: [u8; 0],
7954    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7955}
7956
7957pub type GtkRecentManagerPrivate = _GtkRecentManagerPrivate;
7958
7959#[derive(Copy, Clone)]
7960#[repr(C)]
7961pub struct GtkRendererCellAccessibleClass {
7962    pub parent_class: GtkCellAccessibleClass,
7963}
7964
7965impl ::std::fmt::Debug for GtkRendererCellAccessibleClass {
7966    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7967        f.debug_struct(&format!("GtkRendererCellAccessibleClass @ {self:p}"))
7968            .field("parent_class", &self.parent_class)
7969            .finish()
7970    }
7971}
7972
7973#[repr(C)]
7974#[allow(dead_code)]
7975pub struct _GtkRendererCellAccessiblePrivate {
7976    _data: [u8; 0],
7977    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7978}
7979
7980pub type GtkRendererCellAccessiblePrivate = _GtkRendererCellAccessiblePrivate;
7981
7982#[derive(Copy, Clone)]
7983#[repr(C)]
7984pub struct GtkRequestedSize {
7985    pub data: gpointer,
7986    pub minimum_size: c_int,
7987    pub natural_size: c_int,
7988}
7989
7990impl ::std::fmt::Debug for GtkRequestedSize {
7991    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7992        f.debug_struct(&format!("GtkRequestedSize @ {self:p}"))
7993            .field("data", &self.data)
7994            .field("minimum_size", &self.minimum_size)
7995            .field("natural_size", &self.natural_size)
7996            .finish()
7997    }
7998}
7999
8000#[derive(Copy, Clone)]
8001#[repr(C)]
8002pub struct GtkRequisition {
8003    pub width: c_int,
8004    pub height: c_int,
8005}
8006
8007impl ::std::fmt::Debug for GtkRequisition {
8008    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8009        f.debug_struct(&format!("GtkRequisition @ {self:p}"))
8010            .field("width", &self.width)
8011            .field("height", &self.height)
8012            .finish()
8013    }
8014}
8015
8016#[derive(Copy, Clone)]
8017#[repr(C)]
8018pub struct GtkRevealerClass {
8019    pub parent_class: GtkBinClass,
8020}
8021
8022impl ::std::fmt::Debug for GtkRevealerClass {
8023    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8024        f.debug_struct(&format!("GtkRevealerClass @ {self:p}"))
8025            .field("parent_class", &self.parent_class)
8026            .finish()
8027    }
8028}
8029
8030#[derive(Copy, Clone)]
8031#[repr(C)]
8032pub struct GtkScaleAccessibleClass {
8033    pub parent_class: GtkRangeAccessibleClass,
8034}
8035
8036impl ::std::fmt::Debug for GtkScaleAccessibleClass {
8037    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8038        f.debug_struct(&format!("GtkScaleAccessibleClass @ {self:p}"))
8039            .field("parent_class", &self.parent_class)
8040            .finish()
8041    }
8042}
8043
8044#[repr(C)]
8045#[allow(dead_code)]
8046pub struct _GtkScaleAccessiblePrivate {
8047    _data: [u8; 0],
8048    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8049}
8050
8051pub type GtkScaleAccessiblePrivate = _GtkScaleAccessiblePrivate;
8052
8053#[derive(Copy, Clone)]
8054#[repr(C)]
8055pub struct GtkScaleButtonAccessibleClass {
8056    pub parent_class: GtkButtonAccessibleClass,
8057}
8058
8059impl ::std::fmt::Debug for GtkScaleButtonAccessibleClass {
8060    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8061        f.debug_struct(&format!("GtkScaleButtonAccessibleClass @ {self:p}"))
8062            .field("parent_class", &self.parent_class)
8063            .finish()
8064    }
8065}
8066
8067#[repr(C)]
8068#[allow(dead_code)]
8069pub struct _GtkScaleButtonAccessiblePrivate {
8070    _data: [u8; 0],
8071    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8072}
8073
8074pub type GtkScaleButtonAccessiblePrivate = _GtkScaleButtonAccessiblePrivate;
8075
8076#[derive(Copy, Clone)]
8077#[repr(C)]
8078pub struct GtkScaleButtonClass {
8079    pub parent_class: GtkButtonClass,
8080    pub value_changed: Option<unsafe extern "C" fn(*mut GtkScaleButton, c_double)>,
8081    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8082    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8083    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8084    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8085}
8086
8087impl ::std::fmt::Debug for GtkScaleButtonClass {
8088    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8089        f.debug_struct(&format!("GtkScaleButtonClass @ {self:p}"))
8090            .field("parent_class", &self.parent_class)
8091            .field("value_changed", &self.value_changed)
8092            .field("_gtk_reserved1", &self._gtk_reserved1)
8093            .field("_gtk_reserved2", &self._gtk_reserved2)
8094            .field("_gtk_reserved3", &self._gtk_reserved3)
8095            .field("_gtk_reserved4", &self._gtk_reserved4)
8096            .finish()
8097    }
8098}
8099
8100#[repr(C)]
8101#[allow(dead_code)]
8102pub struct _GtkScaleButtonPrivate {
8103    _data: [u8; 0],
8104    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8105}
8106
8107pub type GtkScaleButtonPrivate = _GtkScaleButtonPrivate;
8108
8109#[derive(Copy, Clone)]
8110#[repr(C)]
8111pub struct GtkScaleClass {
8112    pub parent_class: GtkRangeClass,
8113    pub format_value: Option<unsafe extern "C" fn(*mut GtkScale, c_double) -> *mut c_char>,
8114    pub draw_value: Option<unsafe extern "C" fn(*mut GtkScale)>,
8115    pub get_layout_offsets: Option<unsafe extern "C" fn(*mut GtkScale, *mut c_int, *mut c_int)>,
8116    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8117    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8118    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8119    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8120}
8121
8122impl ::std::fmt::Debug for GtkScaleClass {
8123    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8124        f.debug_struct(&format!("GtkScaleClass @ {self:p}"))
8125            .field("parent_class", &self.parent_class)
8126            .field("format_value", &self.format_value)
8127            .field("draw_value", &self.draw_value)
8128            .field("get_layout_offsets", &self.get_layout_offsets)
8129            .field("_gtk_reserved1", &self._gtk_reserved1)
8130            .field("_gtk_reserved2", &self._gtk_reserved2)
8131            .field("_gtk_reserved3", &self._gtk_reserved3)
8132            .field("_gtk_reserved4", &self._gtk_reserved4)
8133            .finish()
8134    }
8135}
8136
8137#[repr(C)]
8138#[allow(dead_code)]
8139pub struct _GtkScalePrivate {
8140    _data: [u8; 0],
8141    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8142}
8143
8144pub type GtkScalePrivate = _GtkScalePrivate;
8145
8146#[derive(Copy, Clone)]
8147#[repr(C)]
8148pub struct GtkScrollableInterface {
8149    pub base_iface: gobject::GTypeInterface,
8150    pub get_border: Option<unsafe extern "C" fn(*mut GtkScrollable, *mut GtkBorder) -> gboolean>,
8151}
8152
8153impl ::std::fmt::Debug for GtkScrollableInterface {
8154    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8155        f.debug_struct(&format!("GtkScrollableInterface @ {self:p}"))
8156            .field("base_iface", &self.base_iface)
8157            .field("get_border", &self.get_border)
8158            .finish()
8159    }
8160}
8161
8162#[derive(Copy, Clone)]
8163#[repr(C)]
8164pub struct GtkScrollbarClass {
8165    pub parent_class: GtkRangeClass,
8166    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8167    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8168    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8169    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8170}
8171
8172impl ::std::fmt::Debug for GtkScrollbarClass {
8173    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8174        f.debug_struct(&format!("GtkScrollbarClass @ {self:p}"))
8175            .field("parent_class", &self.parent_class)
8176            .field("_gtk_reserved1", &self._gtk_reserved1)
8177            .field("_gtk_reserved2", &self._gtk_reserved2)
8178            .field("_gtk_reserved3", &self._gtk_reserved3)
8179            .field("_gtk_reserved4", &self._gtk_reserved4)
8180            .finish()
8181    }
8182}
8183
8184#[derive(Copy, Clone)]
8185#[repr(C)]
8186pub struct GtkScrolledWindowAccessibleClass {
8187    pub parent_class: GtkContainerAccessibleClass,
8188}
8189
8190impl ::std::fmt::Debug for GtkScrolledWindowAccessibleClass {
8191    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8192        f.debug_struct(&format!("GtkScrolledWindowAccessibleClass @ {self:p}"))
8193            .field("parent_class", &self.parent_class)
8194            .finish()
8195    }
8196}
8197
8198#[repr(C)]
8199#[allow(dead_code)]
8200pub struct _GtkScrolledWindowAccessiblePrivate {
8201    _data: [u8; 0],
8202    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8203}
8204
8205pub type GtkScrolledWindowAccessiblePrivate = _GtkScrolledWindowAccessiblePrivate;
8206
8207#[derive(Copy, Clone)]
8208#[repr(C)]
8209pub struct GtkScrolledWindowClass {
8210    pub parent_class: GtkBinClass,
8211    pub scrollbar_spacing: c_int,
8212    pub scroll_child:
8213        Option<unsafe extern "C" fn(*mut GtkScrolledWindow, GtkScrollType, gboolean) -> gboolean>,
8214    pub move_focus_out: Option<unsafe extern "C" fn(*mut GtkScrolledWindow, GtkDirectionType)>,
8215    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8216    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8217    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8218    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8219}
8220
8221impl ::std::fmt::Debug for GtkScrolledWindowClass {
8222    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8223        f.debug_struct(&format!("GtkScrolledWindowClass @ {self:p}"))
8224            .field("parent_class", &self.parent_class)
8225            .field("scrollbar_spacing", &self.scrollbar_spacing)
8226            .field("scroll_child", &self.scroll_child)
8227            .field("move_focus_out", &self.move_focus_out)
8228            .field("_gtk_reserved1", &self._gtk_reserved1)
8229            .field("_gtk_reserved2", &self._gtk_reserved2)
8230            .field("_gtk_reserved3", &self._gtk_reserved3)
8231            .field("_gtk_reserved4", &self._gtk_reserved4)
8232            .finish()
8233    }
8234}
8235
8236#[repr(C)]
8237#[allow(dead_code)]
8238pub struct _GtkScrolledWindowPrivate {
8239    _data: [u8; 0],
8240    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8241}
8242
8243pub type GtkScrolledWindowPrivate = _GtkScrolledWindowPrivate;
8244
8245#[derive(Copy, Clone)]
8246#[repr(C)]
8247pub struct GtkSearchBarClass {
8248    pub parent_class: GtkBinClass,
8249    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8250    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8251    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8252    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8253}
8254
8255impl ::std::fmt::Debug for GtkSearchBarClass {
8256    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8257        f.debug_struct(&format!("GtkSearchBarClass @ {self:p}"))
8258            .field("parent_class", &self.parent_class)
8259            .field("_gtk_reserved1", &self._gtk_reserved1)
8260            .field("_gtk_reserved2", &self._gtk_reserved2)
8261            .field("_gtk_reserved3", &self._gtk_reserved3)
8262            .field("_gtk_reserved4", &self._gtk_reserved4)
8263            .finish()
8264    }
8265}
8266
8267#[derive(Copy, Clone)]
8268#[repr(C)]
8269pub struct GtkSearchEntryClass {
8270    pub parent_class: GtkEntryClass,
8271    pub search_changed: Option<unsafe extern "C" fn(*mut GtkSearchEntry)>,
8272    pub next_match: Option<unsafe extern "C" fn(*mut GtkSearchEntry)>,
8273    pub previous_match: Option<unsafe extern "C" fn(*mut GtkSearchEntry)>,
8274    pub stop_search: Option<unsafe extern "C" fn(*mut GtkSearchEntry)>,
8275}
8276
8277impl ::std::fmt::Debug for GtkSearchEntryClass {
8278    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8279        f.debug_struct(&format!("GtkSearchEntryClass @ {self:p}"))
8280            .field("parent_class", &self.parent_class)
8281            .field("search_changed", &self.search_changed)
8282            .field("next_match", &self.next_match)
8283            .field("previous_match", &self.previous_match)
8284            .field("stop_search", &self.stop_search)
8285            .finish()
8286    }
8287}
8288
8289#[repr(C)]
8290#[allow(dead_code)]
8291pub struct GtkSelectionData {
8292    _data: [u8; 0],
8293    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8294}
8295
8296impl ::std::fmt::Debug for GtkSelectionData {
8297    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8298        f.debug_struct(&format!("GtkSelectionData @ {self:p}"))
8299            .finish()
8300    }
8301}
8302
8303#[derive(Copy, Clone)]
8304#[repr(C)]
8305pub struct GtkSeparatorClass {
8306    pub parent_class: GtkWidgetClass,
8307    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8308    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8309    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8310    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8311}
8312
8313impl ::std::fmt::Debug for GtkSeparatorClass {
8314    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8315        f.debug_struct(&format!("GtkSeparatorClass @ {self:p}"))
8316            .field("parent_class", &self.parent_class)
8317            .field("_gtk_reserved1", &self._gtk_reserved1)
8318            .field("_gtk_reserved2", &self._gtk_reserved2)
8319            .field("_gtk_reserved3", &self._gtk_reserved3)
8320            .field("_gtk_reserved4", &self._gtk_reserved4)
8321            .finish()
8322    }
8323}
8324
8325#[derive(Copy, Clone)]
8326#[repr(C)]
8327pub struct GtkSeparatorMenuItemClass {
8328    pub parent_class: GtkMenuItemClass,
8329    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8330    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8331    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8332    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8333}
8334
8335impl ::std::fmt::Debug for GtkSeparatorMenuItemClass {
8336    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8337        f.debug_struct(&format!("GtkSeparatorMenuItemClass @ {self:p}"))
8338            .field("parent_class", &self.parent_class)
8339            .field("_gtk_reserved1", &self._gtk_reserved1)
8340            .field("_gtk_reserved2", &self._gtk_reserved2)
8341            .field("_gtk_reserved3", &self._gtk_reserved3)
8342            .field("_gtk_reserved4", &self._gtk_reserved4)
8343            .finish()
8344    }
8345}
8346
8347#[repr(C)]
8348#[allow(dead_code)]
8349pub struct _GtkSeparatorPrivate {
8350    _data: [u8; 0],
8351    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8352}
8353
8354pub type GtkSeparatorPrivate = _GtkSeparatorPrivate;
8355
8356#[derive(Copy, Clone)]
8357#[repr(C)]
8358pub struct GtkSeparatorToolItemClass {
8359    pub parent_class: GtkToolItemClass,
8360    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8361    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8362    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8363    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8364}
8365
8366impl ::std::fmt::Debug for GtkSeparatorToolItemClass {
8367    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8368        f.debug_struct(&format!("GtkSeparatorToolItemClass @ {self:p}"))
8369            .field("parent_class", &self.parent_class)
8370            .field("_gtk_reserved1", &self._gtk_reserved1)
8371            .field("_gtk_reserved2", &self._gtk_reserved2)
8372            .field("_gtk_reserved3", &self._gtk_reserved3)
8373            .field("_gtk_reserved4", &self._gtk_reserved4)
8374            .finish()
8375    }
8376}
8377
8378#[repr(C)]
8379#[allow(dead_code)]
8380pub struct _GtkSeparatorToolItemPrivate {
8381    _data: [u8; 0],
8382    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8383}
8384
8385pub type GtkSeparatorToolItemPrivate = _GtkSeparatorToolItemPrivate;
8386
8387#[derive(Copy, Clone)]
8388#[repr(C)]
8389pub struct GtkSettingsClass {
8390    pub parent_class: gobject::GObjectClass,
8391    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8392    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8393    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8394    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8395}
8396
8397impl ::std::fmt::Debug for GtkSettingsClass {
8398    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8399        f.debug_struct(&format!("GtkSettingsClass @ {self:p}"))
8400            .field("parent_class", &self.parent_class)
8401            .field("_gtk_reserved1", &self._gtk_reserved1)
8402            .field("_gtk_reserved2", &self._gtk_reserved2)
8403            .field("_gtk_reserved3", &self._gtk_reserved3)
8404            .field("_gtk_reserved4", &self._gtk_reserved4)
8405            .finish()
8406    }
8407}
8408
8409#[repr(C)]
8410#[allow(dead_code)]
8411pub struct _GtkSettingsPrivate {
8412    _data: [u8; 0],
8413    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8414}
8415
8416pub type GtkSettingsPrivate = _GtkSettingsPrivate;
8417
8418#[derive(Copy, Clone)]
8419#[repr(C)]
8420pub struct GtkSettingsValue {
8421    pub origin: *mut c_char,
8422    pub value: gobject::GValue,
8423}
8424
8425impl ::std::fmt::Debug for GtkSettingsValue {
8426    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8427        f.debug_struct(&format!("GtkSettingsValue @ {self:p}"))
8428            .field("origin", &self.origin)
8429            .field("value", &self.value)
8430            .finish()
8431    }
8432}
8433
8434#[repr(C)]
8435#[allow(dead_code)]
8436pub struct _GtkShortcutLabelClass {
8437    _data: [u8; 0],
8438    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8439}
8440
8441pub type GtkShortcutLabelClass = _GtkShortcutLabelClass;
8442
8443#[repr(C)]
8444#[allow(dead_code)]
8445pub struct _GtkShortcutsGroupClass {
8446    _data: [u8; 0],
8447    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8448}
8449
8450pub type GtkShortcutsGroupClass = _GtkShortcutsGroupClass;
8451
8452#[repr(C)]
8453#[allow(dead_code)]
8454pub struct _GtkShortcutsSectionClass {
8455    _data: [u8; 0],
8456    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8457}
8458
8459pub type GtkShortcutsSectionClass = _GtkShortcutsSectionClass;
8460
8461#[repr(C)]
8462#[allow(dead_code)]
8463pub struct _GtkShortcutsShortcutClass {
8464    _data: [u8; 0],
8465    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8466}
8467
8468pub type GtkShortcutsShortcutClass = _GtkShortcutsShortcutClass;
8469
8470#[derive(Copy, Clone)]
8471#[repr(C)]
8472pub struct GtkShortcutsWindowClass {
8473    pub parent_class: GtkWindowClass,
8474    pub close: Option<unsafe extern "C" fn(*mut GtkShortcutsWindow)>,
8475    pub search: Option<unsafe extern "C" fn(*mut GtkShortcutsWindow)>,
8476}
8477
8478impl ::std::fmt::Debug for GtkShortcutsWindowClass {
8479    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8480        f.debug_struct(&format!("GtkShortcutsWindowClass @ {self:p}"))
8481            .field("parent_class", &self.parent_class)
8482            .field("close", &self.close)
8483            .field("search", &self.search)
8484            .finish()
8485    }
8486}
8487
8488#[derive(Copy, Clone)]
8489#[repr(C)]
8490pub struct GtkSizeGroupClass {
8491    pub parent_class: gobject::GObjectClass,
8492    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8493    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8494    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8495    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8496}
8497
8498impl ::std::fmt::Debug for GtkSizeGroupClass {
8499    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8500        f.debug_struct(&format!("GtkSizeGroupClass @ {self:p}"))
8501            .field("parent_class", &self.parent_class)
8502            .field("_gtk_reserved1", &self._gtk_reserved1)
8503            .field("_gtk_reserved2", &self._gtk_reserved2)
8504            .field("_gtk_reserved3", &self._gtk_reserved3)
8505            .field("_gtk_reserved4", &self._gtk_reserved4)
8506            .finish()
8507    }
8508}
8509
8510#[repr(C)]
8511#[allow(dead_code)]
8512pub struct _GtkSizeGroupPrivate {
8513    _data: [u8; 0],
8514    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8515}
8516
8517pub type GtkSizeGroupPrivate = _GtkSizeGroupPrivate;
8518
8519#[derive(Copy, Clone)]
8520#[repr(C)]
8521pub struct GtkSocketAccessibleClass {
8522    pub parent_class: GtkContainerAccessibleClass,
8523}
8524
8525impl ::std::fmt::Debug for GtkSocketAccessibleClass {
8526    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8527        f.debug_struct(&format!("GtkSocketAccessibleClass @ {self:p}"))
8528            .field("parent_class", &self.parent_class)
8529            .finish()
8530    }
8531}
8532
8533#[repr(C)]
8534#[allow(dead_code)]
8535pub struct _GtkSocketAccessiblePrivate {
8536    _data: [u8; 0],
8537    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8538}
8539
8540pub type GtkSocketAccessiblePrivate = _GtkSocketAccessiblePrivate;
8541
8542#[derive(Copy, Clone)]
8543#[repr(C)]
8544pub struct GtkSocketClass {
8545    pub parent_class: GtkContainerClass,
8546    pub plug_added: Option<unsafe extern "C" fn(*mut GtkSocket)>,
8547    pub plug_removed: Option<unsafe extern "C" fn(*mut GtkSocket) -> gboolean>,
8548    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8549    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8550    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8551    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8552}
8553
8554impl ::std::fmt::Debug for GtkSocketClass {
8555    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8556        f.debug_struct(&format!("GtkSocketClass @ {self:p}"))
8557            .field("parent_class", &self.parent_class)
8558            .field("plug_added", &self.plug_added)
8559            .field("plug_removed", &self.plug_removed)
8560            .field("_gtk_reserved1", &self._gtk_reserved1)
8561            .field("_gtk_reserved2", &self._gtk_reserved2)
8562            .field("_gtk_reserved3", &self._gtk_reserved3)
8563            .field("_gtk_reserved4", &self._gtk_reserved4)
8564            .finish()
8565    }
8566}
8567
8568#[repr(C)]
8569#[allow(dead_code)]
8570pub struct _GtkSocketPrivate {
8571    _data: [u8; 0],
8572    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8573}
8574
8575pub type GtkSocketPrivate = _GtkSocketPrivate;
8576
8577#[derive(Copy, Clone)]
8578#[repr(C)]
8579pub struct GtkSpinButtonAccessibleClass {
8580    pub parent_class: GtkEntryAccessibleClass,
8581}
8582
8583impl ::std::fmt::Debug for GtkSpinButtonAccessibleClass {
8584    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8585        f.debug_struct(&format!("GtkSpinButtonAccessibleClass @ {self:p}"))
8586            .field("parent_class", &self.parent_class)
8587            .finish()
8588    }
8589}
8590
8591#[repr(C)]
8592#[allow(dead_code)]
8593pub struct _GtkSpinButtonAccessiblePrivate {
8594    _data: [u8; 0],
8595    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8596}
8597
8598pub type GtkSpinButtonAccessiblePrivate = _GtkSpinButtonAccessiblePrivate;
8599
8600#[derive(Copy, Clone)]
8601#[repr(C)]
8602pub struct GtkSpinButtonClass {
8603    pub parent_class: GtkEntryClass,
8604    pub input: Option<unsafe extern "C" fn(*mut GtkSpinButton, *mut c_double) -> c_int>,
8605    pub output: Option<unsafe extern "C" fn(*mut GtkSpinButton) -> c_int>,
8606    pub value_changed: Option<unsafe extern "C" fn(*mut GtkSpinButton)>,
8607    pub change_value: Option<unsafe extern "C" fn(*mut GtkSpinButton, GtkScrollType)>,
8608    pub wrapped: Option<unsafe extern "C" fn(*mut GtkSpinButton)>,
8609    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8610    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8611    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8612    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8613}
8614
8615impl ::std::fmt::Debug for GtkSpinButtonClass {
8616    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8617        f.debug_struct(&format!("GtkSpinButtonClass @ {self:p}"))
8618            .field("parent_class", &self.parent_class)
8619            .field("input", &self.input)
8620            .field("output", &self.output)
8621            .field("value_changed", &self.value_changed)
8622            .field("change_value", &self.change_value)
8623            .field("wrapped", &self.wrapped)
8624            .field("_gtk_reserved1", &self._gtk_reserved1)
8625            .field("_gtk_reserved2", &self._gtk_reserved2)
8626            .field("_gtk_reserved3", &self._gtk_reserved3)
8627            .field("_gtk_reserved4", &self._gtk_reserved4)
8628            .finish()
8629    }
8630}
8631
8632#[repr(C)]
8633#[allow(dead_code)]
8634pub struct _GtkSpinButtonPrivate {
8635    _data: [u8; 0],
8636    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8637}
8638
8639pub type GtkSpinButtonPrivate = _GtkSpinButtonPrivate;
8640
8641#[derive(Copy, Clone)]
8642#[repr(C)]
8643pub struct GtkSpinnerAccessibleClass {
8644    pub parent_class: GtkWidgetAccessibleClass,
8645}
8646
8647impl ::std::fmt::Debug for GtkSpinnerAccessibleClass {
8648    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8649        f.debug_struct(&format!("GtkSpinnerAccessibleClass @ {self:p}"))
8650            .field("parent_class", &self.parent_class)
8651            .finish()
8652    }
8653}
8654
8655#[repr(C)]
8656#[allow(dead_code)]
8657pub struct _GtkSpinnerAccessiblePrivate {
8658    _data: [u8; 0],
8659    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8660}
8661
8662pub type GtkSpinnerAccessiblePrivate = _GtkSpinnerAccessiblePrivate;
8663
8664#[derive(Copy, Clone)]
8665#[repr(C)]
8666pub struct GtkSpinnerClass {
8667    pub parent_class: GtkWidgetClass,
8668    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8669    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8670    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8671    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8672}
8673
8674impl ::std::fmt::Debug for GtkSpinnerClass {
8675    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8676        f.debug_struct(&format!("GtkSpinnerClass @ {self:p}"))
8677            .field("parent_class", &self.parent_class)
8678            .field("_gtk_reserved1", &self._gtk_reserved1)
8679            .field("_gtk_reserved2", &self._gtk_reserved2)
8680            .field("_gtk_reserved3", &self._gtk_reserved3)
8681            .field("_gtk_reserved4", &self._gtk_reserved4)
8682            .finish()
8683    }
8684}
8685
8686#[repr(C)]
8687#[allow(dead_code)]
8688pub struct _GtkSpinnerPrivate {
8689    _data: [u8; 0],
8690    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8691}
8692
8693pub type GtkSpinnerPrivate = _GtkSpinnerPrivate;
8694
8695#[derive(Copy, Clone)]
8696#[repr(C)]
8697pub struct GtkStackAccessibleClass {
8698    pub parent_class: GtkContainerAccessibleClass,
8699}
8700
8701impl ::std::fmt::Debug for GtkStackAccessibleClass {
8702    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8703        f.debug_struct(&format!("GtkStackAccessibleClass @ {self:p}"))
8704            .field("parent_class", &self.parent_class)
8705            .finish()
8706    }
8707}
8708
8709#[derive(Copy, Clone)]
8710#[repr(C)]
8711pub struct GtkStackClass {
8712    pub parent_class: GtkContainerClass,
8713}
8714
8715impl ::std::fmt::Debug for GtkStackClass {
8716    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8717        f.debug_struct(&format!("GtkStackClass @ {self:p}"))
8718            .field("parent_class", &self.parent_class)
8719            .finish()
8720    }
8721}
8722
8723#[derive(Copy, Clone)]
8724#[repr(C)]
8725pub struct GtkStackSidebarClass {
8726    pub parent_class: GtkBinClass,
8727    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8728    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8729    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8730    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8731}
8732
8733impl ::std::fmt::Debug for GtkStackSidebarClass {
8734    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8735        f.debug_struct(&format!("GtkStackSidebarClass @ {self:p}"))
8736            .field("parent_class", &self.parent_class)
8737            .field("_gtk_reserved1", &self._gtk_reserved1)
8738            .field("_gtk_reserved2", &self._gtk_reserved2)
8739            .field("_gtk_reserved3", &self._gtk_reserved3)
8740            .field("_gtk_reserved4", &self._gtk_reserved4)
8741            .finish()
8742    }
8743}
8744
8745#[repr(C)]
8746#[allow(dead_code)]
8747pub struct _GtkStackSidebarPrivate {
8748    _data: [u8; 0],
8749    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8750}
8751
8752pub type GtkStackSidebarPrivate = _GtkStackSidebarPrivate;
8753
8754#[derive(Copy, Clone)]
8755#[repr(C)]
8756pub struct GtkStackSwitcherClass {
8757    pub parent_class: GtkBoxClass,
8758    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8759    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8760    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8761    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8762}
8763
8764impl ::std::fmt::Debug for GtkStackSwitcherClass {
8765    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8766        f.debug_struct(&format!("GtkStackSwitcherClass @ {self:p}"))
8767            .field("parent_class", &self.parent_class)
8768            .field("_gtk_reserved1", &self._gtk_reserved1)
8769            .field("_gtk_reserved2", &self._gtk_reserved2)
8770            .field("_gtk_reserved3", &self._gtk_reserved3)
8771            .field("_gtk_reserved4", &self._gtk_reserved4)
8772            .finish()
8773    }
8774}
8775
8776#[derive(Copy, Clone)]
8777#[repr(C)]
8778pub struct GtkStatusIconClass {
8779    pub parent_class: gobject::GObjectClass,
8780    pub activate: Option<unsafe extern "C" fn(*mut GtkStatusIcon)>,
8781    pub popup_menu: Option<unsafe extern "C" fn(*mut GtkStatusIcon, c_uint, u32)>,
8782    pub size_changed: Option<unsafe extern "C" fn(*mut GtkStatusIcon, c_int) -> gboolean>,
8783    pub button_press_event:
8784        Option<unsafe extern "C" fn(*mut GtkStatusIcon, *mut gdk::GdkEventButton) -> gboolean>,
8785    pub button_release_event:
8786        Option<unsafe extern "C" fn(*mut GtkStatusIcon, *mut gdk::GdkEventButton) -> gboolean>,
8787    pub scroll_event:
8788        Option<unsafe extern "C" fn(*mut GtkStatusIcon, *mut gdk::GdkEventScroll) -> gboolean>,
8789    pub query_tooltip: Option<
8790        unsafe extern "C" fn(
8791            *mut GtkStatusIcon,
8792            c_int,
8793            c_int,
8794            gboolean,
8795            *mut GtkTooltip,
8796        ) -> gboolean,
8797    >,
8798    pub __gtk_reserved1: Option<unsafe extern "C" fn()>,
8799    pub __gtk_reserved2: Option<unsafe extern "C" fn()>,
8800    pub __gtk_reserved3: Option<unsafe extern "C" fn()>,
8801    pub __gtk_reserved4: Option<unsafe extern "C" fn()>,
8802}
8803
8804impl ::std::fmt::Debug for GtkStatusIconClass {
8805    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8806        f.debug_struct(&format!("GtkStatusIconClass @ {self:p}"))
8807            .field("parent_class", &self.parent_class)
8808            .field("activate", &self.activate)
8809            .field("popup_menu", &self.popup_menu)
8810            .field("size_changed", &self.size_changed)
8811            .field("button_press_event", &self.button_press_event)
8812            .field("button_release_event", &self.button_release_event)
8813            .field("scroll_event", &self.scroll_event)
8814            .field("query_tooltip", &self.query_tooltip)
8815            .field("__gtk_reserved1", &self.__gtk_reserved1)
8816            .field("__gtk_reserved2", &self.__gtk_reserved2)
8817            .field("__gtk_reserved3", &self.__gtk_reserved3)
8818            .field("__gtk_reserved4", &self.__gtk_reserved4)
8819            .finish()
8820    }
8821}
8822
8823#[repr(C)]
8824#[allow(dead_code)]
8825pub struct _GtkStatusIconPrivate {
8826    _data: [u8; 0],
8827    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8828}
8829
8830pub type GtkStatusIconPrivate = _GtkStatusIconPrivate;
8831
8832#[derive(Copy, Clone)]
8833#[repr(C)]
8834pub struct GtkStatusbarAccessibleClass {
8835    pub parent_class: GtkContainerAccessibleClass,
8836}
8837
8838impl ::std::fmt::Debug for GtkStatusbarAccessibleClass {
8839    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8840        f.debug_struct(&format!("GtkStatusbarAccessibleClass @ {self:p}"))
8841            .field("parent_class", &self.parent_class)
8842            .finish()
8843    }
8844}
8845
8846#[repr(C)]
8847#[allow(dead_code)]
8848pub struct _GtkStatusbarAccessiblePrivate {
8849    _data: [u8; 0],
8850    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8851}
8852
8853pub type GtkStatusbarAccessiblePrivate = _GtkStatusbarAccessiblePrivate;
8854
8855#[derive(Copy, Clone)]
8856#[repr(C)]
8857pub struct GtkStatusbarClass {
8858    pub parent_class: GtkBoxClass,
8859    pub reserved: gpointer,
8860    pub text_pushed: Option<unsafe extern "C" fn(*mut GtkStatusbar, c_uint, *const c_char)>,
8861    pub text_popped: Option<unsafe extern "C" fn(*mut GtkStatusbar, c_uint, *const c_char)>,
8862    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
8863    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
8864    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
8865    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
8866}
8867
8868impl ::std::fmt::Debug for GtkStatusbarClass {
8869    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8870        f.debug_struct(&format!("GtkStatusbarClass @ {self:p}"))
8871            .field("parent_class", &self.parent_class)
8872            .field("reserved", &self.reserved)
8873            .field("text_pushed", &self.text_pushed)
8874            .field("text_popped", &self.text_popped)
8875            .field("_gtk_reserved1", &self._gtk_reserved1)
8876            .field("_gtk_reserved2", &self._gtk_reserved2)
8877            .field("_gtk_reserved3", &self._gtk_reserved3)
8878            .field("_gtk_reserved4", &self._gtk_reserved4)
8879            .finish()
8880    }
8881}
8882
8883#[repr(C)]
8884#[allow(dead_code)]
8885pub struct _GtkStatusbarPrivate {
8886    _data: [u8; 0],
8887    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8888}
8889
8890pub type GtkStatusbarPrivate = _GtkStatusbarPrivate;
8891
8892#[derive(Copy, Clone)]
8893#[repr(C)]
8894pub struct GtkStockItem {
8895    pub stock_id: *mut c_char,
8896    pub label: *mut c_char,
8897    pub modifier: gdk::GdkModifierType,
8898    pub keyval: c_uint,
8899    pub translation_domain: *mut c_char,
8900}
8901
8902impl ::std::fmt::Debug for GtkStockItem {
8903    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8904        f.debug_struct(&format!("GtkStockItem @ {self:p}"))
8905            .field("stock_id", &self.stock_id)
8906            .field("label", &self.label)
8907            .field("modifier", &self.modifier)
8908            .field("keyval", &self.keyval)
8909            .field("translation_domain", &self.translation_domain)
8910            .finish()
8911    }
8912}
8913
8914#[derive(Copy, Clone)]
8915#[repr(C)]
8916pub struct GtkStyleClass {
8917    pub parent_class: gobject::GObjectClass,
8918    pub realize: Option<unsafe extern "C" fn(*mut GtkStyle)>,
8919    pub unrealize: Option<unsafe extern "C" fn(*mut GtkStyle)>,
8920    pub copy: Option<unsafe extern "C" fn(*mut GtkStyle, *mut GtkStyle)>,
8921    pub clone: Option<unsafe extern "C" fn(*mut GtkStyle) -> *mut GtkStyle>,
8922    pub init_from_rc: Option<unsafe extern "C" fn(*mut GtkStyle, *mut GtkRcStyle)>,
8923    pub set_background:
8924        Option<unsafe extern "C" fn(*mut GtkStyle, *mut gdk::GdkWindow, GtkStateType)>,
8925    pub render_icon: Option<
8926        unsafe extern "C" fn(
8927            *mut GtkStyle,
8928            *const GtkIconSource,
8929            GtkTextDirection,
8930            GtkStateType,
8931            GtkIconSize,
8932            *mut GtkWidget,
8933            *const c_char,
8934        ) -> *mut gdk_pixbuf::GdkPixbuf,
8935    >,
8936    pub draw_hline: Option<
8937        unsafe extern "C" fn(
8938            *mut GtkStyle,
8939            *mut cairo::cairo_t,
8940            GtkStateType,
8941            *mut GtkWidget,
8942            *const c_char,
8943            c_int,
8944            c_int,
8945            c_int,
8946        ),
8947    >,
8948    pub draw_vline: Option<
8949        unsafe extern "C" fn(
8950            *mut GtkStyle,
8951            *mut cairo::cairo_t,
8952            GtkStateType,
8953            *mut GtkWidget,
8954            *const c_char,
8955            c_int,
8956            c_int,
8957            c_int,
8958        ),
8959    >,
8960    pub draw_shadow: Option<
8961        unsafe extern "C" fn(
8962            *mut GtkStyle,
8963            *mut cairo::cairo_t,
8964            GtkStateType,
8965            GtkShadowType,
8966            *mut GtkWidget,
8967            *const c_char,
8968            c_int,
8969            c_int,
8970            c_int,
8971            c_int,
8972        ),
8973    >,
8974    pub draw_arrow: Option<
8975        unsafe extern "C" fn(
8976            *mut GtkStyle,
8977            *mut cairo::cairo_t,
8978            GtkStateType,
8979            GtkShadowType,
8980            *mut GtkWidget,
8981            *const c_char,
8982            GtkArrowType,
8983            gboolean,
8984            c_int,
8985            c_int,
8986            c_int,
8987            c_int,
8988        ),
8989    >,
8990    pub draw_diamond: Option<
8991        unsafe extern "C" fn(
8992            *mut GtkStyle,
8993            *mut cairo::cairo_t,
8994            GtkStateType,
8995            GtkShadowType,
8996            *mut GtkWidget,
8997            *const c_char,
8998            c_int,
8999            c_int,
9000            c_int,
9001            c_int,
9002        ),
9003    >,
9004    pub draw_box: Option<
9005        unsafe extern "C" fn(
9006            *mut GtkStyle,
9007            *mut cairo::cairo_t,
9008            GtkStateType,
9009            GtkShadowType,
9010            *mut GtkWidget,
9011            *const c_char,
9012            c_int,
9013            c_int,
9014            c_int,
9015            c_int,
9016        ),
9017    >,
9018    pub draw_flat_box: Option<
9019        unsafe extern "C" fn(
9020            *mut GtkStyle,
9021            *mut cairo::cairo_t,
9022            GtkStateType,
9023            GtkShadowType,
9024            *mut GtkWidget,
9025            *const c_char,
9026            c_int,
9027            c_int,
9028            c_int,
9029            c_int,
9030        ),
9031    >,
9032    pub draw_check: Option<
9033        unsafe extern "C" fn(
9034            *mut GtkStyle,
9035            *mut cairo::cairo_t,
9036            GtkStateType,
9037            GtkShadowType,
9038            *mut GtkWidget,
9039            *const c_char,
9040            c_int,
9041            c_int,
9042            c_int,
9043            c_int,
9044        ),
9045    >,
9046    pub draw_option: Option<
9047        unsafe extern "C" fn(
9048            *mut GtkStyle,
9049            *mut cairo::cairo_t,
9050            GtkStateType,
9051            GtkShadowType,
9052            *mut GtkWidget,
9053            *const c_char,
9054            c_int,
9055            c_int,
9056            c_int,
9057            c_int,
9058        ),
9059    >,
9060    pub draw_tab: Option<
9061        unsafe extern "C" fn(
9062            *mut GtkStyle,
9063            *mut cairo::cairo_t,
9064            GtkStateType,
9065            GtkShadowType,
9066            *mut GtkWidget,
9067            *const c_char,
9068            c_int,
9069            c_int,
9070            c_int,
9071            c_int,
9072        ),
9073    >,
9074    pub draw_shadow_gap: Option<
9075        unsafe extern "C" fn(
9076            *mut GtkStyle,
9077            *mut cairo::cairo_t,
9078            GtkStateType,
9079            GtkShadowType,
9080            *mut GtkWidget,
9081            *const c_char,
9082            c_int,
9083            c_int,
9084            c_int,
9085            c_int,
9086            GtkPositionType,
9087            c_int,
9088            c_int,
9089        ),
9090    >,
9091    pub draw_box_gap: Option<
9092        unsafe extern "C" fn(
9093            *mut GtkStyle,
9094            *mut cairo::cairo_t,
9095            GtkStateType,
9096            GtkShadowType,
9097            *mut GtkWidget,
9098            *const c_char,
9099            c_int,
9100            c_int,
9101            c_int,
9102            c_int,
9103            GtkPositionType,
9104            c_int,
9105            c_int,
9106        ),
9107    >,
9108    pub draw_extension: Option<
9109        unsafe extern "C" fn(
9110            *mut GtkStyle,
9111            *mut cairo::cairo_t,
9112            GtkStateType,
9113            GtkShadowType,
9114            *mut GtkWidget,
9115            *const c_char,
9116            c_int,
9117            c_int,
9118            c_int,
9119            c_int,
9120            GtkPositionType,
9121        ),
9122    >,
9123    pub draw_focus: Option<
9124        unsafe extern "C" fn(
9125            *mut GtkStyle,
9126            *mut cairo::cairo_t,
9127            GtkStateType,
9128            *mut GtkWidget,
9129            *const c_char,
9130            c_int,
9131            c_int,
9132            c_int,
9133            c_int,
9134        ),
9135    >,
9136    pub draw_slider: Option<
9137        unsafe extern "C" fn(
9138            *mut GtkStyle,
9139            *mut cairo::cairo_t,
9140            GtkStateType,
9141            GtkShadowType,
9142            *mut GtkWidget,
9143            *const c_char,
9144            c_int,
9145            c_int,
9146            c_int,
9147            c_int,
9148            GtkOrientation,
9149        ),
9150    >,
9151    pub draw_handle: Option<
9152        unsafe extern "C" fn(
9153            *mut GtkStyle,
9154            *mut cairo::cairo_t,
9155            GtkStateType,
9156            GtkShadowType,
9157            *mut GtkWidget,
9158            *const c_char,
9159            c_int,
9160            c_int,
9161            c_int,
9162            c_int,
9163            GtkOrientation,
9164        ),
9165    >,
9166    pub draw_expander: Option<
9167        unsafe extern "C" fn(
9168            *mut GtkStyle,
9169            *mut cairo::cairo_t,
9170            GtkStateType,
9171            *mut GtkWidget,
9172            *const c_char,
9173            c_int,
9174            c_int,
9175            GtkExpanderStyle,
9176        ),
9177    >,
9178    pub draw_layout: Option<
9179        unsafe extern "C" fn(
9180            *mut GtkStyle,
9181            *mut cairo::cairo_t,
9182            GtkStateType,
9183            gboolean,
9184            *mut GtkWidget,
9185            *const c_char,
9186            c_int,
9187            c_int,
9188            *mut pango::PangoLayout,
9189        ),
9190    >,
9191    pub draw_resize_grip: Option<
9192        unsafe extern "C" fn(
9193            *mut GtkStyle,
9194            *mut cairo::cairo_t,
9195            GtkStateType,
9196            *mut GtkWidget,
9197            *const c_char,
9198            gdk::GdkWindowEdge,
9199            c_int,
9200            c_int,
9201            c_int,
9202            c_int,
9203        ),
9204    >,
9205    pub draw_spinner: Option<
9206        unsafe extern "C" fn(
9207            *mut GtkStyle,
9208            *mut cairo::cairo_t,
9209            GtkStateType,
9210            *mut GtkWidget,
9211            *const c_char,
9212            c_uint,
9213            c_int,
9214            c_int,
9215            c_int,
9216            c_int,
9217        ),
9218    >,
9219    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9220    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9221    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9222    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9223    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
9224    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
9225    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
9226    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
9227    pub _gtk_reserved9: Option<unsafe extern "C" fn()>,
9228    pub _gtk_reserved10: Option<unsafe extern "C" fn()>,
9229    pub _gtk_reserved11: Option<unsafe extern "C" fn()>,
9230}
9231
9232impl ::std::fmt::Debug for GtkStyleClass {
9233    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9234        f.debug_struct(&format!("GtkStyleClass @ {self:p}"))
9235            .field("parent_class", &self.parent_class)
9236            .field("realize", &self.realize)
9237            .field("unrealize", &self.unrealize)
9238            .field("copy", &self.copy)
9239            .field("clone", &self.clone)
9240            .field("init_from_rc", &self.init_from_rc)
9241            .field("set_background", &self.set_background)
9242            .field("render_icon", &self.render_icon)
9243            .field("draw_hline", &self.draw_hline)
9244            .field("draw_vline", &self.draw_vline)
9245            .field("draw_shadow", &self.draw_shadow)
9246            .field("draw_arrow", &self.draw_arrow)
9247            .field("draw_diamond", &self.draw_diamond)
9248            .field("draw_box", &self.draw_box)
9249            .field("draw_flat_box", &self.draw_flat_box)
9250            .field("draw_check", &self.draw_check)
9251            .field("draw_option", &self.draw_option)
9252            .field("draw_tab", &self.draw_tab)
9253            .field("draw_extension", &self.draw_extension)
9254            .field("draw_focus", &self.draw_focus)
9255            .field("draw_slider", &self.draw_slider)
9256            .field("draw_handle", &self.draw_handle)
9257            .field("draw_expander", &self.draw_expander)
9258            .field("draw_layout", &self.draw_layout)
9259            .field("draw_resize_grip", &self.draw_resize_grip)
9260            .field("draw_spinner", &self.draw_spinner)
9261            .field("_gtk_reserved1", &self._gtk_reserved1)
9262            .field("_gtk_reserved2", &self._gtk_reserved2)
9263            .field("_gtk_reserved3", &self._gtk_reserved3)
9264            .field("_gtk_reserved4", &self._gtk_reserved4)
9265            .field("_gtk_reserved5", &self._gtk_reserved5)
9266            .field("_gtk_reserved6", &self._gtk_reserved6)
9267            .field("_gtk_reserved7", &self._gtk_reserved7)
9268            .field("_gtk_reserved8", &self._gtk_reserved8)
9269            .field("_gtk_reserved9", &self._gtk_reserved9)
9270            .field("_gtk_reserved10", &self._gtk_reserved10)
9271            .field("_gtk_reserved11", &self._gtk_reserved11)
9272            .finish()
9273    }
9274}
9275
9276#[derive(Copy, Clone)]
9277#[repr(C)]
9278pub struct GtkStyleContextClass {
9279    pub parent_class: gobject::GObjectClass,
9280    pub changed: Option<unsafe extern "C" fn(*mut GtkStyleContext)>,
9281    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9282    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9283    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9284    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9285}
9286
9287impl ::std::fmt::Debug for GtkStyleContextClass {
9288    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9289        f.debug_struct(&format!("GtkStyleContextClass @ {self:p}"))
9290            .field("parent_class", &self.parent_class)
9291            .field("changed", &self.changed)
9292            .field("_gtk_reserved1", &self._gtk_reserved1)
9293            .field("_gtk_reserved2", &self._gtk_reserved2)
9294            .field("_gtk_reserved3", &self._gtk_reserved3)
9295            .field("_gtk_reserved4", &self._gtk_reserved4)
9296            .finish()
9297    }
9298}
9299
9300#[repr(C)]
9301#[allow(dead_code)]
9302pub struct _GtkStyleContextPrivate {
9303    _data: [u8; 0],
9304    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9305}
9306
9307pub type GtkStyleContextPrivate = _GtkStyleContextPrivate;
9308
9309#[derive(Copy, Clone)]
9310#[repr(C)]
9311pub struct GtkStylePropertiesClass {
9312    pub parent_class: gobject::GObjectClass,
9313    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9314    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9315    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9316    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9317}
9318
9319impl ::std::fmt::Debug for GtkStylePropertiesClass {
9320    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9321        f.debug_struct(&format!("GtkStylePropertiesClass @ {self:p}"))
9322            .field("_gtk_reserved1", &self._gtk_reserved1)
9323            .field("_gtk_reserved2", &self._gtk_reserved2)
9324            .field("_gtk_reserved3", &self._gtk_reserved3)
9325            .field("_gtk_reserved4", &self._gtk_reserved4)
9326            .finish()
9327    }
9328}
9329
9330#[repr(C)]
9331#[allow(dead_code)]
9332pub struct _GtkStylePropertiesPrivate {
9333    _data: [u8; 0],
9334    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9335}
9336
9337pub type GtkStylePropertiesPrivate = _GtkStylePropertiesPrivate;
9338
9339#[derive(Copy, Clone)]
9340#[repr(C)]
9341pub struct GtkStyleProviderIface {
9342    pub g_iface: gobject::GTypeInterface,
9343    pub get_style: Option<
9344        unsafe extern "C" fn(*mut GtkStyleProvider, *mut GtkWidgetPath) -> *mut GtkStyleProperties,
9345    >,
9346    pub get_style_property: Option<
9347        unsafe extern "C" fn(
9348            *mut GtkStyleProvider,
9349            *mut GtkWidgetPath,
9350            GtkStateFlags,
9351            *mut gobject::GParamSpec,
9352            *mut gobject::GValue,
9353        ) -> gboolean,
9354    >,
9355    pub get_icon_factory: Option<
9356        unsafe extern "C" fn(*mut GtkStyleProvider, *mut GtkWidgetPath) -> *mut GtkIconFactory,
9357    >,
9358}
9359
9360impl ::std::fmt::Debug for GtkStyleProviderIface {
9361    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9362        f.debug_struct(&format!("GtkStyleProviderIface @ {self:p}"))
9363            .field("get_style", &self.get_style)
9364            .field("get_style_property", &self.get_style_property)
9365            .field("get_icon_factory", &self.get_icon_factory)
9366            .finish()
9367    }
9368}
9369
9370#[derive(Copy, Clone)]
9371#[repr(C)]
9372pub struct GtkSwitchAccessibleClass {
9373    pub parent_class: GtkWidgetAccessibleClass,
9374}
9375
9376impl ::std::fmt::Debug for GtkSwitchAccessibleClass {
9377    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9378        f.debug_struct(&format!("GtkSwitchAccessibleClass @ {self:p}"))
9379            .field("parent_class", &self.parent_class)
9380            .finish()
9381    }
9382}
9383
9384#[repr(C)]
9385#[allow(dead_code)]
9386pub struct _GtkSwitchAccessiblePrivate {
9387    _data: [u8; 0],
9388    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9389}
9390
9391pub type GtkSwitchAccessiblePrivate = _GtkSwitchAccessiblePrivate;
9392
9393#[derive(Copy, Clone)]
9394#[repr(C)]
9395pub struct GtkSwitchClass {
9396    pub parent_class: GtkWidgetClass,
9397    pub activate: Option<unsafe extern "C" fn(*mut GtkSwitch)>,
9398    pub state_set: Option<unsafe extern "C" fn(*mut GtkSwitch, gboolean) -> gboolean>,
9399    pub _switch_padding_1: Option<unsafe extern "C" fn()>,
9400    pub _switch_padding_2: Option<unsafe extern "C" fn()>,
9401    pub _switch_padding_3: Option<unsafe extern "C" fn()>,
9402    pub _switch_padding_4: Option<unsafe extern "C" fn()>,
9403    pub _switch_padding_5: Option<unsafe extern "C" fn()>,
9404}
9405
9406impl ::std::fmt::Debug for GtkSwitchClass {
9407    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9408        f.debug_struct(&format!("GtkSwitchClass @ {self:p}"))
9409            .field("parent_class", &self.parent_class)
9410            .field("activate", &self.activate)
9411            .field("state_set", &self.state_set)
9412            .field("_switch_padding_1", &self._switch_padding_1)
9413            .field("_switch_padding_2", &self._switch_padding_2)
9414            .field("_switch_padding_3", &self._switch_padding_3)
9415            .field("_switch_padding_4", &self._switch_padding_4)
9416            .field("_switch_padding_5", &self._switch_padding_5)
9417            .finish()
9418    }
9419}
9420
9421#[repr(C)]
9422#[allow(dead_code)]
9423pub struct _GtkSwitchPrivate {
9424    _data: [u8; 0],
9425    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9426}
9427
9428pub type GtkSwitchPrivate = _GtkSwitchPrivate;
9429
9430#[repr(C)]
9431#[allow(dead_code)]
9432pub struct GtkSymbolicColor {
9433    _data: [u8; 0],
9434    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9435}
9436
9437impl ::std::fmt::Debug for GtkSymbolicColor {
9438    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9439        f.debug_struct(&format!("GtkSymbolicColor @ {self:p}"))
9440            .finish()
9441    }
9442}
9443
9444#[repr(C)]
9445#[allow(dead_code)]
9446pub struct GtkTableChild {
9447    pub widget: *mut GtkWidget,
9448    pub left_attach: u16,
9449    pub right_attach: u16,
9450    pub top_attach: u16,
9451    pub bottom_attach: u16,
9452    pub xpadding: u16,
9453    pub ypadding: u16,
9454    pub xexpand: c_uint,
9455    _truncated_record_marker: c_void,
9456    // field yexpand has incomplete type
9457}
9458
9459impl ::std::fmt::Debug for GtkTableChild {
9460    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9461        f.debug_struct(&format!("GtkTableChild @ {self:p}"))
9462            .field("widget", &self.widget)
9463            .field("left_attach", &self.left_attach)
9464            .field("right_attach", &self.right_attach)
9465            .field("top_attach", &self.top_attach)
9466            .field("bottom_attach", &self.bottom_attach)
9467            .field("xpadding", &self.xpadding)
9468            .field("ypadding", &self.ypadding)
9469            .field("xexpand", &self.xexpand)
9470            .finish()
9471    }
9472}
9473
9474#[derive(Copy, Clone)]
9475#[repr(C)]
9476pub struct GtkTableClass {
9477    pub parent_class: GtkContainerClass,
9478    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9479    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9480    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9481    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9482}
9483
9484impl ::std::fmt::Debug for GtkTableClass {
9485    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9486        f.debug_struct(&format!("GtkTableClass @ {self:p}"))
9487            .field("parent_class", &self.parent_class)
9488            .field("_gtk_reserved1", &self._gtk_reserved1)
9489            .field("_gtk_reserved2", &self._gtk_reserved2)
9490            .field("_gtk_reserved3", &self._gtk_reserved3)
9491            .field("_gtk_reserved4", &self._gtk_reserved4)
9492            .finish()
9493    }
9494}
9495
9496#[repr(C)]
9497#[allow(dead_code)]
9498pub struct _GtkTablePrivate {
9499    _data: [u8; 0],
9500    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9501}
9502
9503pub type GtkTablePrivate = _GtkTablePrivate;
9504
9505#[repr(C)]
9506#[allow(dead_code)]
9507pub struct GtkTableRowCol {
9508    pub requisition: u16,
9509    pub allocation: u16,
9510    pub spacing: u16,
9511    pub need_expand: c_uint,
9512    _truncated_record_marker: c_void,
9513    // field need_shrink has incomplete type
9514}
9515
9516impl ::std::fmt::Debug for GtkTableRowCol {
9517    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9518        f.debug_struct(&format!("GtkTableRowCol @ {self:p}"))
9519            .field("requisition", &self.requisition)
9520            .field("allocation", &self.allocation)
9521            .field("spacing", &self.spacing)
9522            .field("need_expand", &self.need_expand)
9523            .finish()
9524    }
9525}
9526
9527#[derive(Copy, Clone)]
9528#[repr(C)]
9529pub struct GtkTargetEntry {
9530    pub target: *mut c_char,
9531    pub flags: c_uint,
9532    pub info: c_uint,
9533}
9534
9535impl ::std::fmt::Debug for GtkTargetEntry {
9536    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9537        f.debug_struct(&format!("GtkTargetEntry @ {self:p}"))
9538            .field("target", &self.target)
9539            .field("flags", &self.flags)
9540            .field("info", &self.info)
9541            .finish()
9542    }
9543}
9544
9545#[repr(C)]
9546#[allow(dead_code)]
9547pub struct GtkTargetList {
9548    _data: [u8; 0],
9549    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9550}
9551
9552impl ::std::fmt::Debug for GtkTargetList {
9553    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9554        f.debug_struct(&format!("GtkTargetList @ {self:p}"))
9555            .finish()
9556    }
9557}
9558
9559#[derive(Copy, Clone)]
9560#[repr(C)]
9561pub struct GtkTargetPair {
9562    pub target: gdk::GdkAtom,
9563    pub flags: c_uint,
9564    pub info: c_uint,
9565}
9566
9567impl ::std::fmt::Debug for GtkTargetPair {
9568    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9569        f.debug_struct(&format!("GtkTargetPair @ {self:p}"))
9570            .field("target", &self.target)
9571            .field("flags", &self.flags)
9572            .field("info", &self.info)
9573            .finish()
9574    }
9575}
9576
9577#[derive(Copy, Clone)]
9578#[repr(C)]
9579pub struct GtkTearoffMenuItemClass {
9580    pub parent_class: GtkMenuItemClass,
9581    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9582    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9583    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9584    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9585}
9586
9587impl ::std::fmt::Debug for GtkTearoffMenuItemClass {
9588    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9589        f.debug_struct(&format!("GtkTearoffMenuItemClass @ {self:p}"))
9590            .field("parent_class", &self.parent_class)
9591            .field("_gtk_reserved1", &self._gtk_reserved1)
9592            .field("_gtk_reserved2", &self._gtk_reserved2)
9593            .field("_gtk_reserved3", &self._gtk_reserved3)
9594            .field("_gtk_reserved4", &self._gtk_reserved4)
9595            .finish()
9596    }
9597}
9598
9599#[repr(C)]
9600#[allow(dead_code)]
9601pub struct _GtkTearoffMenuItemPrivate {
9602    _data: [u8; 0],
9603    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9604}
9605
9606pub type GtkTearoffMenuItemPrivate = _GtkTearoffMenuItemPrivate;
9607
9608#[repr(C)]
9609#[allow(dead_code)]
9610pub struct GtkTextAppearance {
9611    pub bg_color: gdk::GdkColor,
9612    pub fg_color: gdk::GdkColor,
9613    pub rise: c_int,
9614    pub underline: c_uint,
9615    _truncated_record_marker: c_void,
9616    // field strikethrough has incomplete type
9617}
9618
9619impl ::std::fmt::Debug for GtkTextAppearance {
9620    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9621        f.debug_struct(&format!("GtkTextAppearance @ {self:p}"))
9622            .field("bg_color", &self.bg_color)
9623            .field("fg_color", &self.fg_color)
9624            .field("rise", &self.rise)
9625            .field("underline", &self.underline)
9626            .finish()
9627    }
9628}
9629
9630#[repr(C)]
9631#[allow(dead_code)]
9632pub struct GtkTextAttributes {
9633    pub refcount: c_uint,
9634    _truncated_record_marker: c_void,
9635    // /*Ignored*/field appearance has incomplete type
9636}
9637
9638impl ::std::fmt::Debug for GtkTextAttributes {
9639    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9640        f.debug_struct(&format!("GtkTextAttributes @ {self:p}"))
9641            .finish()
9642    }
9643}
9644
9645#[repr(C)]
9646#[allow(dead_code)]
9647pub struct _GtkTextBTree {
9648    _data: [u8; 0],
9649    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9650}
9651
9652pub type GtkTextBTree = _GtkTextBTree;
9653
9654#[derive(Copy, Clone)]
9655#[repr(C)]
9656pub struct GtkTextBufferClass {
9657    pub parent_class: gobject::GObjectClass,
9658    pub insert_text:
9659        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *const c_char, c_int)>,
9660    pub insert_pixbuf: Option<
9661        unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut gdk_pixbuf::GdkPixbuf),
9662    >,
9663    pub insert_child_anchor:
9664        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextChildAnchor)>,
9665    pub delete_range:
9666        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextIter)>,
9667    pub changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
9668    pub modified_changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
9669    pub mark_set:
9670        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *const GtkTextIter, *mut GtkTextMark)>,
9671    pub mark_deleted: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextMark)>,
9672    pub apply_tag: Option<
9673        unsafe extern "C" fn(
9674            *mut GtkTextBuffer,
9675            *mut GtkTextTag,
9676            *const GtkTextIter,
9677            *const GtkTextIter,
9678        ),
9679    >,
9680    pub remove_tag: Option<
9681        unsafe extern "C" fn(
9682            *mut GtkTextBuffer,
9683            *mut GtkTextTag,
9684            *const GtkTextIter,
9685            *const GtkTextIter,
9686        ),
9687    >,
9688    pub begin_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
9689    pub end_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
9690    pub paste_done: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkClipboard)>,
9691    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9692    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9693    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9694    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9695}
9696
9697impl ::std::fmt::Debug for GtkTextBufferClass {
9698    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9699        f.debug_struct(&format!("GtkTextBufferClass @ {self:p}"))
9700            .field("parent_class", &self.parent_class)
9701            .field("insert_text", &self.insert_text)
9702            .field("insert_pixbuf", &self.insert_pixbuf)
9703            .field("insert_child_anchor", &self.insert_child_anchor)
9704            .field("delete_range", &self.delete_range)
9705            .field("changed", &self.changed)
9706            .field("modified_changed", &self.modified_changed)
9707            .field("mark_set", &self.mark_set)
9708            .field("mark_deleted", &self.mark_deleted)
9709            .field("apply_tag", &self.apply_tag)
9710            .field("remove_tag", &self.remove_tag)
9711            .field("begin_user_action", &self.begin_user_action)
9712            .field("end_user_action", &self.end_user_action)
9713            .field("paste_done", &self.paste_done)
9714            .field("_gtk_reserved1", &self._gtk_reserved1)
9715            .field("_gtk_reserved2", &self._gtk_reserved2)
9716            .field("_gtk_reserved3", &self._gtk_reserved3)
9717            .field("_gtk_reserved4", &self._gtk_reserved4)
9718            .finish()
9719    }
9720}
9721
9722#[repr(C)]
9723#[allow(dead_code)]
9724pub struct _GtkTextBufferPrivate {
9725    _data: [u8; 0],
9726    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9727}
9728
9729pub type GtkTextBufferPrivate = _GtkTextBufferPrivate;
9730
9731#[derive(Copy, Clone)]
9732#[repr(C)]
9733pub struct GtkTextCellAccessibleClass {
9734    pub parent_class: GtkRendererCellAccessibleClass,
9735}
9736
9737impl ::std::fmt::Debug for GtkTextCellAccessibleClass {
9738    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9739        f.debug_struct(&format!("GtkTextCellAccessibleClass @ {self:p}"))
9740            .field("parent_class", &self.parent_class)
9741            .finish()
9742    }
9743}
9744
9745#[repr(C)]
9746#[allow(dead_code)]
9747pub struct _GtkTextCellAccessiblePrivate {
9748    _data: [u8; 0],
9749    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9750}
9751
9752pub type GtkTextCellAccessiblePrivate = _GtkTextCellAccessiblePrivate;
9753
9754#[derive(Copy, Clone)]
9755#[repr(C)]
9756pub struct GtkTextChildAnchorClass {
9757    pub parent_class: gobject::GObjectClass,
9758    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9759    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9760    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9761    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9762}
9763
9764impl ::std::fmt::Debug for GtkTextChildAnchorClass {
9765    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9766        f.debug_struct(&format!("GtkTextChildAnchorClass @ {self:p}"))
9767            .field("parent_class", &self.parent_class)
9768            .field("_gtk_reserved1", &self._gtk_reserved1)
9769            .field("_gtk_reserved2", &self._gtk_reserved2)
9770            .field("_gtk_reserved3", &self._gtk_reserved3)
9771            .field("_gtk_reserved4", &self._gtk_reserved4)
9772            .finish()
9773    }
9774}
9775
9776#[derive(Copy, Clone)]
9777#[repr(C)]
9778pub struct GtkTextIter {
9779    pub dummy1: gpointer,
9780    pub dummy2: gpointer,
9781    pub dummy3: c_int,
9782    pub dummy4: c_int,
9783    pub dummy5: c_int,
9784    pub dummy6: c_int,
9785    pub dummy7: c_int,
9786    pub dummy8: c_int,
9787    pub dummy9: gpointer,
9788    pub dummy10: gpointer,
9789    pub dummy11: c_int,
9790    pub dummy12: c_int,
9791    pub dummy13: c_int,
9792    pub dummy14: gpointer,
9793}
9794
9795impl ::std::fmt::Debug for GtkTextIter {
9796    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9797        f.debug_struct(&format!("GtkTextIter @ {self:p}")).finish()
9798    }
9799}
9800
9801#[derive(Copy, Clone)]
9802#[repr(C)]
9803pub struct GtkTextMarkClass {
9804    pub parent_class: gobject::GObjectClass,
9805    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9806    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9807    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9808    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9809}
9810
9811impl ::std::fmt::Debug for GtkTextMarkClass {
9812    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9813        f.debug_struct(&format!("GtkTextMarkClass @ {self:p}"))
9814            .field("parent_class", &self.parent_class)
9815            .field("_gtk_reserved1", &self._gtk_reserved1)
9816            .field("_gtk_reserved2", &self._gtk_reserved2)
9817            .field("_gtk_reserved3", &self._gtk_reserved3)
9818            .field("_gtk_reserved4", &self._gtk_reserved4)
9819            .finish()
9820    }
9821}
9822
9823#[derive(Copy, Clone)]
9824#[repr(C)]
9825pub struct GtkTextTagClass {
9826    pub parent_class: gobject::GObjectClass,
9827    pub event: Option<
9828        unsafe extern "C" fn(
9829            *mut GtkTextTag,
9830            *mut gobject::GObject,
9831            *mut gdk::GdkEvent,
9832            *const GtkTextIter,
9833        ) -> gboolean,
9834    >,
9835    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9836    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9837    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9838    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9839}
9840
9841impl ::std::fmt::Debug for GtkTextTagClass {
9842    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9843        f.debug_struct(&format!("GtkTextTagClass @ {self:p}"))
9844            .field("parent_class", &self.parent_class)
9845            .field("event", &self.event)
9846            .field("_gtk_reserved1", &self._gtk_reserved1)
9847            .field("_gtk_reserved2", &self._gtk_reserved2)
9848            .field("_gtk_reserved3", &self._gtk_reserved3)
9849            .field("_gtk_reserved4", &self._gtk_reserved4)
9850            .finish()
9851    }
9852}
9853
9854#[repr(C)]
9855#[allow(dead_code)]
9856pub struct _GtkTextTagPrivate {
9857    _data: [u8; 0],
9858    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9859}
9860
9861pub type GtkTextTagPrivate = _GtkTextTagPrivate;
9862
9863#[derive(Copy, Clone)]
9864#[repr(C)]
9865pub struct GtkTextTagTableClass {
9866    pub parent_class: gobject::GObjectClass,
9867    pub tag_changed: Option<unsafe extern "C" fn(*mut GtkTextTagTable, *mut GtkTextTag, gboolean)>,
9868    pub tag_added: Option<unsafe extern "C" fn(*mut GtkTextTagTable, *mut GtkTextTag)>,
9869    pub tag_removed: Option<unsafe extern "C" fn(*mut GtkTextTagTable, *mut GtkTextTag)>,
9870    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9871    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9872    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9873    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9874}
9875
9876impl ::std::fmt::Debug for GtkTextTagTableClass {
9877    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9878        f.debug_struct(&format!("GtkTextTagTableClass @ {self:p}"))
9879            .field("parent_class", &self.parent_class)
9880            .field("tag_changed", &self.tag_changed)
9881            .field("tag_added", &self.tag_added)
9882            .field("tag_removed", &self.tag_removed)
9883            .field("_gtk_reserved1", &self._gtk_reserved1)
9884            .field("_gtk_reserved2", &self._gtk_reserved2)
9885            .field("_gtk_reserved3", &self._gtk_reserved3)
9886            .field("_gtk_reserved4", &self._gtk_reserved4)
9887            .finish()
9888    }
9889}
9890
9891#[repr(C)]
9892#[allow(dead_code)]
9893pub struct _GtkTextTagTablePrivate {
9894    _data: [u8; 0],
9895    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9896}
9897
9898pub type GtkTextTagTablePrivate = _GtkTextTagTablePrivate;
9899
9900#[derive(Copy, Clone)]
9901#[repr(C)]
9902pub struct GtkTextViewAccessibleClass {
9903    pub parent_class: GtkContainerAccessibleClass,
9904}
9905
9906impl ::std::fmt::Debug for GtkTextViewAccessibleClass {
9907    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9908        f.debug_struct(&format!("GtkTextViewAccessibleClass @ {self:p}"))
9909            .field("parent_class", &self.parent_class)
9910            .finish()
9911    }
9912}
9913
9914#[repr(C)]
9915#[allow(dead_code)]
9916pub struct _GtkTextViewAccessiblePrivate {
9917    _data: [u8; 0],
9918    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9919}
9920
9921pub type GtkTextViewAccessiblePrivate = _GtkTextViewAccessiblePrivate;
9922
9923#[derive(Copy, Clone)]
9924#[repr(C)]
9925pub struct GtkTextViewClass {
9926    pub parent_class: GtkContainerClass,
9927    pub populate_popup: Option<unsafe extern "C" fn(*mut GtkTextView, *mut GtkWidget)>,
9928    pub move_cursor:
9929        Option<unsafe extern "C" fn(*mut GtkTextView, GtkMovementStep, c_int, gboolean)>,
9930    pub set_anchor: Option<unsafe extern "C" fn(*mut GtkTextView)>,
9931    pub insert_at_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, *const c_char)>,
9932    pub delete_from_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, GtkDeleteType, c_int)>,
9933    pub backspace: Option<unsafe extern "C" fn(*mut GtkTextView)>,
9934    pub cut_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
9935    pub copy_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
9936    pub paste_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
9937    pub toggle_overwrite: Option<unsafe extern "C" fn(*mut GtkTextView)>,
9938    pub create_buffer: Option<unsafe extern "C" fn(*mut GtkTextView) -> *mut GtkTextBuffer>,
9939    pub draw_layer:
9940        Option<unsafe extern "C" fn(*mut GtkTextView, GtkTextViewLayer, *mut cairo::cairo_t)>,
9941    pub extend_selection: Option<
9942        unsafe extern "C" fn(
9943            *mut GtkTextView,
9944            GtkTextExtendSelection,
9945            *const GtkTextIter,
9946            *mut GtkTextIter,
9947            *mut GtkTextIter,
9948        ) -> gboolean,
9949    >,
9950    pub insert_emoji: Option<unsafe extern "C" fn(*mut GtkTextView)>,
9951    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
9952    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
9953    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
9954    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
9955}
9956
9957impl ::std::fmt::Debug for GtkTextViewClass {
9958    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9959        f.debug_struct(&format!("GtkTextViewClass @ {self:p}"))
9960            .field("parent_class", &self.parent_class)
9961            .field("populate_popup", &self.populate_popup)
9962            .field("move_cursor", &self.move_cursor)
9963            .field("set_anchor", &self.set_anchor)
9964            .field("insert_at_cursor", &self.insert_at_cursor)
9965            .field("delete_from_cursor", &self.delete_from_cursor)
9966            .field("backspace", &self.backspace)
9967            .field("cut_clipboard", &self.cut_clipboard)
9968            .field("copy_clipboard", &self.copy_clipboard)
9969            .field("paste_clipboard", &self.paste_clipboard)
9970            .field("toggle_overwrite", &self.toggle_overwrite)
9971            .field("create_buffer", &self.create_buffer)
9972            .field("draw_layer", &self.draw_layer)
9973            .field("extend_selection", &self.extend_selection)
9974            .field("insert_emoji", &self.insert_emoji)
9975            .field("_gtk_reserved1", &self._gtk_reserved1)
9976            .field("_gtk_reserved2", &self._gtk_reserved2)
9977            .field("_gtk_reserved3", &self._gtk_reserved3)
9978            .field("_gtk_reserved4", &self._gtk_reserved4)
9979            .finish()
9980    }
9981}
9982
9983#[repr(C)]
9984#[allow(dead_code)]
9985pub struct _GtkTextViewPrivate {
9986    _data: [u8; 0],
9987    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9988}
9989
9990pub type GtkTextViewPrivate = _GtkTextViewPrivate;
9991
9992#[repr(C)]
9993#[allow(dead_code)]
9994pub struct _GtkThemeEngine {
9995    _data: [u8; 0],
9996    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9997}
9998
9999pub type GtkThemeEngine = _GtkThemeEngine;
10000
10001#[derive(Copy, Clone)]
10002#[repr(C)]
10003pub struct GtkThemingEngineClass {
10004    pub parent_class: gobject::GObjectClass,
10005    pub render_line: Option<
10006        unsafe extern "C" fn(
10007            *mut GtkThemingEngine,
10008            *mut cairo::cairo_t,
10009            c_double,
10010            c_double,
10011            c_double,
10012            c_double,
10013        ),
10014    >,
10015    pub render_background: Option<
10016        unsafe extern "C" fn(
10017            *mut GtkThemingEngine,
10018            *mut cairo::cairo_t,
10019            c_double,
10020            c_double,
10021            c_double,
10022            c_double,
10023        ),
10024    >,
10025    pub render_frame: Option<
10026        unsafe extern "C" fn(
10027            *mut GtkThemingEngine,
10028            *mut cairo::cairo_t,
10029            c_double,
10030            c_double,
10031            c_double,
10032            c_double,
10033        ),
10034    >,
10035    pub render_frame_gap: Option<
10036        unsafe extern "C" fn(
10037            *mut GtkThemingEngine,
10038            *mut cairo::cairo_t,
10039            c_double,
10040            c_double,
10041            c_double,
10042            c_double,
10043            GtkPositionType,
10044            c_double,
10045            c_double,
10046        ),
10047    >,
10048    pub render_extension: Option<
10049        unsafe extern "C" fn(
10050            *mut GtkThemingEngine,
10051            *mut cairo::cairo_t,
10052            c_double,
10053            c_double,
10054            c_double,
10055            c_double,
10056            GtkPositionType,
10057        ),
10058    >,
10059    pub render_check: Option<
10060        unsafe extern "C" fn(
10061            *mut GtkThemingEngine,
10062            *mut cairo::cairo_t,
10063            c_double,
10064            c_double,
10065            c_double,
10066            c_double,
10067        ),
10068    >,
10069    pub render_option: Option<
10070        unsafe extern "C" fn(
10071            *mut GtkThemingEngine,
10072            *mut cairo::cairo_t,
10073            c_double,
10074            c_double,
10075            c_double,
10076            c_double,
10077        ),
10078    >,
10079    pub render_arrow: Option<
10080        unsafe extern "C" fn(
10081            *mut GtkThemingEngine,
10082            *mut cairo::cairo_t,
10083            c_double,
10084            c_double,
10085            c_double,
10086            c_double,
10087        ),
10088    >,
10089    pub render_expander: Option<
10090        unsafe extern "C" fn(
10091            *mut GtkThemingEngine,
10092            *mut cairo::cairo_t,
10093            c_double,
10094            c_double,
10095            c_double,
10096            c_double,
10097        ),
10098    >,
10099    pub render_focus: Option<
10100        unsafe extern "C" fn(
10101            *mut GtkThemingEngine,
10102            *mut cairo::cairo_t,
10103            c_double,
10104            c_double,
10105            c_double,
10106            c_double,
10107        ),
10108    >,
10109    pub render_layout: Option<
10110        unsafe extern "C" fn(
10111            *mut GtkThemingEngine,
10112            *mut cairo::cairo_t,
10113            c_double,
10114            c_double,
10115            *mut pango::PangoLayout,
10116        ),
10117    >,
10118    pub render_slider: Option<
10119        unsafe extern "C" fn(
10120            *mut GtkThemingEngine,
10121            *mut cairo::cairo_t,
10122            c_double,
10123            c_double,
10124            c_double,
10125            c_double,
10126            GtkOrientation,
10127        ),
10128    >,
10129    pub render_handle: Option<
10130        unsafe extern "C" fn(
10131            *mut GtkThemingEngine,
10132            *mut cairo::cairo_t,
10133            c_double,
10134            c_double,
10135            c_double,
10136            c_double,
10137        ),
10138    >,
10139    pub render_activity: Option<
10140        unsafe extern "C" fn(
10141            *mut GtkThemingEngine,
10142            *mut cairo::cairo_t,
10143            c_double,
10144            c_double,
10145            c_double,
10146            c_double,
10147        ),
10148    >,
10149    pub render_icon_pixbuf: Option<
10150        unsafe extern "C" fn(
10151            *mut GtkThemingEngine,
10152            *const GtkIconSource,
10153            GtkIconSize,
10154        ) -> *mut gdk_pixbuf::GdkPixbuf,
10155    >,
10156    pub render_icon: Option<
10157        unsafe extern "C" fn(
10158            *mut GtkThemingEngine,
10159            *mut cairo::cairo_t,
10160            *mut gdk_pixbuf::GdkPixbuf,
10161            c_double,
10162            c_double,
10163        ),
10164    >,
10165    pub render_icon_surface: Option<
10166        unsafe extern "C" fn(
10167            *mut GtkThemingEngine,
10168            *mut cairo::cairo_t,
10169            *mut cairo::cairo_surface_t,
10170            c_double,
10171            c_double,
10172        ),
10173    >,
10174    pub padding: [gpointer; 14],
10175}
10176
10177impl ::std::fmt::Debug for GtkThemingEngineClass {
10178    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10179        f.debug_struct(&format!("GtkThemingEngineClass @ {self:p}"))
10180            .field("parent_class", &self.parent_class)
10181            .field("render_line", &self.render_line)
10182            .field("render_background", &self.render_background)
10183            .field("render_frame", &self.render_frame)
10184            .field("render_frame_gap", &self.render_frame_gap)
10185            .field("render_extension", &self.render_extension)
10186            .field("render_check", &self.render_check)
10187            .field("render_option", &self.render_option)
10188            .field("render_arrow", &self.render_arrow)
10189            .field("render_expander", &self.render_expander)
10190            .field("render_focus", &self.render_focus)
10191            .field("render_layout", &self.render_layout)
10192            .field("render_slider", &self.render_slider)
10193            .field("render_handle", &self.render_handle)
10194            .field("render_activity", &self.render_activity)
10195            .field("render_icon_pixbuf", &self.render_icon_pixbuf)
10196            .field("render_icon", &self.render_icon)
10197            .field("render_icon_surface", &self.render_icon_surface)
10198            .finish()
10199    }
10200}
10201
10202#[repr(C)]
10203#[allow(dead_code)]
10204pub struct _GtkThemingEnginePrivate {
10205    _data: [u8; 0],
10206    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10207}
10208
10209pub type GtkThemingEnginePrivate = _GtkThemingEnginePrivate;
10210
10211#[derive(Copy, Clone)]
10212#[repr(C)]
10213pub struct GtkToggleActionClass {
10214    pub parent_class: GtkActionClass,
10215    pub toggled: Option<unsafe extern "C" fn(*mut GtkToggleAction)>,
10216    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10217    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10218    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10219    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10220}
10221
10222impl ::std::fmt::Debug for GtkToggleActionClass {
10223    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10224        f.debug_struct(&format!("GtkToggleActionClass @ {self:p}"))
10225            .field("parent_class", &self.parent_class)
10226            .field("toggled", &self.toggled)
10227            .field("_gtk_reserved1", &self._gtk_reserved1)
10228            .field("_gtk_reserved2", &self._gtk_reserved2)
10229            .field("_gtk_reserved3", &self._gtk_reserved3)
10230            .field("_gtk_reserved4", &self._gtk_reserved4)
10231            .finish()
10232    }
10233}
10234
10235#[derive(Copy, Clone)]
10236#[repr(C)]
10237pub struct GtkToggleActionEntry {
10238    pub name: *const c_char,
10239    pub stock_id: *const c_char,
10240    pub label: *const c_char,
10241    pub accelerator: *const c_char,
10242    pub tooltip: *const c_char,
10243    pub callback: gobject::GCallback,
10244    pub is_active: gboolean,
10245}
10246
10247impl ::std::fmt::Debug for GtkToggleActionEntry {
10248    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10249        f.debug_struct(&format!("GtkToggleActionEntry @ {self:p}"))
10250            .field("name", &self.name)
10251            .field("stock_id", &self.stock_id)
10252            .field("label", &self.label)
10253            .field("accelerator", &self.accelerator)
10254            .field("tooltip", &self.tooltip)
10255            .field("callback", &self.callback)
10256            .field("is_active", &self.is_active)
10257            .finish()
10258    }
10259}
10260
10261#[repr(C)]
10262#[allow(dead_code)]
10263pub struct _GtkToggleActionPrivate {
10264    _data: [u8; 0],
10265    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10266}
10267
10268pub type GtkToggleActionPrivate = _GtkToggleActionPrivate;
10269
10270#[derive(Copy, Clone)]
10271#[repr(C)]
10272pub struct GtkToggleButtonAccessibleClass {
10273    pub parent_class: GtkButtonAccessibleClass,
10274}
10275
10276impl ::std::fmt::Debug for GtkToggleButtonAccessibleClass {
10277    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10278        f.debug_struct(&format!("GtkToggleButtonAccessibleClass @ {self:p}"))
10279            .field("parent_class", &self.parent_class)
10280            .finish()
10281    }
10282}
10283
10284#[repr(C)]
10285#[allow(dead_code)]
10286pub struct _GtkToggleButtonAccessiblePrivate {
10287    _data: [u8; 0],
10288    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10289}
10290
10291pub type GtkToggleButtonAccessiblePrivate = _GtkToggleButtonAccessiblePrivate;
10292
10293#[derive(Copy, Clone)]
10294#[repr(C)]
10295pub struct GtkToggleButtonClass {
10296    pub parent_class: GtkButtonClass,
10297    pub toggled: Option<unsafe extern "C" fn(*mut GtkToggleButton)>,
10298    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10299    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10300    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10301    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10302}
10303
10304impl ::std::fmt::Debug for GtkToggleButtonClass {
10305    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10306        f.debug_struct(&format!("GtkToggleButtonClass @ {self:p}"))
10307            .field("parent_class", &self.parent_class)
10308            .field("toggled", &self.toggled)
10309            .field("_gtk_reserved1", &self._gtk_reserved1)
10310            .field("_gtk_reserved2", &self._gtk_reserved2)
10311            .field("_gtk_reserved3", &self._gtk_reserved3)
10312            .field("_gtk_reserved4", &self._gtk_reserved4)
10313            .finish()
10314    }
10315}
10316
10317#[repr(C)]
10318#[allow(dead_code)]
10319pub struct _GtkToggleButtonPrivate {
10320    _data: [u8; 0],
10321    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10322}
10323
10324pub type GtkToggleButtonPrivate = _GtkToggleButtonPrivate;
10325
10326#[derive(Copy, Clone)]
10327#[repr(C)]
10328pub struct GtkToggleToolButtonClass {
10329    pub parent_class: GtkToolButtonClass,
10330    pub toggled: Option<unsafe extern "C" fn(*mut GtkToggleToolButton)>,
10331    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10332    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10333    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10334    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10335}
10336
10337impl ::std::fmt::Debug for GtkToggleToolButtonClass {
10338    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10339        f.debug_struct(&format!("GtkToggleToolButtonClass @ {self:p}"))
10340            .field("parent_class", &self.parent_class)
10341            .field("toggled", &self.toggled)
10342            .field("_gtk_reserved1", &self._gtk_reserved1)
10343            .field("_gtk_reserved2", &self._gtk_reserved2)
10344            .field("_gtk_reserved3", &self._gtk_reserved3)
10345            .field("_gtk_reserved4", &self._gtk_reserved4)
10346            .finish()
10347    }
10348}
10349
10350#[repr(C)]
10351#[allow(dead_code)]
10352pub struct _GtkToggleToolButtonPrivate {
10353    _data: [u8; 0],
10354    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10355}
10356
10357pub type GtkToggleToolButtonPrivate = _GtkToggleToolButtonPrivate;
10358
10359#[derive(Copy, Clone)]
10360#[repr(C)]
10361pub struct GtkToolButtonClass {
10362    pub parent_class: GtkToolItemClass,
10363    pub button_type: GType,
10364    pub clicked: Option<unsafe extern "C" fn(*mut GtkToolButton)>,
10365    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10366    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10367    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10368    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10369}
10370
10371impl ::std::fmt::Debug for GtkToolButtonClass {
10372    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10373        f.debug_struct(&format!("GtkToolButtonClass @ {self:p}"))
10374            .field("parent_class", &self.parent_class)
10375            .field("button_type", &self.button_type)
10376            .field("clicked", &self.clicked)
10377            .field("_gtk_reserved1", &self._gtk_reserved1)
10378            .field("_gtk_reserved2", &self._gtk_reserved2)
10379            .field("_gtk_reserved3", &self._gtk_reserved3)
10380            .field("_gtk_reserved4", &self._gtk_reserved4)
10381            .finish()
10382    }
10383}
10384
10385#[repr(C)]
10386#[allow(dead_code)]
10387pub struct _GtkToolButtonPrivate {
10388    _data: [u8; 0],
10389    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10390}
10391
10392pub type GtkToolButtonPrivate = _GtkToolButtonPrivate;
10393
10394#[derive(Copy, Clone)]
10395#[repr(C)]
10396pub struct GtkToolItemClass {
10397    pub parent_class: GtkBinClass,
10398    pub create_menu_proxy: Option<unsafe extern "C" fn(*mut GtkToolItem) -> gboolean>,
10399    pub toolbar_reconfigured: Option<unsafe extern "C" fn(*mut GtkToolItem)>,
10400    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10401    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10402    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10403    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10404}
10405
10406impl ::std::fmt::Debug for GtkToolItemClass {
10407    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10408        f.debug_struct(&format!("GtkToolItemClass @ {self:p}"))
10409            .field("parent_class", &self.parent_class)
10410            .field("create_menu_proxy", &self.create_menu_proxy)
10411            .field("toolbar_reconfigured", &self.toolbar_reconfigured)
10412            .field("_gtk_reserved1", &self._gtk_reserved1)
10413            .field("_gtk_reserved2", &self._gtk_reserved2)
10414            .field("_gtk_reserved3", &self._gtk_reserved3)
10415            .field("_gtk_reserved4", &self._gtk_reserved4)
10416            .finish()
10417    }
10418}
10419
10420#[derive(Copy, Clone)]
10421#[repr(C)]
10422pub struct GtkToolItemGroupClass {
10423    pub parent_class: GtkContainerClass,
10424    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10425    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10426    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10427    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10428}
10429
10430impl ::std::fmt::Debug for GtkToolItemGroupClass {
10431    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10432        f.debug_struct(&format!("GtkToolItemGroupClass @ {self:p}"))
10433            .field("parent_class", &self.parent_class)
10434            .field("_gtk_reserved1", &self._gtk_reserved1)
10435            .field("_gtk_reserved2", &self._gtk_reserved2)
10436            .field("_gtk_reserved3", &self._gtk_reserved3)
10437            .field("_gtk_reserved4", &self._gtk_reserved4)
10438            .finish()
10439    }
10440}
10441
10442#[repr(C)]
10443#[allow(dead_code)]
10444pub struct _GtkToolItemGroupPrivate {
10445    _data: [u8; 0],
10446    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10447}
10448
10449pub type GtkToolItemGroupPrivate = _GtkToolItemGroupPrivate;
10450
10451#[repr(C)]
10452#[allow(dead_code)]
10453pub struct _GtkToolItemPrivate {
10454    _data: [u8; 0],
10455    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10456}
10457
10458pub type GtkToolItemPrivate = _GtkToolItemPrivate;
10459
10460#[derive(Copy, Clone)]
10461#[repr(C)]
10462pub struct GtkToolPaletteClass {
10463    pub parent_class: GtkContainerClass,
10464    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10465    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10466    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10467    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10468}
10469
10470impl ::std::fmt::Debug for GtkToolPaletteClass {
10471    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10472        f.debug_struct(&format!("GtkToolPaletteClass @ {self:p}"))
10473            .field("parent_class", &self.parent_class)
10474            .field("_gtk_reserved1", &self._gtk_reserved1)
10475            .field("_gtk_reserved2", &self._gtk_reserved2)
10476            .field("_gtk_reserved3", &self._gtk_reserved3)
10477            .field("_gtk_reserved4", &self._gtk_reserved4)
10478            .finish()
10479    }
10480}
10481
10482#[repr(C)]
10483#[allow(dead_code)]
10484pub struct _GtkToolPalettePrivate {
10485    _data: [u8; 0],
10486    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10487}
10488
10489pub type GtkToolPalettePrivate = _GtkToolPalettePrivate;
10490
10491#[derive(Copy, Clone)]
10492#[repr(C)]
10493pub struct GtkToolShellIface {
10494    pub g_iface: gobject::GTypeInterface,
10495    pub get_icon_size: Option<unsafe extern "C" fn(*mut GtkToolShell) -> GtkIconSize>,
10496    pub get_orientation: Option<unsafe extern "C" fn(*mut GtkToolShell) -> GtkOrientation>,
10497    pub get_style: Option<unsafe extern "C" fn(*mut GtkToolShell) -> GtkToolbarStyle>,
10498    pub get_relief_style: Option<unsafe extern "C" fn(*mut GtkToolShell) -> GtkReliefStyle>,
10499    pub rebuild_menu: Option<unsafe extern "C" fn(*mut GtkToolShell)>,
10500    pub get_text_orientation: Option<unsafe extern "C" fn(*mut GtkToolShell) -> GtkOrientation>,
10501    pub get_text_alignment: Option<unsafe extern "C" fn(*mut GtkToolShell) -> c_float>,
10502    pub get_ellipsize_mode:
10503        Option<unsafe extern "C" fn(*mut GtkToolShell) -> pango::PangoEllipsizeMode>,
10504    pub get_text_size_group: Option<unsafe extern "C" fn(*mut GtkToolShell) -> *mut GtkSizeGroup>,
10505}
10506
10507impl ::std::fmt::Debug for GtkToolShellIface {
10508    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10509        f.debug_struct(&format!("GtkToolShellIface @ {self:p}"))
10510            .field("get_icon_size", &self.get_icon_size)
10511            .field("get_orientation", &self.get_orientation)
10512            .field("get_style", &self.get_style)
10513            .field("get_relief_style", &self.get_relief_style)
10514            .field("rebuild_menu", &self.rebuild_menu)
10515            .field("get_text_orientation", &self.get_text_orientation)
10516            .field("get_text_alignment", &self.get_text_alignment)
10517            .field("get_ellipsize_mode", &self.get_ellipsize_mode)
10518            .field("get_text_size_group", &self.get_text_size_group)
10519            .finish()
10520    }
10521}
10522
10523#[derive(Copy, Clone)]
10524#[repr(C)]
10525pub struct GtkToolbarClass {
10526    pub parent_class: GtkContainerClass,
10527    pub orientation_changed: Option<unsafe extern "C" fn(*mut GtkToolbar, GtkOrientation)>,
10528    pub style_changed: Option<unsafe extern "C" fn(*mut GtkToolbar, GtkToolbarStyle)>,
10529    pub popup_context_menu:
10530        Option<unsafe extern "C" fn(*mut GtkToolbar, c_int, c_int, c_int) -> gboolean>,
10531    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10532    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10533    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10534    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10535}
10536
10537impl ::std::fmt::Debug for GtkToolbarClass {
10538    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10539        f.debug_struct(&format!("GtkToolbarClass @ {self:p}"))
10540            .field("parent_class", &self.parent_class)
10541            .field("orientation_changed", &self.orientation_changed)
10542            .field("style_changed", &self.style_changed)
10543            .field("popup_context_menu", &self.popup_context_menu)
10544            .field("_gtk_reserved1", &self._gtk_reserved1)
10545            .field("_gtk_reserved2", &self._gtk_reserved2)
10546            .field("_gtk_reserved3", &self._gtk_reserved3)
10547            .field("_gtk_reserved4", &self._gtk_reserved4)
10548            .finish()
10549    }
10550}
10551
10552#[repr(C)]
10553#[allow(dead_code)]
10554pub struct _GtkToolbarPrivate {
10555    _data: [u8; 0],
10556    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10557}
10558
10559pub type GtkToolbarPrivate = _GtkToolbarPrivate;
10560
10561#[derive(Copy, Clone)]
10562#[repr(C)]
10563pub struct GtkToplevelAccessibleClass {
10564    pub parent_class: atk::AtkObjectClass,
10565}
10566
10567impl ::std::fmt::Debug for GtkToplevelAccessibleClass {
10568    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10569        f.debug_struct(&format!("GtkToplevelAccessibleClass @ {self:p}"))
10570            .field("parent_class", &self.parent_class)
10571            .finish()
10572    }
10573}
10574
10575#[repr(C)]
10576#[allow(dead_code)]
10577pub struct _GtkToplevelAccessiblePrivate {
10578    _data: [u8; 0],
10579    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10580}
10581
10582pub type GtkToplevelAccessiblePrivate = _GtkToplevelAccessiblePrivate;
10583
10584#[derive(Copy, Clone)]
10585#[repr(C)]
10586pub struct GtkTreeDragDestIface {
10587    pub g_iface: gobject::GTypeInterface,
10588    pub drag_data_received: Option<
10589        unsafe extern "C" fn(
10590            *mut GtkTreeDragDest,
10591            *mut GtkTreePath,
10592            *mut GtkSelectionData,
10593        ) -> gboolean,
10594    >,
10595    pub row_drop_possible: Option<
10596        unsafe extern "C" fn(
10597            *mut GtkTreeDragDest,
10598            *mut GtkTreePath,
10599            *mut GtkSelectionData,
10600        ) -> gboolean,
10601    >,
10602}
10603
10604impl ::std::fmt::Debug for GtkTreeDragDestIface {
10605    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10606        f.debug_struct(&format!("GtkTreeDragDestIface @ {self:p}"))
10607            .field("drag_data_received", &self.drag_data_received)
10608            .field("row_drop_possible", &self.row_drop_possible)
10609            .finish()
10610    }
10611}
10612
10613#[derive(Copy, Clone)]
10614#[repr(C)]
10615pub struct GtkTreeDragSourceIface {
10616    pub g_iface: gobject::GTypeInterface,
10617    pub row_draggable:
10618        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
10619    pub drag_data_get: Option<
10620        unsafe extern "C" fn(
10621            *mut GtkTreeDragSource,
10622            *mut GtkTreePath,
10623            *mut GtkSelectionData,
10624        ) -> gboolean,
10625    >,
10626    pub drag_data_delete:
10627        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
10628}
10629
10630impl ::std::fmt::Debug for GtkTreeDragSourceIface {
10631    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10632        f.debug_struct(&format!("GtkTreeDragSourceIface @ {self:p}"))
10633            .field("row_draggable", &self.row_draggable)
10634            .field("drag_data_get", &self.drag_data_get)
10635            .field("drag_data_delete", &self.drag_data_delete)
10636            .finish()
10637    }
10638}
10639
10640#[derive(Copy, Clone)]
10641#[repr(C)]
10642pub struct GtkTreeIter {
10643    pub stamp: c_int,
10644    pub user_data: gpointer,
10645    pub user_data2: gpointer,
10646    pub user_data3: gpointer,
10647}
10648
10649impl ::std::fmt::Debug for GtkTreeIter {
10650    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10651        f.debug_struct(&format!("GtkTreeIter @ {self:p}"))
10652            .field("stamp", &self.stamp)
10653            .field("user_data", &self.user_data)
10654            .field("user_data2", &self.user_data2)
10655            .field("user_data3", &self.user_data3)
10656            .finish()
10657    }
10658}
10659
10660#[derive(Copy, Clone)]
10661#[repr(C)]
10662pub struct GtkTreeModelFilterClass {
10663    pub parent_class: gobject::GObjectClass,
10664    pub visible: Option<
10665        unsafe extern "C" fn(
10666            *mut GtkTreeModelFilter,
10667            *mut GtkTreeModel,
10668            *mut GtkTreeIter,
10669        ) -> gboolean,
10670    >,
10671    pub modify: Option<
10672        unsafe extern "C" fn(
10673            *mut GtkTreeModelFilter,
10674            *mut GtkTreeModel,
10675            *mut GtkTreeIter,
10676            *mut gobject::GValue,
10677            c_int,
10678        ),
10679    >,
10680    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10681    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10682    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10683    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10684}
10685
10686impl ::std::fmt::Debug for GtkTreeModelFilterClass {
10687    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10688        f.debug_struct(&format!("GtkTreeModelFilterClass @ {self:p}"))
10689            .field("parent_class", &self.parent_class)
10690            .field("visible", &self.visible)
10691            .field("modify", &self.modify)
10692            .field("_gtk_reserved1", &self._gtk_reserved1)
10693            .field("_gtk_reserved2", &self._gtk_reserved2)
10694            .field("_gtk_reserved3", &self._gtk_reserved3)
10695            .field("_gtk_reserved4", &self._gtk_reserved4)
10696            .finish()
10697    }
10698}
10699
10700#[repr(C)]
10701#[allow(dead_code)]
10702pub struct _GtkTreeModelFilterPrivate {
10703    _data: [u8; 0],
10704    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10705}
10706
10707pub type GtkTreeModelFilterPrivate = _GtkTreeModelFilterPrivate;
10708
10709#[derive(Copy, Clone)]
10710#[repr(C)]
10711pub struct GtkTreeModelIface {
10712    pub g_iface: gobject::GTypeInterface,
10713    pub row_changed:
10714        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
10715    pub row_inserted:
10716        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
10717    pub row_has_child_toggled:
10718        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
10719    pub row_deleted: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath)>,
10720    pub rows_reordered: Option<
10721        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, *mut c_int),
10722    >,
10723    pub get_flags: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> GtkTreeModelFlags>,
10724    pub get_n_columns: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> c_int>,
10725    pub get_column_type: Option<unsafe extern "C" fn(*mut GtkTreeModel, c_int) -> GType>,
10726    pub get_iter: Option<
10727        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
10728    >,
10729    pub get_path:
10730        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> *mut GtkTreePath>,
10731    pub get_value: Option<
10732        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, c_int, *mut gobject::GValue),
10733    >,
10734    pub iter_next: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
10735    pub iter_previous:
10736        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
10737    pub iter_children: Option<
10738        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
10739    >,
10740    pub iter_has_child:
10741        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
10742    pub iter_n_children: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> c_int>,
10743    pub iter_nth_child: Option<
10744        unsafe extern "C" fn(
10745            *mut GtkTreeModel,
10746            *mut GtkTreeIter,
10747            *mut GtkTreeIter,
10748            c_int,
10749        ) -> gboolean,
10750    >,
10751    pub iter_parent: Option<
10752        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
10753    >,
10754    pub ref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
10755    pub unref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
10756}
10757
10758impl ::std::fmt::Debug for GtkTreeModelIface {
10759    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10760        f.debug_struct(&format!("GtkTreeModelIface @ {self:p}"))
10761            .field("row_changed", &self.row_changed)
10762            .field("row_inserted", &self.row_inserted)
10763            .field("row_has_child_toggled", &self.row_has_child_toggled)
10764            .field("row_deleted", &self.row_deleted)
10765            .field("rows_reordered", &self.rows_reordered)
10766            .field("get_flags", &self.get_flags)
10767            .field("get_n_columns", &self.get_n_columns)
10768            .field("get_column_type", &self.get_column_type)
10769            .field("get_iter", &self.get_iter)
10770            .field("get_path", &self.get_path)
10771            .field("get_value", &self.get_value)
10772            .field("iter_next", &self.iter_next)
10773            .field("iter_previous", &self.iter_previous)
10774            .field("iter_children", &self.iter_children)
10775            .field("iter_has_child", &self.iter_has_child)
10776            .field("iter_n_children", &self.iter_n_children)
10777            .field("iter_nth_child", &self.iter_nth_child)
10778            .field("iter_parent", &self.iter_parent)
10779            .field("ref_node", &self.ref_node)
10780            .field("unref_node", &self.unref_node)
10781            .finish()
10782    }
10783}
10784
10785#[derive(Copy, Clone)]
10786#[repr(C)]
10787pub struct GtkTreeModelSortClass {
10788    pub parent_class: gobject::GObjectClass,
10789    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10790    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10791    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10792    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10793}
10794
10795impl ::std::fmt::Debug for GtkTreeModelSortClass {
10796    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10797        f.debug_struct(&format!("GtkTreeModelSortClass @ {self:p}"))
10798            .field("parent_class", &self.parent_class)
10799            .field("_gtk_reserved1", &self._gtk_reserved1)
10800            .field("_gtk_reserved2", &self._gtk_reserved2)
10801            .field("_gtk_reserved3", &self._gtk_reserved3)
10802            .field("_gtk_reserved4", &self._gtk_reserved4)
10803            .finish()
10804    }
10805}
10806
10807#[repr(C)]
10808#[allow(dead_code)]
10809pub struct _GtkTreeModelSortPrivate {
10810    _data: [u8; 0],
10811    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10812}
10813
10814pub type GtkTreeModelSortPrivate = _GtkTreeModelSortPrivate;
10815
10816#[repr(C)]
10817#[allow(dead_code)]
10818pub struct GtkTreePath {
10819    _data: [u8; 0],
10820    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10821}
10822
10823impl ::std::fmt::Debug for GtkTreePath {
10824    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10825        f.debug_struct(&format!("GtkTreePath @ {self:p}")).finish()
10826    }
10827}
10828
10829#[repr(C)]
10830#[allow(dead_code)]
10831pub struct GtkTreeRowReference {
10832    _data: [u8; 0],
10833    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10834}
10835
10836impl ::std::fmt::Debug for GtkTreeRowReference {
10837    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10838        f.debug_struct(&format!("GtkTreeRowReference @ {self:p}"))
10839            .finish()
10840    }
10841}
10842
10843#[derive(Copy, Clone)]
10844#[repr(C)]
10845pub struct GtkTreeSelectionClass {
10846    pub parent_class: gobject::GObjectClass,
10847    pub changed: Option<unsafe extern "C" fn(*mut GtkTreeSelection)>,
10848    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10849    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10850    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10851    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10852}
10853
10854impl ::std::fmt::Debug for GtkTreeSelectionClass {
10855    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10856        f.debug_struct(&format!("GtkTreeSelectionClass @ {self:p}"))
10857            .field("parent_class", &self.parent_class)
10858            .field("changed", &self.changed)
10859            .field("_gtk_reserved1", &self._gtk_reserved1)
10860            .field("_gtk_reserved2", &self._gtk_reserved2)
10861            .field("_gtk_reserved3", &self._gtk_reserved3)
10862            .field("_gtk_reserved4", &self._gtk_reserved4)
10863            .finish()
10864    }
10865}
10866
10867#[repr(C)]
10868#[allow(dead_code)]
10869pub struct _GtkTreeSelectionPrivate {
10870    _data: [u8; 0],
10871    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10872}
10873
10874pub type GtkTreeSelectionPrivate = _GtkTreeSelectionPrivate;
10875
10876#[derive(Copy, Clone)]
10877#[repr(C)]
10878pub struct GtkTreeSortableIface {
10879    pub g_iface: gobject::GTypeInterface,
10880    pub sort_column_changed: Option<unsafe extern "C" fn(*mut GtkTreeSortable)>,
10881    pub get_sort_column_id: Option<
10882        unsafe extern "C" fn(*mut GtkTreeSortable, *mut c_int, *mut GtkSortType) -> gboolean,
10883    >,
10884    pub set_sort_column_id: Option<unsafe extern "C" fn(*mut GtkTreeSortable, c_int, GtkSortType)>,
10885    pub set_sort_func: Option<
10886        unsafe extern "C" fn(
10887            *mut GtkTreeSortable,
10888            c_int,
10889            GtkTreeIterCompareFunc,
10890            gpointer,
10891            glib::GDestroyNotify,
10892        ),
10893    >,
10894    pub set_default_sort_func: Option<
10895        unsafe extern "C" fn(
10896            *mut GtkTreeSortable,
10897            GtkTreeIterCompareFunc,
10898            gpointer,
10899            glib::GDestroyNotify,
10900        ),
10901    >,
10902    pub has_default_sort_func: Option<unsafe extern "C" fn(*mut GtkTreeSortable) -> gboolean>,
10903}
10904
10905impl ::std::fmt::Debug for GtkTreeSortableIface {
10906    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10907        f.debug_struct(&format!("GtkTreeSortableIface @ {self:p}"))
10908            .field("sort_column_changed", &self.sort_column_changed)
10909            .field("get_sort_column_id", &self.get_sort_column_id)
10910            .field("set_sort_column_id", &self.set_sort_column_id)
10911            .field("set_sort_func", &self.set_sort_func)
10912            .field("set_default_sort_func", &self.set_default_sort_func)
10913            .field("has_default_sort_func", &self.has_default_sort_func)
10914            .finish()
10915    }
10916}
10917
10918#[derive(Copy, Clone)]
10919#[repr(C)]
10920pub struct GtkTreeStoreClass {
10921    pub parent_class: gobject::GObjectClass,
10922    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
10923    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
10924    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
10925    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
10926}
10927
10928impl ::std::fmt::Debug for GtkTreeStoreClass {
10929    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10930        f.debug_struct(&format!("GtkTreeStoreClass @ {self:p}"))
10931            .field("parent_class", &self.parent_class)
10932            .field("_gtk_reserved1", &self._gtk_reserved1)
10933            .field("_gtk_reserved2", &self._gtk_reserved2)
10934            .field("_gtk_reserved3", &self._gtk_reserved3)
10935            .field("_gtk_reserved4", &self._gtk_reserved4)
10936            .finish()
10937    }
10938}
10939
10940#[repr(C)]
10941#[allow(dead_code)]
10942pub struct _GtkTreeStorePrivate {
10943    _data: [u8; 0],
10944    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10945}
10946
10947pub type GtkTreeStorePrivate = _GtkTreeStorePrivate;
10948
10949#[derive(Copy, Clone)]
10950#[repr(C)]
10951pub struct GtkTreeViewAccessibleClass {
10952    pub parent_class: GtkContainerAccessibleClass,
10953}
10954
10955impl ::std::fmt::Debug for GtkTreeViewAccessibleClass {
10956    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10957        f.debug_struct(&format!("GtkTreeViewAccessibleClass @ {self:p}"))
10958            .field("parent_class", &self.parent_class)
10959            .finish()
10960    }
10961}
10962
10963#[repr(C)]
10964#[allow(dead_code)]
10965pub struct _GtkTreeViewAccessiblePrivate {
10966    _data: [u8; 0],
10967    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10968}
10969
10970pub type GtkTreeViewAccessiblePrivate = _GtkTreeViewAccessiblePrivate;
10971
10972#[derive(Copy, Clone)]
10973#[repr(C)]
10974pub struct GtkTreeViewClass {
10975    pub parent_class: GtkContainerClass,
10976    pub row_activated:
10977        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, *mut GtkTreeViewColumn)>,
10978    pub test_expand_row: Option<
10979        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
10980    >,
10981    pub test_collapse_row: Option<
10982        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
10983    >,
10984    pub row_expanded:
10985        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
10986    pub row_collapsed:
10987        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
10988    pub columns_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
10989    pub cursor_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
10990    pub move_cursor:
10991        Option<unsafe extern "C" fn(*mut GtkTreeView, GtkMovementStep, c_int) -> gboolean>,
10992    pub select_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
10993    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
10994    pub select_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean) -> gboolean>,
10995    pub toggle_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
10996    pub expand_collapse_cursor_row:
10997        Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean, gboolean, gboolean) -> gboolean>,
10998    pub select_cursor_parent: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
10999    pub start_interactive_search: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
11000    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
11001    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
11002    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
11003    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
11004    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
11005    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
11006    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
11007    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
11008}
11009
11010impl ::std::fmt::Debug for GtkTreeViewClass {
11011    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11012        f.debug_struct(&format!("GtkTreeViewClass @ {self:p}"))
11013            .field("parent_class", &self.parent_class)
11014            .field("row_activated", &self.row_activated)
11015            .field("test_expand_row", &self.test_expand_row)
11016            .field("test_collapse_row", &self.test_collapse_row)
11017            .field("row_expanded", &self.row_expanded)
11018            .field("row_collapsed", &self.row_collapsed)
11019            .field("columns_changed", &self.columns_changed)
11020            .field("cursor_changed", &self.cursor_changed)
11021            .field("move_cursor", &self.move_cursor)
11022            .field("select_all", &self.select_all)
11023            .field("unselect_all", &self.unselect_all)
11024            .field("select_cursor_row", &self.select_cursor_row)
11025            .field("toggle_cursor_row", &self.toggle_cursor_row)
11026            .field(
11027                "expand_collapse_cursor_row",
11028                &self.expand_collapse_cursor_row,
11029            )
11030            .field("select_cursor_parent", &self.select_cursor_parent)
11031            .field("start_interactive_search", &self.start_interactive_search)
11032            .field("_gtk_reserved1", &self._gtk_reserved1)
11033            .field("_gtk_reserved2", &self._gtk_reserved2)
11034            .field("_gtk_reserved3", &self._gtk_reserved3)
11035            .field("_gtk_reserved4", &self._gtk_reserved4)
11036            .field("_gtk_reserved5", &self._gtk_reserved5)
11037            .field("_gtk_reserved6", &self._gtk_reserved6)
11038            .field("_gtk_reserved7", &self._gtk_reserved7)
11039            .field("_gtk_reserved8", &self._gtk_reserved8)
11040            .finish()
11041    }
11042}
11043
11044#[derive(Copy, Clone)]
11045#[repr(C)]
11046pub struct GtkTreeViewColumnClass {
11047    pub parent_class: gobject::GInitiallyUnownedClass,
11048    pub clicked: Option<unsafe extern "C" fn(*mut GtkTreeViewColumn)>,
11049    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
11050    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
11051    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
11052    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
11053}
11054
11055impl ::std::fmt::Debug for GtkTreeViewColumnClass {
11056    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11057        f.debug_struct(&format!("GtkTreeViewColumnClass @ {self:p}"))
11058            .field("parent_class", &self.parent_class)
11059            .field("clicked", &self.clicked)
11060            .field("_gtk_reserved1", &self._gtk_reserved1)
11061            .field("_gtk_reserved2", &self._gtk_reserved2)
11062            .field("_gtk_reserved3", &self._gtk_reserved3)
11063            .field("_gtk_reserved4", &self._gtk_reserved4)
11064            .finish()
11065    }
11066}
11067
11068#[repr(C)]
11069#[allow(dead_code)]
11070pub struct _GtkTreeViewColumnPrivate {
11071    _data: [u8; 0],
11072    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11073}
11074
11075pub type GtkTreeViewColumnPrivate = _GtkTreeViewColumnPrivate;
11076
11077#[repr(C)]
11078#[allow(dead_code)]
11079pub struct _GtkTreeViewPrivate {
11080    _data: [u8; 0],
11081    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11082}
11083
11084pub type GtkTreeViewPrivate = _GtkTreeViewPrivate;
11085
11086#[derive(Copy, Clone)]
11087#[repr(C)]
11088pub struct GtkUIManagerClass {
11089    pub parent_class: gobject::GObjectClass,
11090    pub add_widget: Option<unsafe extern "C" fn(*mut GtkUIManager, *mut GtkWidget)>,
11091    pub actions_changed: Option<unsafe extern "C" fn(*mut GtkUIManager)>,
11092    pub connect_proxy:
11093        Option<unsafe extern "C" fn(*mut GtkUIManager, *mut GtkAction, *mut GtkWidget)>,
11094    pub disconnect_proxy:
11095        Option<unsafe extern "C" fn(*mut GtkUIManager, *mut GtkAction, *mut GtkWidget)>,
11096    pub pre_activate: Option<unsafe extern "C" fn(*mut GtkUIManager, *mut GtkAction)>,
11097    pub post_activate: Option<unsafe extern "C" fn(*mut GtkUIManager, *mut GtkAction)>,
11098    pub get_widget:
11099        Option<unsafe extern "C" fn(*mut GtkUIManager, *const c_char) -> *mut GtkWidget>,
11100    pub get_action:
11101        Option<unsafe extern "C" fn(*mut GtkUIManager, *const c_char) -> *mut GtkAction>,
11102    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
11103    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
11104    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
11105    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
11106}
11107
11108impl ::std::fmt::Debug for GtkUIManagerClass {
11109    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11110        f.debug_struct(&format!("GtkUIManagerClass @ {self:p}"))
11111            .field("parent_class", &self.parent_class)
11112            .field("add_widget", &self.add_widget)
11113            .field("actions_changed", &self.actions_changed)
11114            .field("connect_proxy", &self.connect_proxy)
11115            .field("disconnect_proxy", &self.disconnect_proxy)
11116            .field("pre_activate", &self.pre_activate)
11117            .field("post_activate", &self.post_activate)
11118            .field("get_widget", &self.get_widget)
11119            .field("get_action", &self.get_action)
11120            .field("_gtk_reserved1", &self._gtk_reserved1)
11121            .field("_gtk_reserved2", &self._gtk_reserved2)
11122            .field("_gtk_reserved3", &self._gtk_reserved3)
11123            .field("_gtk_reserved4", &self._gtk_reserved4)
11124            .finish()
11125    }
11126}
11127
11128#[repr(C)]
11129#[allow(dead_code)]
11130pub struct _GtkUIManagerPrivate {
11131    _data: [u8; 0],
11132    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11133}
11134
11135pub type GtkUIManagerPrivate = _GtkUIManagerPrivate;
11136
11137#[derive(Copy, Clone)]
11138#[repr(C)]
11139pub struct GtkVBoxClass {
11140    pub parent_class: GtkBoxClass,
11141}
11142
11143impl ::std::fmt::Debug for GtkVBoxClass {
11144    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11145        f.debug_struct(&format!("GtkVBoxClass @ {self:p}"))
11146            .field("parent_class", &self.parent_class)
11147            .finish()
11148    }
11149}
11150
11151#[derive(Copy, Clone)]
11152#[repr(C)]
11153pub struct GtkVButtonBoxClass {
11154    pub parent_class: GtkButtonBoxClass,
11155}
11156
11157impl ::std::fmt::Debug for GtkVButtonBoxClass {
11158    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11159        f.debug_struct(&format!("GtkVButtonBoxClass @ {self:p}"))
11160            .field("parent_class", &self.parent_class)
11161            .finish()
11162    }
11163}
11164
11165#[derive(Copy, Clone)]
11166#[repr(C)]
11167pub struct GtkVPanedClass {
11168    pub parent_class: GtkPanedClass,
11169}
11170
11171impl ::std::fmt::Debug for GtkVPanedClass {
11172    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11173        f.debug_struct(&format!("GtkVPanedClass @ {self:p}"))
11174            .field("parent_class", &self.parent_class)
11175            .finish()
11176    }
11177}
11178
11179#[derive(Copy, Clone)]
11180#[repr(C)]
11181pub struct GtkVScaleClass {
11182    pub parent_class: GtkScaleClass,
11183}
11184
11185impl ::std::fmt::Debug for GtkVScaleClass {
11186    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11187        f.debug_struct(&format!("GtkVScaleClass @ {self:p}"))
11188            .field("parent_class", &self.parent_class)
11189            .finish()
11190    }
11191}
11192
11193#[derive(Copy, Clone)]
11194#[repr(C)]
11195pub struct GtkVScrollbarClass {
11196    pub parent_class: GtkScrollbarClass,
11197}
11198
11199impl ::std::fmt::Debug for GtkVScrollbarClass {
11200    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11201        f.debug_struct(&format!("GtkVScrollbarClass @ {self:p}"))
11202            .field("parent_class", &self.parent_class)
11203            .finish()
11204    }
11205}
11206
11207#[derive(Copy, Clone)]
11208#[repr(C)]
11209pub struct GtkVSeparatorClass {
11210    pub parent_class: GtkSeparatorClass,
11211}
11212
11213impl ::std::fmt::Debug for GtkVSeparatorClass {
11214    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11215        f.debug_struct(&format!("GtkVSeparatorClass @ {self:p}"))
11216            .field("parent_class", &self.parent_class)
11217            .finish()
11218    }
11219}
11220
11221#[derive(Copy, Clone)]
11222#[repr(C)]
11223pub struct GtkViewportClass {
11224    pub parent_class: GtkBinClass,
11225    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
11226    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
11227    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
11228    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
11229}
11230
11231impl ::std::fmt::Debug for GtkViewportClass {
11232    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11233        f.debug_struct(&format!("GtkViewportClass @ {self:p}"))
11234            .field("parent_class", &self.parent_class)
11235            .field("_gtk_reserved1", &self._gtk_reserved1)
11236            .field("_gtk_reserved2", &self._gtk_reserved2)
11237            .field("_gtk_reserved3", &self._gtk_reserved3)
11238            .field("_gtk_reserved4", &self._gtk_reserved4)
11239            .finish()
11240    }
11241}
11242
11243#[repr(C)]
11244#[allow(dead_code)]
11245pub struct _GtkViewportPrivate {
11246    _data: [u8; 0],
11247    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11248}
11249
11250pub type GtkViewportPrivate = _GtkViewportPrivate;
11251
11252#[derive(Copy, Clone)]
11253#[repr(C)]
11254pub struct GtkVolumeButtonClass {
11255    pub parent_class: GtkScaleButtonClass,
11256    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
11257    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
11258    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
11259    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
11260}
11261
11262impl ::std::fmt::Debug for GtkVolumeButtonClass {
11263    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11264        f.debug_struct(&format!("GtkVolumeButtonClass @ {self:p}"))
11265            .field("parent_class", &self.parent_class)
11266            .field("_gtk_reserved1", &self._gtk_reserved1)
11267            .field("_gtk_reserved2", &self._gtk_reserved2)
11268            .field("_gtk_reserved3", &self._gtk_reserved3)
11269            .field("_gtk_reserved4", &self._gtk_reserved4)
11270            .finish()
11271    }
11272}
11273
11274#[derive(Copy, Clone)]
11275#[repr(C)]
11276pub struct GtkWidgetAccessibleClass {
11277    pub parent_class: GtkAccessibleClass,
11278    pub notify_gtk: Option<unsafe extern "C" fn(*mut gobject::GObject, *mut gobject::GParamSpec)>,
11279}
11280
11281impl ::std::fmt::Debug for GtkWidgetAccessibleClass {
11282    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11283        f.debug_struct(&format!("GtkWidgetAccessibleClass @ {self:p}"))
11284            .field("parent_class", &self.parent_class)
11285            .field("notify_gtk", &self.notify_gtk)
11286            .finish()
11287    }
11288}
11289
11290#[repr(C)]
11291#[allow(dead_code)]
11292pub struct _GtkWidgetAccessiblePrivate {
11293    _data: [u8; 0],
11294    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11295}
11296
11297pub type GtkWidgetAccessiblePrivate = _GtkWidgetAccessiblePrivate;
11298
11299#[derive(Copy, Clone)]
11300#[repr(C)]
11301pub struct GtkWidgetClass {
11302    pub parent_class: gobject::GInitiallyUnownedClass,
11303    pub activate_signal: c_uint,
11304    pub dispatch_child_properties_changed:
11305        Option<unsafe extern "C" fn(*mut GtkWidget, c_uint, *mut *mut gobject::GParamSpec)>,
11306    pub destroy: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11307    pub show: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11308    pub show_all: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11309    pub hide: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11310    pub map: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11311    pub unmap: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11312    pub realize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11313    pub unrealize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11314    pub size_allocate: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkAllocation)>,
11315    pub state_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkStateType)>,
11316    pub state_flags_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkStateFlags)>,
11317    pub parent_set: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkWidget)>,
11318    pub hierarchy_changed: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkWidget)>,
11319    pub style_set: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkStyle)>,
11320    pub direction_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkTextDirection)>,
11321    pub grab_notify: Option<unsafe extern "C" fn(*mut GtkWidget, gboolean)>,
11322    pub child_notify: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gobject::GParamSpec)>,
11323    pub draw: Option<unsafe extern "C" fn(*mut GtkWidget, *mut cairo::cairo_t) -> gboolean>,
11324    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>,
11325    pub get_preferred_height: Option<unsafe extern "C" fn(*mut GtkWidget, *mut c_int, *mut c_int)>,
11326    pub get_preferred_width_for_height:
11327        Option<unsafe extern "C" fn(*mut GtkWidget, c_int, *mut c_int, *mut c_int)>,
11328    pub get_preferred_width: Option<unsafe extern "C" fn(*mut GtkWidget, *mut c_int, *mut c_int)>,
11329    pub get_preferred_height_for_width:
11330        Option<unsafe extern "C" fn(*mut GtkWidget, c_int, *mut c_int, *mut c_int)>,
11331    pub mnemonic_activate: Option<unsafe extern "C" fn(*mut GtkWidget, gboolean) -> gboolean>,
11332    pub grab_focus: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11333    pub focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
11334    pub move_focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType)>,
11335    pub keynav_failed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
11336    pub event: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEvent) -> gboolean>,
11337    pub button_press_event:
11338        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventButton) -> gboolean>,
11339    pub button_release_event:
11340        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventButton) -> gboolean>,
11341    pub scroll_event:
11342        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventScroll) -> gboolean>,
11343    pub motion_notify_event:
11344        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventMotion) -> gboolean>,
11345    pub delete_event:
11346        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventAny) -> gboolean>,
11347    pub destroy_event:
11348        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventAny) -> gboolean>,
11349    pub key_press_event:
11350        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventKey) -> gboolean>,
11351    pub key_release_event:
11352        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventKey) -> gboolean>,
11353    pub enter_notify_event:
11354        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventCrossing) -> gboolean>,
11355    pub leave_notify_event:
11356        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventCrossing) -> gboolean>,
11357    pub configure_event:
11358        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventConfigure) -> gboolean>,
11359    pub focus_in_event:
11360        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventFocus) -> gboolean>,
11361    pub focus_out_event:
11362        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventFocus) -> gboolean>,
11363    pub map_event: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventAny) -> gboolean>,
11364    pub unmap_event:
11365        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventAny) -> gboolean>,
11366    pub property_notify_event:
11367        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventProperty) -> gboolean>,
11368    pub selection_clear_event:
11369        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventSelection) -> gboolean>,
11370    pub selection_request_event:
11371        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventSelection) -> gboolean>,
11372    pub selection_notify_event:
11373        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventSelection) -> gboolean>,
11374    pub proximity_in_event:
11375        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventProximity) -> gboolean>,
11376    pub proximity_out_event:
11377        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventProximity) -> gboolean>,
11378    pub visibility_notify_event:
11379        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventVisibility) -> gboolean>,
11380    pub window_state_event:
11381        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventWindowState) -> gboolean>,
11382    pub damage_event:
11383        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventExpose) -> gboolean>,
11384    pub grab_broken_event:
11385        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventGrabBroken) -> gboolean>,
11386    pub selection_get:
11387        Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkSelectionData, c_uint, c_uint)>,
11388    pub selection_received:
11389        Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkSelectionData, c_uint)>,
11390    pub drag_begin: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkDragContext)>,
11391    pub drag_end: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkDragContext)>,
11392    pub drag_data_get: Option<
11393        unsafe extern "C" fn(
11394            *mut GtkWidget,
11395            *mut gdk::GdkDragContext,
11396            *mut GtkSelectionData,
11397            c_uint,
11398            c_uint,
11399        ),
11400    >,
11401    pub drag_data_delete: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkDragContext)>,
11402    pub drag_leave: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkDragContext, c_uint)>,
11403    pub drag_motion: Option<
11404        unsafe extern "C" fn(
11405            *mut GtkWidget,
11406            *mut gdk::GdkDragContext,
11407            c_int,
11408            c_int,
11409            c_uint,
11410        ) -> gboolean,
11411    >,
11412    pub drag_drop: Option<
11413        unsafe extern "C" fn(
11414            *mut GtkWidget,
11415            *mut gdk::GdkDragContext,
11416            c_int,
11417            c_int,
11418            c_uint,
11419        ) -> gboolean,
11420    >,
11421    pub drag_data_received: Option<
11422        unsafe extern "C" fn(
11423            *mut GtkWidget,
11424            *mut gdk::GdkDragContext,
11425            c_int,
11426            c_int,
11427            *mut GtkSelectionData,
11428            c_uint,
11429            c_uint,
11430        ),
11431    >,
11432    pub drag_failed: Option<
11433        unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkDragContext, GtkDragResult) -> gboolean,
11434    >,
11435    pub popup_menu: Option<unsafe extern "C" fn(*mut GtkWidget) -> gboolean>,
11436    pub show_help: Option<unsafe extern "C" fn(*mut GtkWidget, GtkWidgetHelpType) -> gboolean>,
11437    pub get_accessible: Option<unsafe extern "C" fn(*mut GtkWidget) -> *mut atk::AtkObject>,
11438    pub screen_changed: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkScreen)>,
11439    pub can_activate_accel: Option<unsafe extern "C" fn(*mut GtkWidget, c_uint) -> gboolean>,
11440    pub composited_changed: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11441    pub query_tooltip: Option<
11442        unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, gboolean, *mut GtkTooltip) -> gboolean,
11443    >,
11444    pub compute_expand: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gboolean, *mut gboolean)>,
11445    pub adjust_size_request:
11446        Option<unsafe extern "C" fn(*mut GtkWidget, GtkOrientation, *mut c_int, *mut c_int)>,
11447    pub adjust_size_allocation: Option<
11448        unsafe extern "C" fn(
11449            *mut GtkWidget,
11450            GtkOrientation,
11451            *mut c_int,
11452            *mut c_int,
11453            *mut c_int,
11454            *mut c_int,
11455        ),
11456    >,
11457    pub style_updated: Option<unsafe extern "C" fn(*mut GtkWidget)>,
11458    pub touch_event:
11459        Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkEventTouch) -> gboolean>,
11460    pub get_preferred_height_and_baseline_for_width: Option<
11461        unsafe extern "C" fn(*mut GtkWidget, c_int, *mut c_int, *mut c_int, *mut c_int, *mut c_int),
11462    >,
11463    pub adjust_baseline_request:
11464        Option<unsafe extern "C" fn(*mut GtkWidget, *mut c_int, *mut c_int)>,
11465    pub adjust_baseline_allocation: Option<unsafe extern "C" fn(*mut GtkWidget, *mut c_int)>,
11466    pub queue_draw_region:
11467        Option<unsafe extern "C" fn(*mut GtkWidget, *const cairo::cairo_region_t)>,
11468    pub priv_: *mut GtkWidgetClassPrivate,
11469    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
11470    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
11471}
11472
11473impl ::std::fmt::Debug for GtkWidgetClass {
11474    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11475        f.debug_struct(&format!("GtkWidgetClass @ {self:p}"))
11476            .field("parent_class", &self.parent_class)
11477            .field("activate_signal", &self.activate_signal)
11478            .field(
11479                "dispatch_child_properties_changed",
11480                &self.dispatch_child_properties_changed,
11481            )
11482            .field("destroy", &self.destroy)
11483            .field("show", &self.show)
11484            .field("show_all", &self.show_all)
11485            .field("hide", &self.hide)
11486            .field("map", &self.map)
11487            .field("unmap", &self.unmap)
11488            .field("realize", &self.realize)
11489            .field("unrealize", &self.unrealize)
11490            .field("size_allocate", &self.size_allocate)
11491            .field("state_changed", &self.state_changed)
11492            .field("state_flags_changed", &self.state_flags_changed)
11493            .field("parent_set", &self.parent_set)
11494            .field("hierarchy_changed", &self.hierarchy_changed)
11495            .field("style_set", &self.style_set)
11496            .field("direction_changed", &self.direction_changed)
11497            .field("grab_notify", &self.grab_notify)
11498            .field("child_notify", &self.child_notify)
11499            .field("draw", &self.draw)
11500            .field("get_request_mode", &self.get_request_mode)
11501            .field("get_preferred_height", &self.get_preferred_height)
11502            .field(
11503                "get_preferred_width_for_height",
11504                &self.get_preferred_width_for_height,
11505            )
11506            .field("get_preferred_width", &self.get_preferred_width)
11507            .field(
11508                "get_preferred_height_for_width",
11509                &self.get_preferred_height_for_width,
11510            )
11511            .field("mnemonic_activate", &self.mnemonic_activate)
11512            .field("grab_focus", &self.grab_focus)
11513            .field("focus", &self.focus)
11514            .field("move_focus", &self.move_focus)
11515            .field("keynav_failed", &self.keynav_failed)
11516            .field("event", &self.event)
11517            .field("button_press_event", &self.button_press_event)
11518            .field("button_release_event", &self.button_release_event)
11519            .field("scroll_event", &self.scroll_event)
11520            .field("motion_notify_event", &self.motion_notify_event)
11521            .field("delete_event", &self.delete_event)
11522            .field("destroy_event", &self.destroy_event)
11523            .field("key_press_event", &self.key_press_event)
11524            .field("key_release_event", &self.key_release_event)
11525            .field("enter_notify_event", &self.enter_notify_event)
11526            .field("leave_notify_event", &self.leave_notify_event)
11527            .field("configure_event", &self.configure_event)
11528            .field("focus_in_event", &self.focus_in_event)
11529            .field("focus_out_event", &self.focus_out_event)
11530            .field("map_event", &self.map_event)
11531            .field("unmap_event", &self.unmap_event)
11532            .field("property_notify_event", &self.property_notify_event)
11533            .field("selection_clear_event", &self.selection_clear_event)
11534            .field("selection_request_event", &self.selection_request_event)
11535            .field("selection_notify_event", &self.selection_notify_event)
11536            .field("proximity_in_event", &self.proximity_in_event)
11537            .field("proximity_out_event", &self.proximity_out_event)
11538            .field("visibility_notify_event", &self.visibility_notify_event)
11539            .field("window_state_event", &self.window_state_event)
11540            .field("damage_event", &self.damage_event)
11541            .field("grab_broken_event", &self.grab_broken_event)
11542            .field("selection_get", &self.selection_get)
11543            .field("selection_received", &self.selection_received)
11544            .field("drag_begin", &self.drag_begin)
11545            .field("drag_end", &self.drag_end)
11546            .field("drag_data_get", &self.drag_data_get)
11547            .field("drag_data_delete", &self.drag_data_delete)
11548            .field("drag_leave", &self.drag_leave)
11549            .field("drag_motion", &self.drag_motion)
11550            .field("drag_drop", &self.drag_drop)
11551            .field("drag_data_received", &self.drag_data_received)
11552            .field("drag_failed", &self.drag_failed)
11553            .field("popup_menu", &self.popup_menu)
11554            .field("show_help", &self.show_help)
11555            .field("get_accessible", &self.get_accessible)
11556            .field("screen_changed", &self.screen_changed)
11557            .field("can_activate_accel", &self.can_activate_accel)
11558            .field("composited_changed", &self.composited_changed)
11559            .field("query_tooltip", &self.query_tooltip)
11560            .field("compute_expand", &self.compute_expand)
11561            .field("adjust_size_request", &self.adjust_size_request)
11562            .field("adjust_size_allocation", &self.adjust_size_allocation)
11563            .field("style_updated", &self.style_updated)
11564            .field("touch_event", &self.touch_event)
11565            .field(
11566                "get_preferred_height_and_baseline_for_width",
11567                &self.get_preferred_height_and_baseline_for_width,
11568            )
11569            .field("adjust_baseline_request", &self.adjust_baseline_request)
11570            .field(
11571                "adjust_baseline_allocation",
11572                &self.adjust_baseline_allocation,
11573            )
11574            .field("queue_draw_region", &self.queue_draw_region)
11575            .field("_gtk_reserved6", &self._gtk_reserved6)
11576            .field("_gtk_reserved7", &self._gtk_reserved7)
11577            .finish()
11578    }
11579}
11580
11581#[repr(C)]
11582#[allow(dead_code)]
11583pub struct _GtkWidgetClassPrivate {
11584    _data: [u8; 0],
11585    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11586}
11587
11588pub type GtkWidgetClassPrivate = _GtkWidgetClassPrivate;
11589
11590#[repr(C)]
11591#[allow(dead_code)]
11592pub struct GtkWidgetPath {
11593    _data: [u8; 0],
11594    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11595}
11596
11597impl ::std::fmt::Debug for GtkWidgetPath {
11598    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11599        f.debug_struct(&format!("GtkWidgetPath @ {self:p}"))
11600            .finish()
11601    }
11602}
11603
11604#[repr(C)]
11605#[allow(dead_code)]
11606pub struct _GtkWidgetPrivate {
11607    _data: [u8; 0],
11608    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11609}
11610
11611pub type GtkWidgetPrivate = _GtkWidgetPrivate;
11612
11613#[derive(Copy, Clone)]
11614#[repr(C)]
11615pub struct GtkWindowAccessibleClass {
11616    pub parent_class: GtkContainerAccessibleClass,
11617}
11618
11619impl ::std::fmt::Debug for GtkWindowAccessibleClass {
11620    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11621        f.debug_struct(&format!("GtkWindowAccessibleClass @ {self:p}"))
11622            .field("parent_class", &self.parent_class)
11623            .finish()
11624    }
11625}
11626
11627#[repr(C)]
11628#[allow(dead_code)]
11629pub struct _GtkWindowAccessiblePrivate {
11630    _data: [u8; 0],
11631    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11632}
11633
11634pub type GtkWindowAccessiblePrivate = _GtkWindowAccessiblePrivate;
11635
11636#[derive(Copy, Clone)]
11637#[repr(C)]
11638pub struct GtkWindowClass {
11639    pub parent_class: GtkBinClass,
11640    pub set_focus: Option<unsafe extern "C" fn(*mut GtkWindow, *mut GtkWidget)>,
11641    pub activate_focus: Option<unsafe extern "C" fn(*mut GtkWindow)>,
11642    pub activate_default: Option<unsafe extern "C" fn(*mut GtkWindow)>,
11643    pub keys_changed: Option<unsafe extern "C" fn(*mut GtkWindow)>,
11644    pub enable_debugging: Option<unsafe extern "C" fn(*mut GtkWindow, gboolean) -> gboolean>,
11645    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
11646    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
11647    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
11648}
11649
11650impl ::std::fmt::Debug for GtkWindowClass {
11651    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11652        f.debug_struct(&format!("GtkWindowClass @ {self:p}"))
11653            .field("parent_class", &self.parent_class)
11654            .field("set_focus", &self.set_focus)
11655            .field("activate_focus", &self.activate_focus)
11656            .field("activate_default", &self.activate_default)
11657            .field("keys_changed", &self.keys_changed)
11658            .field("enable_debugging", &self.enable_debugging)
11659            .field("_gtk_reserved1", &self._gtk_reserved1)
11660            .field("_gtk_reserved2", &self._gtk_reserved2)
11661            .field("_gtk_reserved3", &self._gtk_reserved3)
11662            .finish()
11663    }
11664}
11665
11666#[repr(C)]
11667#[allow(dead_code)]
11668pub struct _GtkWindowGeometryInfo {
11669    _data: [u8; 0],
11670    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11671}
11672
11673pub type GtkWindowGeometryInfo = _GtkWindowGeometryInfo;
11674
11675#[derive(Copy, Clone)]
11676#[repr(C)]
11677pub struct GtkWindowGroupClass {
11678    pub parent_class: gobject::GObjectClass,
11679    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
11680    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
11681    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
11682    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
11683}
11684
11685impl ::std::fmt::Debug for GtkWindowGroupClass {
11686    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11687        f.debug_struct(&format!("GtkWindowGroupClass @ {self:p}"))
11688            .field("parent_class", &self.parent_class)
11689            .field("_gtk_reserved1", &self._gtk_reserved1)
11690            .field("_gtk_reserved2", &self._gtk_reserved2)
11691            .field("_gtk_reserved3", &self._gtk_reserved3)
11692            .field("_gtk_reserved4", &self._gtk_reserved4)
11693            .finish()
11694    }
11695}
11696
11697#[repr(C)]
11698#[allow(dead_code)]
11699pub struct _GtkWindowGroupPrivate {
11700    _data: [u8; 0],
11701    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11702}
11703
11704pub type GtkWindowGroupPrivate = _GtkWindowGroupPrivate;
11705
11706#[repr(C)]
11707#[allow(dead_code)]
11708pub struct _GtkWindowPrivate {
11709    _data: [u8; 0],
11710    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11711}
11712
11713pub type GtkWindowPrivate = _GtkWindowPrivate;
11714
11715// Classes
11716#[derive(Copy, Clone)]
11717#[repr(C)]
11718pub struct GtkAboutDialog {
11719    pub parent_instance: GtkDialog,
11720    pub priv_: *mut GtkAboutDialogPrivate,
11721}
11722
11723impl ::std::fmt::Debug for GtkAboutDialog {
11724    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11725        f.debug_struct(&format!("GtkAboutDialog @ {self:p}"))
11726            .field("parent_instance", &self.parent_instance)
11727            .finish()
11728    }
11729}
11730
11731#[derive(Copy, Clone)]
11732#[repr(C)]
11733pub struct GtkAccelGroup {
11734    pub parent: gobject::GObject,
11735    pub priv_: *mut GtkAccelGroupPrivate,
11736}
11737
11738impl ::std::fmt::Debug for GtkAccelGroup {
11739    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11740        f.debug_struct(&format!("GtkAccelGroup @ {self:p}"))
11741            .field("parent", &self.parent)
11742            .field("priv_", &self.priv_)
11743            .finish()
11744    }
11745}
11746
11747#[derive(Copy, Clone)]
11748#[repr(C)]
11749pub struct GtkAccelLabel {
11750    pub label: GtkLabel,
11751    pub priv_: *mut GtkAccelLabelPrivate,
11752}
11753
11754impl ::std::fmt::Debug for GtkAccelLabel {
11755    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11756        f.debug_struct(&format!("GtkAccelLabel @ {self:p}"))
11757            .field("label", &self.label)
11758            .field("priv_", &self.priv_)
11759            .finish()
11760    }
11761}
11762
11763#[repr(C)]
11764#[allow(dead_code)]
11765pub struct GtkAccelMap {
11766    _data: [u8; 0],
11767    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
11768}
11769
11770impl ::std::fmt::Debug for GtkAccelMap {
11771    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11772        f.debug_struct(&format!("GtkAccelMap @ {self:p}")).finish()
11773    }
11774}
11775
11776#[derive(Copy, Clone)]
11777#[repr(C)]
11778pub struct GtkAccessible {
11779    pub parent: atk::AtkObject,
11780    pub priv_: *mut GtkAccessiblePrivate,
11781}
11782
11783impl ::std::fmt::Debug for GtkAccessible {
11784    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11785        f.debug_struct(&format!("GtkAccessible @ {self:p}"))
11786            .field("parent", &self.parent)
11787            .finish()
11788    }
11789}
11790
11791#[derive(Copy, Clone)]
11792#[repr(C)]
11793pub struct GtkAction {
11794    pub object: gobject::GObject,
11795    pub private_data: *mut GtkActionPrivate,
11796}
11797
11798impl ::std::fmt::Debug for GtkAction {
11799    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11800        f.debug_struct(&format!("GtkAction @ {self:p}"))
11801            .field("object", &self.object)
11802            .finish()
11803    }
11804}
11805
11806#[derive(Copy, Clone)]
11807#[repr(C)]
11808pub struct GtkActionBar {
11809    pub bin: GtkBin,
11810}
11811
11812impl ::std::fmt::Debug for GtkActionBar {
11813    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11814        f.debug_struct(&format!("GtkActionBar @ {self:p}")).finish()
11815    }
11816}
11817
11818#[derive(Copy, Clone)]
11819#[repr(C)]
11820pub struct GtkActionGroup {
11821    pub parent: gobject::GObject,
11822    pub priv_: *mut GtkActionGroupPrivate,
11823}
11824
11825impl ::std::fmt::Debug for GtkActionGroup {
11826    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11827        f.debug_struct(&format!("GtkActionGroup @ {self:p}"))
11828            .field("parent", &self.parent)
11829            .finish()
11830    }
11831}
11832
11833#[derive(Copy, Clone)]
11834#[repr(C)]
11835pub struct GtkAdjustment {
11836    pub parent_instance: gobject::GInitiallyUnowned,
11837    pub priv_: *mut GtkAdjustmentPrivate,
11838}
11839
11840impl ::std::fmt::Debug for GtkAdjustment {
11841    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11842        f.debug_struct(&format!("GtkAdjustment @ {self:p}"))
11843            .field("parent_instance", &self.parent_instance)
11844            .field("priv_", &self.priv_)
11845            .finish()
11846    }
11847}
11848
11849#[derive(Copy, Clone)]
11850#[repr(C)]
11851pub struct GtkAlignment {
11852    pub bin: GtkBin,
11853    pub priv_: *mut GtkAlignmentPrivate,
11854}
11855
11856impl ::std::fmt::Debug for GtkAlignment {
11857    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11858        f.debug_struct(&format!("GtkAlignment @ {self:p}"))
11859            .field("bin", &self.bin)
11860            .finish()
11861    }
11862}
11863
11864#[derive(Copy, Clone)]
11865#[repr(C)]
11866pub struct GtkAppChooserButton {
11867    pub parent: GtkComboBox,
11868    pub priv_: *mut GtkAppChooserButtonPrivate,
11869}
11870
11871impl ::std::fmt::Debug for GtkAppChooserButton {
11872    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11873        f.debug_struct(&format!("GtkAppChooserButton @ {self:p}"))
11874            .field("parent", &self.parent)
11875            .finish()
11876    }
11877}
11878
11879#[derive(Copy, Clone)]
11880#[repr(C)]
11881pub struct GtkAppChooserDialog {
11882    pub parent: GtkDialog,
11883    pub priv_: *mut GtkAppChooserDialogPrivate,
11884}
11885
11886impl ::std::fmt::Debug for GtkAppChooserDialog {
11887    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11888        f.debug_struct(&format!("GtkAppChooserDialog @ {self:p}"))
11889            .field("parent", &self.parent)
11890            .finish()
11891    }
11892}
11893
11894#[derive(Copy, Clone)]
11895#[repr(C)]
11896pub struct GtkAppChooserWidget {
11897    pub parent: GtkBox,
11898    pub priv_: *mut GtkAppChooserWidgetPrivate,
11899}
11900
11901impl ::std::fmt::Debug for GtkAppChooserWidget {
11902    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11903        f.debug_struct(&format!("GtkAppChooserWidget @ {self:p}"))
11904            .field("parent", &self.parent)
11905            .finish()
11906    }
11907}
11908
11909#[derive(Copy, Clone)]
11910#[repr(C)]
11911pub struct GtkApplication {
11912    pub parent: gio::GApplication,
11913    pub priv_: *mut GtkApplicationPrivate,
11914}
11915
11916impl ::std::fmt::Debug for GtkApplication {
11917    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11918        f.debug_struct(&format!("GtkApplication @ {self:p}"))
11919            .field("parent", &self.parent)
11920            .finish()
11921    }
11922}
11923
11924#[derive(Copy, Clone)]
11925#[repr(C)]
11926pub struct GtkApplicationWindow {
11927    pub parent_instance: GtkWindow,
11928    pub priv_: *mut GtkApplicationWindowPrivate,
11929}
11930
11931impl ::std::fmt::Debug for GtkApplicationWindow {
11932    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11933        f.debug_struct(&format!("GtkApplicationWindow @ {self:p}"))
11934            .field("parent_instance", &self.parent_instance)
11935            .finish()
11936    }
11937}
11938
11939#[derive(Copy, Clone)]
11940#[repr(C)]
11941pub struct GtkArrow {
11942    pub misc: GtkMisc,
11943    pub priv_: *mut GtkArrowPrivate,
11944}
11945
11946impl ::std::fmt::Debug for GtkArrow {
11947    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11948        f.debug_struct(&format!("GtkArrow @ {self:p}"))
11949            .field("misc", &self.misc)
11950            .finish()
11951    }
11952}
11953
11954#[derive(Copy, Clone)]
11955#[repr(C)]
11956pub struct GtkArrowAccessible {
11957    pub parent: GtkWidgetAccessible,
11958    pub priv_: *mut GtkArrowAccessiblePrivate,
11959}
11960
11961impl ::std::fmt::Debug for GtkArrowAccessible {
11962    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11963        f.debug_struct(&format!("GtkArrowAccessible @ {self:p}"))
11964            .field("parent", &self.parent)
11965            .field("priv_", &self.priv_)
11966            .finish()
11967    }
11968}
11969
11970#[derive(Copy, Clone)]
11971#[repr(C)]
11972pub struct GtkAspectFrame {
11973    pub frame: GtkFrame,
11974    pub priv_: *mut GtkAspectFramePrivate,
11975}
11976
11977impl ::std::fmt::Debug for GtkAspectFrame {
11978    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11979        f.debug_struct(&format!("GtkAspectFrame @ {self:p}"))
11980            .field("frame", &self.frame)
11981            .finish()
11982    }
11983}
11984
11985#[derive(Copy, Clone)]
11986#[repr(C)]
11987pub struct GtkAssistant {
11988    pub parent: GtkWindow,
11989    pub priv_: *mut GtkAssistantPrivate,
11990}
11991
11992impl ::std::fmt::Debug for GtkAssistant {
11993    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
11994        f.debug_struct(&format!("GtkAssistant @ {self:p}"))
11995            .field("parent", &self.parent)
11996            .finish()
11997    }
11998}
11999
12000#[derive(Copy, Clone)]
12001#[repr(C)]
12002pub struct GtkBin {
12003    pub container: GtkContainer,
12004    pub priv_: *mut GtkBinPrivate,
12005}
12006
12007impl ::std::fmt::Debug for GtkBin {
12008    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12009        f.debug_struct(&format!("GtkBin @ {self:p}"))
12010            .field("container", &self.container)
12011            .finish()
12012    }
12013}
12014
12015#[derive(Copy, Clone)]
12016#[repr(C)]
12017pub struct GtkBooleanCellAccessible {
12018    pub parent: GtkRendererCellAccessible,
12019    pub priv_: *mut GtkBooleanCellAccessiblePrivate,
12020}
12021
12022impl ::std::fmt::Debug for GtkBooleanCellAccessible {
12023    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12024        f.debug_struct(&format!("GtkBooleanCellAccessible @ {self:p}"))
12025            .field("parent", &self.parent)
12026            .field("priv_", &self.priv_)
12027            .finish()
12028    }
12029}
12030
12031#[derive(Copy, Clone)]
12032#[repr(C)]
12033pub struct GtkBox {
12034    pub container: GtkContainer,
12035    pub priv_: *mut GtkBoxPrivate,
12036}
12037
12038impl ::std::fmt::Debug for GtkBox {
12039    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12040        f.debug_struct(&format!("GtkBox @ {self:p}"))
12041            .field("container", &self.container)
12042            .finish()
12043    }
12044}
12045
12046#[derive(Copy, Clone)]
12047#[repr(C)]
12048pub struct GtkBuilder {
12049    pub parent_instance: gobject::GObject,
12050    pub priv_: *mut GtkBuilderPrivate,
12051}
12052
12053impl ::std::fmt::Debug for GtkBuilder {
12054    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12055        f.debug_struct(&format!("GtkBuilder @ {self:p}"))
12056            .field("parent_instance", &self.parent_instance)
12057            .field("priv_", &self.priv_)
12058            .finish()
12059    }
12060}
12061
12062#[derive(Copy, Clone)]
12063#[repr(C)]
12064pub struct GtkButton {
12065    pub bin: GtkBin,
12066    pub priv_: *mut GtkButtonPrivate,
12067}
12068
12069impl ::std::fmt::Debug for GtkButton {
12070    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12071        f.debug_struct(&format!("GtkButton @ {self:p}")).finish()
12072    }
12073}
12074
12075#[derive(Copy, Clone)]
12076#[repr(C)]
12077pub struct GtkButtonAccessible {
12078    pub parent: GtkContainerAccessible,
12079    pub priv_: *mut GtkButtonAccessiblePrivate,
12080}
12081
12082impl ::std::fmt::Debug for GtkButtonAccessible {
12083    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12084        f.debug_struct(&format!("GtkButtonAccessible @ {self:p}"))
12085            .field("parent", &self.parent)
12086            .field("priv_", &self.priv_)
12087            .finish()
12088    }
12089}
12090
12091#[derive(Copy, Clone)]
12092#[repr(C)]
12093pub struct GtkButtonBox {
12094    pub box_: GtkBox,
12095    pub priv_: *mut GtkButtonBoxPrivate,
12096}
12097
12098impl ::std::fmt::Debug for GtkButtonBox {
12099    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12100        f.debug_struct(&format!("GtkButtonBox @ {self:p}"))
12101            .field("box_", &self.box_)
12102            .finish()
12103    }
12104}
12105
12106#[derive(Copy, Clone)]
12107#[repr(C)]
12108pub struct GtkCalendar {
12109    pub widget: GtkWidget,
12110    pub priv_: *mut GtkCalendarPrivate,
12111}
12112
12113impl ::std::fmt::Debug for GtkCalendar {
12114    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12115        f.debug_struct(&format!("GtkCalendar @ {self:p}"))
12116            .field("widget", &self.widget)
12117            .field("priv_", &self.priv_)
12118            .finish()
12119    }
12120}
12121
12122#[derive(Copy, Clone)]
12123#[repr(C)]
12124pub struct GtkCellAccessible {
12125    pub parent: GtkAccessible,
12126    pub priv_: *mut GtkCellAccessiblePrivate,
12127}
12128
12129impl ::std::fmt::Debug for GtkCellAccessible {
12130    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12131        f.debug_struct(&format!("GtkCellAccessible @ {self:p}"))
12132            .field("parent", &self.parent)
12133            .field("priv_", &self.priv_)
12134            .finish()
12135    }
12136}
12137
12138#[derive(Copy, Clone)]
12139#[repr(C)]
12140pub struct GtkCellArea {
12141    pub parent_instance: gobject::GInitiallyUnowned,
12142    pub priv_: *mut GtkCellAreaPrivate,
12143}
12144
12145impl ::std::fmt::Debug for GtkCellArea {
12146    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12147        f.debug_struct(&format!("GtkCellArea @ {self:p}")).finish()
12148    }
12149}
12150
12151#[derive(Copy, Clone)]
12152#[repr(C)]
12153pub struct GtkCellAreaBox {
12154    pub parent_instance: GtkCellArea,
12155    pub priv_: *mut GtkCellAreaBoxPrivate,
12156}
12157
12158impl ::std::fmt::Debug for GtkCellAreaBox {
12159    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12160        f.debug_struct(&format!("GtkCellAreaBox @ {self:p}"))
12161            .finish()
12162    }
12163}
12164
12165#[derive(Copy, Clone)]
12166#[repr(C)]
12167pub struct GtkCellAreaContext {
12168    pub parent_instance: gobject::GObject,
12169    pub priv_: *mut GtkCellAreaContextPrivate,
12170}
12171
12172impl ::std::fmt::Debug for GtkCellAreaContext {
12173    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12174        f.debug_struct(&format!("GtkCellAreaContext @ {self:p}"))
12175            .finish()
12176    }
12177}
12178
12179#[derive(Copy, Clone)]
12180#[repr(C)]
12181pub struct GtkCellRenderer {
12182    pub parent_instance: gobject::GInitiallyUnowned,
12183    pub priv_: *mut GtkCellRendererPrivate,
12184}
12185
12186impl ::std::fmt::Debug for GtkCellRenderer {
12187    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12188        f.debug_struct(&format!("GtkCellRenderer @ {self:p}"))
12189            .field("parent_instance", &self.parent_instance)
12190            .finish()
12191    }
12192}
12193
12194#[derive(Copy, Clone)]
12195#[repr(C)]
12196pub struct GtkCellRendererAccel {
12197    pub parent: GtkCellRendererText,
12198    pub priv_: *mut GtkCellRendererAccelPrivate,
12199}
12200
12201impl ::std::fmt::Debug for GtkCellRendererAccel {
12202    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12203        f.debug_struct(&format!("GtkCellRendererAccel @ {self:p}"))
12204            .field("parent", &self.parent)
12205            .finish()
12206    }
12207}
12208
12209#[derive(Copy, Clone)]
12210#[repr(C)]
12211pub struct GtkCellRendererCombo {
12212    pub parent: GtkCellRendererText,
12213    pub priv_: *mut GtkCellRendererComboPrivate,
12214}
12215
12216impl ::std::fmt::Debug for GtkCellRendererCombo {
12217    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12218        f.debug_struct(&format!("GtkCellRendererCombo @ {self:p}"))
12219            .field("parent", &self.parent)
12220            .finish()
12221    }
12222}
12223
12224#[derive(Copy, Clone)]
12225#[repr(C)]
12226pub struct GtkCellRendererPixbuf {
12227    pub parent: GtkCellRenderer,
12228    pub priv_: *mut GtkCellRendererPixbufPrivate,
12229}
12230
12231impl ::std::fmt::Debug for GtkCellRendererPixbuf {
12232    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12233        f.debug_struct(&format!("GtkCellRendererPixbuf @ {self:p}"))
12234            .field("parent", &self.parent)
12235            .finish()
12236    }
12237}
12238
12239#[derive(Copy, Clone)]
12240#[repr(C)]
12241pub struct GtkCellRendererProgress {
12242    pub parent_instance: GtkCellRenderer,
12243    pub priv_: *mut GtkCellRendererProgressPrivate,
12244}
12245
12246impl ::std::fmt::Debug for GtkCellRendererProgress {
12247    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12248        f.debug_struct(&format!("GtkCellRendererProgress @ {self:p}"))
12249            .field("parent_instance", &self.parent_instance)
12250            .finish()
12251    }
12252}
12253
12254#[derive(Copy, Clone)]
12255#[repr(C)]
12256pub struct GtkCellRendererSpin {
12257    pub parent: GtkCellRendererText,
12258    pub priv_: *mut GtkCellRendererSpinPrivate,
12259}
12260
12261impl ::std::fmt::Debug for GtkCellRendererSpin {
12262    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12263        f.debug_struct(&format!("GtkCellRendererSpin @ {self:p}"))
12264            .field("parent", &self.parent)
12265            .finish()
12266    }
12267}
12268
12269#[derive(Copy, Clone)]
12270#[repr(C)]
12271pub struct GtkCellRendererSpinner {
12272    pub parent: GtkCellRenderer,
12273    pub priv_: *mut GtkCellRendererSpinnerPrivate,
12274}
12275
12276impl ::std::fmt::Debug for GtkCellRendererSpinner {
12277    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12278        f.debug_struct(&format!("GtkCellRendererSpinner @ {self:p}"))
12279            .field("parent", &self.parent)
12280            .finish()
12281    }
12282}
12283
12284#[derive(Copy, Clone)]
12285#[repr(C)]
12286pub struct GtkCellRendererText {
12287    pub parent: GtkCellRenderer,
12288    pub priv_: *mut GtkCellRendererTextPrivate,
12289}
12290
12291impl ::std::fmt::Debug for GtkCellRendererText {
12292    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12293        f.debug_struct(&format!("GtkCellRendererText @ {self:p}"))
12294            .field("parent", &self.parent)
12295            .finish()
12296    }
12297}
12298
12299#[derive(Copy, Clone)]
12300#[repr(C)]
12301pub struct GtkCellRendererToggle {
12302    pub parent: GtkCellRenderer,
12303    pub priv_: *mut GtkCellRendererTogglePrivate,
12304}
12305
12306impl ::std::fmt::Debug for GtkCellRendererToggle {
12307    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12308        f.debug_struct(&format!("GtkCellRendererToggle @ {self:p}"))
12309            .field("parent", &self.parent)
12310            .finish()
12311    }
12312}
12313
12314#[derive(Copy, Clone)]
12315#[repr(C)]
12316pub struct GtkCellView {
12317    pub parent_instance: GtkWidget,
12318    pub priv_: *mut GtkCellViewPrivate,
12319}
12320
12321impl ::std::fmt::Debug for GtkCellView {
12322    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12323        f.debug_struct(&format!("GtkCellView @ {self:p}"))
12324            .field("parent_instance", &self.parent_instance)
12325            .finish()
12326    }
12327}
12328
12329#[derive(Copy, Clone)]
12330#[repr(C)]
12331pub struct GtkCheckButton {
12332    pub toggle_button: GtkToggleButton,
12333}
12334
12335impl ::std::fmt::Debug for GtkCheckButton {
12336    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12337        f.debug_struct(&format!("GtkCheckButton @ {self:p}"))
12338            .field("toggle_button", &self.toggle_button)
12339            .finish()
12340    }
12341}
12342
12343#[derive(Copy, Clone)]
12344#[repr(C)]
12345pub struct GtkCheckMenuItem {
12346    pub menu_item: GtkMenuItem,
12347    pub priv_: *mut GtkCheckMenuItemPrivate,
12348}
12349
12350impl ::std::fmt::Debug for GtkCheckMenuItem {
12351    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12352        f.debug_struct(&format!("GtkCheckMenuItem @ {self:p}"))
12353            .field("menu_item", &self.menu_item)
12354            .finish()
12355    }
12356}
12357
12358#[derive(Copy, Clone)]
12359#[repr(C)]
12360pub struct GtkCheckMenuItemAccessible {
12361    pub parent: GtkMenuItemAccessible,
12362    pub priv_: *mut GtkCheckMenuItemAccessiblePrivate,
12363}
12364
12365impl ::std::fmt::Debug for GtkCheckMenuItemAccessible {
12366    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12367        f.debug_struct(&format!("GtkCheckMenuItemAccessible @ {self:p}"))
12368            .field("parent", &self.parent)
12369            .field("priv_", &self.priv_)
12370            .finish()
12371    }
12372}
12373
12374#[repr(C)]
12375#[allow(dead_code)]
12376pub struct GtkClipboard {
12377    _data: [u8; 0],
12378    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
12379}
12380
12381impl ::std::fmt::Debug for GtkClipboard {
12382    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12383        f.debug_struct(&format!("GtkClipboard @ {self:p}")).finish()
12384    }
12385}
12386
12387#[derive(Copy, Clone)]
12388#[repr(C)]
12389pub struct GtkColorButton {
12390    pub button: GtkButton,
12391    pub priv_: *mut GtkColorButtonPrivate,
12392}
12393
12394impl ::std::fmt::Debug for GtkColorButton {
12395    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12396        f.debug_struct(&format!("GtkColorButton @ {self:p}"))
12397            .field("button", &self.button)
12398            .finish()
12399    }
12400}
12401
12402#[derive(Copy, Clone)]
12403#[repr(C)]
12404pub struct GtkColorChooserDialog {
12405    pub parent_instance: GtkDialog,
12406    pub priv_: *mut GtkColorChooserDialogPrivate,
12407}
12408
12409impl ::std::fmt::Debug for GtkColorChooserDialog {
12410    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12411        f.debug_struct(&format!("GtkColorChooserDialog @ {self:p}"))
12412            .field("parent_instance", &self.parent_instance)
12413            .finish()
12414    }
12415}
12416
12417#[derive(Copy, Clone)]
12418#[repr(C)]
12419pub struct GtkColorChooserWidget {
12420    pub parent_instance: GtkBox,
12421    pub priv_: *mut GtkColorChooserWidgetPrivate,
12422}
12423
12424impl ::std::fmt::Debug for GtkColorChooserWidget {
12425    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12426        f.debug_struct(&format!("GtkColorChooserWidget @ {self:p}"))
12427            .field("parent_instance", &self.parent_instance)
12428            .finish()
12429    }
12430}
12431
12432#[derive(Copy, Clone)]
12433#[repr(C)]
12434pub struct GtkColorSelection {
12435    pub parent_instance: GtkBox,
12436    pub private_data: *mut GtkColorSelectionPrivate,
12437}
12438
12439impl ::std::fmt::Debug for GtkColorSelection {
12440    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12441        f.debug_struct(&format!("GtkColorSelection @ {self:p}"))
12442            .field("parent_instance", &self.parent_instance)
12443            .finish()
12444    }
12445}
12446
12447#[derive(Copy, Clone)]
12448#[repr(C)]
12449pub struct GtkColorSelectionDialog {
12450    pub parent_instance: GtkDialog,
12451    pub priv_: *mut GtkColorSelectionDialogPrivate,
12452}
12453
12454impl ::std::fmt::Debug for GtkColorSelectionDialog {
12455    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12456        f.debug_struct(&format!("GtkColorSelectionDialog @ {self:p}"))
12457            .field("parent_instance", &self.parent_instance)
12458            .finish()
12459    }
12460}
12461
12462#[derive(Copy, Clone)]
12463#[repr(C)]
12464pub struct GtkComboBox {
12465    pub parent_instance: GtkBin,
12466    pub priv_: *mut GtkComboBoxPrivate,
12467}
12468
12469impl ::std::fmt::Debug for GtkComboBox {
12470    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12471        f.debug_struct(&format!("GtkComboBox @ {self:p}"))
12472            .field("parent_instance", &self.parent_instance)
12473            .finish()
12474    }
12475}
12476
12477#[derive(Copy, Clone)]
12478#[repr(C)]
12479pub struct GtkComboBoxAccessible {
12480    pub parent: GtkContainerAccessible,
12481    pub priv_: *mut GtkComboBoxAccessiblePrivate,
12482}
12483
12484impl ::std::fmt::Debug for GtkComboBoxAccessible {
12485    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12486        f.debug_struct(&format!("GtkComboBoxAccessible @ {self:p}"))
12487            .field("parent", &self.parent)
12488            .field("priv_", &self.priv_)
12489            .finish()
12490    }
12491}
12492
12493#[derive(Copy, Clone)]
12494#[repr(C)]
12495pub struct GtkComboBoxText {
12496    pub parent_instance: GtkComboBox,
12497    pub priv_: *mut GtkComboBoxTextPrivate,
12498}
12499
12500impl ::std::fmt::Debug for GtkComboBoxText {
12501    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12502        f.debug_struct(&format!("GtkComboBoxText @ {self:p}"))
12503            .finish()
12504    }
12505}
12506
12507#[derive(Copy, Clone)]
12508#[repr(C)]
12509pub struct GtkContainer {
12510    pub widget: GtkWidget,
12511    pub priv_: *mut GtkContainerPrivate,
12512}
12513
12514impl ::std::fmt::Debug for GtkContainer {
12515    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12516        f.debug_struct(&format!("GtkContainer @ {self:p}"))
12517            .field("widget", &self.widget)
12518            .finish()
12519    }
12520}
12521
12522#[derive(Copy, Clone)]
12523#[repr(C)]
12524pub struct GtkContainerAccessible {
12525    pub parent: GtkWidgetAccessible,
12526    pub priv_: *mut GtkContainerAccessiblePrivate,
12527}
12528
12529impl ::std::fmt::Debug for GtkContainerAccessible {
12530    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12531        f.debug_struct(&format!("GtkContainerAccessible @ {self:p}"))
12532            .field("parent", &self.parent)
12533            .field("priv_", &self.priv_)
12534            .finish()
12535    }
12536}
12537
12538#[derive(Copy, Clone)]
12539#[repr(C)]
12540pub struct GtkContainerCellAccessible {
12541    pub parent: GtkCellAccessible,
12542    pub priv_: *mut GtkContainerCellAccessiblePrivate,
12543}
12544
12545impl ::std::fmt::Debug for GtkContainerCellAccessible {
12546    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12547        f.debug_struct(&format!("GtkContainerCellAccessible @ {self:p}"))
12548            .field("parent", &self.parent)
12549            .field("priv_", &self.priv_)
12550            .finish()
12551    }
12552}
12553
12554#[derive(Copy, Clone)]
12555#[repr(C)]
12556pub struct GtkCssProvider {
12557    pub parent_instance: gobject::GObject,
12558    pub priv_: *mut GtkCssProviderPrivate,
12559}
12560
12561impl ::std::fmt::Debug for GtkCssProvider {
12562    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12563        f.debug_struct(&format!("GtkCssProvider @ {self:p}"))
12564            .field("parent_instance", &self.parent_instance)
12565            .field("priv_", &self.priv_)
12566            .finish()
12567    }
12568}
12569
12570#[derive(Copy, Clone)]
12571#[repr(C)]
12572pub struct GtkDialog {
12573    pub window: GtkWindow,
12574    pub priv_: *mut GtkDialogPrivate,
12575}
12576
12577impl ::std::fmt::Debug for GtkDialog {
12578    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12579        f.debug_struct(&format!("GtkDialog @ {self:p}"))
12580            .field("window", &self.window)
12581            .finish()
12582    }
12583}
12584
12585#[derive(Copy, Clone)]
12586#[repr(C)]
12587pub struct GtkDrawingArea {
12588    pub widget: GtkWidget,
12589    pub dummy: gpointer,
12590}
12591
12592impl ::std::fmt::Debug for GtkDrawingArea {
12593    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12594        f.debug_struct(&format!("GtkDrawingArea @ {self:p}"))
12595            .field("widget", &self.widget)
12596            .finish()
12597    }
12598}
12599
12600#[derive(Copy, Clone)]
12601#[repr(C)]
12602pub struct GtkEntry {
12603    pub parent_instance: GtkWidget,
12604    pub priv_: *mut GtkEntryPrivate,
12605}
12606
12607impl ::std::fmt::Debug for GtkEntry {
12608    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12609        f.debug_struct(&format!("GtkEntry @ {self:p}")).finish()
12610    }
12611}
12612
12613#[derive(Copy, Clone)]
12614#[repr(C)]
12615pub struct GtkEntryAccessible {
12616    pub parent: GtkWidgetAccessible,
12617    pub priv_: *mut GtkEntryAccessiblePrivate,
12618}
12619
12620impl ::std::fmt::Debug for GtkEntryAccessible {
12621    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12622        f.debug_struct(&format!("GtkEntryAccessible @ {self:p}"))
12623            .field("parent", &self.parent)
12624            .field("priv_", &self.priv_)
12625            .finish()
12626    }
12627}
12628
12629#[derive(Copy, Clone)]
12630#[repr(C)]
12631pub struct GtkEntryBuffer {
12632    pub parent_instance: gobject::GObject,
12633    pub priv_: *mut GtkEntryBufferPrivate,
12634}
12635
12636impl ::std::fmt::Debug for GtkEntryBuffer {
12637    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12638        f.debug_struct(&format!("GtkEntryBuffer @ {self:p}"))
12639            .field("parent_instance", &self.parent_instance)
12640            .finish()
12641    }
12642}
12643
12644#[derive(Copy, Clone)]
12645#[repr(C)]
12646pub struct GtkEntryCompletion {
12647    pub parent_instance: gobject::GObject,
12648    pub priv_: *mut GtkEntryCompletionPrivate,
12649}
12650
12651impl ::std::fmt::Debug for GtkEntryCompletion {
12652    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12653        f.debug_struct(&format!("GtkEntryCompletion @ {self:p}"))
12654            .field("parent_instance", &self.parent_instance)
12655            .finish()
12656    }
12657}
12658
12659#[repr(C)]
12660#[allow(dead_code)]
12661pub struct GtkEntryIconAccessible {
12662    _data: [u8; 0],
12663    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
12664}
12665
12666impl ::std::fmt::Debug for GtkEntryIconAccessible {
12667    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12668        f.debug_struct(&format!("GtkEntryIconAccessible @ {self:p}"))
12669            .finish()
12670    }
12671}
12672
12673#[derive(Copy, Clone)]
12674#[repr(C)]
12675pub struct GtkEventBox {
12676    pub bin: GtkBin,
12677    pub priv_: *mut GtkEventBoxPrivate,
12678}
12679
12680impl ::std::fmt::Debug for GtkEventBox {
12681    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12682        f.debug_struct(&format!("GtkEventBox @ {self:p}"))
12683            .field("bin", &self.bin)
12684            .finish()
12685    }
12686}
12687
12688#[repr(C)]
12689#[allow(dead_code)]
12690pub struct GtkEventController {
12691    _data: [u8; 0],
12692    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
12693}
12694
12695impl ::std::fmt::Debug for GtkEventController {
12696    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12697        f.debug_struct(&format!("GtkEventController @ {self:p}"))
12698            .finish()
12699    }
12700}
12701
12702#[repr(C)]
12703#[allow(dead_code)]
12704pub struct GtkEventControllerKey {
12705    _data: [u8; 0],
12706    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
12707}
12708
12709impl ::std::fmt::Debug for GtkEventControllerKey {
12710    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12711        f.debug_struct(&format!("GtkEventControllerKey @ {self:p}"))
12712            .finish()
12713    }
12714}
12715
12716#[repr(C)]
12717#[allow(dead_code)]
12718pub struct GtkEventControllerMotion {
12719    _data: [u8; 0],
12720    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
12721}
12722
12723impl ::std::fmt::Debug for GtkEventControllerMotion {
12724    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12725        f.debug_struct(&format!("GtkEventControllerMotion @ {self:p}"))
12726            .finish()
12727    }
12728}
12729
12730#[repr(C)]
12731#[allow(dead_code)]
12732pub struct GtkEventControllerScroll {
12733    _data: [u8; 0],
12734    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
12735}
12736
12737impl ::std::fmt::Debug for GtkEventControllerScroll {
12738    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12739        f.debug_struct(&format!("GtkEventControllerScroll @ {self:p}"))
12740            .finish()
12741    }
12742}
12743
12744#[derive(Copy, Clone)]
12745#[repr(C)]
12746pub struct GtkExpander {
12747    pub bin: GtkBin,
12748    pub priv_: *mut GtkExpanderPrivate,
12749}
12750
12751impl ::std::fmt::Debug for GtkExpander {
12752    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12753        f.debug_struct(&format!("GtkExpander @ {self:p}"))
12754            .field("bin", &self.bin)
12755            .field("priv_", &self.priv_)
12756            .finish()
12757    }
12758}
12759
12760#[derive(Copy, Clone)]
12761#[repr(C)]
12762pub struct GtkExpanderAccessible {
12763    pub parent: GtkContainerAccessible,
12764    pub priv_: *mut GtkExpanderAccessiblePrivate,
12765}
12766
12767impl ::std::fmt::Debug for GtkExpanderAccessible {
12768    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12769        f.debug_struct(&format!("GtkExpanderAccessible @ {self:p}"))
12770            .field("parent", &self.parent)
12771            .field("priv_", &self.priv_)
12772            .finish()
12773    }
12774}
12775
12776#[derive(Copy, Clone)]
12777#[repr(C)]
12778pub struct GtkFileChooserButton {
12779    pub parent: GtkBox,
12780    pub priv_: *mut GtkFileChooserButtonPrivate,
12781}
12782
12783impl ::std::fmt::Debug for GtkFileChooserButton {
12784    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12785        f.debug_struct(&format!("GtkFileChooserButton @ {self:p}"))
12786            .field("parent", &self.parent)
12787            .finish()
12788    }
12789}
12790
12791#[derive(Copy, Clone)]
12792#[repr(C)]
12793pub struct GtkFileChooserDialog {
12794    pub parent_instance: GtkDialog,
12795    pub priv_: *mut GtkFileChooserDialogPrivate,
12796}
12797
12798impl ::std::fmt::Debug for GtkFileChooserDialog {
12799    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12800        f.debug_struct(&format!("GtkFileChooserDialog @ {self:p}"))
12801            .field("parent_instance", &self.parent_instance)
12802            .field("priv_", &self.priv_)
12803            .finish()
12804    }
12805}
12806
12807#[repr(C)]
12808#[allow(dead_code)]
12809pub struct GtkFileChooserNative {
12810    _data: [u8; 0],
12811    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
12812}
12813
12814impl ::std::fmt::Debug for GtkFileChooserNative {
12815    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12816        f.debug_struct(&format!("GtkFileChooserNative @ {self:p}"))
12817            .finish()
12818    }
12819}
12820
12821#[derive(Copy, Clone)]
12822#[repr(C)]
12823pub struct GtkFileChooserWidget {
12824    pub parent_instance: GtkBox,
12825    pub priv_: *mut GtkFileChooserWidgetPrivate,
12826}
12827
12828impl ::std::fmt::Debug for GtkFileChooserWidget {
12829    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12830        f.debug_struct(&format!("GtkFileChooserWidget @ {self:p}"))
12831            .field("parent_instance", &self.parent_instance)
12832            .field("priv_", &self.priv_)
12833            .finish()
12834    }
12835}
12836
12837#[derive(Copy, Clone)]
12838#[repr(C)]
12839pub struct GtkFileChooserWidgetAccessible {
12840    pub parent: GtkContainerAccessible,
12841    pub priv_: *mut GtkFileChooserWidgetAccessiblePrivate,
12842}
12843
12844impl ::std::fmt::Debug for GtkFileChooserWidgetAccessible {
12845    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12846        f.debug_struct(&format!("GtkFileChooserWidgetAccessible @ {self:p}"))
12847            .field("parent", &self.parent)
12848            .field("priv_", &self.priv_)
12849            .finish()
12850    }
12851}
12852
12853#[repr(C)]
12854#[allow(dead_code)]
12855pub struct GtkFileFilter {
12856    _data: [u8; 0],
12857    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
12858}
12859
12860impl ::std::fmt::Debug for GtkFileFilter {
12861    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12862        f.debug_struct(&format!("GtkFileFilter @ {self:p}"))
12863            .finish()
12864    }
12865}
12866
12867#[derive(Copy, Clone)]
12868#[repr(C)]
12869pub struct GtkFixed {
12870    pub container: GtkContainer,
12871    pub priv_: *mut GtkFixedPrivate,
12872}
12873
12874impl ::std::fmt::Debug for GtkFixed {
12875    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12876        f.debug_struct(&format!("GtkFixed @ {self:p}"))
12877            .field("container", &self.container)
12878            .finish()
12879    }
12880}
12881
12882#[derive(Copy, Clone)]
12883#[repr(C)]
12884pub struct GtkFlowBox {
12885    pub container: GtkContainer,
12886}
12887
12888impl ::std::fmt::Debug for GtkFlowBox {
12889    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12890        f.debug_struct(&format!("GtkFlowBox @ {self:p}"))
12891            .field("container", &self.container)
12892            .finish()
12893    }
12894}
12895
12896#[derive(Copy, Clone)]
12897#[repr(C)]
12898pub struct GtkFlowBoxAccessible {
12899    pub parent: GtkContainerAccessible,
12900    pub priv_: *mut GtkFlowBoxAccessiblePrivate,
12901}
12902
12903impl ::std::fmt::Debug for GtkFlowBoxAccessible {
12904    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12905        f.debug_struct(&format!("GtkFlowBoxAccessible @ {self:p}"))
12906            .field("parent", &self.parent)
12907            .field("priv_", &self.priv_)
12908            .finish()
12909    }
12910}
12911
12912#[derive(Copy, Clone)]
12913#[repr(C)]
12914pub struct GtkFlowBoxChild {
12915    pub parent_instance: GtkBin,
12916}
12917
12918impl ::std::fmt::Debug for GtkFlowBoxChild {
12919    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12920        f.debug_struct(&format!("GtkFlowBoxChild @ {self:p}"))
12921            .field("parent_instance", &self.parent_instance)
12922            .finish()
12923    }
12924}
12925
12926#[derive(Copy, Clone)]
12927#[repr(C)]
12928pub struct GtkFlowBoxChildAccessible {
12929    pub parent: GtkContainerAccessible,
12930}
12931
12932impl ::std::fmt::Debug for GtkFlowBoxChildAccessible {
12933    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12934        f.debug_struct(&format!("GtkFlowBoxChildAccessible @ {self:p}"))
12935            .field("parent", &self.parent)
12936            .finish()
12937    }
12938}
12939
12940#[derive(Copy, Clone)]
12941#[repr(C)]
12942pub struct GtkFontButton {
12943    pub button: GtkButton,
12944    pub priv_: *mut GtkFontButtonPrivate,
12945}
12946
12947impl ::std::fmt::Debug for GtkFontButton {
12948    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12949        f.debug_struct(&format!("GtkFontButton @ {self:p}"))
12950            .field("button", &self.button)
12951            .finish()
12952    }
12953}
12954
12955#[derive(Copy, Clone)]
12956#[repr(C)]
12957pub struct GtkFontChooserDialog {
12958    pub parent_instance: GtkDialog,
12959    pub priv_: *mut GtkFontChooserDialogPrivate,
12960}
12961
12962impl ::std::fmt::Debug for GtkFontChooserDialog {
12963    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12964        f.debug_struct(&format!("GtkFontChooserDialog @ {self:p}"))
12965            .field("parent_instance", &self.parent_instance)
12966            .finish()
12967    }
12968}
12969
12970#[derive(Copy, Clone)]
12971#[repr(C)]
12972pub struct GtkFontChooserWidget {
12973    pub parent_instance: GtkBox,
12974    pub priv_: *mut GtkFontChooserWidgetPrivate,
12975}
12976
12977impl ::std::fmt::Debug for GtkFontChooserWidget {
12978    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12979        f.debug_struct(&format!("GtkFontChooserWidget @ {self:p}"))
12980            .field("parent_instance", &self.parent_instance)
12981            .finish()
12982    }
12983}
12984
12985#[derive(Copy, Clone)]
12986#[repr(C)]
12987pub struct GtkFontSelection {
12988    pub parent_instance: GtkBox,
12989    pub priv_: *mut GtkFontSelectionPrivate,
12990}
12991
12992impl ::std::fmt::Debug for GtkFontSelection {
12993    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
12994        f.debug_struct(&format!("GtkFontSelection @ {self:p}"))
12995            .field("parent_instance", &self.parent_instance)
12996            .finish()
12997    }
12998}
12999
13000#[derive(Copy, Clone)]
13001#[repr(C)]
13002pub struct GtkFontSelectionDialog {
13003    pub parent_instance: GtkDialog,
13004    pub priv_: *mut GtkFontSelectionDialogPrivate,
13005}
13006
13007impl ::std::fmt::Debug for GtkFontSelectionDialog {
13008    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13009        f.debug_struct(&format!("GtkFontSelectionDialog @ {self:p}"))
13010            .field("parent_instance", &self.parent_instance)
13011            .finish()
13012    }
13013}
13014
13015#[derive(Copy, Clone)]
13016#[repr(C)]
13017pub struct GtkFrame {
13018    pub bin: GtkBin,
13019    pub priv_: *mut GtkFramePrivate,
13020}
13021
13022impl ::std::fmt::Debug for GtkFrame {
13023    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13024        f.debug_struct(&format!("GtkFrame @ {self:p}"))
13025            .field("bin", &self.bin)
13026            .finish()
13027    }
13028}
13029
13030#[derive(Copy, Clone)]
13031#[repr(C)]
13032pub struct GtkFrameAccessible {
13033    pub parent: GtkContainerAccessible,
13034    pub priv_: *mut GtkFrameAccessiblePrivate,
13035}
13036
13037impl ::std::fmt::Debug for GtkFrameAccessible {
13038    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13039        f.debug_struct(&format!("GtkFrameAccessible @ {self:p}"))
13040            .field("parent", &self.parent)
13041            .field("priv_", &self.priv_)
13042            .finish()
13043    }
13044}
13045
13046#[derive(Copy, Clone)]
13047#[repr(C)]
13048pub struct GtkGLArea {
13049    pub parent_instance: GtkWidget,
13050}
13051
13052impl ::std::fmt::Debug for GtkGLArea {
13053    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13054        f.debug_struct(&format!("GtkGLArea @ {self:p}")).finish()
13055    }
13056}
13057
13058#[repr(C)]
13059#[allow(dead_code)]
13060pub struct GtkGesture {
13061    _data: [u8; 0],
13062    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13063}
13064
13065impl ::std::fmt::Debug for GtkGesture {
13066    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13067        f.debug_struct(&format!("GtkGesture @ {self:p}")).finish()
13068    }
13069}
13070
13071#[repr(C)]
13072#[allow(dead_code)]
13073pub struct GtkGestureDrag {
13074    _data: [u8; 0],
13075    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13076}
13077
13078impl ::std::fmt::Debug for GtkGestureDrag {
13079    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13080        f.debug_struct(&format!("GtkGestureDrag @ {self:p}"))
13081            .finish()
13082    }
13083}
13084
13085#[repr(C)]
13086#[allow(dead_code)]
13087pub struct GtkGestureLongPress {
13088    _data: [u8; 0],
13089    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13090}
13091
13092impl ::std::fmt::Debug for GtkGestureLongPress {
13093    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13094        f.debug_struct(&format!("GtkGestureLongPress @ {self:p}"))
13095            .finish()
13096    }
13097}
13098
13099#[repr(C)]
13100#[allow(dead_code)]
13101pub struct GtkGestureMultiPress {
13102    _data: [u8; 0],
13103    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13104}
13105
13106impl ::std::fmt::Debug for GtkGestureMultiPress {
13107    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13108        f.debug_struct(&format!("GtkGestureMultiPress @ {self:p}"))
13109            .finish()
13110    }
13111}
13112
13113#[repr(C)]
13114#[allow(dead_code)]
13115pub struct GtkGesturePan {
13116    _data: [u8; 0],
13117    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13118}
13119
13120impl ::std::fmt::Debug for GtkGesturePan {
13121    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13122        f.debug_struct(&format!("GtkGesturePan @ {self:p}"))
13123            .finish()
13124    }
13125}
13126
13127#[repr(C)]
13128#[allow(dead_code)]
13129pub struct GtkGestureRotate {
13130    _data: [u8; 0],
13131    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13132}
13133
13134impl ::std::fmt::Debug for GtkGestureRotate {
13135    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13136        f.debug_struct(&format!("GtkGestureRotate @ {self:p}"))
13137            .finish()
13138    }
13139}
13140
13141#[repr(C)]
13142#[allow(dead_code)]
13143pub struct GtkGestureSingle {
13144    _data: [u8; 0],
13145    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13146}
13147
13148impl ::std::fmt::Debug for GtkGestureSingle {
13149    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13150        f.debug_struct(&format!("GtkGestureSingle @ {self:p}"))
13151            .finish()
13152    }
13153}
13154
13155#[repr(C)]
13156#[allow(dead_code)]
13157pub struct GtkGestureStylus {
13158    _data: [u8; 0],
13159    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13160}
13161
13162impl ::std::fmt::Debug for GtkGestureStylus {
13163    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13164        f.debug_struct(&format!("GtkGestureStylus @ {self:p}"))
13165            .finish()
13166    }
13167}
13168
13169#[repr(C)]
13170#[allow(dead_code)]
13171pub struct GtkGestureSwipe {
13172    _data: [u8; 0],
13173    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13174}
13175
13176impl ::std::fmt::Debug for GtkGestureSwipe {
13177    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13178        f.debug_struct(&format!("GtkGestureSwipe @ {self:p}"))
13179            .finish()
13180    }
13181}
13182
13183#[repr(C)]
13184#[allow(dead_code)]
13185pub struct GtkGestureZoom {
13186    _data: [u8; 0],
13187    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13188}
13189
13190impl ::std::fmt::Debug for GtkGestureZoom {
13191    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13192        f.debug_struct(&format!("GtkGestureZoom @ {self:p}"))
13193            .finish()
13194    }
13195}
13196
13197#[derive(Copy, Clone)]
13198#[repr(C)]
13199pub struct GtkGrid {
13200    pub container: GtkContainer,
13201    pub priv_: *mut GtkGridPrivate,
13202}
13203
13204impl ::std::fmt::Debug for GtkGrid {
13205    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13206        f.debug_struct(&format!("GtkGrid @ {self:p}")).finish()
13207    }
13208}
13209
13210#[derive(Copy, Clone)]
13211#[repr(C)]
13212pub struct GtkHBox {
13213    pub box_: GtkBox,
13214}
13215
13216impl ::std::fmt::Debug for GtkHBox {
13217    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13218        f.debug_struct(&format!("GtkHBox @ {self:p}"))
13219            .field("box_", &self.box_)
13220            .finish()
13221    }
13222}
13223
13224#[derive(Copy, Clone)]
13225#[repr(C)]
13226pub struct GtkHButtonBox {
13227    pub button_box: GtkButtonBox,
13228}
13229
13230impl ::std::fmt::Debug for GtkHButtonBox {
13231    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13232        f.debug_struct(&format!("GtkHButtonBox @ {self:p}"))
13233            .field("button_box", &self.button_box)
13234            .finish()
13235    }
13236}
13237
13238#[derive(Copy, Clone)]
13239#[repr(C)]
13240pub struct GtkHPaned {
13241    pub paned: GtkPaned,
13242}
13243
13244impl ::std::fmt::Debug for GtkHPaned {
13245    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13246        f.debug_struct(&format!("GtkHPaned @ {self:p}"))
13247            .field("paned", &self.paned)
13248            .finish()
13249    }
13250}
13251
13252#[derive(Copy, Clone)]
13253#[repr(C)]
13254pub struct GtkHSV {
13255    pub parent_instance: GtkWidget,
13256    pub priv_: *mut GtkHSVPrivate,
13257}
13258
13259impl ::std::fmt::Debug for GtkHSV {
13260    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13261        f.debug_struct(&format!("GtkHSV @ {self:p}"))
13262            .field("parent_instance", &self.parent_instance)
13263            .finish()
13264    }
13265}
13266
13267#[derive(Copy, Clone)]
13268#[repr(C)]
13269pub struct GtkHScale {
13270    pub scale: GtkScale,
13271}
13272
13273impl ::std::fmt::Debug for GtkHScale {
13274    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13275        f.debug_struct(&format!("GtkHScale @ {self:p}"))
13276            .field("scale", &self.scale)
13277            .finish()
13278    }
13279}
13280
13281#[derive(Copy, Clone)]
13282#[repr(C)]
13283pub struct GtkHScrollbar {
13284    pub scrollbar: GtkScrollbar,
13285}
13286
13287impl ::std::fmt::Debug for GtkHScrollbar {
13288    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13289        f.debug_struct(&format!("GtkHScrollbar @ {self:p}"))
13290            .field("scrollbar", &self.scrollbar)
13291            .finish()
13292    }
13293}
13294
13295#[derive(Copy, Clone)]
13296#[repr(C)]
13297pub struct GtkHSeparator {
13298    pub separator: GtkSeparator,
13299}
13300
13301impl ::std::fmt::Debug for GtkHSeparator {
13302    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13303        f.debug_struct(&format!("GtkHSeparator @ {self:p}"))
13304            .field("separator", &self.separator)
13305            .finish()
13306    }
13307}
13308
13309#[derive(Copy, Clone)]
13310#[repr(C)]
13311pub struct GtkHandleBox {
13312    pub bin: GtkBin,
13313    pub priv_: *mut GtkHandleBoxPrivate,
13314}
13315
13316impl ::std::fmt::Debug for GtkHandleBox {
13317    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13318        f.debug_struct(&format!("GtkHandleBox @ {self:p}"))
13319            .field("bin", &self.bin)
13320            .finish()
13321    }
13322}
13323
13324#[derive(Copy, Clone)]
13325#[repr(C)]
13326pub struct GtkHeaderBar {
13327    pub container: GtkContainer,
13328}
13329
13330impl ::std::fmt::Debug for GtkHeaderBar {
13331    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13332        f.debug_struct(&format!("GtkHeaderBar @ {self:p}"))
13333            .field("container", &self.container)
13334            .finish()
13335    }
13336}
13337
13338#[derive(Copy, Clone)]
13339#[repr(C)]
13340pub struct GtkHeaderBarAccessible {
13341    pub parent: GtkContainerAccessible,
13342}
13343
13344impl ::std::fmt::Debug for GtkHeaderBarAccessible {
13345    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13346        f.debug_struct(&format!("GtkHeaderBarAccessible @ {self:p}"))
13347            .field("parent", &self.parent)
13348            .finish()
13349    }
13350}
13351
13352#[derive(Copy, Clone)]
13353#[repr(C)]
13354pub struct GtkIMContext {
13355    pub parent_instance: gobject::GObject,
13356}
13357
13358impl ::std::fmt::Debug for GtkIMContext {
13359    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13360        f.debug_struct(&format!("GtkIMContext @ {self:p}"))
13361            .field("parent_instance", &self.parent_instance)
13362            .finish()
13363    }
13364}
13365
13366#[derive(Copy, Clone)]
13367#[repr(C)]
13368pub struct GtkIMContextSimple {
13369    pub object: GtkIMContext,
13370    pub priv_: *mut GtkIMContextSimplePrivate,
13371}
13372
13373impl ::std::fmt::Debug for GtkIMContextSimple {
13374    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13375        f.debug_struct(&format!("GtkIMContextSimple @ {self:p}"))
13376            .field("object", &self.object)
13377            .finish()
13378    }
13379}
13380
13381#[derive(Copy, Clone)]
13382#[repr(C)]
13383pub struct GtkIMMulticontext {
13384    pub object: GtkIMContext,
13385    pub priv_: *mut GtkIMMulticontextPrivate,
13386}
13387
13388impl ::std::fmt::Debug for GtkIMMulticontext {
13389    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13390        f.debug_struct(&format!("GtkIMMulticontext @ {self:p}"))
13391            .field("object", &self.object)
13392            .finish()
13393    }
13394}
13395
13396#[derive(Copy, Clone)]
13397#[repr(C)]
13398pub struct GtkIconFactory {
13399    pub parent_instance: gobject::GObject,
13400    pub priv_: *mut GtkIconFactoryPrivate,
13401}
13402
13403impl ::std::fmt::Debug for GtkIconFactory {
13404    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13405        f.debug_struct(&format!("GtkIconFactory @ {self:p}"))
13406            .field("parent_instance", &self.parent_instance)
13407            .finish()
13408    }
13409}
13410
13411#[repr(C)]
13412#[allow(dead_code)]
13413pub struct GtkIconInfo {
13414    _data: [u8; 0],
13415    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13416}
13417
13418impl ::std::fmt::Debug for GtkIconInfo {
13419    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13420        f.debug_struct(&format!("GtkIconInfo @ {self:p}")).finish()
13421    }
13422}
13423
13424#[derive(Copy, Clone)]
13425#[repr(C)]
13426pub struct GtkIconTheme {
13427    pub parent_instance: gobject::GObject,
13428    pub priv_: *mut GtkIconThemePrivate,
13429}
13430
13431impl ::std::fmt::Debug for GtkIconTheme {
13432    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13433        f.debug_struct(&format!("GtkIconTheme @ {self:p}")).finish()
13434    }
13435}
13436
13437#[derive(Copy, Clone)]
13438#[repr(C)]
13439pub struct GtkIconView {
13440    pub parent: GtkContainer,
13441    pub priv_: *mut GtkIconViewPrivate,
13442}
13443
13444impl ::std::fmt::Debug for GtkIconView {
13445    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13446        f.debug_struct(&format!("GtkIconView @ {self:p}"))
13447            .field("parent", &self.parent)
13448            .finish()
13449    }
13450}
13451
13452#[derive(Copy, Clone)]
13453#[repr(C)]
13454pub struct GtkIconViewAccessible {
13455    pub parent: GtkContainerAccessible,
13456    pub priv_: *mut GtkIconViewAccessiblePrivate,
13457}
13458
13459impl ::std::fmt::Debug for GtkIconViewAccessible {
13460    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13461        f.debug_struct(&format!("GtkIconViewAccessible @ {self:p}"))
13462            .field("parent", &self.parent)
13463            .field("priv_", &self.priv_)
13464            .finish()
13465    }
13466}
13467
13468#[derive(Copy, Clone)]
13469#[repr(C)]
13470pub struct GtkImage {
13471    pub misc: GtkMisc,
13472    pub priv_: *mut GtkImagePrivate,
13473}
13474
13475impl ::std::fmt::Debug for GtkImage {
13476    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13477        f.debug_struct(&format!("GtkImage @ {self:p}"))
13478            .field("misc", &self.misc)
13479            .finish()
13480    }
13481}
13482
13483#[derive(Copy, Clone)]
13484#[repr(C)]
13485pub struct GtkImageAccessible {
13486    pub parent: GtkWidgetAccessible,
13487    pub priv_: *mut GtkImageAccessiblePrivate,
13488}
13489
13490impl ::std::fmt::Debug for GtkImageAccessible {
13491    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13492        f.debug_struct(&format!("GtkImageAccessible @ {self:p}"))
13493            .field("parent", &self.parent)
13494            .field("priv_", &self.priv_)
13495            .finish()
13496    }
13497}
13498
13499#[derive(Copy, Clone)]
13500#[repr(C)]
13501pub struct GtkImageCellAccessible {
13502    pub parent: GtkRendererCellAccessible,
13503    pub priv_: *mut GtkImageCellAccessiblePrivate,
13504}
13505
13506impl ::std::fmt::Debug for GtkImageCellAccessible {
13507    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13508        f.debug_struct(&format!("GtkImageCellAccessible @ {self:p}"))
13509            .field("parent", &self.parent)
13510            .field("priv_", &self.priv_)
13511            .finish()
13512    }
13513}
13514
13515#[derive(Copy, Clone)]
13516#[repr(C)]
13517pub struct GtkImageMenuItem {
13518    pub menu_item: GtkMenuItem,
13519    pub priv_: *mut GtkImageMenuItemPrivate,
13520}
13521
13522impl ::std::fmt::Debug for GtkImageMenuItem {
13523    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13524        f.debug_struct(&format!("GtkImageMenuItem @ {self:p}"))
13525            .field("menu_item", &self.menu_item)
13526            .finish()
13527    }
13528}
13529
13530#[derive(Copy, Clone)]
13531#[repr(C)]
13532pub struct GtkInfoBar {
13533    pub parent: GtkBox,
13534    pub priv_: *mut GtkInfoBarPrivate,
13535}
13536
13537impl ::std::fmt::Debug for GtkInfoBar {
13538    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13539        f.debug_struct(&format!("GtkInfoBar @ {self:p}"))
13540            .field("parent", &self.parent)
13541            .finish()
13542    }
13543}
13544
13545#[derive(Copy, Clone)]
13546#[repr(C)]
13547pub struct GtkInvisible {
13548    pub widget: GtkWidget,
13549    pub priv_: *mut GtkInvisiblePrivate,
13550}
13551
13552impl ::std::fmt::Debug for GtkInvisible {
13553    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13554        f.debug_struct(&format!("GtkInvisible @ {self:p}"))
13555            .field("widget", &self.widget)
13556            .finish()
13557    }
13558}
13559
13560#[derive(Copy, Clone)]
13561#[repr(C)]
13562pub struct GtkLabel {
13563    pub misc: GtkMisc,
13564    pub priv_: *mut GtkLabelPrivate,
13565}
13566
13567impl ::std::fmt::Debug for GtkLabel {
13568    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13569        f.debug_struct(&format!("GtkLabel @ {self:p}"))
13570            .field("misc", &self.misc)
13571            .finish()
13572    }
13573}
13574
13575#[derive(Copy, Clone)]
13576#[repr(C)]
13577pub struct GtkLabelAccessible {
13578    pub parent: GtkWidgetAccessible,
13579    pub priv_: *mut GtkLabelAccessiblePrivate,
13580}
13581
13582impl ::std::fmt::Debug for GtkLabelAccessible {
13583    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13584        f.debug_struct(&format!("GtkLabelAccessible @ {self:p}"))
13585            .field("parent", &self.parent)
13586            .field("priv_", &self.priv_)
13587            .finish()
13588    }
13589}
13590
13591#[derive(Copy, Clone)]
13592#[repr(C)]
13593pub struct GtkLayout {
13594    pub container: GtkContainer,
13595    pub priv_: *mut GtkLayoutPrivate,
13596}
13597
13598impl ::std::fmt::Debug for GtkLayout {
13599    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13600        f.debug_struct(&format!("GtkLayout @ {self:p}"))
13601            .field("container", &self.container)
13602            .finish()
13603    }
13604}
13605
13606#[derive(Copy, Clone)]
13607#[repr(C)]
13608pub struct GtkLevelBar {
13609    pub parent: GtkWidget,
13610    pub priv_: *mut GtkLevelBarPrivate,
13611}
13612
13613impl ::std::fmt::Debug for GtkLevelBar {
13614    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13615        f.debug_struct(&format!("GtkLevelBar @ {self:p}")).finish()
13616    }
13617}
13618
13619#[derive(Copy, Clone)]
13620#[repr(C)]
13621pub struct GtkLevelBarAccessible {
13622    pub parent: GtkWidgetAccessible,
13623    pub priv_: *mut GtkLevelBarAccessiblePrivate,
13624}
13625
13626impl ::std::fmt::Debug for GtkLevelBarAccessible {
13627    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13628        f.debug_struct(&format!("GtkLevelBarAccessible @ {self:p}"))
13629            .field("parent", &self.parent)
13630            .field("priv_", &self.priv_)
13631            .finish()
13632    }
13633}
13634
13635#[derive(Copy, Clone)]
13636#[repr(C)]
13637pub struct GtkLinkButton {
13638    pub parent_instance: GtkButton,
13639    pub priv_: *mut GtkLinkButtonPrivate,
13640}
13641
13642impl ::std::fmt::Debug for GtkLinkButton {
13643    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13644        f.debug_struct(&format!("GtkLinkButton @ {self:p}"))
13645            .finish()
13646    }
13647}
13648
13649#[derive(Copy, Clone)]
13650#[repr(C)]
13651pub struct GtkLinkButtonAccessible {
13652    pub parent: GtkButtonAccessible,
13653    pub priv_: *mut GtkLinkButtonAccessiblePrivate,
13654}
13655
13656impl ::std::fmt::Debug for GtkLinkButtonAccessible {
13657    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13658        f.debug_struct(&format!("GtkLinkButtonAccessible @ {self:p}"))
13659            .field("parent", &self.parent)
13660            .field("priv_", &self.priv_)
13661            .finish()
13662    }
13663}
13664
13665#[derive(Copy, Clone)]
13666#[repr(C)]
13667pub struct GtkListBox {
13668    pub parent_instance: GtkContainer,
13669}
13670
13671impl ::std::fmt::Debug for GtkListBox {
13672    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13673        f.debug_struct(&format!("GtkListBox @ {self:p}"))
13674            .field("parent_instance", &self.parent_instance)
13675            .finish()
13676    }
13677}
13678
13679#[derive(Copy, Clone)]
13680#[repr(C)]
13681pub struct GtkListBoxAccessible {
13682    pub parent: GtkContainerAccessible,
13683    pub priv_: *mut GtkListBoxAccessiblePrivate,
13684}
13685
13686impl ::std::fmt::Debug for GtkListBoxAccessible {
13687    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13688        f.debug_struct(&format!("GtkListBoxAccessible @ {self:p}"))
13689            .field("parent", &self.parent)
13690            .field("priv_", &self.priv_)
13691            .finish()
13692    }
13693}
13694
13695#[derive(Copy, Clone)]
13696#[repr(C)]
13697pub struct GtkListBoxRow {
13698    pub parent_instance: GtkBin,
13699}
13700
13701impl ::std::fmt::Debug for GtkListBoxRow {
13702    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13703        f.debug_struct(&format!("GtkListBoxRow @ {self:p}"))
13704            .field("parent_instance", &self.parent_instance)
13705            .finish()
13706    }
13707}
13708
13709#[derive(Copy, Clone)]
13710#[repr(C)]
13711pub struct GtkListBoxRowAccessible {
13712    pub parent: GtkContainerAccessible,
13713}
13714
13715impl ::std::fmt::Debug for GtkListBoxRowAccessible {
13716    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13717        f.debug_struct(&format!("GtkListBoxRowAccessible @ {self:p}"))
13718            .field("parent", &self.parent)
13719            .finish()
13720    }
13721}
13722
13723#[derive(Copy, Clone)]
13724#[repr(C)]
13725pub struct GtkListStore {
13726    pub parent: gobject::GObject,
13727    pub priv_: *mut GtkListStorePrivate,
13728}
13729
13730impl ::std::fmt::Debug for GtkListStore {
13731    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13732        f.debug_struct(&format!("GtkListStore @ {self:p}"))
13733            .field("parent", &self.parent)
13734            .finish()
13735    }
13736}
13737
13738#[derive(Copy, Clone)]
13739#[repr(C)]
13740pub struct GtkLockButton {
13741    pub parent: GtkButton,
13742    pub priv_: *mut GtkLockButtonPrivate,
13743}
13744
13745impl ::std::fmt::Debug for GtkLockButton {
13746    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13747        f.debug_struct(&format!("GtkLockButton @ {self:p}"))
13748            .field("parent", &self.parent)
13749            .field("priv_", &self.priv_)
13750            .finish()
13751    }
13752}
13753
13754#[derive(Copy, Clone)]
13755#[repr(C)]
13756pub struct GtkLockButtonAccessible {
13757    pub parent: GtkButtonAccessible,
13758    pub priv_: *mut GtkLockButtonAccessiblePrivate,
13759}
13760
13761impl ::std::fmt::Debug for GtkLockButtonAccessible {
13762    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13763        f.debug_struct(&format!("GtkLockButtonAccessible @ {self:p}"))
13764            .field("parent", &self.parent)
13765            .field("priv_", &self.priv_)
13766            .finish()
13767    }
13768}
13769
13770#[derive(Copy, Clone)]
13771#[repr(C)]
13772pub struct GtkMenu {
13773    pub menu_shell: GtkMenuShell,
13774    pub priv_: *mut GtkMenuPrivate,
13775}
13776
13777impl ::std::fmt::Debug for GtkMenu {
13778    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13779        f.debug_struct(&format!("GtkMenu @ {self:p}"))
13780            .field("menu_shell", &self.menu_shell)
13781            .finish()
13782    }
13783}
13784
13785#[derive(Copy, Clone)]
13786#[repr(C)]
13787pub struct GtkMenuAccessible {
13788    pub parent: GtkMenuShellAccessible,
13789    pub priv_: *mut GtkMenuAccessiblePrivate,
13790}
13791
13792impl ::std::fmt::Debug for GtkMenuAccessible {
13793    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13794        f.debug_struct(&format!("GtkMenuAccessible @ {self:p}"))
13795            .field("parent", &self.parent)
13796            .field("priv_", &self.priv_)
13797            .finish()
13798    }
13799}
13800
13801#[derive(Copy, Clone)]
13802#[repr(C)]
13803pub struct GtkMenuBar {
13804    pub menu_shell: GtkMenuShell,
13805    pub priv_: *mut GtkMenuBarPrivate,
13806}
13807
13808impl ::std::fmt::Debug for GtkMenuBar {
13809    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13810        f.debug_struct(&format!("GtkMenuBar @ {self:p}"))
13811            .field("menu_shell", &self.menu_shell)
13812            .finish()
13813    }
13814}
13815
13816#[derive(Copy, Clone)]
13817#[repr(C)]
13818pub struct GtkMenuButton {
13819    pub parent: GtkToggleButton,
13820    pub priv_: *mut GtkMenuButtonPrivate,
13821}
13822
13823impl ::std::fmt::Debug for GtkMenuButton {
13824    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13825        f.debug_struct(&format!("GtkMenuButton @ {self:p}"))
13826            .field("parent", &self.parent)
13827            .finish()
13828    }
13829}
13830
13831#[derive(Copy, Clone)]
13832#[repr(C)]
13833pub struct GtkMenuButtonAccessible {
13834    pub parent: GtkToggleButtonAccessible,
13835    pub priv_: *mut GtkMenuButtonAccessiblePrivate,
13836}
13837
13838impl ::std::fmt::Debug for GtkMenuButtonAccessible {
13839    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13840        f.debug_struct(&format!("GtkMenuButtonAccessible @ {self:p}"))
13841            .field("parent", &self.parent)
13842            .field("priv_", &self.priv_)
13843            .finish()
13844    }
13845}
13846
13847#[derive(Copy, Clone)]
13848#[repr(C)]
13849pub struct GtkMenuItem {
13850    pub bin: GtkBin,
13851    pub priv_: *mut GtkMenuItemPrivate,
13852}
13853
13854impl ::std::fmt::Debug for GtkMenuItem {
13855    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13856        f.debug_struct(&format!("GtkMenuItem @ {self:p}"))
13857            .field("bin", &self.bin)
13858            .finish()
13859    }
13860}
13861
13862#[derive(Copy, Clone)]
13863#[repr(C)]
13864pub struct GtkMenuItemAccessible {
13865    pub parent: GtkContainerAccessible,
13866    pub priv_: *mut GtkMenuItemAccessiblePrivate,
13867}
13868
13869impl ::std::fmt::Debug for GtkMenuItemAccessible {
13870    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13871        f.debug_struct(&format!("GtkMenuItemAccessible @ {self:p}"))
13872            .field("parent", &self.parent)
13873            .field("priv_", &self.priv_)
13874            .finish()
13875    }
13876}
13877
13878#[derive(Copy, Clone)]
13879#[repr(C)]
13880pub struct GtkMenuShell {
13881    pub container: GtkContainer,
13882    pub priv_: *mut GtkMenuShellPrivate,
13883}
13884
13885impl ::std::fmt::Debug for GtkMenuShell {
13886    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13887        f.debug_struct(&format!("GtkMenuShell @ {self:p}"))
13888            .field("container", &self.container)
13889            .finish()
13890    }
13891}
13892
13893#[derive(Copy, Clone)]
13894#[repr(C)]
13895pub struct GtkMenuShellAccessible {
13896    pub parent: GtkContainerAccessible,
13897    pub priv_: *mut GtkMenuShellAccessiblePrivate,
13898}
13899
13900impl ::std::fmt::Debug for GtkMenuShellAccessible {
13901    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13902        f.debug_struct(&format!("GtkMenuShellAccessible @ {self:p}"))
13903            .field("parent", &self.parent)
13904            .field("priv_", &self.priv_)
13905            .finish()
13906    }
13907}
13908
13909#[derive(Copy, Clone)]
13910#[repr(C)]
13911pub struct GtkMenuToolButton {
13912    pub parent: GtkToolButton,
13913    pub priv_: *mut GtkMenuToolButtonPrivate,
13914}
13915
13916impl ::std::fmt::Debug for GtkMenuToolButton {
13917    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13918        f.debug_struct(&format!("GtkMenuToolButton @ {self:p}"))
13919            .field("parent", &self.parent)
13920            .finish()
13921    }
13922}
13923
13924#[derive(Copy, Clone)]
13925#[repr(C)]
13926pub struct GtkMessageDialog {
13927    pub parent_instance: GtkDialog,
13928    pub priv_: *mut GtkMessageDialogPrivate,
13929}
13930
13931impl ::std::fmt::Debug for GtkMessageDialog {
13932    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13933        f.debug_struct(&format!("GtkMessageDialog @ {self:p}"))
13934            .field("parent_instance", &self.parent_instance)
13935            .finish()
13936    }
13937}
13938
13939#[derive(Copy, Clone)]
13940#[repr(C)]
13941pub struct GtkMisc {
13942    pub widget: GtkWidget,
13943    pub priv_: *mut GtkMiscPrivate,
13944}
13945
13946impl ::std::fmt::Debug for GtkMisc {
13947    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13948        f.debug_struct(&format!("GtkMisc @ {self:p}"))
13949            .field("widget", &self.widget)
13950            .finish()
13951    }
13952}
13953
13954#[repr(C)]
13955#[allow(dead_code)]
13956pub struct GtkModelButton {
13957    _data: [u8; 0],
13958    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
13959}
13960
13961impl ::std::fmt::Debug for GtkModelButton {
13962    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13963        f.debug_struct(&format!("GtkModelButton @ {self:p}"))
13964            .finish()
13965    }
13966}
13967
13968#[derive(Copy, Clone)]
13969#[repr(C)]
13970pub struct GtkMountOperation {
13971    pub parent_instance: gio::GMountOperation,
13972    pub priv_: *mut GtkMountOperationPrivate,
13973}
13974
13975impl ::std::fmt::Debug for GtkMountOperation {
13976    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13977        f.debug_struct(&format!("GtkMountOperation @ {self:p}"))
13978            .field("parent_instance", &self.parent_instance)
13979            .field("priv_", &self.priv_)
13980            .finish()
13981    }
13982}
13983
13984#[derive(Copy, Clone)]
13985#[repr(C)]
13986pub struct GtkNativeDialog {
13987    pub parent_instance: gobject::GObject,
13988}
13989
13990impl ::std::fmt::Debug for GtkNativeDialog {
13991    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
13992        f.debug_struct(&format!("GtkNativeDialog @ {self:p}"))
13993            .field("parent_instance", &self.parent_instance)
13994            .finish()
13995    }
13996}
13997
13998#[derive(Copy, Clone)]
13999#[repr(C)]
14000pub struct GtkNotebook {
14001    pub container: GtkContainer,
14002    pub priv_: *mut GtkNotebookPrivate,
14003}
14004
14005impl ::std::fmt::Debug for GtkNotebook {
14006    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14007        f.debug_struct(&format!("GtkNotebook @ {self:p}")).finish()
14008    }
14009}
14010
14011#[derive(Copy, Clone)]
14012#[repr(C)]
14013pub struct GtkNotebookAccessible {
14014    pub parent: GtkContainerAccessible,
14015    pub priv_: *mut GtkNotebookAccessiblePrivate,
14016}
14017
14018impl ::std::fmt::Debug for GtkNotebookAccessible {
14019    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14020        f.debug_struct(&format!("GtkNotebookAccessible @ {self:p}"))
14021            .field("parent", &self.parent)
14022            .field("priv_", &self.priv_)
14023            .finish()
14024    }
14025}
14026
14027#[derive(Copy, Clone)]
14028#[repr(C)]
14029pub struct GtkNotebookPageAccessible {
14030    pub parent: atk::AtkObject,
14031    pub priv_: *mut GtkNotebookPageAccessiblePrivate,
14032}
14033
14034impl ::std::fmt::Debug for GtkNotebookPageAccessible {
14035    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14036        f.debug_struct(&format!("GtkNotebookPageAccessible @ {self:p}"))
14037            .field("parent", &self.parent)
14038            .field("priv_", &self.priv_)
14039            .finish()
14040    }
14041}
14042
14043#[derive(Copy, Clone)]
14044#[repr(C)]
14045pub struct GtkNumerableIcon {
14046    pub parent: gio::GEmblemedIcon,
14047    pub priv_: *mut GtkNumerableIconPrivate,
14048}
14049
14050impl ::std::fmt::Debug for GtkNumerableIcon {
14051    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14052        f.debug_struct(&format!("GtkNumerableIcon @ {self:p}"))
14053            .field("parent", &self.parent)
14054            .finish()
14055    }
14056}
14057
14058#[derive(Copy, Clone)]
14059#[repr(C)]
14060pub struct GtkOffscreenWindow {
14061    pub parent_object: GtkWindow,
14062}
14063
14064impl ::std::fmt::Debug for GtkOffscreenWindow {
14065    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14066        f.debug_struct(&format!("GtkOffscreenWindow @ {self:p}"))
14067            .field("parent_object", &self.parent_object)
14068            .finish()
14069    }
14070}
14071
14072#[derive(Copy, Clone)]
14073#[repr(C)]
14074pub struct GtkOverlay {
14075    pub parent: GtkBin,
14076    pub priv_: *mut GtkOverlayPrivate,
14077}
14078
14079impl ::std::fmt::Debug for GtkOverlay {
14080    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14081        f.debug_struct(&format!("GtkOverlay @ {self:p}"))
14082            .field("parent", &self.parent)
14083            .field("priv_", &self.priv_)
14084            .finish()
14085    }
14086}
14087
14088#[repr(C)]
14089#[allow(dead_code)]
14090pub struct GtkPadController {
14091    _data: [u8; 0],
14092    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14093}
14094
14095impl ::std::fmt::Debug for GtkPadController {
14096    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14097        f.debug_struct(&format!("GtkPadController @ {self:p}"))
14098            .finish()
14099    }
14100}
14101
14102#[repr(C)]
14103#[allow(dead_code)]
14104pub struct GtkPageSetup {
14105    _data: [u8; 0],
14106    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14107}
14108
14109impl ::std::fmt::Debug for GtkPageSetup {
14110    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14111        f.debug_struct(&format!("GtkPageSetup @ {self:p}")).finish()
14112    }
14113}
14114
14115#[derive(Copy, Clone)]
14116#[repr(C)]
14117pub struct GtkPaned {
14118    pub container: GtkContainer,
14119    pub priv_: *mut GtkPanedPrivate,
14120}
14121
14122impl ::std::fmt::Debug for GtkPaned {
14123    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14124        f.debug_struct(&format!("GtkPaned @ {self:p}"))
14125            .field("container", &self.container)
14126            .finish()
14127    }
14128}
14129
14130#[derive(Copy, Clone)]
14131#[repr(C)]
14132pub struct GtkPanedAccessible {
14133    pub parent: GtkContainerAccessible,
14134    pub priv_: *mut GtkPanedAccessiblePrivate,
14135}
14136
14137impl ::std::fmt::Debug for GtkPanedAccessible {
14138    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14139        f.debug_struct(&format!("GtkPanedAccessible @ {self:p}"))
14140            .field("parent", &self.parent)
14141            .field("priv_", &self.priv_)
14142            .finish()
14143    }
14144}
14145
14146#[repr(C)]
14147#[allow(dead_code)]
14148pub struct GtkPlacesSidebar {
14149    _data: [u8; 0],
14150    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14151}
14152
14153impl ::std::fmt::Debug for GtkPlacesSidebar {
14154    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14155        f.debug_struct(&format!("GtkPlacesSidebar @ {self:p}"))
14156            .finish()
14157    }
14158}
14159
14160#[derive(Copy, Clone)]
14161#[repr(C)]
14162pub struct GtkPlug {
14163    pub window: GtkWindow,
14164    pub priv_: *mut GtkPlugPrivate,
14165}
14166
14167impl ::std::fmt::Debug for GtkPlug {
14168    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14169        f.debug_struct(&format!("GtkPlug @ {self:p}"))
14170            .field("window", &self.window)
14171            .field("priv_", &self.priv_)
14172            .finish()
14173    }
14174}
14175
14176#[derive(Copy, Clone)]
14177#[repr(C)]
14178pub struct GtkPlugAccessible {
14179    pub parent: GtkWindowAccessible,
14180    pub priv_: *mut GtkPlugAccessiblePrivate,
14181}
14182
14183impl ::std::fmt::Debug for GtkPlugAccessible {
14184    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14185        f.debug_struct(&format!("GtkPlugAccessible @ {self:p}"))
14186            .field("parent", &self.parent)
14187            .field("priv_", &self.priv_)
14188            .finish()
14189    }
14190}
14191
14192#[derive(Copy, Clone)]
14193#[repr(C)]
14194pub struct GtkPopover {
14195    pub parent_instance: GtkBin,
14196    pub priv_: *mut GtkPopoverPrivate,
14197}
14198
14199impl ::std::fmt::Debug for GtkPopover {
14200    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14201        f.debug_struct(&format!("GtkPopover @ {self:p}"))
14202            .field("parent_instance", &self.parent_instance)
14203            .finish()
14204    }
14205}
14206
14207#[derive(Copy, Clone)]
14208#[repr(C)]
14209pub struct GtkPopoverAccessible {
14210    pub parent: GtkContainerAccessible,
14211}
14212
14213impl ::std::fmt::Debug for GtkPopoverAccessible {
14214    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14215        f.debug_struct(&format!("GtkPopoverAccessible @ {self:p}"))
14216            .field("parent", &self.parent)
14217            .finish()
14218    }
14219}
14220
14221#[repr(C)]
14222#[allow(dead_code)]
14223pub struct GtkPopoverMenu {
14224    _data: [u8; 0],
14225    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14226}
14227
14228impl ::std::fmt::Debug for GtkPopoverMenu {
14229    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14230        f.debug_struct(&format!("GtkPopoverMenu @ {self:p}"))
14231            .finish()
14232    }
14233}
14234
14235#[repr(C)]
14236#[allow(dead_code)]
14237pub struct GtkPrintContext {
14238    _data: [u8; 0],
14239    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14240}
14241
14242impl ::std::fmt::Debug for GtkPrintContext {
14243    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14244        f.debug_struct(&format!("GtkPrintContext @ {self:p}"))
14245            .finish()
14246    }
14247}
14248
14249#[derive(Copy, Clone)]
14250#[repr(C)]
14251pub struct GtkPrintOperation {
14252    pub parent_instance: gobject::GObject,
14253    pub priv_: *mut GtkPrintOperationPrivate,
14254}
14255
14256impl ::std::fmt::Debug for GtkPrintOperation {
14257    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14258        f.debug_struct(&format!("GtkPrintOperation @ {self:p}"))
14259            .field("parent_instance", &self.parent_instance)
14260            .finish()
14261    }
14262}
14263
14264#[repr(C)]
14265#[allow(dead_code)]
14266pub struct GtkPrintSettings {
14267    _data: [u8; 0],
14268    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14269}
14270
14271impl ::std::fmt::Debug for GtkPrintSettings {
14272    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14273        f.debug_struct(&format!("GtkPrintSettings @ {self:p}"))
14274            .finish()
14275    }
14276}
14277
14278#[derive(Copy, Clone)]
14279#[repr(C)]
14280pub struct GtkProgressBar {
14281    pub parent: GtkWidget,
14282    pub priv_: *mut GtkProgressBarPrivate,
14283}
14284
14285impl ::std::fmt::Debug for GtkProgressBar {
14286    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14287        f.debug_struct(&format!("GtkProgressBar @ {self:p}"))
14288            .field("parent", &self.parent)
14289            .finish()
14290    }
14291}
14292
14293#[derive(Copy, Clone)]
14294#[repr(C)]
14295pub struct GtkProgressBarAccessible {
14296    pub parent: GtkWidgetAccessible,
14297    pub priv_: *mut GtkProgressBarAccessiblePrivate,
14298}
14299
14300impl ::std::fmt::Debug for GtkProgressBarAccessible {
14301    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14302        f.debug_struct(&format!("GtkProgressBarAccessible @ {self:p}"))
14303            .field("parent", &self.parent)
14304            .field("priv_", &self.priv_)
14305            .finish()
14306    }
14307}
14308
14309#[derive(Copy, Clone)]
14310#[repr(C)]
14311pub struct GtkRadioAction {
14312    pub parent: GtkToggleAction,
14313    pub private_data: *mut GtkRadioActionPrivate,
14314}
14315
14316impl ::std::fmt::Debug for GtkRadioAction {
14317    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14318        f.debug_struct(&format!("GtkRadioAction @ {self:p}"))
14319            .field("parent", &self.parent)
14320            .finish()
14321    }
14322}
14323
14324#[derive(Copy, Clone)]
14325#[repr(C)]
14326pub struct GtkRadioButton {
14327    pub check_button: GtkCheckButton,
14328    pub priv_: *mut GtkRadioButtonPrivate,
14329}
14330
14331impl ::std::fmt::Debug for GtkRadioButton {
14332    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14333        f.debug_struct(&format!("GtkRadioButton @ {self:p}"))
14334            .field("check_button", &self.check_button)
14335            .finish()
14336    }
14337}
14338
14339#[derive(Copy, Clone)]
14340#[repr(C)]
14341pub struct GtkRadioButtonAccessible {
14342    pub parent: GtkToggleButtonAccessible,
14343    pub priv_: *mut GtkRadioButtonAccessiblePrivate,
14344}
14345
14346impl ::std::fmt::Debug for GtkRadioButtonAccessible {
14347    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14348        f.debug_struct(&format!("GtkRadioButtonAccessible @ {self:p}"))
14349            .field("parent", &self.parent)
14350            .field("priv_", &self.priv_)
14351            .finish()
14352    }
14353}
14354
14355#[derive(Copy, Clone)]
14356#[repr(C)]
14357pub struct GtkRadioMenuItem {
14358    pub check_menu_item: GtkCheckMenuItem,
14359    pub priv_: *mut GtkRadioMenuItemPrivate,
14360}
14361
14362impl ::std::fmt::Debug for GtkRadioMenuItem {
14363    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14364        f.debug_struct(&format!("GtkRadioMenuItem @ {self:p}"))
14365            .field("check_menu_item", &self.check_menu_item)
14366            .finish()
14367    }
14368}
14369
14370#[derive(Copy, Clone)]
14371#[repr(C)]
14372pub struct GtkRadioMenuItemAccessible {
14373    pub parent: GtkCheckMenuItemAccessible,
14374    pub priv_: *mut GtkRadioMenuItemAccessiblePrivate,
14375}
14376
14377impl ::std::fmt::Debug for GtkRadioMenuItemAccessible {
14378    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14379        f.debug_struct(&format!("GtkRadioMenuItemAccessible @ {self:p}"))
14380            .field("parent", &self.parent)
14381            .field("priv_", &self.priv_)
14382            .finish()
14383    }
14384}
14385
14386#[derive(Copy, Clone)]
14387#[repr(C)]
14388pub struct GtkRadioToolButton {
14389    pub parent: GtkToggleToolButton,
14390}
14391
14392impl ::std::fmt::Debug for GtkRadioToolButton {
14393    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14394        f.debug_struct(&format!("GtkRadioToolButton @ {self:p}"))
14395            .field("parent", &self.parent)
14396            .finish()
14397    }
14398}
14399
14400#[derive(Copy, Clone)]
14401#[repr(C)]
14402pub struct GtkRange {
14403    pub widget: GtkWidget,
14404    pub priv_: *mut GtkRangePrivate,
14405}
14406
14407impl ::std::fmt::Debug for GtkRange {
14408    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14409        f.debug_struct(&format!("GtkRange @ {self:p}"))
14410            .field("widget", &self.widget)
14411            .field("priv_", &self.priv_)
14412            .finish()
14413    }
14414}
14415
14416#[derive(Copy, Clone)]
14417#[repr(C)]
14418pub struct GtkRangeAccessible {
14419    pub parent: GtkWidgetAccessible,
14420    pub priv_: *mut GtkRangeAccessiblePrivate,
14421}
14422
14423impl ::std::fmt::Debug for GtkRangeAccessible {
14424    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14425        f.debug_struct(&format!("GtkRangeAccessible @ {self:p}"))
14426            .field("parent", &self.parent)
14427            .field("priv_", &self.priv_)
14428            .finish()
14429    }
14430}
14431
14432#[derive(Copy, Clone)]
14433#[repr(C)]
14434pub struct GtkRcStyle {
14435    pub parent_instance: gobject::GObject,
14436    pub name: *mut c_char,
14437    pub bg_pixmap_name: [*mut c_char; 5],
14438    pub font_desc: *mut pango::PangoFontDescription,
14439    pub color_flags: [GtkRcFlags; 5],
14440    pub fg: [gdk::GdkColor; 5],
14441    pub bg: [gdk::GdkColor; 5],
14442    pub text: [gdk::GdkColor; 5],
14443    pub base: [gdk::GdkColor; 5],
14444    pub xthickness: c_int,
14445    pub ythickness: c_int,
14446    pub rc_properties: *mut glib::GArray,
14447    pub rc_style_lists: *mut glib::GSList,
14448    pub icon_factories: *mut glib::GSList,
14449    pub engine_specified: c_uint,
14450}
14451
14452impl ::std::fmt::Debug for GtkRcStyle {
14453    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14454        f.debug_struct(&format!("GtkRcStyle @ {self:p}"))
14455            .field("parent_instance", &self.parent_instance)
14456            .field("name", &self.name)
14457            .field("bg_pixmap_name", &self.bg_pixmap_name)
14458            .field("font_desc", &self.font_desc)
14459            .field("color_flags", &self.color_flags)
14460            .field("fg", &self.fg)
14461            .field("bg", &self.bg)
14462            .field("text", &self.text)
14463            .field("base", &self.base)
14464            .field("xthickness", &self.xthickness)
14465            .field("ythickness", &self.ythickness)
14466            .finish()
14467    }
14468}
14469
14470#[derive(Copy, Clone)]
14471#[repr(C)]
14472pub struct GtkRecentAction {
14473    pub parent_instance: GtkAction,
14474    pub priv_: *mut GtkRecentActionPrivate,
14475}
14476
14477impl ::std::fmt::Debug for GtkRecentAction {
14478    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14479        f.debug_struct(&format!("GtkRecentAction @ {self:p}"))
14480            .field("parent_instance", &self.parent_instance)
14481            .finish()
14482    }
14483}
14484
14485#[derive(Copy, Clone)]
14486#[repr(C)]
14487pub struct GtkRecentChooserDialog {
14488    pub parent_instance: GtkDialog,
14489    pub priv_: *mut GtkRecentChooserDialogPrivate,
14490}
14491
14492impl ::std::fmt::Debug for GtkRecentChooserDialog {
14493    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14494        f.debug_struct(&format!("GtkRecentChooserDialog @ {self:p}"))
14495            .field("parent_instance", &self.parent_instance)
14496            .finish()
14497    }
14498}
14499
14500#[derive(Copy, Clone)]
14501#[repr(C)]
14502pub struct GtkRecentChooserMenu {
14503    pub parent_instance: GtkMenu,
14504    pub priv_: *mut GtkRecentChooserMenuPrivate,
14505}
14506
14507impl ::std::fmt::Debug for GtkRecentChooserMenu {
14508    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14509        f.debug_struct(&format!("GtkRecentChooserMenu @ {self:p}"))
14510            .field("parent_instance", &self.parent_instance)
14511            .finish()
14512    }
14513}
14514
14515#[derive(Copy, Clone)]
14516#[repr(C)]
14517pub struct GtkRecentChooserWidget {
14518    pub parent_instance: GtkBox,
14519    pub priv_: *mut GtkRecentChooserWidgetPrivate,
14520}
14521
14522impl ::std::fmt::Debug for GtkRecentChooserWidget {
14523    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14524        f.debug_struct(&format!("GtkRecentChooserWidget @ {self:p}"))
14525            .field("parent_instance", &self.parent_instance)
14526            .finish()
14527    }
14528}
14529
14530#[repr(C)]
14531#[allow(dead_code)]
14532pub struct GtkRecentFilter {
14533    _data: [u8; 0],
14534    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14535}
14536
14537impl ::std::fmt::Debug for GtkRecentFilter {
14538    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14539        f.debug_struct(&format!("GtkRecentFilter @ {self:p}"))
14540            .finish()
14541    }
14542}
14543
14544#[derive(Copy, Clone)]
14545#[repr(C)]
14546pub struct GtkRecentManager {
14547    pub parent_instance: gobject::GObject,
14548    pub priv_: *mut GtkRecentManagerPrivate,
14549}
14550
14551impl ::std::fmt::Debug for GtkRecentManager {
14552    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14553        f.debug_struct(&format!("GtkRecentManager @ {self:p}"))
14554            .finish()
14555    }
14556}
14557
14558#[derive(Copy, Clone)]
14559#[repr(C)]
14560pub struct GtkRendererCellAccessible {
14561    pub parent: GtkCellAccessible,
14562    pub priv_: *mut GtkRendererCellAccessiblePrivate,
14563}
14564
14565impl ::std::fmt::Debug for GtkRendererCellAccessible {
14566    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14567        f.debug_struct(&format!("GtkRendererCellAccessible @ {self:p}"))
14568            .field("parent", &self.parent)
14569            .field("priv_", &self.priv_)
14570            .finish()
14571    }
14572}
14573
14574#[derive(Copy, Clone)]
14575#[repr(C)]
14576pub struct GtkRevealer {
14577    pub parent_instance: GtkBin,
14578}
14579
14580impl ::std::fmt::Debug for GtkRevealer {
14581    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14582        f.debug_struct(&format!("GtkRevealer @ {self:p}"))
14583            .field("parent_instance", &self.parent_instance)
14584            .finish()
14585    }
14586}
14587
14588#[derive(Copy, Clone)]
14589#[repr(C)]
14590pub struct GtkScale {
14591    pub range: GtkRange,
14592    pub priv_: *mut GtkScalePrivate,
14593}
14594
14595impl ::std::fmt::Debug for GtkScale {
14596    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14597        f.debug_struct(&format!("GtkScale @ {self:p}"))
14598            .field("range", &self.range)
14599            .finish()
14600    }
14601}
14602
14603#[derive(Copy, Clone)]
14604#[repr(C)]
14605pub struct GtkScaleAccessible {
14606    pub parent: GtkRangeAccessible,
14607    pub priv_: *mut GtkScaleAccessiblePrivate,
14608}
14609
14610impl ::std::fmt::Debug for GtkScaleAccessible {
14611    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14612        f.debug_struct(&format!("GtkScaleAccessible @ {self:p}"))
14613            .field("parent", &self.parent)
14614            .field("priv_", &self.priv_)
14615            .finish()
14616    }
14617}
14618
14619#[derive(Copy, Clone)]
14620#[repr(C)]
14621pub struct GtkScaleButton {
14622    pub parent: GtkButton,
14623    pub priv_: *mut GtkScaleButtonPrivate,
14624}
14625
14626impl ::std::fmt::Debug for GtkScaleButton {
14627    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14628        f.debug_struct(&format!("GtkScaleButton @ {self:p}"))
14629            .field("parent", &self.parent)
14630            .finish()
14631    }
14632}
14633
14634#[derive(Copy, Clone)]
14635#[repr(C)]
14636pub struct GtkScaleButtonAccessible {
14637    pub parent: GtkButtonAccessible,
14638    pub priv_: *mut GtkScaleButtonAccessiblePrivate,
14639}
14640
14641impl ::std::fmt::Debug for GtkScaleButtonAccessible {
14642    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14643        f.debug_struct(&format!("GtkScaleButtonAccessible @ {self:p}"))
14644            .field("parent", &self.parent)
14645            .field("priv_", &self.priv_)
14646            .finish()
14647    }
14648}
14649
14650#[derive(Copy, Clone)]
14651#[repr(C)]
14652pub struct GtkScrollbar {
14653    pub range: GtkRange,
14654}
14655
14656impl ::std::fmt::Debug for GtkScrollbar {
14657    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14658        f.debug_struct(&format!("GtkScrollbar @ {self:p}"))
14659            .field("range", &self.range)
14660            .finish()
14661    }
14662}
14663
14664#[derive(Copy, Clone)]
14665#[repr(C)]
14666pub struct GtkScrolledWindow {
14667    pub container: GtkBin,
14668    pub priv_: *mut GtkScrolledWindowPrivate,
14669}
14670
14671impl ::std::fmt::Debug for GtkScrolledWindow {
14672    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14673        f.debug_struct(&format!("GtkScrolledWindow @ {self:p}"))
14674            .field("container", &self.container)
14675            .field("priv_", &self.priv_)
14676            .finish()
14677    }
14678}
14679
14680#[derive(Copy, Clone)]
14681#[repr(C)]
14682pub struct GtkScrolledWindowAccessible {
14683    pub parent: GtkContainerAccessible,
14684    pub priv_: *mut GtkScrolledWindowAccessiblePrivate,
14685}
14686
14687impl ::std::fmt::Debug for GtkScrolledWindowAccessible {
14688    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14689        f.debug_struct(&format!("GtkScrolledWindowAccessible @ {self:p}"))
14690            .field("parent", &self.parent)
14691            .field("priv_", &self.priv_)
14692            .finish()
14693    }
14694}
14695
14696#[derive(Copy, Clone)]
14697#[repr(C)]
14698pub struct GtkSearchBar {
14699    pub parent: GtkBin,
14700}
14701
14702impl ::std::fmt::Debug for GtkSearchBar {
14703    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14704        f.debug_struct(&format!("GtkSearchBar @ {self:p}")).finish()
14705    }
14706}
14707
14708#[derive(Copy, Clone)]
14709#[repr(C)]
14710pub struct GtkSearchEntry {
14711    pub parent: GtkEntry,
14712}
14713
14714impl ::std::fmt::Debug for GtkSearchEntry {
14715    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14716        f.debug_struct(&format!("GtkSearchEntry @ {self:p}"))
14717            .field("parent", &self.parent)
14718            .finish()
14719    }
14720}
14721
14722#[derive(Copy, Clone)]
14723#[repr(C)]
14724pub struct GtkSeparator {
14725    pub widget: GtkWidget,
14726    pub priv_: *mut GtkSeparatorPrivate,
14727}
14728
14729impl ::std::fmt::Debug for GtkSeparator {
14730    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14731        f.debug_struct(&format!("GtkSeparator @ {self:p}"))
14732            .field("widget", &self.widget)
14733            .field("priv_", &self.priv_)
14734            .finish()
14735    }
14736}
14737
14738#[derive(Copy, Clone)]
14739#[repr(C)]
14740pub struct GtkSeparatorMenuItem {
14741    pub menu_item: GtkMenuItem,
14742}
14743
14744impl ::std::fmt::Debug for GtkSeparatorMenuItem {
14745    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14746        f.debug_struct(&format!("GtkSeparatorMenuItem @ {self:p}"))
14747            .field("menu_item", &self.menu_item)
14748            .finish()
14749    }
14750}
14751
14752#[derive(Copy, Clone)]
14753#[repr(C)]
14754pub struct GtkSeparatorToolItem {
14755    pub parent: GtkToolItem,
14756    pub priv_: *mut GtkSeparatorToolItemPrivate,
14757}
14758
14759impl ::std::fmt::Debug for GtkSeparatorToolItem {
14760    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14761        f.debug_struct(&format!("GtkSeparatorToolItem @ {self:p}"))
14762            .field("parent", &self.parent)
14763            .finish()
14764    }
14765}
14766
14767#[derive(Copy, Clone)]
14768#[repr(C)]
14769pub struct GtkSettings {
14770    pub parent_instance: gobject::GObject,
14771    pub priv_: *mut GtkSettingsPrivate,
14772}
14773
14774impl ::std::fmt::Debug for GtkSettings {
14775    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14776        f.debug_struct(&format!("GtkSettings @ {self:p}"))
14777            .field("parent_instance", &self.parent_instance)
14778            .finish()
14779    }
14780}
14781
14782#[repr(C)]
14783#[allow(dead_code)]
14784pub struct GtkShortcutLabel {
14785    _data: [u8; 0],
14786    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14787}
14788
14789impl ::std::fmt::Debug for GtkShortcutLabel {
14790    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14791        f.debug_struct(&format!("GtkShortcutLabel @ {self:p}"))
14792            .finish()
14793    }
14794}
14795
14796#[repr(C)]
14797#[allow(dead_code)]
14798pub struct GtkShortcutsGroup {
14799    _data: [u8; 0],
14800    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14801}
14802
14803impl ::std::fmt::Debug for GtkShortcutsGroup {
14804    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14805        f.debug_struct(&format!("GtkShortcutsGroup @ {self:p}"))
14806            .finish()
14807    }
14808}
14809
14810#[repr(C)]
14811#[allow(dead_code)]
14812pub struct GtkShortcutsSection {
14813    _data: [u8; 0],
14814    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14815}
14816
14817impl ::std::fmt::Debug for GtkShortcutsSection {
14818    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14819        f.debug_struct(&format!("GtkShortcutsSection @ {self:p}"))
14820            .finish()
14821    }
14822}
14823
14824#[repr(C)]
14825#[allow(dead_code)]
14826pub struct GtkShortcutsShortcut {
14827    _data: [u8; 0],
14828    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
14829}
14830
14831impl ::std::fmt::Debug for GtkShortcutsShortcut {
14832    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14833        f.debug_struct(&format!("GtkShortcutsShortcut @ {self:p}"))
14834            .finish()
14835    }
14836}
14837
14838#[derive(Copy, Clone)]
14839#[repr(C)]
14840pub struct GtkShortcutsWindow {
14841    pub window: GtkWindow,
14842}
14843
14844impl ::std::fmt::Debug for GtkShortcutsWindow {
14845    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14846        f.debug_struct(&format!("GtkShortcutsWindow @ {self:p}"))
14847            .field("window", &self.window)
14848            .finish()
14849    }
14850}
14851
14852#[derive(Copy, Clone)]
14853#[repr(C)]
14854pub struct GtkSizeGroup {
14855    pub parent_instance: gobject::GObject,
14856    pub priv_: *mut GtkSizeGroupPrivate,
14857}
14858
14859impl ::std::fmt::Debug for GtkSizeGroup {
14860    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14861        f.debug_struct(&format!("GtkSizeGroup @ {self:p}"))
14862            .field("parent_instance", &self.parent_instance)
14863            .finish()
14864    }
14865}
14866
14867#[derive(Copy, Clone)]
14868#[repr(C)]
14869pub struct GtkSocket {
14870    pub container: GtkContainer,
14871    pub priv_: *mut GtkSocketPrivate,
14872}
14873
14874impl ::std::fmt::Debug for GtkSocket {
14875    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14876        f.debug_struct(&format!("GtkSocket @ {self:p}"))
14877            .field("container", &self.container)
14878            .field("priv_", &self.priv_)
14879            .finish()
14880    }
14881}
14882
14883#[derive(Copy, Clone)]
14884#[repr(C)]
14885pub struct GtkSocketAccessible {
14886    pub parent: GtkContainerAccessible,
14887    pub priv_: *mut GtkSocketAccessiblePrivate,
14888}
14889
14890impl ::std::fmt::Debug for GtkSocketAccessible {
14891    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14892        f.debug_struct(&format!("GtkSocketAccessible @ {self:p}"))
14893            .field("parent", &self.parent)
14894            .field("priv_", &self.priv_)
14895            .finish()
14896    }
14897}
14898
14899#[derive(Copy, Clone)]
14900#[repr(C)]
14901pub struct GtkSpinButton {
14902    pub entry: GtkEntry,
14903    pub priv_: *mut GtkSpinButtonPrivate,
14904}
14905
14906impl ::std::fmt::Debug for GtkSpinButton {
14907    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14908        f.debug_struct(&format!("GtkSpinButton @ {self:p}"))
14909            .field("entry", &self.entry)
14910            .finish()
14911    }
14912}
14913
14914#[derive(Copy, Clone)]
14915#[repr(C)]
14916pub struct GtkSpinButtonAccessible {
14917    pub parent: GtkEntryAccessible,
14918    pub priv_: *mut GtkSpinButtonAccessiblePrivate,
14919}
14920
14921impl ::std::fmt::Debug for GtkSpinButtonAccessible {
14922    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14923        f.debug_struct(&format!("GtkSpinButtonAccessible @ {self:p}"))
14924            .field("parent", &self.parent)
14925            .field("priv_", &self.priv_)
14926            .finish()
14927    }
14928}
14929
14930#[derive(Copy, Clone)]
14931#[repr(C)]
14932pub struct GtkSpinner {
14933    pub parent: GtkWidget,
14934    pub priv_: *mut GtkSpinnerPrivate,
14935}
14936
14937impl ::std::fmt::Debug for GtkSpinner {
14938    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14939        f.debug_struct(&format!("GtkSpinner @ {self:p}"))
14940            .field("parent", &self.parent)
14941            .finish()
14942    }
14943}
14944
14945#[derive(Copy, Clone)]
14946#[repr(C)]
14947pub struct GtkSpinnerAccessible {
14948    pub parent: GtkWidgetAccessible,
14949    pub priv_: *mut GtkSpinnerAccessiblePrivate,
14950}
14951
14952impl ::std::fmt::Debug for GtkSpinnerAccessible {
14953    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14954        f.debug_struct(&format!("GtkSpinnerAccessible @ {self:p}"))
14955            .field("parent", &self.parent)
14956            .field("priv_", &self.priv_)
14957            .finish()
14958    }
14959}
14960
14961#[derive(Copy, Clone)]
14962#[repr(C)]
14963pub struct GtkStack {
14964    pub parent_instance: GtkContainer,
14965}
14966
14967impl ::std::fmt::Debug for GtkStack {
14968    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14969        f.debug_struct(&format!("GtkStack @ {self:p}"))
14970            .field("parent_instance", &self.parent_instance)
14971            .finish()
14972    }
14973}
14974
14975#[derive(Copy, Clone)]
14976#[repr(C)]
14977pub struct GtkStackAccessible {
14978    pub parent: GtkContainerAccessible,
14979}
14980
14981impl ::std::fmt::Debug for GtkStackAccessible {
14982    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14983        f.debug_struct(&format!("GtkStackAccessible @ {self:p}"))
14984            .field("parent", &self.parent)
14985            .finish()
14986    }
14987}
14988
14989#[derive(Copy, Clone)]
14990#[repr(C)]
14991pub struct GtkStackSidebar {
14992    pub parent: GtkBin,
14993}
14994
14995impl ::std::fmt::Debug for GtkStackSidebar {
14996    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
14997        f.debug_struct(&format!("GtkStackSidebar @ {self:p}"))
14998            .field("parent", &self.parent)
14999            .finish()
15000    }
15001}
15002
15003#[derive(Copy, Clone)]
15004#[repr(C)]
15005pub struct GtkStackSwitcher {
15006    pub widget: GtkBox,
15007}
15008
15009impl ::std::fmt::Debug for GtkStackSwitcher {
15010    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15011        f.debug_struct(&format!("GtkStackSwitcher @ {self:p}"))
15012            .field("widget", &self.widget)
15013            .finish()
15014    }
15015}
15016
15017#[derive(Copy, Clone)]
15018#[repr(C)]
15019pub struct GtkStatusIcon {
15020    pub parent_instance: gobject::GObject,
15021    pub priv_: *mut GtkStatusIconPrivate,
15022}
15023
15024impl ::std::fmt::Debug for GtkStatusIcon {
15025    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15026        f.debug_struct(&format!("GtkStatusIcon @ {self:p}"))
15027            .field("parent_instance", &self.parent_instance)
15028            .field("priv_", &self.priv_)
15029            .finish()
15030    }
15031}
15032
15033#[derive(Copy, Clone)]
15034#[repr(C)]
15035pub struct GtkStatusbar {
15036    pub parent_widget: GtkBox,
15037    pub priv_: *mut GtkStatusbarPrivate,
15038}
15039
15040impl ::std::fmt::Debug for GtkStatusbar {
15041    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15042        f.debug_struct(&format!("GtkStatusbar @ {self:p}"))
15043            .field("parent_widget", &self.parent_widget)
15044            .finish()
15045    }
15046}
15047
15048#[derive(Copy, Clone)]
15049#[repr(C)]
15050pub struct GtkStatusbarAccessible {
15051    pub parent: GtkContainerAccessible,
15052    pub priv_: *mut GtkStatusbarAccessiblePrivate,
15053}
15054
15055impl ::std::fmt::Debug for GtkStatusbarAccessible {
15056    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15057        f.debug_struct(&format!("GtkStatusbarAccessible @ {self:p}"))
15058            .field("parent", &self.parent)
15059            .field("priv_", &self.priv_)
15060            .finish()
15061    }
15062}
15063
15064#[repr(C)]
15065#[allow(dead_code)]
15066pub struct GtkStyle {
15067    pub parent_instance: gobject::GObject,
15068    pub fg: [gdk::GdkColor; 5],
15069    pub bg: [gdk::GdkColor; 5],
15070    pub light: [gdk::GdkColor; 5],
15071    pub dark: [gdk::GdkColor; 5],
15072    pub mid: [gdk::GdkColor; 5],
15073    pub text: [gdk::GdkColor; 5],
15074    pub base: [gdk::GdkColor; 5],
15075    pub text_aa: [gdk::GdkColor; 5],
15076    pub black: gdk::GdkColor,
15077    pub white: gdk::GdkColor,
15078    pub font_desc: *mut pango::PangoFontDescription,
15079    pub xthickness: c_int,
15080    pub ythickness: c_int,
15081    _truncated_record_marker: c_void,
15082    // /*Ignored*/field background has incomplete type
15083}
15084
15085impl ::std::fmt::Debug for GtkStyle {
15086    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15087        f.debug_struct(&format!("GtkStyle @ {self:p}"))
15088            .field("fg", &self.fg)
15089            .field("bg", &self.bg)
15090            .field("light", &self.light)
15091            .field("dark", &self.dark)
15092            .field("mid", &self.mid)
15093            .field("text", &self.text)
15094            .field("base", &self.base)
15095            .field("text_aa", &self.text_aa)
15096            .field("black", &self.black)
15097            .field("white", &self.white)
15098            .field("font_desc", &self.font_desc)
15099            .field("xthickness", &self.xthickness)
15100            .field("ythickness", &self.ythickness)
15101            .finish()
15102    }
15103}
15104
15105#[derive(Copy, Clone)]
15106#[repr(C)]
15107pub struct GtkStyleContext {
15108    pub parent_object: gobject::GObject,
15109    pub priv_: *mut GtkStyleContextPrivate,
15110}
15111
15112impl ::std::fmt::Debug for GtkStyleContext {
15113    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15114        f.debug_struct(&format!("GtkStyleContext @ {self:p}"))
15115            .field("parent_object", &self.parent_object)
15116            .field("priv_", &self.priv_)
15117            .finish()
15118    }
15119}
15120
15121#[derive(Copy, Clone)]
15122#[repr(C)]
15123pub struct GtkStyleProperties {
15124    pub parent_object: gobject::GObject,
15125    pub priv_: *mut GtkStylePropertiesPrivate,
15126}
15127
15128impl ::std::fmt::Debug for GtkStyleProperties {
15129    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15130        f.debug_struct(&format!("GtkStyleProperties @ {self:p}"))
15131            .finish()
15132    }
15133}
15134
15135#[derive(Copy, Clone)]
15136#[repr(C)]
15137pub struct GtkSwitch {
15138    pub parent_instance: GtkWidget,
15139    pub priv_: *mut GtkSwitchPrivate,
15140}
15141
15142impl ::std::fmt::Debug for GtkSwitch {
15143    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15144        f.debug_struct(&format!("GtkSwitch @ {self:p}")).finish()
15145    }
15146}
15147
15148#[derive(Copy, Clone)]
15149#[repr(C)]
15150pub struct GtkSwitchAccessible {
15151    pub parent: GtkWidgetAccessible,
15152    pub priv_: *mut GtkSwitchAccessiblePrivate,
15153}
15154
15155impl ::std::fmt::Debug for GtkSwitchAccessible {
15156    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15157        f.debug_struct(&format!("GtkSwitchAccessible @ {self:p}"))
15158            .field("parent", &self.parent)
15159            .field("priv_", &self.priv_)
15160            .finish()
15161    }
15162}
15163
15164#[derive(Copy, Clone)]
15165#[repr(C)]
15166pub struct GtkTable {
15167    pub container: GtkContainer,
15168    pub priv_: *mut GtkTablePrivate,
15169}
15170
15171impl ::std::fmt::Debug for GtkTable {
15172    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15173        f.debug_struct(&format!("GtkTable @ {self:p}"))
15174            .field("container", &self.container)
15175            .finish()
15176    }
15177}
15178
15179#[derive(Copy, Clone)]
15180#[repr(C)]
15181pub struct GtkTearoffMenuItem {
15182    pub menu_item: GtkMenuItem,
15183    pub priv_: *mut GtkTearoffMenuItemPrivate,
15184}
15185
15186impl ::std::fmt::Debug for GtkTearoffMenuItem {
15187    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15188        f.debug_struct(&format!("GtkTearoffMenuItem @ {self:p}"))
15189            .field("menu_item", &self.menu_item)
15190            .finish()
15191    }
15192}
15193
15194#[derive(Copy, Clone)]
15195#[repr(C)]
15196pub struct GtkTextBuffer {
15197    pub parent_instance: gobject::GObject,
15198    pub priv_: *mut GtkTextBufferPrivate,
15199}
15200
15201impl ::std::fmt::Debug for GtkTextBuffer {
15202    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15203        f.debug_struct(&format!("GtkTextBuffer @ {self:p}"))
15204            .field("parent_instance", &self.parent_instance)
15205            .field("priv_", &self.priv_)
15206            .finish()
15207    }
15208}
15209
15210#[derive(Copy, Clone)]
15211#[repr(C)]
15212pub struct GtkTextCellAccessible {
15213    pub parent: GtkRendererCellAccessible,
15214    pub priv_: *mut GtkTextCellAccessiblePrivate,
15215}
15216
15217impl ::std::fmt::Debug for GtkTextCellAccessible {
15218    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15219        f.debug_struct(&format!("GtkTextCellAccessible @ {self:p}"))
15220            .field("parent", &self.parent)
15221            .field("priv_", &self.priv_)
15222            .finish()
15223    }
15224}
15225
15226#[derive(Copy, Clone)]
15227#[repr(C)]
15228pub struct GtkTextChildAnchor {
15229    pub parent_instance: gobject::GObject,
15230    pub segment: gpointer,
15231}
15232
15233impl ::std::fmt::Debug for GtkTextChildAnchor {
15234    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15235        f.debug_struct(&format!("GtkTextChildAnchor @ {self:p}"))
15236            .field("parent_instance", &self.parent_instance)
15237            .finish()
15238    }
15239}
15240
15241#[derive(Copy, Clone)]
15242#[repr(C)]
15243pub struct GtkTextMark {
15244    pub parent_instance: gobject::GObject,
15245    pub segment: gpointer,
15246}
15247
15248impl ::std::fmt::Debug for GtkTextMark {
15249    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15250        f.debug_struct(&format!("GtkTextMark @ {self:p}"))
15251            .field("parent_instance", &self.parent_instance)
15252            .finish()
15253    }
15254}
15255
15256#[derive(Copy, Clone)]
15257#[repr(C)]
15258pub struct GtkTextTag {
15259    pub parent_instance: gobject::GObject,
15260    pub priv_: *mut GtkTextTagPrivate,
15261}
15262
15263impl ::std::fmt::Debug for GtkTextTag {
15264    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15265        f.debug_struct(&format!("GtkTextTag @ {self:p}"))
15266            .field("parent_instance", &self.parent_instance)
15267            .field("priv_", &self.priv_)
15268            .finish()
15269    }
15270}
15271
15272#[derive(Copy, Clone)]
15273#[repr(C)]
15274pub struct GtkTextTagTable {
15275    pub parent_instance: gobject::GObject,
15276    pub priv_: *mut GtkTextTagTablePrivate,
15277}
15278
15279impl ::std::fmt::Debug for GtkTextTagTable {
15280    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15281        f.debug_struct(&format!("GtkTextTagTable @ {self:p}"))
15282            .field("parent_instance", &self.parent_instance)
15283            .field("priv_", &self.priv_)
15284            .finish()
15285    }
15286}
15287
15288#[derive(Copy, Clone)]
15289#[repr(C)]
15290pub struct GtkTextView {
15291    pub parent_instance: GtkContainer,
15292    pub priv_: *mut GtkTextViewPrivate,
15293}
15294
15295impl ::std::fmt::Debug for GtkTextView {
15296    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15297        f.debug_struct(&format!("GtkTextView @ {self:p}"))
15298            .field("parent_instance", &self.parent_instance)
15299            .finish()
15300    }
15301}
15302
15303#[derive(Copy, Clone)]
15304#[repr(C)]
15305pub struct GtkTextViewAccessible {
15306    pub parent: GtkContainerAccessible,
15307    pub priv_: *mut GtkTextViewAccessiblePrivate,
15308}
15309
15310impl ::std::fmt::Debug for GtkTextViewAccessible {
15311    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15312        f.debug_struct(&format!("GtkTextViewAccessible @ {self:p}"))
15313            .field("parent", &self.parent)
15314            .field("priv_", &self.priv_)
15315            .finish()
15316    }
15317}
15318
15319#[derive(Copy, Clone)]
15320#[repr(C)]
15321pub struct GtkThemingEngine {
15322    pub parent_object: gobject::GObject,
15323    pub priv_: *mut GtkThemingEnginePrivate,
15324}
15325
15326impl ::std::fmt::Debug for GtkThemingEngine {
15327    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15328        f.debug_struct(&format!("GtkThemingEngine @ {self:p}"))
15329            .field("parent_object", &self.parent_object)
15330            .field("priv_", &self.priv_)
15331            .finish()
15332    }
15333}
15334
15335#[derive(Copy, Clone)]
15336#[repr(C)]
15337pub struct GtkToggleAction {
15338    pub parent: GtkAction,
15339    pub private_data: *mut GtkToggleActionPrivate,
15340}
15341
15342impl ::std::fmt::Debug for GtkToggleAction {
15343    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15344        f.debug_struct(&format!("GtkToggleAction @ {self:p}"))
15345            .field("parent", &self.parent)
15346            .finish()
15347    }
15348}
15349
15350#[derive(Copy, Clone)]
15351#[repr(C)]
15352pub struct GtkToggleButton {
15353    pub button: GtkButton,
15354    pub priv_: *mut GtkToggleButtonPrivate,
15355}
15356
15357impl ::std::fmt::Debug for GtkToggleButton {
15358    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15359        f.debug_struct(&format!("GtkToggleButton @ {self:p}"))
15360            .finish()
15361    }
15362}
15363
15364#[derive(Copy, Clone)]
15365#[repr(C)]
15366pub struct GtkToggleButtonAccessible {
15367    pub parent: GtkButtonAccessible,
15368    pub priv_: *mut GtkToggleButtonAccessiblePrivate,
15369}
15370
15371impl ::std::fmt::Debug for GtkToggleButtonAccessible {
15372    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15373        f.debug_struct(&format!("GtkToggleButtonAccessible @ {self:p}"))
15374            .field("parent", &self.parent)
15375            .field("priv_", &self.priv_)
15376            .finish()
15377    }
15378}
15379
15380#[derive(Copy, Clone)]
15381#[repr(C)]
15382pub struct GtkToggleToolButton {
15383    pub parent: GtkToolButton,
15384    pub priv_: *mut GtkToggleToolButtonPrivate,
15385}
15386
15387impl ::std::fmt::Debug for GtkToggleToolButton {
15388    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15389        f.debug_struct(&format!("GtkToggleToolButton @ {self:p}"))
15390            .field("parent", &self.parent)
15391            .finish()
15392    }
15393}
15394
15395#[derive(Copy, Clone)]
15396#[repr(C)]
15397pub struct GtkToolButton {
15398    pub parent: GtkToolItem,
15399    pub priv_: *mut GtkToolButtonPrivate,
15400}
15401
15402impl ::std::fmt::Debug for GtkToolButton {
15403    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15404        f.debug_struct(&format!("GtkToolButton @ {self:p}"))
15405            .field("parent", &self.parent)
15406            .finish()
15407    }
15408}
15409
15410#[derive(Copy, Clone)]
15411#[repr(C)]
15412pub struct GtkToolItem {
15413    pub parent: GtkBin,
15414    pub priv_: *mut GtkToolItemPrivate,
15415}
15416
15417impl ::std::fmt::Debug for GtkToolItem {
15418    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15419        f.debug_struct(&format!("GtkToolItem @ {self:p}"))
15420            .field("parent", &self.parent)
15421            .finish()
15422    }
15423}
15424
15425#[derive(Copy, Clone)]
15426#[repr(C)]
15427pub struct GtkToolItemGroup {
15428    pub parent_instance: GtkContainer,
15429    pub priv_: *mut GtkToolItemGroupPrivate,
15430}
15431
15432impl ::std::fmt::Debug for GtkToolItemGroup {
15433    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15434        f.debug_struct(&format!("GtkToolItemGroup @ {self:p}"))
15435            .field("parent_instance", &self.parent_instance)
15436            .field("priv_", &self.priv_)
15437            .finish()
15438    }
15439}
15440
15441#[derive(Copy, Clone)]
15442#[repr(C)]
15443pub struct GtkToolPalette {
15444    pub parent_instance: GtkContainer,
15445    pub priv_: *mut GtkToolPalettePrivate,
15446}
15447
15448impl ::std::fmt::Debug for GtkToolPalette {
15449    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15450        f.debug_struct(&format!("GtkToolPalette @ {self:p}"))
15451            .field("parent_instance", &self.parent_instance)
15452            .field("priv_", &self.priv_)
15453            .finish()
15454    }
15455}
15456
15457#[derive(Copy, Clone)]
15458#[repr(C)]
15459pub struct GtkToolbar {
15460    pub container: GtkContainer,
15461    pub priv_: *mut GtkToolbarPrivate,
15462}
15463
15464impl ::std::fmt::Debug for GtkToolbar {
15465    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15466        f.debug_struct(&format!("GtkToolbar @ {self:p}"))
15467            .field("container", &self.container)
15468            .field("priv_", &self.priv_)
15469            .finish()
15470    }
15471}
15472
15473#[repr(C)]
15474#[allow(dead_code)]
15475pub struct GtkTooltip {
15476    _data: [u8; 0],
15477    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15478}
15479
15480impl ::std::fmt::Debug for GtkTooltip {
15481    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15482        f.debug_struct(&format!("GtkTooltip @ {self:p}")).finish()
15483    }
15484}
15485
15486#[derive(Copy, Clone)]
15487#[repr(C)]
15488pub struct GtkToplevelAccessible {
15489    pub parent: atk::AtkObject,
15490    pub priv_: *mut GtkToplevelAccessiblePrivate,
15491}
15492
15493impl ::std::fmt::Debug for GtkToplevelAccessible {
15494    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15495        f.debug_struct(&format!("GtkToplevelAccessible @ {self:p}"))
15496            .field("parent", &self.parent)
15497            .field("priv_", &self.priv_)
15498            .finish()
15499    }
15500}
15501
15502#[derive(Copy, Clone)]
15503#[repr(C)]
15504pub struct GtkTreeModelFilter {
15505    pub parent: gobject::GObject,
15506    pub priv_: *mut GtkTreeModelFilterPrivate,
15507}
15508
15509impl ::std::fmt::Debug for GtkTreeModelFilter {
15510    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15511        f.debug_struct(&format!("GtkTreeModelFilter @ {self:p}"))
15512            .field("parent", &self.parent)
15513            .finish()
15514    }
15515}
15516
15517#[derive(Copy, Clone)]
15518#[repr(C)]
15519pub struct GtkTreeModelSort {
15520    pub parent: gobject::GObject,
15521    pub priv_: *mut GtkTreeModelSortPrivate,
15522}
15523
15524impl ::std::fmt::Debug for GtkTreeModelSort {
15525    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15526        f.debug_struct(&format!("GtkTreeModelSort @ {self:p}"))
15527            .field("parent", &self.parent)
15528            .finish()
15529    }
15530}
15531
15532#[derive(Copy, Clone)]
15533#[repr(C)]
15534pub struct GtkTreeSelection {
15535    pub parent: gobject::GObject,
15536    pub priv_: *mut GtkTreeSelectionPrivate,
15537}
15538
15539impl ::std::fmt::Debug for GtkTreeSelection {
15540    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15541        f.debug_struct(&format!("GtkTreeSelection @ {self:p}"))
15542            .finish()
15543    }
15544}
15545
15546#[derive(Copy, Clone)]
15547#[repr(C)]
15548pub struct GtkTreeStore {
15549    pub parent: gobject::GObject,
15550    pub priv_: *mut GtkTreeStorePrivate,
15551}
15552
15553impl ::std::fmt::Debug for GtkTreeStore {
15554    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15555        f.debug_struct(&format!("GtkTreeStore @ {self:p}"))
15556            .field("parent", &self.parent)
15557            .field("priv_", &self.priv_)
15558            .finish()
15559    }
15560}
15561
15562#[derive(Copy, Clone)]
15563#[repr(C)]
15564pub struct GtkTreeView {
15565    pub parent: GtkContainer,
15566    pub priv_: *mut GtkTreeViewPrivate,
15567}
15568
15569impl ::std::fmt::Debug for GtkTreeView {
15570    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15571        f.debug_struct(&format!("GtkTreeView @ {self:p}"))
15572            .field("parent", &self.parent)
15573            .finish()
15574    }
15575}
15576
15577#[derive(Copy, Clone)]
15578#[repr(C)]
15579pub struct GtkTreeViewAccessible {
15580    pub parent: GtkContainerAccessible,
15581    pub priv_: *mut GtkTreeViewAccessiblePrivate,
15582}
15583
15584impl ::std::fmt::Debug for GtkTreeViewAccessible {
15585    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15586        f.debug_struct(&format!("GtkTreeViewAccessible @ {self:p}"))
15587            .field("parent", &self.parent)
15588            .field("priv_", &self.priv_)
15589            .finish()
15590    }
15591}
15592
15593#[derive(Copy, Clone)]
15594#[repr(C)]
15595pub struct GtkTreeViewColumn {
15596    pub parent_instance: gobject::GInitiallyUnowned,
15597    pub priv_: *mut GtkTreeViewColumnPrivate,
15598}
15599
15600impl ::std::fmt::Debug for GtkTreeViewColumn {
15601    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15602        f.debug_struct(&format!("GtkTreeViewColumn @ {self:p}"))
15603            .field("parent_instance", &self.parent_instance)
15604            .field("priv_", &self.priv_)
15605            .finish()
15606    }
15607}
15608
15609#[derive(Copy, Clone)]
15610#[repr(C)]
15611pub struct GtkUIManager {
15612    pub parent: gobject::GObject,
15613    pub private_data: *mut GtkUIManagerPrivate,
15614}
15615
15616impl ::std::fmt::Debug for GtkUIManager {
15617    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15618        f.debug_struct(&format!("GtkUIManager @ {self:p}"))
15619            .field("parent", &self.parent)
15620            .finish()
15621    }
15622}
15623
15624#[derive(Copy, Clone)]
15625#[repr(C)]
15626pub struct GtkVBox {
15627    pub box_: GtkBox,
15628}
15629
15630impl ::std::fmt::Debug for GtkVBox {
15631    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15632        f.debug_struct(&format!("GtkVBox @ {self:p}"))
15633            .field("box_", &self.box_)
15634            .finish()
15635    }
15636}
15637
15638#[derive(Copy, Clone)]
15639#[repr(C)]
15640pub struct GtkVButtonBox {
15641    pub button_box: GtkButtonBox,
15642}
15643
15644impl ::std::fmt::Debug for GtkVButtonBox {
15645    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15646        f.debug_struct(&format!("GtkVButtonBox @ {self:p}"))
15647            .field("button_box", &self.button_box)
15648            .finish()
15649    }
15650}
15651
15652#[derive(Copy, Clone)]
15653#[repr(C)]
15654pub struct GtkVPaned {
15655    pub paned: GtkPaned,
15656}
15657
15658impl ::std::fmt::Debug for GtkVPaned {
15659    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15660        f.debug_struct(&format!("GtkVPaned @ {self:p}"))
15661            .field("paned", &self.paned)
15662            .finish()
15663    }
15664}
15665
15666#[derive(Copy, Clone)]
15667#[repr(C)]
15668pub struct GtkVScale {
15669    pub scale: GtkScale,
15670}
15671
15672impl ::std::fmt::Debug for GtkVScale {
15673    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15674        f.debug_struct(&format!("GtkVScale @ {self:p}"))
15675            .field("scale", &self.scale)
15676            .finish()
15677    }
15678}
15679
15680#[derive(Copy, Clone)]
15681#[repr(C)]
15682pub struct GtkVScrollbar {
15683    pub scrollbar: GtkScrollbar,
15684}
15685
15686impl ::std::fmt::Debug for GtkVScrollbar {
15687    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15688        f.debug_struct(&format!("GtkVScrollbar @ {self:p}"))
15689            .field("scrollbar", &self.scrollbar)
15690            .finish()
15691    }
15692}
15693
15694#[derive(Copy, Clone)]
15695#[repr(C)]
15696pub struct GtkVSeparator {
15697    pub separator: GtkSeparator,
15698}
15699
15700impl ::std::fmt::Debug for GtkVSeparator {
15701    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15702        f.debug_struct(&format!("GtkVSeparator @ {self:p}"))
15703            .field("separator", &self.separator)
15704            .finish()
15705    }
15706}
15707
15708#[derive(Copy, Clone)]
15709#[repr(C)]
15710pub struct GtkViewport {
15711    pub bin: GtkBin,
15712    pub priv_: *mut GtkViewportPrivate,
15713}
15714
15715impl ::std::fmt::Debug for GtkViewport {
15716    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15717        f.debug_struct(&format!("GtkViewport @ {self:p}"))
15718            .field("bin", &self.bin)
15719            .finish()
15720    }
15721}
15722
15723#[derive(Copy, Clone)]
15724#[repr(C)]
15725pub struct GtkVolumeButton {
15726    pub parent: GtkScaleButton,
15727}
15728
15729impl ::std::fmt::Debug for GtkVolumeButton {
15730    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15731        f.debug_struct(&format!("GtkVolumeButton @ {self:p}"))
15732            .field("parent", &self.parent)
15733            .finish()
15734    }
15735}
15736
15737#[derive(Copy, Clone)]
15738#[repr(C)]
15739pub struct GtkWidget {
15740    pub parent_instance: gobject::GInitiallyUnowned,
15741    pub priv_: *mut GtkWidgetPrivate,
15742}
15743
15744impl ::std::fmt::Debug for GtkWidget {
15745    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15746        f.debug_struct(&format!("GtkWidget @ {self:p}"))
15747            .field("parent_instance", &self.parent_instance)
15748            .finish()
15749    }
15750}
15751
15752#[derive(Copy, Clone)]
15753#[repr(C)]
15754pub struct GtkWidgetAccessible {
15755    pub parent: GtkAccessible,
15756    pub priv_: *mut GtkWidgetAccessiblePrivate,
15757}
15758
15759impl ::std::fmt::Debug for GtkWidgetAccessible {
15760    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15761        f.debug_struct(&format!("GtkWidgetAccessible @ {self:p}"))
15762            .field("parent", &self.parent)
15763            .field("priv_", &self.priv_)
15764            .finish()
15765    }
15766}
15767
15768#[derive(Copy, Clone)]
15769#[repr(C)]
15770pub struct GtkWindow {
15771    pub bin: GtkBin,
15772    pub priv_: *mut GtkWindowPrivate,
15773}
15774
15775impl ::std::fmt::Debug for GtkWindow {
15776    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15777        f.debug_struct(&format!("GtkWindow @ {self:p}"))
15778            .field("bin", &self.bin)
15779            .field("priv_", &self.priv_)
15780            .finish()
15781    }
15782}
15783
15784#[derive(Copy, Clone)]
15785#[repr(C)]
15786pub struct GtkWindowAccessible {
15787    pub parent: GtkContainerAccessible,
15788    pub priv_: *mut GtkWindowAccessiblePrivate,
15789}
15790
15791impl ::std::fmt::Debug for GtkWindowAccessible {
15792    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15793        f.debug_struct(&format!("GtkWindowAccessible @ {self:p}"))
15794            .field("parent", &self.parent)
15795            .field("priv_", &self.priv_)
15796            .finish()
15797    }
15798}
15799
15800#[derive(Copy, Clone)]
15801#[repr(C)]
15802pub struct GtkWindowGroup {
15803    pub parent_instance: gobject::GObject,
15804    pub priv_: *mut GtkWindowGroupPrivate,
15805}
15806
15807impl ::std::fmt::Debug for GtkWindowGroup {
15808    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15809        f.debug_struct(&format!("GtkWindowGroup @ {self:p}"))
15810            .field("parent_instance", &self.parent_instance)
15811            .field("priv_", &self.priv_)
15812            .finish()
15813    }
15814}
15815
15816// Interfaces
15817#[repr(C)]
15818#[allow(dead_code)]
15819pub struct GtkActionable {
15820    _data: [u8; 0],
15821    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15822}
15823
15824impl ::std::fmt::Debug for GtkActionable {
15825    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15826        write!(f, "GtkActionable @ {self:p}")
15827    }
15828}
15829
15830#[repr(C)]
15831#[allow(dead_code)]
15832pub struct GtkActivatable {
15833    _data: [u8; 0],
15834    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15835}
15836
15837impl ::std::fmt::Debug for GtkActivatable {
15838    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15839        write!(f, "GtkActivatable @ {self:p}")
15840    }
15841}
15842
15843#[repr(C)]
15844#[allow(dead_code)]
15845pub struct GtkAppChooser {
15846    _data: [u8; 0],
15847    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15848}
15849
15850impl ::std::fmt::Debug for GtkAppChooser {
15851    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15852        write!(f, "GtkAppChooser @ {self:p}")
15853    }
15854}
15855
15856#[repr(C)]
15857#[allow(dead_code)]
15858pub struct GtkBuildable {
15859    _data: [u8; 0],
15860    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15861}
15862
15863impl ::std::fmt::Debug for GtkBuildable {
15864    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15865        write!(f, "GtkBuildable @ {self:p}")
15866    }
15867}
15868
15869#[repr(C)]
15870#[allow(dead_code)]
15871pub struct GtkCellAccessibleParent {
15872    _data: [u8; 0],
15873    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15874}
15875
15876impl ::std::fmt::Debug for GtkCellAccessibleParent {
15877    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15878        write!(f, "GtkCellAccessibleParent @ {self:p}")
15879    }
15880}
15881
15882#[repr(C)]
15883#[allow(dead_code)]
15884pub struct GtkCellEditable {
15885    _data: [u8; 0],
15886    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15887}
15888
15889impl ::std::fmt::Debug for GtkCellEditable {
15890    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15891        write!(f, "GtkCellEditable @ {self:p}")
15892    }
15893}
15894
15895#[repr(C)]
15896#[allow(dead_code)]
15897pub struct GtkCellLayout {
15898    _data: [u8; 0],
15899    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15900}
15901
15902impl ::std::fmt::Debug for GtkCellLayout {
15903    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15904        write!(f, "GtkCellLayout @ {self:p}")
15905    }
15906}
15907
15908#[repr(C)]
15909#[allow(dead_code)]
15910pub struct GtkColorChooser {
15911    _data: [u8; 0],
15912    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15913}
15914
15915impl ::std::fmt::Debug for GtkColorChooser {
15916    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15917        write!(f, "GtkColorChooser @ {self:p}")
15918    }
15919}
15920
15921#[repr(C)]
15922#[allow(dead_code)]
15923pub struct GtkEditable {
15924    _data: [u8; 0],
15925    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15926}
15927
15928impl ::std::fmt::Debug for GtkEditable {
15929    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15930        write!(f, "GtkEditable @ {self:p}")
15931    }
15932}
15933
15934#[repr(C)]
15935#[allow(dead_code)]
15936pub struct GtkFileChooser {
15937    _data: [u8; 0],
15938    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15939}
15940
15941impl ::std::fmt::Debug for GtkFileChooser {
15942    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15943        write!(f, "GtkFileChooser @ {self:p}")
15944    }
15945}
15946
15947#[repr(C)]
15948#[allow(dead_code)]
15949pub struct GtkFontChooser {
15950    _data: [u8; 0],
15951    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15952}
15953
15954impl ::std::fmt::Debug for GtkFontChooser {
15955    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15956        write!(f, "GtkFontChooser @ {self:p}")
15957    }
15958}
15959
15960#[repr(C)]
15961#[allow(dead_code)]
15962pub struct GtkOrientable {
15963    _data: [u8; 0],
15964    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15965}
15966
15967impl ::std::fmt::Debug for GtkOrientable {
15968    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15969        write!(f, "GtkOrientable @ {self:p}")
15970    }
15971}
15972
15973#[repr(C)]
15974#[allow(dead_code)]
15975pub struct GtkPrintOperationPreview {
15976    _data: [u8; 0],
15977    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15978}
15979
15980impl ::std::fmt::Debug for GtkPrintOperationPreview {
15981    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15982        write!(f, "GtkPrintOperationPreview @ {self:p}")
15983    }
15984}
15985
15986#[repr(C)]
15987#[allow(dead_code)]
15988pub struct GtkRecentChooser {
15989    _data: [u8; 0],
15990    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
15991}
15992
15993impl ::std::fmt::Debug for GtkRecentChooser {
15994    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
15995        write!(f, "GtkRecentChooser @ {self:p}")
15996    }
15997}
15998
15999#[repr(C)]
16000#[allow(dead_code)]
16001pub struct GtkScrollable {
16002    _data: [u8; 0],
16003    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
16004}
16005
16006impl ::std::fmt::Debug for GtkScrollable {
16007    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
16008        write!(f, "GtkScrollable @ {self:p}")
16009    }
16010}
16011
16012#[repr(C)]
16013#[allow(dead_code)]
16014pub struct GtkStyleProvider {
16015    _data: [u8; 0],
16016    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
16017}
16018
16019impl ::std::fmt::Debug for GtkStyleProvider {
16020    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
16021        write!(f, "GtkStyleProvider @ {self:p}")
16022    }
16023}
16024
16025#[repr(C)]
16026#[allow(dead_code)]
16027pub struct GtkToolShell {
16028    _data: [u8; 0],
16029    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
16030}
16031
16032impl ::std::fmt::Debug for GtkToolShell {
16033    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
16034        write!(f, "GtkToolShell @ {self:p}")
16035    }
16036}
16037
16038#[repr(C)]
16039#[allow(dead_code)]
16040pub struct GtkTreeDragDest {
16041    _data: [u8; 0],
16042    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
16043}
16044
16045impl ::std::fmt::Debug for GtkTreeDragDest {
16046    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
16047        write!(f, "GtkTreeDragDest @ {self:p}")
16048    }
16049}
16050
16051#[repr(C)]
16052#[allow(dead_code)]
16053pub struct GtkTreeDragSource {
16054    _data: [u8; 0],
16055    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
16056}
16057
16058impl ::std::fmt::Debug for GtkTreeDragSource {
16059    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
16060        write!(f, "GtkTreeDragSource @ {self:p}")
16061    }
16062}
16063
16064#[repr(C)]
16065#[allow(dead_code)]
16066pub struct GtkTreeModel {
16067    _data: [u8; 0],
16068    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
16069}
16070
16071impl ::std::fmt::Debug for GtkTreeModel {
16072    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
16073        write!(f, "GtkTreeModel @ {self:p}")
16074    }
16075}
16076
16077#[repr(C)]
16078#[allow(dead_code)]
16079pub struct GtkTreeSortable {
16080    _data: [u8; 0],
16081    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
16082}
16083
16084impl ::std::fmt::Debug for GtkTreeSortable {
16085    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
16086        write!(f, "GtkTreeSortable @ {self:p}")
16087    }
16088}
16089
16090unsafe extern "C" {
16091
16092    //=========================================================================
16093    // GtkAlign
16094    //=========================================================================
16095    pub fn gtk_align_get_type() -> GType;
16096
16097    //=========================================================================
16098    // GtkArrowPlacement
16099    //=========================================================================
16100    pub fn gtk_arrow_placement_get_type() -> GType;
16101
16102    //=========================================================================
16103    // GtkArrowType
16104    //=========================================================================
16105    pub fn gtk_arrow_type_get_type() -> GType;
16106
16107    //=========================================================================
16108    // GtkAssistantPageType
16109    //=========================================================================
16110    pub fn gtk_assistant_page_type_get_type() -> GType;
16111
16112    //=========================================================================
16113    // GtkBaselinePosition
16114    //=========================================================================
16115    pub fn gtk_baseline_position_get_type() -> GType;
16116
16117    //=========================================================================
16118    // GtkBorderStyle
16119    //=========================================================================
16120    pub fn gtk_border_style_get_type() -> GType;
16121
16122    //=========================================================================
16123    // GtkBuilderError
16124    //=========================================================================
16125    pub fn gtk_builder_error_get_type() -> GType;
16126    pub fn gtk_builder_error_quark() -> glib::GQuark;
16127
16128    //=========================================================================
16129    // GtkButtonBoxStyle
16130    //=========================================================================
16131    pub fn gtk_button_box_style_get_type() -> GType;
16132
16133    //=========================================================================
16134    // GtkButtonRole
16135    //=========================================================================
16136    pub fn gtk_button_role_get_type() -> GType;
16137
16138    //=========================================================================
16139    // GtkButtonsType
16140    //=========================================================================
16141    pub fn gtk_buttons_type_get_type() -> GType;
16142
16143    //=========================================================================
16144    // GtkCellRendererAccelMode
16145    //=========================================================================
16146    pub fn gtk_cell_renderer_accel_mode_get_type() -> GType;
16147
16148    //=========================================================================
16149    // GtkCellRendererMode
16150    //=========================================================================
16151    pub fn gtk_cell_renderer_mode_get_type() -> GType;
16152
16153    //=========================================================================
16154    // GtkCornerType
16155    //=========================================================================
16156    pub fn gtk_corner_type_get_type() -> GType;
16157
16158    //=========================================================================
16159    // GtkCssProviderError
16160    //=========================================================================
16161    pub fn gtk_css_provider_error_get_type() -> GType;
16162    pub fn gtk_css_provider_error_quark() -> glib::GQuark;
16163
16164    //=========================================================================
16165    // GtkCssSectionType
16166    //=========================================================================
16167    pub fn gtk_css_section_type_get_type() -> GType;
16168
16169    //=========================================================================
16170    // GtkDeleteType
16171    //=========================================================================
16172    pub fn gtk_delete_type_get_type() -> GType;
16173
16174    //=========================================================================
16175    // GtkDirectionType
16176    //=========================================================================
16177    pub fn gtk_direction_type_get_type() -> GType;
16178
16179    //=========================================================================
16180    // GtkDragResult
16181    //=========================================================================
16182    pub fn gtk_drag_result_get_type() -> GType;
16183
16184    //=========================================================================
16185    // GtkEntryIconPosition
16186    //=========================================================================
16187    pub fn gtk_entry_icon_position_get_type() -> GType;
16188
16189    //=========================================================================
16190    // GtkEventSequenceState
16191    //=========================================================================
16192    pub fn gtk_event_sequence_state_get_type() -> GType;
16193
16194    //=========================================================================
16195    // GtkExpanderStyle
16196    //=========================================================================
16197    pub fn gtk_expander_style_get_type() -> GType;
16198
16199    //=========================================================================
16200    // GtkFileChooserAction
16201    //=========================================================================
16202    pub fn gtk_file_chooser_action_get_type() -> GType;
16203
16204    //=========================================================================
16205    // GtkFileChooserConfirmation
16206    //=========================================================================
16207    pub fn gtk_file_chooser_confirmation_get_type() -> GType;
16208
16209    //=========================================================================
16210    // GtkFileChooserError
16211    //=========================================================================
16212    pub fn gtk_file_chooser_error_get_type() -> GType;
16213    pub fn gtk_file_chooser_error_quark() -> glib::GQuark;
16214
16215    //=========================================================================
16216    // GtkIMPreeditStyle
16217    //=========================================================================
16218    pub fn gtk_im_preedit_style_get_type() -> GType;
16219
16220    //=========================================================================
16221    // GtkIMStatusStyle
16222    //=========================================================================
16223    pub fn gtk_im_status_style_get_type() -> GType;
16224
16225    //=========================================================================
16226    // GtkIconSize
16227    //=========================================================================
16228    pub fn gtk_icon_size_get_type() -> GType;
16229    pub fn gtk_icon_size_from_name(name: *const c_char) -> GtkIconSize;
16230    pub fn gtk_icon_size_get_name(size: GtkIconSize) -> *const c_char;
16231    pub fn gtk_icon_size_lookup(
16232        size: GtkIconSize,
16233        width: *mut c_int,
16234        height: *mut c_int,
16235    ) -> gboolean;
16236    pub fn gtk_icon_size_lookup_for_settings(
16237        settings: *mut GtkSettings,
16238        size: GtkIconSize,
16239        width: *mut c_int,
16240        height: *mut c_int,
16241    ) -> gboolean;
16242    pub fn gtk_icon_size_register(name: *const c_char, width: c_int, height: c_int) -> GtkIconSize;
16243    pub fn gtk_icon_size_register_alias(alias: *const c_char, target: GtkIconSize);
16244
16245    //=========================================================================
16246    // GtkIconThemeError
16247    //=========================================================================
16248    pub fn gtk_icon_theme_error_get_type() -> GType;
16249    pub fn gtk_icon_theme_error_quark() -> glib::GQuark;
16250
16251    //=========================================================================
16252    // GtkIconViewDropPosition
16253    //=========================================================================
16254    pub fn gtk_icon_view_drop_position_get_type() -> GType;
16255
16256    //=========================================================================
16257    // GtkImageType
16258    //=========================================================================
16259    pub fn gtk_image_type_get_type() -> GType;
16260
16261    //=========================================================================
16262    // GtkInputPurpose
16263    //=========================================================================
16264    pub fn gtk_input_purpose_get_type() -> GType;
16265
16266    //=========================================================================
16267    // GtkJustification
16268    //=========================================================================
16269    pub fn gtk_justification_get_type() -> GType;
16270
16271    //=========================================================================
16272    // GtkLevelBarMode
16273    //=========================================================================
16274    pub fn gtk_level_bar_mode_get_type() -> GType;
16275
16276    //=========================================================================
16277    // GtkLicense
16278    //=========================================================================
16279    pub fn gtk_license_get_type() -> GType;
16280
16281    //=========================================================================
16282    // GtkMenuDirectionType
16283    //=========================================================================
16284    pub fn gtk_menu_direction_type_get_type() -> GType;
16285
16286    //=========================================================================
16287    // GtkMessageType
16288    //=========================================================================
16289    pub fn gtk_message_type_get_type() -> GType;
16290
16291    //=========================================================================
16292    // GtkMovementStep
16293    //=========================================================================
16294    pub fn gtk_movement_step_get_type() -> GType;
16295
16296    //=========================================================================
16297    // GtkNotebookTab
16298    //=========================================================================
16299    pub fn gtk_notebook_tab_get_type() -> GType;
16300
16301    //=========================================================================
16302    // GtkNumberUpLayout
16303    //=========================================================================
16304    pub fn gtk_number_up_layout_get_type() -> GType;
16305
16306    //=========================================================================
16307    // GtkOrientation
16308    //=========================================================================
16309    pub fn gtk_orientation_get_type() -> GType;
16310
16311    //=========================================================================
16312    // GtkPackDirection
16313    //=========================================================================
16314    pub fn gtk_pack_direction_get_type() -> GType;
16315
16316    //=========================================================================
16317    // GtkPackType
16318    //=========================================================================
16319    pub fn gtk_pack_type_get_type() -> GType;
16320
16321    //=========================================================================
16322    // GtkPadActionType
16323    //=========================================================================
16324    pub fn gtk_pad_action_type_get_type() -> GType;
16325
16326    //=========================================================================
16327    // GtkPageOrientation
16328    //=========================================================================
16329    pub fn gtk_page_orientation_get_type() -> GType;
16330
16331    //=========================================================================
16332    // GtkPageSet
16333    //=========================================================================
16334    pub fn gtk_page_set_get_type() -> GType;
16335
16336    //=========================================================================
16337    // GtkPanDirection
16338    //=========================================================================
16339    pub fn gtk_pan_direction_get_type() -> GType;
16340
16341    //=========================================================================
16342    // GtkPathPriorityType
16343    //=========================================================================
16344    pub fn gtk_path_priority_type_get_type() -> GType;
16345
16346    //=========================================================================
16347    // GtkPathType
16348    //=========================================================================
16349    pub fn gtk_path_type_get_type() -> GType;
16350
16351    //=========================================================================
16352    // GtkPolicyType
16353    //=========================================================================
16354    pub fn gtk_policy_type_get_type() -> GType;
16355
16356    //=========================================================================
16357    // GtkPopoverConstraint
16358    //=========================================================================
16359    pub fn gtk_popover_constraint_get_type() -> GType;
16360
16361    //=========================================================================
16362    // GtkPositionType
16363    //=========================================================================
16364    pub fn gtk_position_type_get_type() -> GType;
16365
16366    //=========================================================================
16367    // GtkPrintDuplex
16368    //=========================================================================
16369    pub fn gtk_print_duplex_get_type() -> GType;
16370
16371    //=========================================================================
16372    // GtkPrintError
16373    //=========================================================================
16374    pub fn gtk_print_error_get_type() -> GType;
16375    pub fn gtk_print_error_quark() -> glib::GQuark;
16376
16377    //=========================================================================
16378    // GtkPrintOperationAction
16379    //=========================================================================
16380    pub fn gtk_print_operation_action_get_type() -> GType;
16381
16382    //=========================================================================
16383    // GtkPrintOperationResult
16384    //=========================================================================
16385    pub fn gtk_print_operation_result_get_type() -> GType;
16386
16387    //=========================================================================
16388    // GtkPrintPages
16389    //=========================================================================
16390    pub fn gtk_print_pages_get_type() -> GType;
16391
16392    //=========================================================================
16393    // GtkPrintQuality
16394    //=========================================================================
16395    pub fn gtk_print_quality_get_type() -> GType;
16396
16397    //=========================================================================
16398    // GtkPrintStatus
16399    //=========================================================================
16400    pub fn gtk_print_status_get_type() -> GType;
16401
16402    //=========================================================================
16403    // GtkPropagationPhase
16404    //=========================================================================
16405    pub fn gtk_propagation_phase_get_type() -> GType;
16406
16407    //=========================================================================
16408    // GtkRcTokenType
16409    //=========================================================================
16410    pub fn gtk_rc_token_type_get_type() -> GType;
16411
16412    //=========================================================================
16413    // GtkRecentChooserError
16414    //=========================================================================
16415    pub fn gtk_recent_chooser_error_get_type() -> GType;
16416    pub fn gtk_recent_chooser_error_quark() -> glib::GQuark;
16417
16418    //=========================================================================
16419    // GtkRecentManagerError
16420    //=========================================================================
16421    pub fn gtk_recent_manager_error_get_type() -> GType;
16422    pub fn gtk_recent_manager_error_quark() -> glib::GQuark;
16423
16424    //=========================================================================
16425    // GtkRecentSortType
16426    //=========================================================================
16427    pub fn gtk_recent_sort_type_get_type() -> GType;
16428
16429    //=========================================================================
16430    // GtkReliefStyle
16431    //=========================================================================
16432    pub fn gtk_relief_style_get_type() -> GType;
16433
16434    //=========================================================================
16435    // GtkResizeMode
16436    //=========================================================================
16437    pub fn gtk_resize_mode_get_type() -> GType;
16438
16439    //=========================================================================
16440    // GtkResponseType
16441    //=========================================================================
16442    pub fn gtk_response_type_get_type() -> GType;
16443
16444    //=========================================================================
16445    // GtkRevealerTransitionType
16446    //=========================================================================
16447    pub fn gtk_revealer_transition_type_get_type() -> GType;
16448
16449    //=========================================================================
16450    // GtkScrollStep
16451    //=========================================================================
16452    pub fn gtk_scroll_step_get_type() -> GType;
16453
16454    //=========================================================================
16455    // GtkScrollType
16456    //=========================================================================
16457    pub fn gtk_scroll_type_get_type() -> GType;
16458
16459    //=========================================================================
16460    // GtkScrollablePolicy
16461    //=========================================================================
16462    pub fn gtk_scrollable_policy_get_type() -> GType;
16463
16464    //=========================================================================
16465    // GtkSelectionMode
16466    //=========================================================================
16467    pub fn gtk_selection_mode_get_type() -> GType;
16468
16469    //=========================================================================
16470    // GtkSensitivityType
16471    //=========================================================================
16472    pub fn gtk_sensitivity_type_get_type() -> GType;
16473
16474    //=========================================================================
16475    // GtkShadowType
16476    //=========================================================================
16477    pub fn gtk_shadow_type_get_type() -> GType;
16478
16479    //=========================================================================
16480    // GtkShortcutType
16481    //=========================================================================
16482    pub fn gtk_shortcut_type_get_type() -> GType;
16483
16484    //=========================================================================
16485    // GtkSizeGroupMode
16486    //=========================================================================
16487    pub fn gtk_size_group_mode_get_type() -> GType;
16488
16489    //=========================================================================
16490    // GtkSizeRequestMode
16491    //=========================================================================
16492    pub fn gtk_size_request_mode_get_type() -> GType;
16493
16494    //=========================================================================
16495    // GtkSortType
16496    //=========================================================================
16497    pub fn gtk_sort_type_get_type() -> GType;
16498
16499    //=========================================================================
16500    // GtkSpinButtonUpdatePolicy
16501    //=========================================================================
16502    pub fn gtk_spin_button_update_policy_get_type() -> GType;
16503
16504    //=========================================================================
16505    // GtkSpinType
16506    //=========================================================================
16507    pub fn gtk_spin_type_get_type() -> GType;
16508
16509    //=========================================================================
16510    // GtkStackTransitionType
16511    //=========================================================================
16512    pub fn gtk_stack_transition_type_get_type() -> GType;
16513
16514    //=========================================================================
16515    // GtkStateType
16516    //=========================================================================
16517    pub fn gtk_state_type_get_type() -> GType;
16518
16519    //=========================================================================
16520    // GtkTextBufferTargetInfo
16521    //=========================================================================
16522    pub fn gtk_text_buffer_target_info_get_type() -> GType;
16523
16524    //=========================================================================
16525    // GtkTextDirection
16526    //=========================================================================
16527    pub fn gtk_text_direction_get_type() -> GType;
16528
16529    //=========================================================================
16530    // GtkTextExtendSelection
16531    //=========================================================================
16532    pub fn gtk_text_extend_selection_get_type() -> GType;
16533
16534    //=========================================================================
16535    // GtkTextViewLayer
16536    //=========================================================================
16537    pub fn gtk_text_view_layer_get_type() -> GType;
16538
16539    //=========================================================================
16540    // GtkTextWindowType
16541    //=========================================================================
16542    pub fn gtk_text_window_type_get_type() -> GType;
16543
16544    //=========================================================================
16545    // GtkToolbarSpaceStyle
16546    //=========================================================================
16547    pub fn gtk_toolbar_space_style_get_type() -> GType;
16548
16549    //=========================================================================
16550    // GtkToolbarStyle
16551    //=========================================================================
16552    pub fn gtk_toolbar_style_get_type() -> GType;
16553
16554    //=========================================================================
16555    // GtkTreeViewColumnSizing
16556    //=========================================================================
16557    pub fn gtk_tree_view_column_sizing_get_type() -> GType;
16558
16559    //=========================================================================
16560    // GtkTreeViewDropPosition
16561    //=========================================================================
16562    pub fn gtk_tree_view_drop_position_get_type() -> GType;
16563
16564    //=========================================================================
16565    // GtkTreeViewGridLines
16566    //=========================================================================
16567    pub fn gtk_tree_view_grid_lines_get_type() -> GType;
16568
16569    //=========================================================================
16570    // GtkUnit
16571    //=========================================================================
16572    pub fn gtk_unit_get_type() -> GType;
16573
16574    //=========================================================================
16575    // GtkWidgetHelpType
16576    //=========================================================================
16577    pub fn gtk_widget_help_type_get_type() -> GType;
16578
16579    //=========================================================================
16580    // GtkWindowPosition
16581    //=========================================================================
16582    pub fn gtk_window_position_get_type() -> GType;
16583
16584    //=========================================================================
16585    // GtkWindowType
16586    //=========================================================================
16587    pub fn gtk_window_type_get_type() -> GType;
16588
16589    //=========================================================================
16590    // GtkWrapMode
16591    //=========================================================================
16592    pub fn gtk_wrap_mode_get_type() -> GType;
16593
16594    //=========================================================================
16595    // GtkAccelFlags
16596    //=========================================================================
16597    pub fn gtk_accel_flags_get_type() -> GType;
16598
16599    //=========================================================================
16600    // GtkApplicationInhibitFlags
16601    //=========================================================================
16602    pub fn gtk_application_inhibit_flags_get_type() -> GType;
16603
16604    //=========================================================================
16605    // GtkAttachOptions
16606    //=========================================================================
16607    pub fn gtk_attach_options_get_type() -> GType;
16608
16609    //=========================================================================
16610    // GtkCalendarDisplayOptions
16611    //=========================================================================
16612    pub fn gtk_calendar_display_options_get_type() -> GType;
16613
16614    //=========================================================================
16615    // GtkCellRendererState
16616    //=========================================================================
16617    pub fn gtk_cell_renderer_state_get_type() -> GType;
16618
16619    //=========================================================================
16620    // GtkDebugFlag
16621    //=========================================================================
16622    pub fn gtk_debug_flag_get_type() -> GType;
16623
16624    //=========================================================================
16625    // GtkDestDefaults
16626    //=========================================================================
16627    pub fn gtk_dest_defaults_get_type() -> GType;
16628
16629    //=========================================================================
16630    // GtkDialogFlags
16631    //=========================================================================
16632    pub fn gtk_dialog_flags_get_type() -> GType;
16633
16634    //=========================================================================
16635    // GtkEventControllerScrollFlags
16636    //=========================================================================
16637    #[cfg(feature = "v3_24")]
16638    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
16639    pub fn gtk_event_controller_scroll_flags_get_type() -> GType;
16640
16641    //=========================================================================
16642    // GtkFileFilterFlags
16643    //=========================================================================
16644    pub fn gtk_file_filter_flags_get_type() -> GType;
16645
16646    //=========================================================================
16647    // GtkFontChooserLevel
16648    //=========================================================================
16649    #[cfg(feature = "v3_24")]
16650    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
16651    pub fn gtk_font_chooser_level_get_type() -> GType;
16652
16653    //=========================================================================
16654    // GtkIconLookupFlags
16655    //=========================================================================
16656    pub fn gtk_icon_lookup_flags_get_type() -> GType;
16657
16658    //=========================================================================
16659    // GtkInputHints
16660    //=========================================================================
16661    pub fn gtk_input_hints_get_type() -> GType;
16662
16663    //=========================================================================
16664    // GtkJunctionSides
16665    //=========================================================================
16666    pub fn gtk_junction_sides_get_type() -> GType;
16667
16668    //=========================================================================
16669    // GtkPlacesOpenFlags
16670    //=========================================================================
16671    pub fn gtk_places_open_flags_get_type() -> GType;
16672
16673    //=========================================================================
16674    // GtkRcFlags
16675    //=========================================================================
16676    pub fn gtk_rc_flags_get_type() -> GType;
16677
16678    //=========================================================================
16679    // GtkRecentFilterFlags
16680    //=========================================================================
16681    pub fn gtk_recent_filter_flags_get_type() -> GType;
16682
16683    //=========================================================================
16684    // GtkRegionFlags
16685    //=========================================================================
16686    pub fn gtk_region_flags_get_type() -> GType;
16687
16688    //=========================================================================
16689    // GtkStateFlags
16690    //=========================================================================
16691    pub fn gtk_state_flags_get_type() -> GType;
16692
16693    //=========================================================================
16694    // GtkStyleContextPrintFlags
16695    //=========================================================================
16696    pub fn gtk_style_context_print_flags_get_type() -> GType;
16697
16698    //=========================================================================
16699    // GtkTargetFlags
16700    //=========================================================================
16701    pub fn gtk_target_flags_get_type() -> GType;
16702
16703    //=========================================================================
16704    // GtkTextSearchFlags
16705    //=========================================================================
16706    pub fn gtk_text_search_flags_get_type() -> GType;
16707
16708    //=========================================================================
16709    // GtkToolPaletteDragTargets
16710    //=========================================================================
16711    pub fn gtk_tool_palette_drag_targets_get_type() -> GType;
16712
16713    //=========================================================================
16714    // GtkTreeModelFlags
16715    //=========================================================================
16716    pub fn gtk_tree_model_flags_get_type() -> GType;
16717
16718    //=========================================================================
16719    // GtkUIManagerItemType
16720    //=========================================================================
16721    pub fn gtk_ui_manager_item_type_get_type() -> GType;
16722
16723    //=========================================================================
16724    // GtkBindingEntry
16725    //=========================================================================
16726    pub fn gtk_binding_entry_add_signal(
16727        binding_set: *mut GtkBindingSet,
16728        keyval: c_uint,
16729        modifiers: gdk::GdkModifierType,
16730        signal_name: *const c_char,
16731        n_args: c_uint,
16732        ...
16733    );
16734    pub fn gtk_binding_entry_add_signal_from_string(
16735        binding_set: *mut GtkBindingSet,
16736        signal_desc: *const c_char,
16737    ) -> glib::GTokenType;
16738    pub fn gtk_binding_entry_add_signall(
16739        binding_set: *mut GtkBindingSet,
16740        keyval: c_uint,
16741        modifiers: gdk::GdkModifierType,
16742        signal_name: *const c_char,
16743        binding_args: *mut glib::GSList,
16744    );
16745    pub fn gtk_binding_entry_remove(
16746        binding_set: *mut GtkBindingSet,
16747        keyval: c_uint,
16748        modifiers: gdk::GdkModifierType,
16749    );
16750    pub fn gtk_binding_entry_skip(
16751        binding_set: *mut GtkBindingSet,
16752        keyval: c_uint,
16753        modifiers: gdk::GdkModifierType,
16754    );
16755
16756    //=========================================================================
16757    // GtkBindingSet
16758    //=========================================================================
16759    pub fn gtk_binding_set_activate(
16760        binding_set: *mut GtkBindingSet,
16761        keyval: c_uint,
16762        modifiers: gdk::GdkModifierType,
16763        object: *mut gobject::GObject,
16764    ) -> gboolean;
16765    pub fn gtk_binding_set_add_path(
16766        binding_set: *mut GtkBindingSet,
16767        path_type: GtkPathType,
16768        path_pattern: *const c_char,
16769        priority: GtkPathPriorityType,
16770    );
16771    pub fn gtk_binding_set_by_class(object_class: gpointer) -> *mut GtkBindingSet;
16772    pub fn gtk_binding_set_find(set_name: *const c_char) -> *mut GtkBindingSet;
16773    pub fn gtk_binding_set_new(set_name: *const c_char) -> *mut GtkBindingSet;
16774
16775    //=========================================================================
16776    // GtkBorder
16777    //=========================================================================
16778    pub fn gtk_border_get_type() -> GType;
16779    pub fn gtk_border_new() -> *mut GtkBorder;
16780    pub fn gtk_border_copy(border_: *const GtkBorder) -> *mut GtkBorder;
16781    pub fn gtk_border_free(border_: *mut GtkBorder);
16782
16783    //=========================================================================
16784    // GtkCellAreaClass
16785    //=========================================================================
16786    pub fn gtk_cell_area_class_find_cell_property(
16787        aclass: *mut GtkCellAreaClass,
16788        property_name: *const c_char,
16789    ) -> *mut gobject::GParamSpec;
16790    pub fn gtk_cell_area_class_install_cell_property(
16791        aclass: *mut GtkCellAreaClass,
16792        property_id: c_uint,
16793        pspec: *mut gobject::GParamSpec,
16794    );
16795    pub fn gtk_cell_area_class_list_cell_properties(
16796        aclass: *mut GtkCellAreaClass,
16797        n_properties: *mut c_uint,
16798    ) -> *mut *mut gobject::GParamSpec;
16799
16800    //=========================================================================
16801    // GtkCellRendererClass
16802    //=========================================================================
16803    pub fn gtk_cell_renderer_class_set_accessible_type(
16804        renderer_class: *mut GtkCellRendererClass,
16805        type_: GType,
16806    );
16807
16808    //=========================================================================
16809    // GtkContainerClass
16810    //=========================================================================
16811    //pub fn gtk_container_class_find_child_property(cclass: /*Metadata mismatch*/*mut [c:type mismatch `GObjectClass` != `GtkContainerClass` of `ContainerClass`], property_name: *const c_char) -> *mut gobject::GParamSpec;
16812    pub fn gtk_container_class_handle_border_width(klass: *mut GtkContainerClass);
16813    pub fn gtk_container_class_install_child_properties(
16814        cclass: *mut GtkContainerClass,
16815        n_pspecs: c_uint,
16816        pspecs: *mut *mut gobject::GParamSpec,
16817    );
16818    pub fn gtk_container_class_install_child_property(
16819        cclass: *mut GtkContainerClass,
16820        property_id: c_uint,
16821        pspec: *mut gobject::GParamSpec,
16822    );
16823    //pub fn gtk_container_class_list_child_properties(cclass: /*Metadata mismatch*/*mut [c:type mismatch `GObjectClass` != `GtkContainerClass` of `ContainerClass`], n_properties: *mut c_uint) -> *mut *mut gobject::GParamSpec;
16824
16825    //=========================================================================
16826    // GtkCssSection
16827    //=========================================================================
16828    pub fn gtk_css_section_get_type() -> GType;
16829    pub fn gtk_css_section_get_end_line(section: *const GtkCssSection) -> c_uint;
16830    pub fn gtk_css_section_get_end_position(section: *const GtkCssSection) -> c_uint;
16831    pub fn gtk_css_section_get_file(section: *const GtkCssSection) -> *mut gio::GFile;
16832    pub fn gtk_css_section_get_parent(section: *const GtkCssSection) -> *mut GtkCssSection;
16833    pub fn gtk_css_section_get_section_type(section: *const GtkCssSection) -> GtkCssSectionType;
16834    pub fn gtk_css_section_get_start_line(section: *const GtkCssSection) -> c_uint;
16835    pub fn gtk_css_section_get_start_position(section: *const GtkCssSection) -> c_uint;
16836    pub fn gtk_css_section_ref(section: *mut GtkCssSection) -> *mut GtkCssSection;
16837    pub fn gtk_css_section_unref(section: *mut GtkCssSection);
16838
16839    //=========================================================================
16840    // GtkGradient
16841    //=========================================================================
16842    pub fn gtk_gradient_get_type() -> GType;
16843    pub fn gtk_gradient_new_linear(
16844        x0: c_double,
16845        y0: c_double,
16846        x1: c_double,
16847        y1: c_double,
16848    ) -> *mut GtkGradient;
16849    pub fn gtk_gradient_new_radial(
16850        x0: c_double,
16851        y0: c_double,
16852        radius0: c_double,
16853        x1: c_double,
16854        y1: c_double,
16855        radius1: c_double,
16856    ) -> *mut GtkGradient;
16857    pub fn gtk_gradient_add_color_stop(
16858        gradient: *mut GtkGradient,
16859        offset: c_double,
16860        color: *mut GtkSymbolicColor,
16861    );
16862    pub fn gtk_gradient_ref(gradient: *mut GtkGradient) -> *mut GtkGradient;
16863    pub fn gtk_gradient_resolve(
16864        gradient: *mut GtkGradient,
16865        props: *mut GtkStyleProperties,
16866        resolved_gradient: *mut *mut cairo::cairo_pattern_t,
16867    ) -> gboolean;
16868    pub fn gtk_gradient_resolve_for_context(
16869        gradient: *mut GtkGradient,
16870        context: *mut GtkStyleContext,
16871    ) -> *mut cairo::cairo_pattern_t;
16872    pub fn gtk_gradient_to_string(gradient: *mut GtkGradient) -> *mut c_char;
16873    pub fn gtk_gradient_unref(gradient: *mut GtkGradient);
16874
16875    //=========================================================================
16876    // GtkIconSet
16877    //=========================================================================
16878    pub fn gtk_icon_set_get_type() -> GType;
16879    pub fn gtk_icon_set_new() -> *mut GtkIconSet;
16880    pub fn gtk_icon_set_new_from_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkIconSet;
16881    pub fn gtk_icon_set_add_source(icon_set: *mut GtkIconSet, source: *const GtkIconSource);
16882    pub fn gtk_icon_set_copy(icon_set: *mut GtkIconSet) -> *mut GtkIconSet;
16883    pub fn gtk_icon_set_get_sizes(
16884        icon_set: *mut GtkIconSet,
16885        sizes: *mut *mut GtkIconSize,
16886        n_sizes: *mut c_int,
16887    );
16888    pub fn gtk_icon_set_ref(icon_set: *mut GtkIconSet) -> *mut GtkIconSet;
16889    pub fn gtk_icon_set_render_icon(
16890        icon_set: *mut GtkIconSet,
16891        style: *mut GtkStyle,
16892        direction: GtkTextDirection,
16893        state: GtkStateType,
16894        size: GtkIconSize,
16895        widget: *mut GtkWidget,
16896        detail: *const c_char,
16897    ) -> *mut gdk_pixbuf::GdkPixbuf;
16898    pub fn gtk_icon_set_render_icon_pixbuf(
16899        icon_set: *mut GtkIconSet,
16900        context: *mut GtkStyleContext,
16901        size: GtkIconSize,
16902    ) -> *mut gdk_pixbuf::GdkPixbuf;
16903    pub fn gtk_icon_set_render_icon_surface(
16904        icon_set: *mut GtkIconSet,
16905        context: *mut GtkStyleContext,
16906        size: GtkIconSize,
16907        scale: c_int,
16908        for_window: *mut gdk::GdkWindow,
16909    ) -> *mut cairo::cairo_surface_t;
16910    pub fn gtk_icon_set_unref(icon_set: *mut GtkIconSet);
16911
16912    //=========================================================================
16913    // GtkIconSource
16914    //=========================================================================
16915    pub fn gtk_icon_source_get_type() -> GType;
16916    pub fn gtk_icon_source_new() -> *mut GtkIconSource;
16917    pub fn gtk_icon_source_copy(source: *const GtkIconSource) -> *mut GtkIconSource;
16918    pub fn gtk_icon_source_free(source: *mut GtkIconSource);
16919    pub fn gtk_icon_source_get_direction(source: *const GtkIconSource) -> GtkTextDirection;
16920    pub fn gtk_icon_source_get_direction_wildcarded(source: *const GtkIconSource) -> gboolean;
16921    pub fn gtk_icon_source_get_filename(source: *const GtkIconSource) -> *const c_char;
16922    pub fn gtk_icon_source_get_icon_name(source: *const GtkIconSource) -> *const c_char;
16923    pub fn gtk_icon_source_get_pixbuf(source: *const GtkIconSource) -> *mut gdk_pixbuf::GdkPixbuf;
16924    pub fn gtk_icon_source_get_size(source: *const GtkIconSource) -> GtkIconSize;
16925    pub fn gtk_icon_source_get_size_wildcarded(source: *const GtkIconSource) -> gboolean;
16926    pub fn gtk_icon_source_get_state(source: *const GtkIconSource) -> GtkStateType;
16927    pub fn gtk_icon_source_get_state_wildcarded(source: *const GtkIconSource) -> gboolean;
16928    pub fn gtk_icon_source_set_direction(source: *mut GtkIconSource, direction: GtkTextDirection);
16929    pub fn gtk_icon_source_set_direction_wildcarded(source: *mut GtkIconSource, setting: gboolean);
16930    pub fn gtk_icon_source_set_filename(source: *mut GtkIconSource, filename: *const c_char);
16931    pub fn gtk_icon_source_set_icon_name(source: *mut GtkIconSource, icon_name: *const c_char);
16932    pub fn gtk_icon_source_set_pixbuf(
16933        source: *mut GtkIconSource,
16934        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
16935    );
16936    pub fn gtk_icon_source_set_size(source: *mut GtkIconSource, size: GtkIconSize);
16937    pub fn gtk_icon_source_set_size_wildcarded(source: *mut GtkIconSource, setting: gboolean);
16938    pub fn gtk_icon_source_set_state(source: *mut GtkIconSource, state: GtkStateType);
16939    pub fn gtk_icon_source_set_state_wildcarded(source: *mut GtkIconSource, setting: gboolean);
16940
16941    //=========================================================================
16942    // GtkPaperSize
16943    //=========================================================================
16944    pub fn gtk_paper_size_get_type() -> GType;
16945    pub fn gtk_paper_size_new(name: *const c_char) -> *mut GtkPaperSize;
16946    pub fn gtk_paper_size_new_custom(
16947        name: *const c_char,
16948        display_name: *const c_char,
16949        width: c_double,
16950        height: c_double,
16951        unit: GtkUnit,
16952    ) -> *mut GtkPaperSize;
16953    pub fn gtk_paper_size_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPaperSize;
16954    pub fn gtk_paper_size_new_from_ipp(
16955        ipp_name: *const c_char,
16956        width: c_double,
16957        height: c_double,
16958    ) -> *mut GtkPaperSize;
16959    pub fn gtk_paper_size_new_from_key_file(
16960        key_file: *mut glib::GKeyFile,
16961        group_name: *const c_char,
16962        error: *mut *mut glib::GError,
16963    ) -> *mut GtkPaperSize;
16964    pub fn gtk_paper_size_new_from_ppd(
16965        ppd_name: *const c_char,
16966        ppd_display_name: *const c_char,
16967        width: c_double,
16968        height: c_double,
16969    ) -> *mut GtkPaperSize;
16970    pub fn gtk_paper_size_copy(other: *mut GtkPaperSize) -> *mut GtkPaperSize;
16971    pub fn gtk_paper_size_free(size: *mut GtkPaperSize);
16972    pub fn gtk_paper_size_get_default_bottom_margin(
16973        size: *mut GtkPaperSize,
16974        unit: GtkUnit,
16975    ) -> c_double;
16976    pub fn gtk_paper_size_get_default_left_margin(
16977        size: *mut GtkPaperSize,
16978        unit: GtkUnit,
16979    ) -> c_double;
16980    pub fn gtk_paper_size_get_default_right_margin(
16981        size: *mut GtkPaperSize,
16982        unit: GtkUnit,
16983    ) -> c_double;
16984    pub fn gtk_paper_size_get_default_top_margin(
16985        size: *mut GtkPaperSize,
16986        unit: GtkUnit,
16987    ) -> c_double;
16988    pub fn gtk_paper_size_get_display_name(size: *mut GtkPaperSize) -> *const c_char;
16989    pub fn gtk_paper_size_get_height(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
16990    pub fn gtk_paper_size_get_name(size: *mut GtkPaperSize) -> *const c_char;
16991    pub fn gtk_paper_size_get_ppd_name(size: *mut GtkPaperSize) -> *const c_char;
16992    pub fn gtk_paper_size_get_width(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
16993    pub fn gtk_paper_size_is_custom(size: *mut GtkPaperSize) -> gboolean;
16994    pub fn gtk_paper_size_is_equal(size1: *mut GtkPaperSize, size2: *mut GtkPaperSize) -> gboolean;
16995    pub fn gtk_paper_size_is_ipp(size: *mut GtkPaperSize) -> gboolean;
16996    pub fn gtk_paper_size_set_size(
16997        size: *mut GtkPaperSize,
16998        width: c_double,
16999        height: c_double,
17000        unit: GtkUnit,
17001    );
17002    pub fn gtk_paper_size_to_gvariant(paper_size: *mut GtkPaperSize) -> *mut glib::GVariant;
17003    pub fn gtk_paper_size_to_key_file(
17004        size: *mut GtkPaperSize,
17005        key_file: *mut glib::GKeyFile,
17006        group_name: *const c_char,
17007    );
17008    pub fn gtk_paper_size_get_default() -> *const c_char;
17009    pub fn gtk_paper_size_get_paper_sizes(include_custom: gboolean) -> *mut glib::GList;
17010
17011    //=========================================================================
17012    // GtkRcProperty
17013    //=========================================================================
17014    pub fn gtk_rc_property_parse_border(
17015        pspec: *const gobject::GParamSpec,
17016        gstring: *const glib::GString,
17017        property_value: *mut gobject::GValue,
17018    ) -> gboolean;
17019    pub fn gtk_rc_property_parse_color(
17020        pspec: *const gobject::GParamSpec,
17021        gstring: *const glib::GString,
17022        property_value: *mut gobject::GValue,
17023    ) -> gboolean;
17024    pub fn gtk_rc_property_parse_enum(
17025        pspec: *const gobject::GParamSpec,
17026        gstring: *const glib::GString,
17027        property_value: *mut gobject::GValue,
17028    ) -> gboolean;
17029    pub fn gtk_rc_property_parse_flags(
17030        pspec: *const gobject::GParamSpec,
17031        gstring: *const glib::GString,
17032        property_value: *mut gobject::GValue,
17033    ) -> gboolean;
17034    pub fn gtk_rc_property_parse_requisition(
17035        pspec: *const gobject::GParamSpec,
17036        gstring: *const glib::GString,
17037        property_value: *mut gobject::GValue,
17038    ) -> gboolean;
17039
17040    //=========================================================================
17041    // GtkRecentInfo
17042    //=========================================================================
17043    pub fn gtk_recent_info_get_type() -> GType;
17044    pub fn gtk_recent_info_create_app_info(
17045        info: *mut GtkRecentInfo,
17046        app_name: *const c_char,
17047        error: *mut *mut glib::GError,
17048    ) -> *mut gio::GAppInfo;
17049    pub fn gtk_recent_info_exists(info: *mut GtkRecentInfo) -> gboolean;
17050    pub fn gtk_recent_info_get_added(info: *mut GtkRecentInfo) -> time_t;
17051    pub fn gtk_recent_info_get_age(info: *mut GtkRecentInfo) -> c_int;
17052    pub fn gtk_recent_info_get_application_info(
17053        info: *mut GtkRecentInfo,
17054        app_name: *const c_char,
17055        app_exec: *mut *const c_char,
17056        count: *mut c_uint,
17057        time_: *mut time_t,
17058    ) -> gboolean;
17059    pub fn gtk_recent_info_get_applications(
17060        info: *mut GtkRecentInfo,
17061        length: *mut size_t,
17062    ) -> *mut *mut c_char;
17063    pub fn gtk_recent_info_get_description(info: *mut GtkRecentInfo) -> *const c_char;
17064    pub fn gtk_recent_info_get_display_name(info: *mut GtkRecentInfo) -> *const c_char;
17065    pub fn gtk_recent_info_get_gicon(info: *mut GtkRecentInfo) -> *mut gio::GIcon;
17066    pub fn gtk_recent_info_get_groups(
17067        info: *mut GtkRecentInfo,
17068        length: *mut size_t,
17069    ) -> *mut *mut c_char;
17070    pub fn gtk_recent_info_get_icon(
17071        info: *mut GtkRecentInfo,
17072        size: c_int,
17073    ) -> *mut gdk_pixbuf::GdkPixbuf;
17074    pub fn gtk_recent_info_get_mime_type(info: *mut GtkRecentInfo) -> *const c_char;
17075    pub fn gtk_recent_info_get_modified(info: *mut GtkRecentInfo) -> time_t;
17076    pub fn gtk_recent_info_get_private_hint(info: *mut GtkRecentInfo) -> gboolean;
17077    pub fn gtk_recent_info_get_short_name(info: *mut GtkRecentInfo) -> *mut c_char;
17078    pub fn gtk_recent_info_get_uri(info: *mut GtkRecentInfo) -> *const c_char;
17079    pub fn gtk_recent_info_get_uri_display(info: *mut GtkRecentInfo) -> *mut c_char;
17080    pub fn gtk_recent_info_get_visited(info: *mut GtkRecentInfo) -> time_t;
17081    pub fn gtk_recent_info_has_application(
17082        info: *mut GtkRecentInfo,
17083        app_name: *const c_char,
17084    ) -> gboolean;
17085    pub fn gtk_recent_info_has_group(
17086        info: *mut GtkRecentInfo,
17087        group_name: *const c_char,
17088    ) -> gboolean;
17089    pub fn gtk_recent_info_is_local(info: *mut GtkRecentInfo) -> gboolean;
17090    pub fn gtk_recent_info_last_application(info: *mut GtkRecentInfo) -> *mut c_char;
17091    pub fn gtk_recent_info_match(
17092        info_a: *mut GtkRecentInfo,
17093        info_b: *mut GtkRecentInfo,
17094    ) -> gboolean;
17095    pub fn gtk_recent_info_ref(info: *mut GtkRecentInfo) -> *mut GtkRecentInfo;
17096    pub fn gtk_recent_info_unref(info: *mut GtkRecentInfo);
17097
17098    //=========================================================================
17099    // GtkRequisition
17100    //=========================================================================
17101    pub fn gtk_requisition_get_type() -> GType;
17102    pub fn gtk_requisition_new() -> *mut GtkRequisition;
17103    pub fn gtk_requisition_copy(requisition: *const GtkRequisition) -> *mut GtkRequisition;
17104    pub fn gtk_requisition_free(requisition: *mut GtkRequisition);
17105
17106    //=========================================================================
17107    // GtkSelectionData
17108    //=========================================================================
17109    pub fn gtk_selection_data_get_type() -> GType;
17110    pub fn gtk_selection_data_copy(data: *const GtkSelectionData) -> *mut GtkSelectionData;
17111    pub fn gtk_selection_data_free(data: *mut GtkSelectionData);
17112    pub fn gtk_selection_data_get_data(selection_data: *const GtkSelectionData) -> *const u8;
17113    pub fn gtk_selection_data_get_data_type(
17114        selection_data: *const GtkSelectionData,
17115    ) -> gdk::GdkAtom;
17116    pub fn gtk_selection_data_get_data_with_length(
17117        selection_data: *const GtkSelectionData,
17118        length: *mut c_int,
17119    ) -> *const u8;
17120    pub fn gtk_selection_data_get_display(
17121        selection_data: *const GtkSelectionData,
17122    ) -> *mut gdk::GdkDisplay;
17123    pub fn gtk_selection_data_get_format(selection_data: *const GtkSelectionData) -> c_int;
17124    pub fn gtk_selection_data_get_length(selection_data: *const GtkSelectionData) -> c_int;
17125    pub fn gtk_selection_data_get_pixbuf(
17126        selection_data: *const GtkSelectionData,
17127    ) -> *mut gdk_pixbuf::GdkPixbuf;
17128    pub fn gtk_selection_data_get_selection(
17129        selection_data: *const GtkSelectionData,
17130    ) -> gdk::GdkAtom;
17131    pub fn gtk_selection_data_get_target(selection_data: *const GtkSelectionData) -> gdk::GdkAtom;
17132    pub fn gtk_selection_data_get_targets(
17133        selection_data: *const GtkSelectionData,
17134        targets: *mut *mut gdk::GdkAtom,
17135        n_atoms: *mut c_int,
17136    ) -> gboolean;
17137    pub fn gtk_selection_data_get_text(selection_data: *const GtkSelectionData) -> *mut c_char;
17138    pub fn gtk_selection_data_get_uris(selection_data: *const GtkSelectionData)
17139    -> *mut *mut c_char;
17140    pub fn gtk_selection_data_set(
17141        selection_data: *mut GtkSelectionData,
17142        type_: gdk::GdkAtom,
17143        format: c_int,
17144        data: *const u8,
17145        length: c_int,
17146    );
17147    pub fn gtk_selection_data_set_pixbuf(
17148        selection_data: *mut GtkSelectionData,
17149        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
17150    ) -> gboolean;
17151    pub fn gtk_selection_data_set_text(
17152        selection_data: *mut GtkSelectionData,
17153        str: *const c_char,
17154        len: c_int,
17155    ) -> gboolean;
17156    pub fn gtk_selection_data_set_uris(
17157        selection_data: *mut GtkSelectionData,
17158        uris: *mut *mut c_char,
17159    ) -> gboolean;
17160    pub fn gtk_selection_data_targets_include_image(
17161        selection_data: *const GtkSelectionData,
17162        writable: gboolean,
17163    ) -> gboolean;
17164    pub fn gtk_selection_data_targets_include_rich_text(
17165        selection_data: *const GtkSelectionData,
17166        buffer: *mut GtkTextBuffer,
17167    ) -> gboolean;
17168    pub fn gtk_selection_data_targets_include_text(
17169        selection_data: *const GtkSelectionData,
17170    ) -> gboolean;
17171    pub fn gtk_selection_data_targets_include_uri(
17172        selection_data: *const GtkSelectionData,
17173    ) -> gboolean;
17174
17175    //=========================================================================
17176    // GtkStockItem
17177    //=========================================================================
17178    pub fn gtk_stock_item_copy(item: *const GtkStockItem) -> *mut GtkStockItem;
17179    pub fn gtk_stock_item_free(item: *mut GtkStockItem);
17180
17181    //=========================================================================
17182    // GtkSymbolicColor
17183    //=========================================================================
17184    pub fn gtk_symbolic_color_get_type() -> GType;
17185    pub fn gtk_symbolic_color_new_alpha(
17186        color: *mut GtkSymbolicColor,
17187        factor: c_double,
17188    ) -> *mut GtkSymbolicColor;
17189    pub fn gtk_symbolic_color_new_literal(color: *const gdk::GdkRGBA) -> *mut GtkSymbolicColor;
17190    pub fn gtk_symbolic_color_new_mix(
17191        color1: *mut GtkSymbolicColor,
17192        color2: *mut GtkSymbolicColor,
17193        factor: c_double,
17194    ) -> *mut GtkSymbolicColor;
17195    pub fn gtk_symbolic_color_new_name(name: *const c_char) -> *mut GtkSymbolicColor;
17196    pub fn gtk_symbolic_color_new_shade(
17197        color: *mut GtkSymbolicColor,
17198        factor: c_double,
17199    ) -> *mut GtkSymbolicColor;
17200    pub fn gtk_symbolic_color_new_win32(
17201        theme_class: *const c_char,
17202        id: c_int,
17203    ) -> *mut GtkSymbolicColor;
17204    pub fn gtk_symbolic_color_ref(color: *mut GtkSymbolicColor) -> *mut GtkSymbolicColor;
17205    pub fn gtk_symbolic_color_resolve(
17206        color: *mut GtkSymbolicColor,
17207        props: *mut GtkStyleProperties,
17208        resolved_color: *mut gdk::GdkRGBA,
17209    ) -> gboolean;
17210    pub fn gtk_symbolic_color_to_string(color: *mut GtkSymbolicColor) -> *mut c_char;
17211    pub fn gtk_symbolic_color_unref(color: *mut GtkSymbolicColor);
17212
17213    //=========================================================================
17214    // GtkTargetEntry
17215    //=========================================================================
17216    pub fn gtk_target_entry_get_type() -> GType;
17217    pub fn gtk_target_entry_new(
17218        target: *const c_char,
17219        flags: c_uint,
17220        info: c_uint,
17221    ) -> *mut GtkTargetEntry;
17222    pub fn gtk_target_entry_copy(data: *mut GtkTargetEntry) -> *mut GtkTargetEntry;
17223    pub fn gtk_target_entry_free(data: *mut GtkTargetEntry);
17224
17225    //=========================================================================
17226    // GtkTargetList
17227    //=========================================================================
17228    pub fn gtk_target_list_get_type() -> GType;
17229    pub fn gtk_target_list_new(
17230        targets: *const GtkTargetEntry,
17231        ntargets: c_uint,
17232    ) -> *mut GtkTargetList;
17233    pub fn gtk_target_list_add(
17234        list: *mut GtkTargetList,
17235        target: gdk::GdkAtom,
17236        flags: c_uint,
17237        info: c_uint,
17238    );
17239    pub fn gtk_target_list_add_image_targets(
17240        list: *mut GtkTargetList,
17241        info: c_uint,
17242        writable: gboolean,
17243    );
17244    pub fn gtk_target_list_add_rich_text_targets(
17245        list: *mut GtkTargetList,
17246        info: c_uint,
17247        deserializable: gboolean,
17248        buffer: *mut GtkTextBuffer,
17249    );
17250    pub fn gtk_target_list_add_table(
17251        list: *mut GtkTargetList,
17252        targets: *const GtkTargetEntry,
17253        ntargets: c_uint,
17254    );
17255    pub fn gtk_target_list_add_text_targets(list: *mut GtkTargetList, info: c_uint);
17256    pub fn gtk_target_list_add_uri_targets(list: *mut GtkTargetList, info: c_uint);
17257    pub fn gtk_target_list_find(
17258        list: *mut GtkTargetList,
17259        target: gdk::GdkAtom,
17260        info: *mut c_uint,
17261    ) -> gboolean;
17262    pub fn gtk_target_list_ref(list: *mut GtkTargetList) -> *mut GtkTargetList;
17263    pub fn gtk_target_list_remove(list: *mut GtkTargetList, target: gdk::GdkAtom);
17264    pub fn gtk_target_list_unref(list: *mut GtkTargetList);
17265
17266    //=========================================================================
17267    // GtkTextAttributes
17268    //=========================================================================
17269    pub fn gtk_text_attributes_get_type() -> GType;
17270    pub fn gtk_text_attributes_new() -> *mut GtkTextAttributes;
17271    pub fn gtk_text_attributes_copy(src: *mut GtkTextAttributes) -> *mut GtkTextAttributes;
17272    pub fn gtk_text_attributes_copy_values(
17273        src: *mut GtkTextAttributes,
17274        dest: *mut GtkTextAttributes,
17275    );
17276    pub fn gtk_text_attributes_ref(values: *mut GtkTextAttributes) -> *mut GtkTextAttributes;
17277    pub fn gtk_text_attributes_unref(values: *mut GtkTextAttributes);
17278
17279    //=========================================================================
17280    // GtkTextIter
17281    //=========================================================================
17282    pub fn gtk_text_iter_get_type() -> GType;
17283    pub fn gtk_text_iter_assign(iter: *mut GtkTextIter, other: *const GtkTextIter);
17284    pub fn gtk_text_iter_backward_char(iter: *mut GtkTextIter) -> gboolean;
17285    pub fn gtk_text_iter_backward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
17286    pub fn gtk_text_iter_backward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
17287    pub fn gtk_text_iter_backward_cursor_positions(
17288        iter: *mut GtkTextIter,
17289        count: c_int,
17290    ) -> gboolean;
17291    pub fn gtk_text_iter_backward_find_char(
17292        iter: *mut GtkTextIter,
17293        pred: GtkTextCharPredicate,
17294        user_data: gpointer,
17295        limit: *const GtkTextIter,
17296    ) -> gboolean;
17297    pub fn gtk_text_iter_backward_line(iter: *mut GtkTextIter) -> gboolean;
17298    pub fn gtk_text_iter_backward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
17299    pub fn gtk_text_iter_backward_search(
17300        iter: *const GtkTextIter,
17301        str: *const c_char,
17302        flags: GtkTextSearchFlags,
17303        match_start: *mut GtkTextIter,
17304        match_end: *mut GtkTextIter,
17305        limit: *const GtkTextIter,
17306    ) -> gboolean;
17307    pub fn gtk_text_iter_backward_sentence_start(iter: *mut GtkTextIter) -> gboolean;
17308    pub fn gtk_text_iter_backward_sentence_starts(iter: *mut GtkTextIter, count: c_int)
17309    -> gboolean;
17310    pub fn gtk_text_iter_backward_to_tag_toggle(
17311        iter: *mut GtkTextIter,
17312        tag: *mut GtkTextTag,
17313    ) -> gboolean;
17314    pub fn gtk_text_iter_backward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
17315    pub fn gtk_text_iter_backward_visible_cursor_positions(
17316        iter: *mut GtkTextIter,
17317        count: c_int,
17318    ) -> gboolean;
17319    pub fn gtk_text_iter_backward_visible_line(iter: *mut GtkTextIter) -> gboolean;
17320    pub fn gtk_text_iter_backward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
17321    pub fn gtk_text_iter_backward_visible_word_start(iter: *mut GtkTextIter) -> gboolean;
17322    pub fn gtk_text_iter_backward_visible_word_starts(
17323        iter: *mut GtkTextIter,
17324        count: c_int,
17325    ) -> gboolean;
17326    pub fn gtk_text_iter_backward_word_start(iter: *mut GtkTextIter) -> gboolean;
17327    pub fn gtk_text_iter_backward_word_starts(iter: *mut GtkTextIter, count: c_int) -> gboolean;
17328    pub fn gtk_text_iter_begins_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
17329    pub fn gtk_text_iter_can_insert(
17330        iter: *const GtkTextIter,
17331        default_editability: gboolean,
17332    ) -> gboolean;
17333    pub fn gtk_text_iter_compare(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> c_int;
17334    pub fn gtk_text_iter_copy(iter: *const GtkTextIter) -> *mut GtkTextIter;
17335    pub fn gtk_text_iter_editable(iter: *const GtkTextIter, default_setting: gboolean) -> gboolean;
17336    pub fn gtk_text_iter_ends_line(iter: *const GtkTextIter) -> gboolean;
17337    pub fn gtk_text_iter_ends_sentence(iter: *const GtkTextIter) -> gboolean;
17338    pub fn gtk_text_iter_ends_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
17339    pub fn gtk_text_iter_ends_word(iter: *const GtkTextIter) -> gboolean;
17340    pub fn gtk_text_iter_equal(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> gboolean;
17341    pub fn gtk_text_iter_forward_char(iter: *mut GtkTextIter) -> gboolean;
17342    pub fn gtk_text_iter_forward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
17343    pub fn gtk_text_iter_forward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
17344    pub fn gtk_text_iter_forward_cursor_positions(iter: *mut GtkTextIter, count: c_int)
17345    -> gboolean;
17346    pub fn gtk_text_iter_forward_find_char(
17347        iter: *mut GtkTextIter,
17348        pred: GtkTextCharPredicate,
17349        user_data: gpointer,
17350        limit: *const GtkTextIter,
17351    ) -> gboolean;
17352    pub fn gtk_text_iter_forward_line(iter: *mut GtkTextIter) -> gboolean;
17353    pub fn gtk_text_iter_forward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
17354    pub fn gtk_text_iter_forward_search(
17355        iter: *const GtkTextIter,
17356        str: *const c_char,
17357        flags: GtkTextSearchFlags,
17358        match_start: *mut GtkTextIter,
17359        match_end: *mut GtkTextIter,
17360        limit: *const GtkTextIter,
17361    ) -> gboolean;
17362    pub fn gtk_text_iter_forward_sentence_end(iter: *mut GtkTextIter) -> gboolean;
17363    pub fn gtk_text_iter_forward_sentence_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
17364    pub fn gtk_text_iter_forward_to_end(iter: *mut GtkTextIter);
17365    pub fn gtk_text_iter_forward_to_line_end(iter: *mut GtkTextIter) -> gboolean;
17366    pub fn gtk_text_iter_forward_to_tag_toggle(
17367        iter: *mut GtkTextIter,
17368        tag: *mut GtkTextTag,
17369    ) -> gboolean;
17370    pub fn gtk_text_iter_forward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
17371    pub fn gtk_text_iter_forward_visible_cursor_positions(
17372        iter: *mut GtkTextIter,
17373        count: c_int,
17374    ) -> gboolean;
17375    pub fn gtk_text_iter_forward_visible_line(iter: *mut GtkTextIter) -> gboolean;
17376    pub fn gtk_text_iter_forward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
17377    pub fn gtk_text_iter_forward_visible_word_end(iter: *mut GtkTextIter) -> gboolean;
17378    pub fn gtk_text_iter_forward_visible_word_ends(
17379        iter: *mut GtkTextIter,
17380        count: c_int,
17381    ) -> gboolean;
17382    pub fn gtk_text_iter_forward_word_end(iter: *mut GtkTextIter) -> gboolean;
17383    pub fn gtk_text_iter_forward_word_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
17384    pub fn gtk_text_iter_free(iter: *mut GtkTextIter);
17385    pub fn gtk_text_iter_get_attributes(
17386        iter: *const GtkTextIter,
17387        values: *mut GtkTextAttributes,
17388    ) -> gboolean;
17389    pub fn gtk_text_iter_get_buffer(iter: *const GtkTextIter) -> *mut GtkTextBuffer;
17390    pub fn gtk_text_iter_get_bytes_in_line(iter: *const GtkTextIter) -> c_int;
17391    pub fn gtk_text_iter_get_char(iter: *const GtkTextIter) -> u32;
17392    pub fn gtk_text_iter_get_chars_in_line(iter: *const GtkTextIter) -> c_int;
17393    pub fn gtk_text_iter_get_child_anchor(iter: *const GtkTextIter) -> *mut GtkTextChildAnchor;
17394    pub fn gtk_text_iter_get_language(iter: *const GtkTextIter) -> *mut pango::PangoLanguage;
17395    pub fn gtk_text_iter_get_line(iter: *const GtkTextIter) -> c_int;
17396    pub fn gtk_text_iter_get_line_index(iter: *const GtkTextIter) -> c_int;
17397    pub fn gtk_text_iter_get_line_offset(iter: *const GtkTextIter) -> c_int;
17398    pub fn gtk_text_iter_get_marks(iter: *const GtkTextIter) -> *mut glib::GSList;
17399    pub fn gtk_text_iter_get_offset(iter: *const GtkTextIter) -> c_int;
17400    pub fn gtk_text_iter_get_pixbuf(iter: *const GtkTextIter) -> *mut gdk_pixbuf::GdkPixbuf;
17401    pub fn gtk_text_iter_get_slice(
17402        start: *const GtkTextIter,
17403        end: *const GtkTextIter,
17404    ) -> *mut c_char;
17405    pub fn gtk_text_iter_get_tags(iter: *const GtkTextIter) -> *mut glib::GSList;
17406    pub fn gtk_text_iter_get_text(
17407        start: *const GtkTextIter,
17408        end: *const GtkTextIter,
17409    ) -> *mut c_char;
17410    pub fn gtk_text_iter_get_toggled_tags(
17411        iter: *const GtkTextIter,
17412        toggled_on: gboolean,
17413    ) -> *mut glib::GSList;
17414    pub fn gtk_text_iter_get_visible_line_index(iter: *const GtkTextIter) -> c_int;
17415    pub fn gtk_text_iter_get_visible_line_offset(iter: *const GtkTextIter) -> c_int;
17416    pub fn gtk_text_iter_get_visible_slice(
17417        start: *const GtkTextIter,
17418        end: *const GtkTextIter,
17419    ) -> *mut c_char;
17420    pub fn gtk_text_iter_get_visible_text(
17421        start: *const GtkTextIter,
17422        end: *const GtkTextIter,
17423    ) -> *mut c_char;
17424    pub fn gtk_text_iter_has_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
17425    pub fn gtk_text_iter_in_range(
17426        iter: *const GtkTextIter,
17427        start: *const GtkTextIter,
17428        end: *const GtkTextIter,
17429    ) -> gboolean;
17430    pub fn gtk_text_iter_inside_sentence(iter: *const GtkTextIter) -> gboolean;
17431    pub fn gtk_text_iter_inside_word(iter: *const GtkTextIter) -> gboolean;
17432    pub fn gtk_text_iter_is_cursor_position(iter: *const GtkTextIter) -> gboolean;
17433    pub fn gtk_text_iter_is_end(iter: *const GtkTextIter) -> gboolean;
17434    pub fn gtk_text_iter_is_start(iter: *const GtkTextIter) -> gboolean;
17435    pub fn gtk_text_iter_order(first: *mut GtkTextIter, second: *mut GtkTextIter);
17436    pub fn gtk_text_iter_set_line(iter: *mut GtkTextIter, line_number: c_int);
17437    pub fn gtk_text_iter_set_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
17438    pub fn gtk_text_iter_set_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
17439    pub fn gtk_text_iter_set_offset(iter: *mut GtkTextIter, char_offset: c_int);
17440    pub fn gtk_text_iter_set_visible_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
17441    pub fn gtk_text_iter_set_visible_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
17442    pub fn gtk_text_iter_starts_line(iter: *const GtkTextIter) -> gboolean;
17443    pub fn gtk_text_iter_starts_sentence(iter: *const GtkTextIter) -> gboolean;
17444    pub fn gtk_text_iter_starts_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
17445    pub fn gtk_text_iter_starts_word(iter: *const GtkTextIter) -> gboolean;
17446    pub fn gtk_text_iter_toggles_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
17447
17448    //=========================================================================
17449    // GtkTreeIter
17450    //=========================================================================
17451    pub fn gtk_tree_iter_get_type() -> GType;
17452    pub fn gtk_tree_iter_copy(iter: *mut GtkTreeIter) -> *mut GtkTreeIter;
17453    pub fn gtk_tree_iter_free(iter: *mut GtkTreeIter);
17454
17455    //=========================================================================
17456    // GtkTreePath
17457    //=========================================================================
17458    pub fn gtk_tree_path_get_type() -> GType;
17459    pub fn gtk_tree_path_new() -> *mut GtkTreePath;
17460    pub fn gtk_tree_path_new_first() -> *mut GtkTreePath;
17461    pub fn gtk_tree_path_new_from_indices(first_index: c_int, ...) -> *mut GtkTreePath;
17462    pub fn gtk_tree_path_new_from_indicesv(indices: *mut c_int, length: size_t)
17463    -> *mut GtkTreePath;
17464    pub fn gtk_tree_path_new_from_string(path: *const c_char) -> *mut GtkTreePath;
17465    pub fn gtk_tree_path_append_index(path: *mut GtkTreePath, index_: c_int);
17466    pub fn gtk_tree_path_compare(a: *const GtkTreePath, b: *const GtkTreePath) -> c_int;
17467    pub fn gtk_tree_path_copy(path: *const GtkTreePath) -> *mut GtkTreePath;
17468    pub fn gtk_tree_path_down(path: *mut GtkTreePath);
17469    pub fn gtk_tree_path_free(path: *mut GtkTreePath);
17470    pub fn gtk_tree_path_get_depth(path: *mut GtkTreePath) -> c_int;
17471    pub fn gtk_tree_path_get_indices(path: *mut GtkTreePath) -> *mut c_int;
17472    pub fn gtk_tree_path_get_indices_with_depth(
17473        path: *mut GtkTreePath,
17474        depth: *mut c_int,
17475    ) -> *mut c_int;
17476    pub fn gtk_tree_path_is_ancestor(
17477        path: *mut GtkTreePath,
17478        descendant: *mut GtkTreePath,
17479    ) -> gboolean;
17480    pub fn gtk_tree_path_is_descendant(
17481        path: *mut GtkTreePath,
17482        ancestor: *mut GtkTreePath,
17483    ) -> gboolean;
17484    pub fn gtk_tree_path_next(path: *mut GtkTreePath);
17485    pub fn gtk_tree_path_prepend_index(path: *mut GtkTreePath, index_: c_int);
17486    pub fn gtk_tree_path_prev(path: *mut GtkTreePath) -> gboolean;
17487    pub fn gtk_tree_path_to_string(path: *mut GtkTreePath) -> *mut c_char;
17488    pub fn gtk_tree_path_up(path: *mut GtkTreePath) -> gboolean;
17489
17490    //=========================================================================
17491    // GtkTreeRowReference
17492    //=========================================================================
17493    pub fn gtk_tree_row_reference_get_type() -> GType;
17494    pub fn gtk_tree_row_reference_new(
17495        model: *mut GtkTreeModel,
17496        path: *mut GtkTreePath,
17497    ) -> *mut GtkTreeRowReference;
17498    pub fn gtk_tree_row_reference_new_proxy(
17499        proxy: *mut gobject::GObject,
17500        model: *mut GtkTreeModel,
17501        path: *mut GtkTreePath,
17502    ) -> *mut GtkTreeRowReference;
17503    pub fn gtk_tree_row_reference_copy(
17504        reference: *mut GtkTreeRowReference,
17505    ) -> *mut GtkTreeRowReference;
17506    pub fn gtk_tree_row_reference_free(reference: *mut GtkTreeRowReference);
17507    pub fn gtk_tree_row_reference_get_model(
17508        reference: *mut GtkTreeRowReference,
17509    ) -> *mut GtkTreeModel;
17510    pub fn gtk_tree_row_reference_get_path(reference: *mut GtkTreeRowReference)
17511    -> *mut GtkTreePath;
17512    pub fn gtk_tree_row_reference_valid(reference: *mut GtkTreeRowReference) -> gboolean;
17513    pub fn gtk_tree_row_reference_deleted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
17514    pub fn gtk_tree_row_reference_inserted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
17515    pub fn gtk_tree_row_reference_reordered(
17516        proxy: *mut gobject::GObject,
17517        path: *mut GtkTreePath,
17518        iter: *mut GtkTreeIter,
17519        new_order: *mut c_int,
17520    );
17521
17522    //=========================================================================
17523    // GtkWidgetClass
17524    //=========================================================================
17525    pub fn gtk_widget_class_bind_template_callback_full(
17526        widget_class: *mut GtkWidgetClass,
17527        callback_name: *const c_char,
17528        callback_symbol: gobject::GCallback,
17529    );
17530    pub fn gtk_widget_class_bind_template_child_full(
17531        widget_class: *mut GtkWidgetClass,
17532        name: *const c_char,
17533        internal_child: gboolean,
17534        struct_offset: ssize_t,
17535    );
17536    pub fn gtk_widget_class_find_style_property(
17537        klass: *mut GtkWidgetClass,
17538        property_name: *const c_char,
17539    ) -> *mut gobject::GParamSpec;
17540    pub fn gtk_widget_class_get_css_name(widget_class: *mut GtkWidgetClass) -> *const c_char;
17541    pub fn gtk_widget_class_install_style_property(
17542        klass: *mut GtkWidgetClass,
17543        pspec: *mut gobject::GParamSpec,
17544    );
17545    pub fn gtk_widget_class_install_style_property_parser(
17546        klass: *mut GtkWidgetClass,
17547        pspec: *mut gobject::GParamSpec,
17548        parser: GtkRcPropertyParser,
17549    );
17550    pub fn gtk_widget_class_list_style_properties(
17551        klass: *mut GtkWidgetClass,
17552        n_properties: *mut c_uint,
17553    ) -> *mut *mut gobject::GParamSpec;
17554    pub fn gtk_widget_class_set_accessible_role(
17555        widget_class: *mut GtkWidgetClass,
17556        role: atk::AtkRole,
17557    );
17558    pub fn gtk_widget_class_set_accessible_type(widget_class: *mut GtkWidgetClass, type_: GType);
17559    pub fn gtk_widget_class_set_connect_func(
17560        widget_class: *mut GtkWidgetClass,
17561        connect_func: GtkBuilderConnectFunc,
17562        connect_data: gpointer,
17563        connect_data_destroy: glib::GDestroyNotify,
17564    );
17565    pub fn gtk_widget_class_set_css_name(widget_class: *mut GtkWidgetClass, name: *const c_char);
17566    pub fn gtk_widget_class_set_template(
17567        widget_class: *mut GtkWidgetClass,
17568        template_bytes: *mut glib::GBytes,
17569    );
17570    pub fn gtk_widget_class_set_template_from_resource(
17571        widget_class: *mut GtkWidgetClass,
17572        resource_name: *const c_char,
17573    );
17574
17575    //=========================================================================
17576    // GtkWidgetPath
17577    //=========================================================================
17578    pub fn gtk_widget_path_get_type() -> GType;
17579    pub fn gtk_widget_path_new() -> *mut GtkWidgetPath;
17580    pub fn gtk_widget_path_append_for_widget(
17581        path: *mut GtkWidgetPath,
17582        widget: *mut GtkWidget,
17583    ) -> c_int;
17584    pub fn gtk_widget_path_append_type(path: *mut GtkWidgetPath, type_: GType) -> c_int;
17585    pub fn gtk_widget_path_append_with_siblings(
17586        path: *mut GtkWidgetPath,
17587        siblings: *mut GtkWidgetPath,
17588        sibling_index: c_uint,
17589    ) -> c_int;
17590    pub fn gtk_widget_path_copy(path: *const GtkWidgetPath) -> *mut GtkWidgetPath;
17591    pub fn gtk_widget_path_free(path: *mut GtkWidgetPath);
17592    pub fn gtk_widget_path_get_object_type(path: *const GtkWidgetPath) -> GType;
17593    pub fn gtk_widget_path_has_parent(path: *const GtkWidgetPath, type_: GType) -> gboolean;
17594    pub fn gtk_widget_path_is_type(path: *const GtkWidgetPath, type_: GType) -> gboolean;
17595    pub fn gtk_widget_path_iter_add_class(
17596        path: *mut GtkWidgetPath,
17597        pos: c_int,
17598        name: *const c_char,
17599    );
17600    pub fn gtk_widget_path_iter_add_region(
17601        path: *mut GtkWidgetPath,
17602        pos: c_int,
17603        name: *const c_char,
17604        flags: GtkRegionFlags,
17605    );
17606    pub fn gtk_widget_path_iter_clear_classes(path: *mut GtkWidgetPath, pos: c_int);
17607    pub fn gtk_widget_path_iter_clear_regions(path: *mut GtkWidgetPath, pos: c_int);
17608    pub fn gtk_widget_path_iter_get_name(path: *const GtkWidgetPath, pos: c_int) -> *const c_char;
17609    pub fn gtk_widget_path_iter_get_object_name(
17610        path: *const GtkWidgetPath,
17611        pos: c_int,
17612    ) -> *const c_char;
17613    pub fn gtk_widget_path_iter_get_object_type(path: *const GtkWidgetPath, pos: c_int) -> GType;
17614    pub fn gtk_widget_path_iter_get_sibling_index(path: *const GtkWidgetPath, pos: c_int)
17615    -> c_uint;
17616    pub fn gtk_widget_path_iter_get_siblings(
17617        path: *const GtkWidgetPath,
17618        pos: c_int,
17619    ) -> *const GtkWidgetPath;
17620    pub fn gtk_widget_path_iter_get_state(path: *const GtkWidgetPath, pos: c_int) -> GtkStateFlags;
17621    pub fn gtk_widget_path_iter_has_class(
17622        path: *const GtkWidgetPath,
17623        pos: c_int,
17624        name: *const c_char,
17625    ) -> gboolean;
17626    pub fn gtk_widget_path_iter_has_name(
17627        path: *const GtkWidgetPath,
17628        pos: c_int,
17629        name: *const c_char,
17630    ) -> gboolean;
17631    pub fn gtk_widget_path_iter_has_qclass(
17632        path: *const GtkWidgetPath,
17633        pos: c_int,
17634        qname: glib::GQuark,
17635    ) -> gboolean;
17636    pub fn gtk_widget_path_iter_has_qname(
17637        path: *const GtkWidgetPath,
17638        pos: c_int,
17639        qname: glib::GQuark,
17640    ) -> gboolean;
17641    pub fn gtk_widget_path_iter_has_qregion(
17642        path: *const GtkWidgetPath,
17643        pos: c_int,
17644        qname: glib::GQuark,
17645        flags: *mut GtkRegionFlags,
17646    ) -> gboolean;
17647    pub fn gtk_widget_path_iter_has_region(
17648        path: *const GtkWidgetPath,
17649        pos: c_int,
17650        name: *const c_char,
17651        flags: *mut GtkRegionFlags,
17652    ) -> gboolean;
17653    pub fn gtk_widget_path_iter_list_classes(
17654        path: *const GtkWidgetPath,
17655        pos: c_int,
17656    ) -> *mut glib::GSList;
17657    pub fn gtk_widget_path_iter_list_regions(
17658        path: *const GtkWidgetPath,
17659        pos: c_int,
17660    ) -> *mut glib::GSList;
17661    pub fn gtk_widget_path_iter_remove_class(
17662        path: *mut GtkWidgetPath,
17663        pos: c_int,
17664        name: *const c_char,
17665    );
17666    pub fn gtk_widget_path_iter_remove_region(
17667        path: *mut GtkWidgetPath,
17668        pos: c_int,
17669        name: *const c_char,
17670    );
17671    pub fn gtk_widget_path_iter_set_name(path: *mut GtkWidgetPath, pos: c_int, name: *const c_char);
17672    pub fn gtk_widget_path_iter_set_object_name(
17673        path: *mut GtkWidgetPath,
17674        pos: c_int,
17675        name: *const c_char,
17676    );
17677    pub fn gtk_widget_path_iter_set_object_type(path: *mut GtkWidgetPath, pos: c_int, type_: GType);
17678    pub fn gtk_widget_path_iter_set_state(
17679        path: *mut GtkWidgetPath,
17680        pos: c_int,
17681        state: GtkStateFlags,
17682    );
17683    pub fn gtk_widget_path_length(path: *const GtkWidgetPath) -> c_int;
17684    pub fn gtk_widget_path_prepend_type(path: *mut GtkWidgetPath, type_: GType);
17685    pub fn gtk_widget_path_ref(path: *mut GtkWidgetPath) -> *mut GtkWidgetPath;
17686    pub fn gtk_widget_path_to_string(path: *const GtkWidgetPath) -> *mut c_char;
17687    pub fn gtk_widget_path_unref(path: *mut GtkWidgetPath);
17688
17689    //=========================================================================
17690    // GtkAboutDialog
17691    //=========================================================================
17692    pub fn gtk_about_dialog_get_type() -> GType;
17693    pub fn gtk_about_dialog_new() -> *mut GtkWidget;
17694    pub fn gtk_about_dialog_add_credit_section(
17695        about: *mut GtkAboutDialog,
17696        section_name: *const c_char,
17697        people: *mut *const c_char,
17698    );
17699    pub fn gtk_about_dialog_get_artists(about: *mut GtkAboutDialog) -> *const *const c_char;
17700    pub fn gtk_about_dialog_get_authors(about: *mut GtkAboutDialog) -> *const *const c_char;
17701    pub fn gtk_about_dialog_get_comments(about: *mut GtkAboutDialog) -> *const c_char;
17702    pub fn gtk_about_dialog_get_copyright(about: *mut GtkAboutDialog) -> *const c_char;
17703    pub fn gtk_about_dialog_get_documenters(about: *mut GtkAboutDialog) -> *const *const c_char;
17704    pub fn gtk_about_dialog_get_license(about: *mut GtkAboutDialog) -> *const c_char;
17705    pub fn gtk_about_dialog_get_license_type(about: *mut GtkAboutDialog) -> GtkLicense;
17706    pub fn gtk_about_dialog_get_logo(about: *mut GtkAboutDialog) -> *mut gdk_pixbuf::GdkPixbuf;
17707    pub fn gtk_about_dialog_get_logo_icon_name(about: *mut GtkAboutDialog) -> *const c_char;
17708    pub fn gtk_about_dialog_get_program_name(about: *mut GtkAboutDialog) -> *const c_char;
17709    pub fn gtk_about_dialog_get_translator_credits(about: *mut GtkAboutDialog) -> *const c_char;
17710    pub fn gtk_about_dialog_get_version(about: *mut GtkAboutDialog) -> *const c_char;
17711    pub fn gtk_about_dialog_get_website(about: *mut GtkAboutDialog) -> *const c_char;
17712    pub fn gtk_about_dialog_get_website_label(about: *mut GtkAboutDialog) -> *const c_char;
17713    pub fn gtk_about_dialog_get_wrap_license(about: *mut GtkAboutDialog) -> gboolean;
17714    pub fn gtk_about_dialog_set_artists(about: *mut GtkAboutDialog, artists: *mut *const c_char);
17715    pub fn gtk_about_dialog_set_authors(about: *mut GtkAboutDialog, authors: *mut *const c_char);
17716    pub fn gtk_about_dialog_set_comments(about: *mut GtkAboutDialog, comments: *const c_char);
17717    pub fn gtk_about_dialog_set_copyright(about: *mut GtkAboutDialog, copyright: *const c_char);
17718    pub fn gtk_about_dialog_set_documenters(
17719        about: *mut GtkAboutDialog,
17720        documenters: *mut *const c_char,
17721    );
17722    pub fn gtk_about_dialog_set_license(about: *mut GtkAboutDialog, license: *const c_char);
17723    pub fn gtk_about_dialog_set_license_type(about: *mut GtkAboutDialog, license_type: GtkLicense);
17724    pub fn gtk_about_dialog_set_logo(about: *mut GtkAboutDialog, logo: *mut gdk_pixbuf::GdkPixbuf);
17725    pub fn gtk_about_dialog_set_logo_icon_name(
17726        about: *mut GtkAboutDialog,
17727        icon_name: *const c_char,
17728    );
17729    pub fn gtk_about_dialog_set_program_name(about: *mut GtkAboutDialog, name: *const c_char);
17730    pub fn gtk_about_dialog_set_translator_credits(
17731        about: *mut GtkAboutDialog,
17732        translator_credits: *const c_char,
17733    );
17734    pub fn gtk_about_dialog_set_version(about: *mut GtkAboutDialog, version: *const c_char);
17735    pub fn gtk_about_dialog_set_website(about: *mut GtkAboutDialog, website: *const c_char);
17736    pub fn gtk_about_dialog_set_website_label(
17737        about: *mut GtkAboutDialog,
17738        website_label: *const c_char,
17739    );
17740    pub fn gtk_about_dialog_set_wrap_license(about: *mut GtkAboutDialog, wrap_license: gboolean);
17741
17742    //=========================================================================
17743    // GtkAccelGroup
17744    //=========================================================================
17745    pub fn gtk_accel_group_get_type() -> GType;
17746    pub fn gtk_accel_group_new() -> *mut GtkAccelGroup;
17747    pub fn gtk_accel_group_from_accel_closure(
17748        closure: *mut gobject::GClosure,
17749    ) -> *mut GtkAccelGroup;
17750    pub fn gtk_accel_group_activate(
17751        accel_group: *mut GtkAccelGroup,
17752        accel_quark: glib::GQuark,
17753        acceleratable: *mut gobject::GObject,
17754        accel_key: c_uint,
17755        accel_mods: gdk::GdkModifierType,
17756    ) -> gboolean;
17757    pub fn gtk_accel_group_connect(
17758        accel_group: *mut GtkAccelGroup,
17759        accel_key: c_uint,
17760        accel_mods: gdk::GdkModifierType,
17761        accel_flags: GtkAccelFlags,
17762        closure: *mut gobject::GClosure,
17763    );
17764    pub fn gtk_accel_group_connect_by_path(
17765        accel_group: *mut GtkAccelGroup,
17766        accel_path: *const c_char,
17767        closure: *mut gobject::GClosure,
17768    );
17769    pub fn gtk_accel_group_disconnect(
17770        accel_group: *mut GtkAccelGroup,
17771        closure: *mut gobject::GClosure,
17772    ) -> gboolean;
17773    pub fn gtk_accel_group_disconnect_key(
17774        accel_group: *mut GtkAccelGroup,
17775        accel_key: c_uint,
17776        accel_mods: gdk::GdkModifierType,
17777    ) -> gboolean;
17778    pub fn gtk_accel_group_find(
17779        accel_group: *mut GtkAccelGroup,
17780        find_func: GtkAccelGroupFindFunc,
17781        data: gpointer,
17782    ) -> *mut GtkAccelKey;
17783    pub fn gtk_accel_group_get_is_locked(accel_group: *mut GtkAccelGroup) -> gboolean;
17784    pub fn gtk_accel_group_get_modifier_mask(
17785        accel_group: *mut GtkAccelGroup,
17786    ) -> gdk::GdkModifierType;
17787    pub fn gtk_accel_group_lock(accel_group: *mut GtkAccelGroup);
17788    pub fn gtk_accel_group_query(
17789        accel_group: *mut GtkAccelGroup,
17790        accel_key: c_uint,
17791        accel_mods: gdk::GdkModifierType,
17792        n_entries: *mut c_uint,
17793    ) -> *mut GtkAccelGroupEntry;
17794    pub fn gtk_accel_group_unlock(accel_group: *mut GtkAccelGroup);
17795
17796    //=========================================================================
17797    // GtkAccelLabel
17798    //=========================================================================
17799    pub fn gtk_accel_label_get_type() -> GType;
17800    pub fn gtk_accel_label_new(string: *const c_char) -> *mut GtkWidget;
17801    pub fn gtk_accel_label_get_accel(
17802        accel_label: *mut GtkAccelLabel,
17803        accelerator_key: *mut c_uint,
17804        accelerator_mods: *mut gdk::GdkModifierType,
17805    );
17806    pub fn gtk_accel_label_get_accel_widget(accel_label: *mut GtkAccelLabel) -> *mut GtkWidget;
17807    pub fn gtk_accel_label_get_accel_width(accel_label: *mut GtkAccelLabel) -> c_uint;
17808    pub fn gtk_accel_label_refetch(accel_label: *mut GtkAccelLabel) -> gboolean;
17809    pub fn gtk_accel_label_set_accel(
17810        accel_label: *mut GtkAccelLabel,
17811        accelerator_key: c_uint,
17812        accelerator_mods: gdk::GdkModifierType,
17813    );
17814    pub fn gtk_accel_label_set_accel_closure(
17815        accel_label: *mut GtkAccelLabel,
17816        accel_closure: *mut gobject::GClosure,
17817    );
17818    pub fn gtk_accel_label_set_accel_widget(
17819        accel_label: *mut GtkAccelLabel,
17820        accel_widget: *mut GtkWidget,
17821    );
17822
17823    //=========================================================================
17824    // GtkAccelMap
17825    //=========================================================================
17826    pub fn gtk_accel_map_get_type() -> GType;
17827    pub fn gtk_accel_map_add_entry(
17828        accel_path: *const c_char,
17829        accel_key: c_uint,
17830        accel_mods: gdk::GdkModifierType,
17831    );
17832    pub fn gtk_accel_map_add_filter(filter_pattern: *const c_char);
17833    pub fn gtk_accel_map_change_entry(
17834        accel_path: *const c_char,
17835        accel_key: c_uint,
17836        accel_mods: gdk::GdkModifierType,
17837        replace: gboolean,
17838    ) -> gboolean;
17839    pub fn gtk_accel_map_foreach(data: gpointer, foreach_func: GtkAccelMapForeach);
17840    pub fn gtk_accel_map_foreach_unfiltered(data: gpointer, foreach_func: GtkAccelMapForeach);
17841    pub fn gtk_accel_map_get() -> *mut GtkAccelMap;
17842    pub fn gtk_accel_map_load(file_name: *const c_char);
17843    pub fn gtk_accel_map_load_fd(fd: c_int);
17844    pub fn gtk_accel_map_load_scanner(scanner: *mut glib::GScanner);
17845    pub fn gtk_accel_map_lock_path(accel_path: *const c_char);
17846    pub fn gtk_accel_map_lookup_entry(accel_path: *const c_char, key: *mut GtkAccelKey)
17847    -> gboolean;
17848    pub fn gtk_accel_map_save(file_name: *const c_char);
17849    pub fn gtk_accel_map_save_fd(fd: c_int);
17850    pub fn gtk_accel_map_unlock_path(accel_path: *const c_char);
17851
17852    //=========================================================================
17853    // GtkAccessible
17854    //=========================================================================
17855    pub fn gtk_accessible_get_type() -> GType;
17856    pub fn gtk_accessible_connect_widget_destroyed(accessible: *mut GtkAccessible);
17857    pub fn gtk_accessible_get_widget(accessible: *mut GtkAccessible) -> *mut GtkWidget;
17858    pub fn gtk_accessible_set_widget(accessible: *mut GtkAccessible, widget: *mut GtkWidget);
17859
17860    //=========================================================================
17861    // GtkAction
17862    //=========================================================================
17863    pub fn gtk_action_get_type() -> GType;
17864    pub fn gtk_action_new(
17865        name: *const c_char,
17866        label: *const c_char,
17867        tooltip: *const c_char,
17868        stock_id: *const c_char,
17869    ) -> *mut GtkAction;
17870    pub fn gtk_action_activate(action: *mut GtkAction);
17871    pub fn gtk_action_block_activate(action: *mut GtkAction);
17872    pub fn gtk_action_connect_accelerator(action: *mut GtkAction);
17873    pub fn gtk_action_create_icon(action: *mut GtkAction, icon_size: GtkIconSize)
17874    -> *mut GtkWidget;
17875    pub fn gtk_action_create_menu(action: *mut GtkAction) -> *mut GtkWidget;
17876    pub fn gtk_action_create_menu_item(action: *mut GtkAction) -> *mut GtkWidget;
17877    pub fn gtk_action_create_tool_item(action: *mut GtkAction) -> *mut GtkWidget;
17878    pub fn gtk_action_disconnect_accelerator(action: *mut GtkAction);
17879    pub fn gtk_action_get_accel_closure(action: *mut GtkAction) -> *mut gobject::GClosure;
17880    pub fn gtk_action_get_accel_path(action: *mut GtkAction) -> *const c_char;
17881    pub fn gtk_action_get_always_show_image(action: *mut GtkAction) -> gboolean;
17882    pub fn gtk_action_get_gicon(action: *mut GtkAction) -> *mut gio::GIcon;
17883    pub fn gtk_action_get_icon_name(action: *mut GtkAction) -> *const c_char;
17884    pub fn gtk_action_get_is_important(action: *mut GtkAction) -> gboolean;
17885    pub fn gtk_action_get_label(action: *mut GtkAction) -> *const c_char;
17886    pub fn gtk_action_get_name(action: *mut GtkAction) -> *const c_char;
17887    pub fn gtk_action_get_proxies(action: *mut GtkAction) -> *mut glib::GSList;
17888    pub fn gtk_action_get_sensitive(action: *mut GtkAction) -> gboolean;
17889    pub fn gtk_action_get_short_label(action: *mut GtkAction) -> *const c_char;
17890    pub fn gtk_action_get_stock_id(action: *mut GtkAction) -> *const c_char;
17891    pub fn gtk_action_get_tooltip(action: *mut GtkAction) -> *const c_char;
17892    pub fn gtk_action_get_visible(action: *mut GtkAction) -> gboolean;
17893    pub fn gtk_action_get_visible_horizontal(action: *mut GtkAction) -> gboolean;
17894    pub fn gtk_action_get_visible_vertical(action: *mut GtkAction) -> gboolean;
17895    pub fn gtk_action_is_sensitive(action: *mut GtkAction) -> gboolean;
17896    pub fn gtk_action_is_visible(action: *mut GtkAction) -> gboolean;
17897    pub fn gtk_action_set_accel_group(action: *mut GtkAction, accel_group: *mut GtkAccelGroup);
17898    pub fn gtk_action_set_accel_path(action: *mut GtkAction, accel_path: *const c_char);
17899    pub fn gtk_action_set_always_show_image(action: *mut GtkAction, always_show: gboolean);
17900    pub fn gtk_action_set_gicon(action: *mut GtkAction, icon: *mut gio::GIcon);
17901    pub fn gtk_action_set_icon_name(action: *mut GtkAction, icon_name: *const c_char);
17902    pub fn gtk_action_set_is_important(action: *mut GtkAction, is_important: gboolean);
17903    pub fn gtk_action_set_label(action: *mut GtkAction, label: *const c_char);
17904    pub fn gtk_action_set_sensitive(action: *mut GtkAction, sensitive: gboolean);
17905    pub fn gtk_action_set_short_label(action: *mut GtkAction, short_label: *const c_char);
17906    pub fn gtk_action_set_stock_id(action: *mut GtkAction, stock_id: *const c_char);
17907    pub fn gtk_action_set_tooltip(action: *mut GtkAction, tooltip: *const c_char);
17908    pub fn gtk_action_set_visible(action: *mut GtkAction, visible: gboolean);
17909    pub fn gtk_action_set_visible_horizontal(action: *mut GtkAction, visible_horizontal: gboolean);
17910    pub fn gtk_action_set_visible_vertical(action: *mut GtkAction, visible_vertical: gboolean);
17911    pub fn gtk_action_unblock_activate(action: *mut GtkAction);
17912
17913    //=========================================================================
17914    // GtkActionBar
17915    //=========================================================================
17916    pub fn gtk_action_bar_get_type() -> GType;
17917    pub fn gtk_action_bar_new() -> *mut GtkWidget;
17918    pub fn gtk_action_bar_get_center_widget(action_bar: *mut GtkActionBar) -> *mut GtkWidget;
17919    pub fn gtk_action_bar_pack_end(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
17920    pub fn gtk_action_bar_pack_start(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
17921    pub fn gtk_action_bar_set_center_widget(
17922        action_bar: *mut GtkActionBar,
17923        center_widget: *mut GtkWidget,
17924    );
17925
17926    //=========================================================================
17927    // GtkActionGroup
17928    //=========================================================================
17929    pub fn gtk_action_group_get_type() -> GType;
17930    pub fn gtk_action_group_new(name: *const c_char) -> *mut GtkActionGroup;
17931    pub fn gtk_action_group_add_action(action_group: *mut GtkActionGroup, action: *mut GtkAction);
17932    pub fn gtk_action_group_add_action_with_accel(
17933        action_group: *mut GtkActionGroup,
17934        action: *mut GtkAction,
17935        accelerator: *const c_char,
17936    );
17937    pub fn gtk_action_group_add_actions(
17938        action_group: *mut GtkActionGroup,
17939        entries: *const GtkActionEntry,
17940        n_entries: c_uint,
17941        user_data: gpointer,
17942    );
17943    pub fn gtk_action_group_add_actions_full(
17944        action_group: *mut GtkActionGroup,
17945        entries: *const GtkActionEntry,
17946        n_entries: c_uint,
17947        user_data: gpointer,
17948        destroy: glib::GDestroyNotify,
17949    );
17950    pub fn gtk_action_group_add_radio_actions(
17951        action_group: *mut GtkActionGroup,
17952        entries: *const GtkRadioActionEntry,
17953        n_entries: c_uint,
17954        value: c_int,
17955        on_change: gobject::GCallback,
17956        user_data: gpointer,
17957    );
17958    pub fn gtk_action_group_add_radio_actions_full(
17959        action_group: *mut GtkActionGroup,
17960        entries: *const GtkRadioActionEntry,
17961        n_entries: c_uint,
17962        value: c_int,
17963        on_change: gobject::GCallback,
17964        user_data: gpointer,
17965        destroy: glib::GDestroyNotify,
17966    );
17967    pub fn gtk_action_group_add_toggle_actions(
17968        action_group: *mut GtkActionGroup,
17969        entries: *const GtkToggleActionEntry,
17970        n_entries: c_uint,
17971        user_data: gpointer,
17972    );
17973    pub fn gtk_action_group_add_toggle_actions_full(
17974        action_group: *mut GtkActionGroup,
17975        entries: *const GtkToggleActionEntry,
17976        n_entries: c_uint,
17977        user_data: gpointer,
17978        destroy: glib::GDestroyNotify,
17979    );
17980    pub fn gtk_action_group_get_accel_group(
17981        action_group: *mut GtkActionGroup,
17982    ) -> *mut GtkAccelGroup;
17983    pub fn gtk_action_group_get_action(
17984        action_group: *mut GtkActionGroup,
17985        action_name: *const c_char,
17986    ) -> *mut GtkAction;
17987    pub fn gtk_action_group_get_name(action_group: *mut GtkActionGroup) -> *const c_char;
17988    pub fn gtk_action_group_get_sensitive(action_group: *mut GtkActionGroup) -> gboolean;
17989    pub fn gtk_action_group_get_visible(action_group: *mut GtkActionGroup) -> gboolean;
17990    pub fn gtk_action_group_list_actions(action_group: *mut GtkActionGroup) -> *mut glib::GList;
17991    pub fn gtk_action_group_remove_action(
17992        action_group: *mut GtkActionGroup,
17993        action: *mut GtkAction,
17994    );
17995    pub fn gtk_action_group_set_accel_group(
17996        action_group: *mut GtkActionGroup,
17997        accel_group: *mut GtkAccelGroup,
17998    );
17999    pub fn gtk_action_group_set_sensitive(action_group: *mut GtkActionGroup, sensitive: gboolean);
18000    pub fn gtk_action_group_set_translate_func(
18001        action_group: *mut GtkActionGroup,
18002        func: GtkTranslateFunc,
18003        data: gpointer,
18004        notify: glib::GDestroyNotify,
18005    );
18006    pub fn gtk_action_group_set_translation_domain(
18007        action_group: *mut GtkActionGroup,
18008        domain: *const c_char,
18009    );
18010    pub fn gtk_action_group_set_visible(action_group: *mut GtkActionGroup, visible: gboolean);
18011    pub fn gtk_action_group_translate_string(
18012        action_group: *mut GtkActionGroup,
18013        string: *const c_char,
18014    ) -> *const c_char;
18015
18016    //=========================================================================
18017    // GtkAdjustment
18018    //=========================================================================
18019    pub fn gtk_adjustment_get_type() -> GType;
18020    pub fn gtk_adjustment_new(
18021        value: c_double,
18022        lower: c_double,
18023        upper: c_double,
18024        step_increment: c_double,
18025        page_increment: c_double,
18026        page_size: c_double,
18027    ) -> *mut GtkAdjustment;
18028    pub fn gtk_adjustment_changed(adjustment: *mut GtkAdjustment);
18029    pub fn gtk_adjustment_clamp_page(
18030        adjustment: *mut GtkAdjustment,
18031        lower: c_double,
18032        upper: c_double,
18033    );
18034    pub fn gtk_adjustment_configure(
18035        adjustment: *mut GtkAdjustment,
18036        value: c_double,
18037        lower: c_double,
18038        upper: c_double,
18039        step_increment: c_double,
18040        page_increment: c_double,
18041        page_size: c_double,
18042    );
18043    pub fn gtk_adjustment_get_lower(adjustment: *mut GtkAdjustment) -> c_double;
18044    pub fn gtk_adjustment_get_minimum_increment(adjustment: *mut GtkAdjustment) -> c_double;
18045    pub fn gtk_adjustment_get_page_increment(adjustment: *mut GtkAdjustment) -> c_double;
18046    pub fn gtk_adjustment_get_page_size(adjustment: *mut GtkAdjustment) -> c_double;
18047    pub fn gtk_adjustment_get_step_increment(adjustment: *mut GtkAdjustment) -> c_double;
18048    pub fn gtk_adjustment_get_upper(adjustment: *mut GtkAdjustment) -> c_double;
18049    pub fn gtk_adjustment_get_value(adjustment: *mut GtkAdjustment) -> c_double;
18050    pub fn gtk_adjustment_set_lower(adjustment: *mut GtkAdjustment, lower: c_double);
18051    pub fn gtk_adjustment_set_page_increment(
18052        adjustment: *mut GtkAdjustment,
18053        page_increment: c_double,
18054    );
18055    pub fn gtk_adjustment_set_page_size(adjustment: *mut GtkAdjustment, page_size: c_double);
18056    pub fn gtk_adjustment_set_step_increment(
18057        adjustment: *mut GtkAdjustment,
18058        step_increment: c_double,
18059    );
18060    pub fn gtk_adjustment_set_upper(adjustment: *mut GtkAdjustment, upper: c_double);
18061    pub fn gtk_adjustment_set_value(adjustment: *mut GtkAdjustment, value: c_double);
18062    pub fn gtk_adjustment_value_changed(adjustment: *mut GtkAdjustment);
18063
18064    //=========================================================================
18065    // GtkAlignment
18066    //=========================================================================
18067    pub fn gtk_alignment_get_type() -> GType;
18068    pub fn gtk_alignment_new(
18069        xalign: c_float,
18070        yalign: c_float,
18071        xscale: c_float,
18072        yscale: c_float,
18073    ) -> *mut GtkWidget;
18074    pub fn gtk_alignment_get_padding(
18075        alignment: *mut GtkAlignment,
18076        padding_top: *mut c_uint,
18077        padding_bottom: *mut c_uint,
18078        padding_left: *mut c_uint,
18079        padding_right: *mut c_uint,
18080    );
18081    pub fn gtk_alignment_set(
18082        alignment: *mut GtkAlignment,
18083        xalign: c_float,
18084        yalign: c_float,
18085        xscale: c_float,
18086        yscale: c_float,
18087    );
18088    pub fn gtk_alignment_set_padding(
18089        alignment: *mut GtkAlignment,
18090        padding_top: c_uint,
18091        padding_bottom: c_uint,
18092        padding_left: c_uint,
18093        padding_right: c_uint,
18094    );
18095
18096    //=========================================================================
18097    // GtkAppChooserButton
18098    //=========================================================================
18099    pub fn gtk_app_chooser_button_get_type() -> GType;
18100    pub fn gtk_app_chooser_button_new(content_type: *const c_char) -> *mut GtkWidget;
18101    pub fn gtk_app_chooser_button_append_custom_item(
18102        self_: *mut GtkAppChooserButton,
18103        name: *const c_char,
18104        label: *const c_char,
18105        icon: *mut gio::GIcon,
18106    );
18107    pub fn gtk_app_chooser_button_append_separator(self_: *mut GtkAppChooserButton);
18108    pub fn gtk_app_chooser_button_get_heading(self_: *mut GtkAppChooserButton) -> *const c_char;
18109    pub fn gtk_app_chooser_button_get_show_default_item(
18110        self_: *mut GtkAppChooserButton,
18111    ) -> gboolean;
18112    pub fn gtk_app_chooser_button_get_show_dialog_item(self_: *mut GtkAppChooserButton)
18113    -> gboolean;
18114    pub fn gtk_app_chooser_button_set_active_custom_item(
18115        self_: *mut GtkAppChooserButton,
18116        name: *const c_char,
18117    );
18118    pub fn gtk_app_chooser_button_set_heading(
18119        self_: *mut GtkAppChooserButton,
18120        heading: *const c_char,
18121    );
18122    pub fn gtk_app_chooser_button_set_show_default_item(
18123        self_: *mut GtkAppChooserButton,
18124        setting: gboolean,
18125    );
18126    pub fn gtk_app_chooser_button_set_show_dialog_item(
18127        self_: *mut GtkAppChooserButton,
18128        setting: gboolean,
18129    );
18130
18131    //=========================================================================
18132    // GtkAppChooserDialog
18133    //=========================================================================
18134    pub fn gtk_app_chooser_dialog_get_type() -> GType;
18135    pub fn gtk_app_chooser_dialog_new(
18136        parent: *mut GtkWindow,
18137        flags: GtkDialogFlags,
18138        file: *mut gio::GFile,
18139    ) -> *mut GtkWidget;
18140    pub fn gtk_app_chooser_dialog_new_for_content_type(
18141        parent: *mut GtkWindow,
18142        flags: GtkDialogFlags,
18143        content_type: *const c_char,
18144    ) -> *mut GtkWidget;
18145    pub fn gtk_app_chooser_dialog_get_heading(self_: *mut GtkAppChooserDialog) -> *const c_char;
18146    pub fn gtk_app_chooser_dialog_get_widget(self_: *mut GtkAppChooserDialog) -> *mut GtkWidget;
18147    pub fn gtk_app_chooser_dialog_set_heading(
18148        self_: *mut GtkAppChooserDialog,
18149        heading: *const c_char,
18150    );
18151
18152    //=========================================================================
18153    // GtkAppChooserWidget
18154    //=========================================================================
18155    pub fn gtk_app_chooser_widget_get_type() -> GType;
18156    pub fn gtk_app_chooser_widget_new(content_type: *const c_char) -> *mut GtkWidget;
18157    pub fn gtk_app_chooser_widget_get_default_text(
18158        self_: *mut GtkAppChooserWidget,
18159    ) -> *const c_char;
18160    pub fn gtk_app_chooser_widget_get_show_all(self_: *mut GtkAppChooserWidget) -> gboolean;
18161    pub fn gtk_app_chooser_widget_get_show_default(self_: *mut GtkAppChooserWidget) -> gboolean;
18162    pub fn gtk_app_chooser_widget_get_show_fallback(self_: *mut GtkAppChooserWidget) -> gboolean;
18163    pub fn gtk_app_chooser_widget_get_show_other(self_: *mut GtkAppChooserWidget) -> gboolean;
18164    pub fn gtk_app_chooser_widget_get_show_recommended(self_: *mut GtkAppChooserWidget)
18165    -> gboolean;
18166    pub fn gtk_app_chooser_widget_set_default_text(
18167        self_: *mut GtkAppChooserWidget,
18168        text: *const c_char,
18169    );
18170    pub fn gtk_app_chooser_widget_set_show_all(self_: *mut GtkAppChooserWidget, setting: gboolean);
18171    pub fn gtk_app_chooser_widget_set_show_default(
18172        self_: *mut GtkAppChooserWidget,
18173        setting: gboolean,
18174    );
18175    pub fn gtk_app_chooser_widget_set_show_fallback(
18176        self_: *mut GtkAppChooserWidget,
18177        setting: gboolean,
18178    );
18179    pub fn gtk_app_chooser_widget_set_show_other(
18180        self_: *mut GtkAppChooserWidget,
18181        setting: gboolean,
18182    );
18183    pub fn gtk_app_chooser_widget_set_show_recommended(
18184        self_: *mut GtkAppChooserWidget,
18185        setting: gboolean,
18186    );
18187
18188    //=========================================================================
18189    // GtkApplication
18190    //=========================================================================
18191    pub fn gtk_application_get_type() -> GType;
18192    pub fn gtk_application_new(
18193        application_id: *const c_char,
18194        flags: gio::GApplicationFlags,
18195    ) -> *mut GtkApplication;
18196    pub fn gtk_application_add_accelerator(
18197        application: *mut GtkApplication,
18198        accelerator: *const c_char,
18199        action_name: *const c_char,
18200        parameter: *mut glib::GVariant,
18201    );
18202    pub fn gtk_application_add_window(application: *mut GtkApplication, window: *mut GtkWindow);
18203    pub fn gtk_application_get_accels_for_action(
18204        application: *mut GtkApplication,
18205        detailed_action_name: *const c_char,
18206    ) -> *mut *mut c_char;
18207    pub fn gtk_application_get_actions_for_accel(
18208        application: *mut GtkApplication,
18209        accel: *const c_char,
18210    ) -> *mut *mut c_char;
18211    pub fn gtk_application_get_active_window(application: *mut GtkApplication) -> *mut GtkWindow;
18212    pub fn gtk_application_get_app_menu(application: *mut GtkApplication) -> *mut gio::GMenuModel;
18213    pub fn gtk_application_get_menu_by_id(
18214        application: *mut GtkApplication,
18215        id: *const c_char,
18216    ) -> *mut gio::GMenu;
18217    pub fn gtk_application_get_menubar(application: *mut GtkApplication) -> *mut gio::GMenuModel;
18218    pub fn gtk_application_get_window_by_id(
18219        application: *mut GtkApplication,
18220        id: c_uint,
18221    ) -> *mut GtkWindow;
18222    pub fn gtk_application_get_windows(application: *mut GtkApplication) -> *mut glib::GList;
18223    pub fn gtk_application_inhibit(
18224        application: *mut GtkApplication,
18225        window: *mut GtkWindow,
18226        flags: GtkApplicationInhibitFlags,
18227        reason: *const c_char,
18228    ) -> c_uint;
18229    pub fn gtk_application_is_inhibited(
18230        application: *mut GtkApplication,
18231        flags: GtkApplicationInhibitFlags,
18232    ) -> gboolean;
18233    pub fn gtk_application_list_action_descriptions(
18234        application: *mut GtkApplication,
18235    ) -> *mut *mut c_char;
18236    pub fn gtk_application_prefers_app_menu(application: *mut GtkApplication) -> gboolean;
18237    pub fn gtk_application_remove_accelerator(
18238        application: *mut GtkApplication,
18239        action_name: *const c_char,
18240        parameter: *mut glib::GVariant,
18241    );
18242    pub fn gtk_application_remove_window(application: *mut GtkApplication, window: *mut GtkWindow);
18243    pub fn gtk_application_set_accels_for_action(
18244        application: *mut GtkApplication,
18245        detailed_action_name: *const c_char,
18246        accels: *const *const c_char,
18247    );
18248    pub fn gtk_application_set_app_menu(
18249        application: *mut GtkApplication,
18250        app_menu: *mut gio::GMenuModel,
18251    );
18252    pub fn gtk_application_set_menubar(
18253        application: *mut GtkApplication,
18254        menubar: *mut gio::GMenuModel,
18255    );
18256    pub fn gtk_application_uninhibit(application: *mut GtkApplication, cookie: c_uint);
18257
18258    //=========================================================================
18259    // GtkApplicationWindow
18260    //=========================================================================
18261    pub fn gtk_application_window_get_type() -> GType;
18262    pub fn gtk_application_window_new(application: *mut GtkApplication) -> *mut GtkWidget;
18263    pub fn gtk_application_window_get_help_overlay(
18264        window: *mut GtkApplicationWindow,
18265    ) -> *mut GtkShortcutsWindow;
18266    pub fn gtk_application_window_get_id(window: *mut GtkApplicationWindow) -> c_uint;
18267    pub fn gtk_application_window_get_show_menubar(window: *mut GtkApplicationWindow) -> gboolean;
18268    pub fn gtk_application_window_set_help_overlay(
18269        window: *mut GtkApplicationWindow,
18270        help_overlay: *mut GtkShortcutsWindow,
18271    );
18272    pub fn gtk_application_window_set_show_menubar(
18273        window: *mut GtkApplicationWindow,
18274        show_menubar: gboolean,
18275    );
18276
18277    //=========================================================================
18278    // GtkArrow
18279    //=========================================================================
18280    pub fn gtk_arrow_get_type() -> GType;
18281    pub fn gtk_arrow_new(arrow_type: GtkArrowType, shadow_type: GtkShadowType) -> *mut GtkWidget;
18282    pub fn gtk_arrow_set(
18283        arrow: *mut GtkArrow,
18284        arrow_type: GtkArrowType,
18285        shadow_type: GtkShadowType,
18286    );
18287
18288    //=========================================================================
18289    // GtkArrowAccessible
18290    //=========================================================================
18291    pub fn gtk_arrow_accessible_get_type() -> GType;
18292
18293    //=========================================================================
18294    // GtkAspectFrame
18295    //=========================================================================
18296    pub fn gtk_aspect_frame_get_type() -> GType;
18297    pub fn gtk_aspect_frame_new(
18298        label: *const c_char,
18299        xalign: c_float,
18300        yalign: c_float,
18301        ratio: c_float,
18302        obey_child: gboolean,
18303    ) -> *mut GtkWidget;
18304    pub fn gtk_aspect_frame_set(
18305        aspect_frame: *mut GtkAspectFrame,
18306        xalign: c_float,
18307        yalign: c_float,
18308        ratio: c_float,
18309        obey_child: gboolean,
18310    );
18311
18312    //=========================================================================
18313    // GtkAssistant
18314    //=========================================================================
18315    pub fn gtk_assistant_get_type() -> GType;
18316    pub fn gtk_assistant_new() -> *mut GtkWidget;
18317    pub fn gtk_assistant_add_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
18318    pub fn gtk_assistant_append_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
18319    pub fn gtk_assistant_commit(assistant: *mut GtkAssistant);
18320    pub fn gtk_assistant_get_current_page(assistant: *mut GtkAssistant) -> c_int;
18321    pub fn gtk_assistant_get_n_pages(assistant: *mut GtkAssistant) -> c_int;
18322    pub fn gtk_assistant_get_nth_page(
18323        assistant: *mut GtkAssistant,
18324        page_num: c_int,
18325    ) -> *mut GtkWidget;
18326    pub fn gtk_assistant_get_page_complete(
18327        assistant: *mut GtkAssistant,
18328        page: *mut GtkWidget,
18329    ) -> gboolean;
18330    pub fn gtk_assistant_get_page_has_padding(
18331        assistant: *mut GtkAssistant,
18332        page: *mut GtkWidget,
18333    ) -> gboolean;
18334    pub fn gtk_assistant_get_page_header_image(
18335        assistant: *mut GtkAssistant,
18336        page: *mut GtkWidget,
18337    ) -> *mut gdk_pixbuf::GdkPixbuf;
18338    pub fn gtk_assistant_get_page_side_image(
18339        assistant: *mut GtkAssistant,
18340        page: *mut GtkWidget,
18341    ) -> *mut gdk_pixbuf::GdkPixbuf;
18342    pub fn gtk_assistant_get_page_title(
18343        assistant: *mut GtkAssistant,
18344        page: *mut GtkWidget,
18345    ) -> *const c_char;
18346    pub fn gtk_assistant_get_page_type(
18347        assistant: *mut GtkAssistant,
18348        page: *mut GtkWidget,
18349    ) -> GtkAssistantPageType;
18350    pub fn gtk_assistant_insert_page(
18351        assistant: *mut GtkAssistant,
18352        page: *mut GtkWidget,
18353        position: c_int,
18354    ) -> c_int;
18355    pub fn gtk_assistant_next_page(assistant: *mut GtkAssistant);
18356    pub fn gtk_assistant_prepend_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
18357    pub fn gtk_assistant_previous_page(assistant: *mut GtkAssistant);
18358    pub fn gtk_assistant_remove_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
18359    pub fn gtk_assistant_remove_page(assistant: *mut GtkAssistant, page_num: c_int);
18360    pub fn gtk_assistant_set_current_page(assistant: *mut GtkAssistant, page_num: c_int);
18361    pub fn gtk_assistant_set_forward_page_func(
18362        assistant: *mut GtkAssistant,
18363        page_func: GtkAssistantPageFunc,
18364        data: gpointer,
18365        destroy: glib::GDestroyNotify,
18366    );
18367    pub fn gtk_assistant_set_page_complete(
18368        assistant: *mut GtkAssistant,
18369        page: *mut GtkWidget,
18370        complete: gboolean,
18371    );
18372    pub fn gtk_assistant_set_page_has_padding(
18373        assistant: *mut GtkAssistant,
18374        page: *mut GtkWidget,
18375        has_padding: gboolean,
18376    );
18377    pub fn gtk_assistant_set_page_header_image(
18378        assistant: *mut GtkAssistant,
18379        page: *mut GtkWidget,
18380        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
18381    );
18382    pub fn gtk_assistant_set_page_side_image(
18383        assistant: *mut GtkAssistant,
18384        page: *mut GtkWidget,
18385        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
18386    );
18387    pub fn gtk_assistant_set_page_title(
18388        assistant: *mut GtkAssistant,
18389        page: *mut GtkWidget,
18390        title: *const c_char,
18391    );
18392    pub fn gtk_assistant_set_page_type(
18393        assistant: *mut GtkAssistant,
18394        page: *mut GtkWidget,
18395        type_: GtkAssistantPageType,
18396    );
18397    pub fn gtk_assistant_update_buttons_state(assistant: *mut GtkAssistant);
18398
18399    //=========================================================================
18400    // GtkBin
18401    //=========================================================================
18402    pub fn gtk_bin_get_type() -> GType;
18403    pub fn gtk_bin_get_child(bin: *mut GtkBin) -> *mut GtkWidget;
18404
18405    //=========================================================================
18406    // GtkBooleanCellAccessible
18407    //=========================================================================
18408    pub fn gtk_boolean_cell_accessible_get_type() -> GType;
18409
18410    //=========================================================================
18411    // GtkBox
18412    //=========================================================================
18413    pub fn gtk_box_get_type() -> GType;
18414    pub fn gtk_box_new(orientation: GtkOrientation, spacing: c_int) -> *mut GtkWidget;
18415    pub fn gtk_box_get_baseline_position(box_: *mut GtkBox) -> GtkBaselinePosition;
18416    pub fn gtk_box_get_center_widget(box_: *mut GtkBox) -> *mut GtkWidget;
18417    pub fn gtk_box_get_homogeneous(box_: *mut GtkBox) -> gboolean;
18418    pub fn gtk_box_get_spacing(box_: *mut GtkBox) -> c_int;
18419    pub fn gtk_box_pack_end(
18420        box_: *mut GtkBox,
18421        child: *mut GtkWidget,
18422        expand: gboolean,
18423        fill: gboolean,
18424        padding: c_uint,
18425    );
18426    pub fn gtk_box_pack_start(
18427        box_: *mut GtkBox,
18428        child: *mut GtkWidget,
18429        expand: gboolean,
18430        fill: gboolean,
18431        padding: c_uint,
18432    );
18433    pub fn gtk_box_query_child_packing(
18434        box_: *mut GtkBox,
18435        child: *mut GtkWidget,
18436        expand: *mut gboolean,
18437        fill: *mut gboolean,
18438        padding: *mut c_uint,
18439        pack_type: *mut GtkPackType,
18440    );
18441    pub fn gtk_box_reorder_child(box_: *mut GtkBox, child: *mut GtkWidget, position: c_int);
18442    pub fn gtk_box_set_baseline_position(box_: *mut GtkBox, position: GtkBaselinePosition);
18443    pub fn gtk_box_set_center_widget(box_: *mut GtkBox, widget: *mut GtkWidget);
18444    pub fn gtk_box_set_child_packing(
18445        box_: *mut GtkBox,
18446        child: *mut GtkWidget,
18447        expand: gboolean,
18448        fill: gboolean,
18449        padding: c_uint,
18450        pack_type: GtkPackType,
18451    );
18452    pub fn gtk_box_set_homogeneous(box_: *mut GtkBox, homogeneous: gboolean);
18453    pub fn gtk_box_set_spacing(box_: *mut GtkBox, spacing: c_int);
18454
18455    //=========================================================================
18456    // GtkBuilder
18457    //=========================================================================
18458    pub fn gtk_builder_get_type() -> GType;
18459    pub fn gtk_builder_new() -> *mut GtkBuilder;
18460    pub fn gtk_builder_new_from_file(filename: *const c_char) -> *mut GtkBuilder;
18461    pub fn gtk_builder_new_from_resource(resource_path: *const c_char) -> *mut GtkBuilder;
18462    pub fn gtk_builder_new_from_string(string: *const c_char, length: ssize_t) -> *mut GtkBuilder;
18463    pub fn gtk_builder_add_callback_symbol(
18464        builder: *mut GtkBuilder,
18465        callback_name: *const c_char,
18466        callback_symbol: gobject::GCallback,
18467    );
18468    pub fn gtk_builder_add_callback_symbols(
18469        builder: *mut GtkBuilder,
18470        first_callback_name: *const c_char,
18471        first_callback_symbol: gobject::GCallback,
18472        ...
18473    );
18474    pub fn gtk_builder_add_from_file(
18475        builder: *mut GtkBuilder,
18476        filename: *const c_char,
18477        error: *mut *mut glib::GError,
18478    ) -> c_uint;
18479    pub fn gtk_builder_add_from_resource(
18480        builder: *mut GtkBuilder,
18481        resource_path: *const c_char,
18482        error: *mut *mut glib::GError,
18483    ) -> c_uint;
18484    pub fn gtk_builder_add_from_string(
18485        builder: *mut GtkBuilder,
18486        buffer: *const c_char,
18487        length: size_t,
18488        error: *mut *mut glib::GError,
18489    ) -> c_uint;
18490    pub fn gtk_builder_add_objects_from_file(
18491        builder: *mut GtkBuilder,
18492        filename: *const c_char,
18493        object_ids: *mut *mut c_char,
18494        error: *mut *mut glib::GError,
18495    ) -> c_uint;
18496    pub fn gtk_builder_add_objects_from_resource(
18497        builder: *mut GtkBuilder,
18498        resource_path: *const c_char,
18499        object_ids: *mut *mut c_char,
18500        error: *mut *mut glib::GError,
18501    ) -> c_uint;
18502    pub fn gtk_builder_add_objects_from_string(
18503        builder: *mut GtkBuilder,
18504        buffer: *const c_char,
18505        length: size_t,
18506        object_ids: *mut *mut c_char,
18507        error: *mut *mut glib::GError,
18508    ) -> c_uint;
18509    pub fn gtk_builder_connect_signals(builder: *mut GtkBuilder, user_data: gpointer);
18510    pub fn gtk_builder_connect_signals_full(
18511        builder: *mut GtkBuilder,
18512        func: GtkBuilderConnectFunc,
18513        user_data: gpointer,
18514    );
18515    pub fn gtk_builder_expose_object(
18516        builder: *mut GtkBuilder,
18517        name: *const c_char,
18518        object: *mut gobject::GObject,
18519    );
18520    pub fn gtk_builder_extend_with_template(
18521        builder: *mut GtkBuilder,
18522        widget: *mut GtkWidget,
18523        template_type: GType,
18524        buffer: *const c_char,
18525        length: size_t,
18526        error: *mut *mut glib::GError,
18527    ) -> c_uint;
18528    pub fn gtk_builder_get_application(builder: *mut GtkBuilder) -> *mut GtkApplication;
18529    pub fn gtk_builder_get_object(
18530        builder: *mut GtkBuilder,
18531        name: *const c_char,
18532    ) -> *mut gobject::GObject;
18533    pub fn gtk_builder_get_objects(builder: *mut GtkBuilder) -> *mut glib::GSList;
18534    pub fn gtk_builder_get_translation_domain(builder: *mut GtkBuilder) -> *const c_char;
18535    pub fn gtk_builder_get_type_from_name(
18536        builder: *mut GtkBuilder,
18537        type_name: *const c_char,
18538    ) -> GType;
18539    pub fn gtk_builder_lookup_callback_symbol(
18540        builder: *mut GtkBuilder,
18541        callback_name: *const c_char,
18542    ) -> gobject::GCallback;
18543    pub fn gtk_builder_set_application(builder: *mut GtkBuilder, application: *mut GtkApplication);
18544    pub fn gtk_builder_set_translation_domain(builder: *mut GtkBuilder, domain: *const c_char);
18545    pub fn gtk_builder_value_from_string(
18546        builder: *mut GtkBuilder,
18547        pspec: *mut gobject::GParamSpec,
18548        string: *const c_char,
18549        value: *mut gobject::GValue,
18550        error: *mut *mut glib::GError,
18551    ) -> gboolean;
18552    pub fn gtk_builder_value_from_string_type(
18553        builder: *mut GtkBuilder,
18554        type_: GType,
18555        string: *const c_char,
18556        value: *mut gobject::GValue,
18557        error: *mut *mut glib::GError,
18558    ) -> gboolean;
18559
18560    //=========================================================================
18561    // GtkButton
18562    //=========================================================================
18563    pub fn gtk_button_get_type() -> GType;
18564    pub fn gtk_button_new() -> *mut GtkWidget;
18565    pub fn gtk_button_new_from_icon_name(
18566        icon_name: *const c_char,
18567        size: GtkIconSize,
18568    ) -> *mut GtkWidget;
18569    pub fn gtk_button_new_from_stock(stock_id: *const c_char) -> *mut GtkWidget;
18570    pub fn gtk_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
18571    pub fn gtk_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
18572    pub fn gtk_button_clicked(button: *mut GtkButton);
18573    pub fn gtk_button_enter(button: *mut GtkButton);
18574    pub fn gtk_button_get_alignment(
18575        button: *mut GtkButton,
18576        xalign: *mut c_float,
18577        yalign: *mut c_float,
18578    );
18579    pub fn gtk_button_get_always_show_image(button: *mut GtkButton) -> gboolean;
18580    pub fn gtk_button_get_event_window(button: *mut GtkButton) -> *mut gdk::GdkWindow;
18581    pub fn gtk_button_get_focus_on_click(button: *mut GtkButton) -> gboolean;
18582    pub fn gtk_button_get_image(button: *mut GtkButton) -> *mut GtkWidget;
18583    pub fn gtk_button_get_image_position(button: *mut GtkButton) -> GtkPositionType;
18584    pub fn gtk_button_get_label(button: *mut GtkButton) -> *const c_char;
18585    pub fn gtk_button_get_relief(button: *mut GtkButton) -> GtkReliefStyle;
18586    pub fn gtk_button_get_use_stock(button: *mut GtkButton) -> gboolean;
18587    pub fn gtk_button_get_use_underline(button: *mut GtkButton) -> gboolean;
18588    pub fn gtk_button_leave(button: *mut GtkButton);
18589    pub fn gtk_button_pressed(button: *mut GtkButton);
18590    pub fn gtk_button_released(button: *mut GtkButton);
18591    pub fn gtk_button_set_alignment(button: *mut GtkButton, xalign: c_float, yalign: c_float);
18592    pub fn gtk_button_set_always_show_image(button: *mut GtkButton, always_show: gboolean);
18593    pub fn gtk_button_set_focus_on_click(button: *mut GtkButton, focus_on_click: gboolean);
18594    pub fn gtk_button_set_image(button: *mut GtkButton, image: *mut GtkWidget);
18595    pub fn gtk_button_set_image_position(button: *mut GtkButton, position: GtkPositionType);
18596    pub fn gtk_button_set_label(button: *mut GtkButton, label: *const c_char);
18597    pub fn gtk_button_set_relief(button: *mut GtkButton, relief: GtkReliefStyle);
18598    pub fn gtk_button_set_use_stock(button: *mut GtkButton, use_stock: gboolean);
18599    pub fn gtk_button_set_use_underline(button: *mut GtkButton, use_underline: gboolean);
18600
18601    //=========================================================================
18602    // GtkButtonAccessible
18603    //=========================================================================
18604    pub fn gtk_button_accessible_get_type() -> GType;
18605
18606    //=========================================================================
18607    // GtkButtonBox
18608    //=========================================================================
18609    pub fn gtk_button_box_get_type() -> GType;
18610    pub fn gtk_button_box_new(orientation: GtkOrientation) -> *mut GtkWidget;
18611    pub fn gtk_button_box_get_child_non_homogeneous(
18612        widget: *mut GtkButtonBox,
18613        child: *mut GtkWidget,
18614    ) -> gboolean;
18615    pub fn gtk_button_box_get_child_secondary(
18616        widget: *mut GtkButtonBox,
18617        child: *mut GtkWidget,
18618    ) -> gboolean;
18619    pub fn gtk_button_box_get_layout(widget: *mut GtkButtonBox) -> GtkButtonBoxStyle;
18620    pub fn gtk_button_box_set_child_non_homogeneous(
18621        widget: *mut GtkButtonBox,
18622        child: *mut GtkWidget,
18623        non_homogeneous: gboolean,
18624    );
18625    pub fn gtk_button_box_set_child_secondary(
18626        widget: *mut GtkButtonBox,
18627        child: *mut GtkWidget,
18628        is_secondary: gboolean,
18629    );
18630    pub fn gtk_button_box_set_layout(widget: *mut GtkButtonBox, layout_style: GtkButtonBoxStyle);
18631
18632    //=========================================================================
18633    // GtkCalendar
18634    //=========================================================================
18635    pub fn gtk_calendar_get_type() -> GType;
18636    pub fn gtk_calendar_new() -> *mut GtkWidget;
18637    pub fn gtk_calendar_clear_marks(calendar: *mut GtkCalendar);
18638    pub fn gtk_calendar_get_date(
18639        calendar: *mut GtkCalendar,
18640        year: *mut c_uint,
18641        month: *mut c_uint,
18642        day: *mut c_uint,
18643    );
18644    pub fn gtk_calendar_get_day_is_marked(calendar: *mut GtkCalendar, day: c_uint) -> gboolean;
18645    pub fn gtk_calendar_get_detail_height_rows(calendar: *mut GtkCalendar) -> c_int;
18646    pub fn gtk_calendar_get_detail_width_chars(calendar: *mut GtkCalendar) -> c_int;
18647    pub fn gtk_calendar_get_display_options(
18648        calendar: *mut GtkCalendar,
18649    ) -> GtkCalendarDisplayOptions;
18650    pub fn gtk_calendar_mark_day(calendar: *mut GtkCalendar, day: c_uint);
18651    pub fn gtk_calendar_select_day(calendar: *mut GtkCalendar, day: c_uint);
18652    pub fn gtk_calendar_select_month(calendar: *mut GtkCalendar, month: c_uint, year: c_uint);
18653    pub fn gtk_calendar_set_detail_func(
18654        calendar: *mut GtkCalendar,
18655        func: GtkCalendarDetailFunc,
18656        data: gpointer,
18657        destroy: glib::GDestroyNotify,
18658    );
18659    pub fn gtk_calendar_set_detail_height_rows(calendar: *mut GtkCalendar, rows: c_int);
18660    pub fn gtk_calendar_set_detail_width_chars(calendar: *mut GtkCalendar, chars: c_int);
18661    pub fn gtk_calendar_set_display_options(
18662        calendar: *mut GtkCalendar,
18663        flags: GtkCalendarDisplayOptions,
18664    );
18665    pub fn gtk_calendar_unmark_day(calendar: *mut GtkCalendar, day: c_uint);
18666
18667    //=========================================================================
18668    // GtkCellAccessible
18669    //=========================================================================
18670    pub fn gtk_cell_accessible_get_type() -> GType;
18671
18672    //=========================================================================
18673    // GtkCellArea
18674    //=========================================================================
18675    pub fn gtk_cell_area_get_type() -> GType;
18676    pub fn gtk_cell_area_activate(
18677        area: *mut GtkCellArea,
18678        context: *mut GtkCellAreaContext,
18679        widget: *mut GtkWidget,
18680        cell_area: *const gdk::GdkRectangle,
18681        flags: GtkCellRendererState,
18682        edit_only: gboolean,
18683    ) -> gboolean;
18684    pub fn gtk_cell_area_activate_cell(
18685        area: *mut GtkCellArea,
18686        widget: *mut GtkWidget,
18687        renderer: *mut GtkCellRenderer,
18688        event: *mut gdk::GdkEvent,
18689        cell_area: *const gdk::GdkRectangle,
18690        flags: GtkCellRendererState,
18691    ) -> gboolean;
18692    pub fn gtk_cell_area_add(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
18693    pub fn gtk_cell_area_add_focus_sibling(
18694        area: *mut GtkCellArea,
18695        renderer: *mut GtkCellRenderer,
18696        sibling: *mut GtkCellRenderer,
18697    );
18698    pub fn gtk_cell_area_add_with_properties(
18699        area: *mut GtkCellArea,
18700        renderer: *mut GtkCellRenderer,
18701        first_prop_name: *const c_char,
18702        ...
18703    );
18704    pub fn gtk_cell_area_apply_attributes(
18705        area: *mut GtkCellArea,
18706        tree_model: *mut GtkTreeModel,
18707        iter: *mut GtkTreeIter,
18708        is_expander: gboolean,
18709        is_expanded: gboolean,
18710    );
18711    pub fn gtk_cell_area_attribute_connect(
18712        area: *mut GtkCellArea,
18713        renderer: *mut GtkCellRenderer,
18714        attribute: *const c_char,
18715        column: c_int,
18716    );
18717    pub fn gtk_cell_area_attribute_disconnect(
18718        area: *mut GtkCellArea,
18719        renderer: *mut GtkCellRenderer,
18720        attribute: *const c_char,
18721    );
18722    pub fn gtk_cell_area_attribute_get_column(
18723        area: *mut GtkCellArea,
18724        renderer: *mut GtkCellRenderer,
18725        attribute: *const c_char,
18726    ) -> c_int;
18727    pub fn gtk_cell_area_cell_get(
18728        area: *mut GtkCellArea,
18729        renderer: *mut GtkCellRenderer,
18730        first_prop_name: *const c_char,
18731        ...
18732    );
18733    pub fn gtk_cell_area_cell_get_property(
18734        area: *mut GtkCellArea,
18735        renderer: *mut GtkCellRenderer,
18736        property_name: *const c_char,
18737        value: *mut gobject::GValue,
18738    );
18739    //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);
18740    pub fn gtk_cell_area_cell_set(
18741        area: *mut GtkCellArea,
18742        renderer: *mut GtkCellRenderer,
18743        first_prop_name: *const c_char,
18744        ...
18745    );
18746    pub fn gtk_cell_area_cell_set_property(
18747        area: *mut GtkCellArea,
18748        renderer: *mut GtkCellRenderer,
18749        property_name: *const c_char,
18750        value: *const gobject::GValue,
18751    );
18752    //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);
18753    pub fn gtk_cell_area_copy_context(
18754        area: *mut GtkCellArea,
18755        context: *mut GtkCellAreaContext,
18756    ) -> *mut GtkCellAreaContext;
18757    pub fn gtk_cell_area_create_context(area: *mut GtkCellArea) -> *mut GtkCellAreaContext;
18758    pub fn gtk_cell_area_event(
18759        area: *mut GtkCellArea,
18760        context: *mut GtkCellAreaContext,
18761        widget: *mut GtkWidget,
18762        event: *mut gdk::GdkEvent,
18763        cell_area: *const gdk::GdkRectangle,
18764        flags: GtkCellRendererState,
18765    ) -> c_int;
18766    pub fn gtk_cell_area_focus(area: *mut GtkCellArea, direction: GtkDirectionType) -> gboolean;
18767    pub fn gtk_cell_area_foreach(
18768        area: *mut GtkCellArea,
18769        callback: GtkCellCallback,
18770        callback_data: gpointer,
18771    );
18772    pub fn gtk_cell_area_foreach_alloc(
18773        area: *mut GtkCellArea,
18774        context: *mut GtkCellAreaContext,
18775        widget: *mut GtkWidget,
18776        cell_area: *const gdk::GdkRectangle,
18777        background_area: *const gdk::GdkRectangle,
18778        callback: GtkCellAllocCallback,
18779        callback_data: gpointer,
18780    );
18781    pub fn gtk_cell_area_get_cell_allocation(
18782        area: *mut GtkCellArea,
18783        context: *mut GtkCellAreaContext,
18784        widget: *mut GtkWidget,
18785        renderer: *mut GtkCellRenderer,
18786        cell_area: *const gdk::GdkRectangle,
18787        allocation: *mut gdk::GdkRectangle,
18788    );
18789    pub fn gtk_cell_area_get_cell_at_position(
18790        area: *mut GtkCellArea,
18791        context: *mut GtkCellAreaContext,
18792        widget: *mut GtkWidget,
18793        cell_area: *const gdk::GdkRectangle,
18794        x: c_int,
18795        y: c_int,
18796        alloc_area: *mut gdk::GdkRectangle,
18797    ) -> *mut GtkCellRenderer;
18798    pub fn gtk_cell_area_get_current_path_string(area: *mut GtkCellArea) -> *const c_char;
18799    pub fn gtk_cell_area_get_edit_widget(area: *mut GtkCellArea) -> *mut GtkCellEditable;
18800    pub fn gtk_cell_area_get_edited_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
18801    pub fn gtk_cell_area_get_focus_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
18802    pub fn gtk_cell_area_get_focus_from_sibling(
18803        area: *mut GtkCellArea,
18804        renderer: *mut GtkCellRenderer,
18805    ) -> *mut GtkCellRenderer;
18806    pub fn gtk_cell_area_get_focus_siblings(
18807        area: *mut GtkCellArea,
18808        renderer: *mut GtkCellRenderer,
18809    ) -> *const glib::GList;
18810    pub fn gtk_cell_area_get_preferred_height(
18811        area: *mut GtkCellArea,
18812        context: *mut GtkCellAreaContext,
18813        widget: *mut GtkWidget,
18814        minimum_height: *mut c_int,
18815        natural_height: *mut c_int,
18816    );
18817    pub fn gtk_cell_area_get_preferred_height_for_width(
18818        area: *mut GtkCellArea,
18819        context: *mut GtkCellAreaContext,
18820        widget: *mut GtkWidget,
18821        width: c_int,
18822        minimum_height: *mut c_int,
18823        natural_height: *mut c_int,
18824    );
18825    pub fn gtk_cell_area_get_preferred_width(
18826        area: *mut GtkCellArea,
18827        context: *mut GtkCellAreaContext,
18828        widget: *mut GtkWidget,
18829        minimum_width: *mut c_int,
18830        natural_width: *mut c_int,
18831    );
18832    pub fn gtk_cell_area_get_preferred_width_for_height(
18833        area: *mut GtkCellArea,
18834        context: *mut GtkCellAreaContext,
18835        widget: *mut GtkWidget,
18836        height: c_int,
18837        minimum_width: *mut c_int,
18838        natural_width: *mut c_int,
18839    );
18840    pub fn gtk_cell_area_get_request_mode(area: *mut GtkCellArea) -> GtkSizeRequestMode;
18841    pub fn gtk_cell_area_has_renderer(
18842        area: *mut GtkCellArea,
18843        renderer: *mut GtkCellRenderer,
18844    ) -> gboolean;
18845    pub fn gtk_cell_area_inner_cell_area(
18846        area: *mut GtkCellArea,
18847        widget: *mut GtkWidget,
18848        cell_area: *const gdk::GdkRectangle,
18849        inner_area: *mut gdk::GdkRectangle,
18850    );
18851    pub fn gtk_cell_area_is_activatable(area: *mut GtkCellArea) -> gboolean;
18852    pub fn gtk_cell_area_is_focus_sibling(
18853        area: *mut GtkCellArea,
18854        renderer: *mut GtkCellRenderer,
18855        sibling: *mut GtkCellRenderer,
18856    ) -> gboolean;
18857    pub fn gtk_cell_area_remove(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
18858    pub fn gtk_cell_area_remove_focus_sibling(
18859        area: *mut GtkCellArea,
18860        renderer: *mut GtkCellRenderer,
18861        sibling: *mut GtkCellRenderer,
18862    );
18863    pub fn gtk_cell_area_render(
18864        area: *mut GtkCellArea,
18865        context: *mut GtkCellAreaContext,
18866        widget: *mut GtkWidget,
18867        cr: *mut cairo::cairo_t,
18868        background_area: *const gdk::GdkRectangle,
18869        cell_area: *const gdk::GdkRectangle,
18870        flags: GtkCellRendererState,
18871        paint_focus: gboolean,
18872    );
18873    pub fn gtk_cell_area_request_renderer(
18874        area: *mut GtkCellArea,
18875        renderer: *mut GtkCellRenderer,
18876        orientation: GtkOrientation,
18877        widget: *mut GtkWidget,
18878        for_size: c_int,
18879        minimum_size: *mut c_int,
18880        natural_size: *mut c_int,
18881    );
18882    pub fn gtk_cell_area_set_focus_cell(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
18883    pub fn gtk_cell_area_stop_editing(area: *mut GtkCellArea, canceled: gboolean);
18884
18885    //=========================================================================
18886    // GtkCellAreaBox
18887    //=========================================================================
18888    pub fn gtk_cell_area_box_get_type() -> GType;
18889    pub fn gtk_cell_area_box_new() -> *mut GtkCellArea;
18890    pub fn gtk_cell_area_box_get_spacing(box_: *mut GtkCellAreaBox) -> c_int;
18891    pub fn gtk_cell_area_box_pack_end(
18892        box_: *mut GtkCellAreaBox,
18893        renderer: *mut GtkCellRenderer,
18894        expand: gboolean,
18895        align: gboolean,
18896        fixed: gboolean,
18897    );
18898    pub fn gtk_cell_area_box_pack_start(
18899        box_: *mut GtkCellAreaBox,
18900        renderer: *mut GtkCellRenderer,
18901        expand: gboolean,
18902        align: gboolean,
18903        fixed: gboolean,
18904    );
18905    pub fn gtk_cell_area_box_set_spacing(box_: *mut GtkCellAreaBox, spacing: c_int);
18906
18907    //=========================================================================
18908    // GtkCellAreaContext
18909    //=========================================================================
18910    pub fn gtk_cell_area_context_get_type() -> GType;
18911    pub fn gtk_cell_area_context_allocate(
18912        context: *mut GtkCellAreaContext,
18913        width: c_int,
18914        height: c_int,
18915    );
18916    pub fn gtk_cell_area_context_get_allocation(
18917        context: *mut GtkCellAreaContext,
18918        width: *mut c_int,
18919        height: *mut c_int,
18920    );
18921    pub fn gtk_cell_area_context_get_area(context: *mut GtkCellAreaContext) -> *mut GtkCellArea;
18922    pub fn gtk_cell_area_context_get_preferred_height(
18923        context: *mut GtkCellAreaContext,
18924        minimum_height: *mut c_int,
18925        natural_height: *mut c_int,
18926    );
18927    pub fn gtk_cell_area_context_get_preferred_height_for_width(
18928        context: *mut GtkCellAreaContext,
18929        width: c_int,
18930        minimum_height: *mut c_int,
18931        natural_height: *mut c_int,
18932    );
18933    pub fn gtk_cell_area_context_get_preferred_width(
18934        context: *mut GtkCellAreaContext,
18935        minimum_width: *mut c_int,
18936        natural_width: *mut c_int,
18937    );
18938    pub fn gtk_cell_area_context_get_preferred_width_for_height(
18939        context: *mut GtkCellAreaContext,
18940        height: c_int,
18941        minimum_width: *mut c_int,
18942        natural_width: *mut c_int,
18943    );
18944    pub fn gtk_cell_area_context_push_preferred_height(
18945        context: *mut GtkCellAreaContext,
18946        minimum_height: c_int,
18947        natural_height: c_int,
18948    );
18949    pub fn gtk_cell_area_context_push_preferred_width(
18950        context: *mut GtkCellAreaContext,
18951        minimum_width: c_int,
18952        natural_width: c_int,
18953    );
18954    pub fn gtk_cell_area_context_reset(context: *mut GtkCellAreaContext);
18955
18956    //=========================================================================
18957    // GtkCellRenderer
18958    //=========================================================================
18959    pub fn gtk_cell_renderer_get_type() -> GType;
18960    pub fn gtk_cell_renderer_activate(
18961        cell: *mut GtkCellRenderer,
18962        event: *mut gdk::GdkEvent,
18963        widget: *mut GtkWidget,
18964        path: *const c_char,
18965        background_area: *const gdk::GdkRectangle,
18966        cell_area: *const gdk::GdkRectangle,
18967        flags: GtkCellRendererState,
18968    ) -> gboolean;
18969    pub fn gtk_cell_renderer_get_aligned_area(
18970        cell: *mut GtkCellRenderer,
18971        widget: *mut GtkWidget,
18972        flags: GtkCellRendererState,
18973        cell_area: *const gdk::GdkRectangle,
18974        aligned_area: *mut gdk::GdkRectangle,
18975    );
18976    pub fn gtk_cell_renderer_get_alignment(
18977        cell: *mut GtkCellRenderer,
18978        xalign: *mut c_float,
18979        yalign: *mut c_float,
18980    );
18981    pub fn gtk_cell_renderer_get_fixed_size(
18982        cell: *mut GtkCellRenderer,
18983        width: *mut c_int,
18984        height: *mut c_int,
18985    );
18986    pub fn gtk_cell_renderer_get_padding(
18987        cell: *mut GtkCellRenderer,
18988        xpad: *mut c_int,
18989        ypad: *mut c_int,
18990    );
18991    pub fn gtk_cell_renderer_get_preferred_height(
18992        cell: *mut GtkCellRenderer,
18993        widget: *mut GtkWidget,
18994        minimum_size: *mut c_int,
18995        natural_size: *mut c_int,
18996    );
18997    pub fn gtk_cell_renderer_get_preferred_height_for_width(
18998        cell: *mut GtkCellRenderer,
18999        widget: *mut GtkWidget,
19000        width: c_int,
19001        minimum_height: *mut c_int,
19002        natural_height: *mut c_int,
19003    );
19004    pub fn gtk_cell_renderer_get_preferred_size(
19005        cell: *mut GtkCellRenderer,
19006        widget: *mut GtkWidget,
19007        minimum_size: *mut GtkRequisition,
19008        natural_size: *mut GtkRequisition,
19009    );
19010    pub fn gtk_cell_renderer_get_preferred_width(
19011        cell: *mut GtkCellRenderer,
19012        widget: *mut GtkWidget,
19013        minimum_size: *mut c_int,
19014        natural_size: *mut c_int,
19015    );
19016    pub fn gtk_cell_renderer_get_preferred_width_for_height(
19017        cell: *mut GtkCellRenderer,
19018        widget: *mut GtkWidget,
19019        height: c_int,
19020        minimum_width: *mut c_int,
19021        natural_width: *mut c_int,
19022    );
19023    pub fn gtk_cell_renderer_get_request_mode(cell: *mut GtkCellRenderer) -> GtkSizeRequestMode;
19024    pub fn gtk_cell_renderer_get_sensitive(cell: *mut GtkCellRenderer) -> gboolean;
19025    pub fn gtk_cell_renderer_get_size(
19026        cell: *mut GtkCellRenderer,
19027        widget: *mut GtkWidget,
19028        cell_area: *const gdk::GdkRectangle,
19029        x_offset: *mut c_int,
19030        y_offset: *mut c_int,
19031        width: *mut c_int,
19032        height: *mut c_int,
19033    );
19034    pub fn gtk_cell_renderer_get_state(
19035        cell: *mut GtkCellRenderer,
19036        widget: *mut GtkWidget,
19037        cell_state: GtkCellRendererState,
19038    ) -> GtkStateFlags;
19039    pub fn gtk_cell_renderer_get_visible(cell: *mut GtkCellRenderer) -> gboolean;
19040    pub fn gtk_cell_renderer_is_activatable(cell: *mut GtkCellRenderer) -> gboolean;
19041    pub fn gtk_cell_renderer_render(
19042        cell: *mut GtkCellRenderer,
19043        cr: *mut cairo::cairo_t,
19044        widget: *mut GtkWidget,
19045        background_area: *const gdk::GdkRectangle,
19046        cell_area: *const gdk::GdkRectangle,
19047        flags: GtkCellRendererState,
19048    );
19049    pub fn gtk_cell_renderer_set_alignment(
19050        cell: *mut GtkCellRenderer,
19051        xalign: c_float,
19052        yalign: c_float,
19053    );
19054    pub fn gtk_cell_renderer_set_fixed_size(
19055        cell: *mut GtkCellRenderer,
19056        width: c_int,
19057        height: c_int,
19058    );
19059    pub fn gtk_cell_renderer_set_padding(cell: *mut GtkCellRenderer, xpad: c_int, ypad: c_int);
19060    pub fn gtk_cell_renderer_set_sensitive(cell: *mut GtkCellRenderer, sensitive: gboolean);
19061    pub fn gtk_cell_renderer_set_visible(cell: *mut GtkCellRenderer, visible: gboolean);
19062    pub fn gtk_cell_renderer_start_editing(
19063        cell: *mut GtkCellRenderer,
19064        event: *mut gdk::GdkEvent,
19065        widget: *mut GtkWidget,
19066        path: *const c_char,
19067        background_area: *const gdk::GdkRectangle,
19068        cell_area: *const gdk::GdkRectangle,
19069        flags: GtkCellRendererState,
19070    ) -> *mut GtkCellEditable;
19071    pub fn gtk_cell_renderer_stop_editing(cell: *mut GtkCellRenderer, canceled: gboolean);
19072
19073    //=========================================================================
19074    // GtkCellRendererAccel
19075    //=========================================================================
19076    pub fn gtk_cell_renderer_accel_get_type() -> GType;
19077    pub fn gtk_cell_renderer_accel_new() -> *mut GtkCellRenderer;
19078
19079    //=========================================================================
19080    // GtkCellRendererCombo
19081    //=========================================================================
19082    pub fn gtk_cell_renderer_combo_get_type() -> GType;
19083    pub fn gtk_cell_renderer_combo_new() -> *mut GtkCellRenderer;
19084
19085    //=========================================================================
19086    // GtkCellRendererPixbuf
19087    //=========================================================================
19088    pub fn gtk_cell_renderer_pixbuf_get_type() -> GType;
19089    pub fn gtk_cell_renderer_pixbuf_new() -> *mut GtkCellRenderer;
19090
19091    //=========================================================================
19092    // GtkCellRendererProgress
19093    //=========================================================================
19094    pub fn gtk_cell_renderer_progress_get_type() -> GType;
19095    pub fn gtk_cell_renderer_progress_new() -> *mut GtkCellRenderer;
19096
19097    //=========================================================================
19098    // GtkCellRendererSpin
19099    //=========================================================================
19100    pub fn gtk_cell_renderer_spin_get_type() -> GType;
19101    pub fn gtk_cell_renderer_spin_new() -> *mut GtkCellRenderer;
19102
19103    //=========================================================================
19104    // GtkCellRendererSpinner
19105    //=========================================================================
19106    pub fn gtk_cell_renderer_spinner_get_type() -> GType;
19107    pub fn gtk_cell_renderer_spinner_new() -> *mut GtkCellRenderer;
19108
19109    //=========================================================================
19110    // GtkCellRendererText
19111    //=========================================================================
19112    pub fn gtk_cell_renderer_text_get_type() -> GType;
19113    pub fn gtk_cell_renderer_text_new() -> *mut GtkCellRenderer;
19114    pub fn gtk_cell_renderer_text_set_fixed_height_from_font(
19115        renderer: *mut GtkCellRendererText,
19116        number_of_rows: c_int,
19117    );
19118
19119    //=========================================================================
19120    // GtkCellRendererToggle
19121    //=========================================================================
19122    pub fn gtk_cell_renderer_toggle_get_type() -> GType;
19123    pub fn gtk_cell_renderer_toggle_new() -> *mut GtkCellRenderer;
19124    pub fn gtk_cell_renderer_toggle_get_activatable(toggle: *mut GtkCellRendererToggle)
19125    -> gboolean;
19126    pub fn gtk_cell_renderer_toggle_get_active(toggle: *mut GtkCellRendererToggle) -> gboolean;
19127    pub fn gtk_cell_renderer_toggle_get_radio(toggle: *mut GtkCellRendererToggle) -> gboolean;
19128    pub fn gtk_cell_renderer_toggle_set_activatable(
19129        toggle: *mut GtkCellRendererToggle,
19130        setting: gboolean,
19131    );
19132    pub fn gtk_cell_renderer_toggle_set_active(
19133        toggle: *mut GtkCellRendererToggle,
19134        setting: gboolean,
19135    );
19136    pub fn gtk_cell_renderer_toggle_set_radio(toggle: *mut GtkCellRendererToggle, radio: gboolean);
19137
19138    //=========================================================================
19139    // GtkCellView
19140    //=========================================================================
19141    pub fn gtk_cell_view_get_type() -> GType;
19142    pub fn gtk_cell_view_new() -> *mut GtkWidget;
19143    pub fn gtk_cell_view_new_with_context(
19144        area: *mut GtkCellArea,
19145        context: *mut GtkCellAreaContext,
19146    ) -> *mut GtkWidget;
19147    pub fn gtk_cell_view_new_with_markup(markup: *const c_char) -> *mut GtkWidget;
19148    pub fn gtk_cell_view_new_with_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
19149    pub fn gtk_cell_view_new_with_text(text: *const c_char) -> *mut GtkWidget;
19150    pub fn gtk_cell_view_get_displayed_row(cell_view: *mut GtkCellView) -> *mut GtkTreePath;
19151    pub fn gtk_cell_view_get_draw_sensitive(cell_view: *mut GtkCellView) -> gboolean;
19152    pub fn gtk_cell_view_get_fit_model(cell_view: *mut GtkCellView) -> gboolean;
19153    pub fn gtk_cell_view_get_model(cell_view: *mut GtkCellView) -> *mut GtkTreeModel;
19154    pub fn gtk_cell_view_get_size_of_row(
19155        cell_view: *mut GtkCellView,
19156        path: *mut GtkTreePath,
19157        requisition: *mut GtkRequisition,
19158    ) -> gboolean;
19159    pub fn gtk_cell_view_set_background_color(
19160        cell_view: *mut GtkCellView,
19161        color: *const gdk::GdkColor,
19162    );
19163    pub fn gtk_cell_view_set_background_rgba(
19164        cell_view: *mut GtkCellView,
19165        rgba: *const gdk::GdkRGBA,
19166    );
19167    pub fn gtk_cell_view_set_displayed_row(cell_view: *mut GtkCellView, path: *mut GtkTreePath);
19168    pub fn gtk_cell_view_set_draw_sensitive(cell_view: *mut GtkCellView, draw_sensitive: gboolean);
19169    pub fn gtk_cell_view_set_fit_model(cell_view: *mut GtkCellView, fit_model: gboolean);
19170    pub fn gtk_cell_view_set_model(cell_view: *mut GtkCellView, model: *mut GtkTreeModel);
19171
19172    //=========================================================================
19173    // GtkCheckButton
19174    //=========================================================================
19175    pub fn gtk_check_button_get_type() -> GType;
19176    pub fn gtk_check_button_new() -> *mut GtkWidget;
19177    pub fn gtk_check_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
19178    pub fn gtk_check_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
19179
19180    //=========================================================================
19181    // GtkCheckMenuItem
19182    //=========================================================================
19183    pub fn gtk_check_menu_item_get_type() -> GType;
19184    pub fn gtk_check_menu_item_new() -> *mut GtkWidget;
19185    pub fn gtk_check_menu_item_new_with_label(label: *const c_char) -> *mut GtkWidget;
19186    pub fn gtk_check_menu_item_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
19187    pub fn gtk_check_menu_item_get_active(check_menu_item: *mut GtkCheckMenuItem) -> gboolean;
19188    pub fn gtk_check_menu_item_get_draw_as_radio(
19189        check_menu_item: *mut GtkCheckMenuItem,
19190    ) -> gboolean;
19191    pub fn gtk_check_menu_item_get_inconsistent(check_menu_item: *mut GtkCheckMenuItem)
19192    -> gboolean;
19193    pub fn gtk_check_menu_item_set_active(
19194        check_menu_item: *mut GtkCheckMenuItem,
19195        is_active: gboolean,
19196    );
19197    pub fn gtk_check_menu_item_set_draw_as_radio(
19198        check_menu_item: *mut GtkCheckMenuItem,
19199        draw_as_radio: gboolean,
19200    );
19201    pub fn gtk_check_menu_item_set_inconsistent(
19202        check_menu_item: *mut GtkCheckMenuItem,
19203        setting: gboolean,
19204    );
19205    pub fn gtk_check_menu_item_toggled(check_menu_item: *mut GtkCheckMenuItem);
19206
19207    //=========================================================================
19208    // GtkCheckMenuItemAccessible
19209    //=========================================================================
19210    pub fn gtk_check_menu_item_accessible_get_type() -> GType;
19211
19212    //=========================================================================
19213    // GtkClipboard
19214    //=========================================================================
19215    pub fn gtk_clipboard_get_type() -> GType;
19216    pub fn gtk_clipboard_get(selection: gdk::GdkAtom) -> *mut GtkClipboard;
19217    pub fn gtk_clipboard_get_default(display: *mut gdk::GdkDisplay) -> *mut GtkClipboard;
19218    pub fn gtk_clipboard_get_for_display(
19219        display: *mut gdk::GdkDisplay,
19220        selection: gdk::GdkAtom,
19221    ) -> *mut GtkClipboard;
19222    pub fn gtk_clipboard_clear(clipboard: *mut GtkClipboard);
19223    pub fn gtk_clipboard_get_display(clipboard: *mut GtkClipboard) -> *mut gdk::GdkDisplay;
19224    pub fn gtk_clipboard_get_owner(clipboard: *mut GtkClipboard) -> *mut gobject::GObject;
19225    pub fn gtk_clipboard_get_selection(clipboard: *mut GtkClipboard) -> gdk::GdkAtom;
19226    pub fn gtk_clipboard_request_contents(
19227        clipboard: *mut GtkClipboard,
19228        target: gdk::GdkAtom,
19229        callback: GtkClipboardReceivedFunc,
19230        user_data: gpointer,
19231    );
19232    pub fn gtk_clipboard_request_image(
19233        clipboard: *mut GtkClipboard,
19234        callback: GtkClipboardImageReceivedFunc,
19235        user_data: gpointer,
19236    );
19237    pub fn gtk_clipboard_request_rich_text(
19238        clipboard: *mut GtkClipboard,
19239        buffer: *mut GtkTextBuffer,
19240        callback: GtkClipboardRichTextReceivedFunc,
19241        user_data: gpointer,
19242    );
19243    pub fn gtk_clipboard_request_targets(
19244        clipboard: *mut GtkClipboard,
19245        callback: GtkClipboardTargetsReceivedFunc,
19246        user_data: gpointer,
19247    );
19248    pub fn gtk_clipboard_request_text(
19249        clipboard: *mut GtkClipboard,
19250        callback: GtkClipboardTextReceivedFunc,
19251        user_data: gpointer,
19252    );
19253    pub fn gtk_clipboard_request_uris(
19254        clipboard: *mut GtkClipboard,
19255        callback: GtkClipboardURIReceivedFunc,
19256        user_data: gpointer,
19257    );
19258    pub fn gtk_clipboard_set_can_store(
19259        clipboard: *mut GtkClipboard,
19260        targets: *const GtkTargetEntry,
19261        n_targets: c_int,
19262    );
19263    pub fn gtk_clipboard_set_image(
19264        clipboard: *mut GtkClipboard,
19265        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
19266    );
19267    pub fn gtk_clipboard_set_text(clipboard: *mut GtkClipboard, text: *const c_char, len: c_int);
19268    pub fn gtk_clipboard_set_with_data(
19269        clipboard: *mut GtkClipboard,
19270        targets: *const GtkTargetEntry,
19271        n_targets: c_uint,
19272        get_func: GtkClipboardGetFunc,
19273        clear_func: GtkClipboardClearFunc,
19274        user_data: gpointer,
19275    ) -> gboolean;
19276    pub fn gtk_clipboard_set_with_owner(
19277        clipboard: *mut GtkClipboard,
19278        targets: *const GtkTargetEntry,
19279        n_targets: c_uint,
19280        get_func: GtkClipboardGetFunc,
19281        clear_func: GtkClipboardClearFunc,
19282        owner: *mut gobject::GObject,
19283    ) -> gboolean;
19284    pub fn gtk_clipboard_store(clipboard: *mut GtkClipboard);
19285    pub fn gtk_clipboard_wait_for_contents(
19286        clipboard: *mut GtkClipboard,
19287        target: gdk::GdkAtom,
19288    ) -> *mut GtkSelectionData;
19289    pub fn gtk_clipboard_wait_for_image(clipboard: *mut GtkClipboard)
19290    -> *mut gdk_pixbuf::GdkPixbuf;
19291    pub fn gtk_clipboard_wait_for_rich_text(
19292        clipboard: *mut GtkClipboard,
19293        buffer: *mut GtkTextBuffer,
19294        format: *mut gdk::GdkAtom,
19295        length: *mut size_t,
19296    ) -> *mut u8;
19297    pub fn gtk_clipboard_wait_for_targets(
19298        clipboard: *mut GtkClipboard,
19299        targets: *mut *mut gdk::GdkAtom,
19300        n_targets: *mut c_int,
19301    ) -> gboolean;
19302    pub fn gtk_clipboard_wait_for_text(clipboard: *mut GtkClipboard) -> *mut c_char;
19303    pub fn gtk_clipboard_wait_for_uris(clipboard: *mut GtkClipboard) -> *mut *mut c_char;
19304    pub fn gtk_clipboard_wait_is_image_available(clipboard: *mut GtkClipboard) -> gboolean;
19305    pub fn gtk_clipboard_wait_is_rich_text_available(
19306        clipboard: *mut GtkClipboard,
19307        buffer: *mut GtkTextBuffer,
19308    ) -> gboolean;
19309    pub fn gtk_clipboard_wait_is_target_available(
19310        clipboard: *mut GtkClipboard,
19311        target: gdk::GdkAtom,
19312    ) -> gboolean;
19313    pub fn gtk_clipboard_wait_is_text_available(clipboard: *mut GtkClipboard) -> gboolean;
19314    pub fn gtk_clipboard_wait_is_uris_available(clipboard: *mut GtkClipboard) -> gboolean;
19315
19316    //=========================================================================
19317    // GtkColorButton
19318    //=========================================================================
19319    pub fn gtk_color_button_get_type() -> GType;
19320    pub fn gtk_color_button_new() -> *mut GtkWidget;
19321    pub fn gtk_color_button_new_with_color(color: *const gdk::GdkColor) -> *mut GtkWidget;
19322    pub fn gtk_color_button_new_with_rgba(rgba: *const gdk::GdkRGBA) -> *mut GtkWidget;
19323    pub fn gtk_color_button_get_alpha(button: *mut GtkColorButton) -> u16;
19324    pub fn gtk_color_button_get_color(button: *mut GtkColorButton, color: *mut gdk::GdkColor);
19325    pub fn gtk_color_button_get_rgba(button: *mut GtkColorButton, rgba: *mut gdk::GdkRGBA);
19326    pub fn gtk_color_button_get_title(button: *mut GtkColorButton) -> *const c_char;
19327    pub fn gtk_color_button_get_use_alpha(button: *mut GtkColorButton) -> gboolean;
19328    pub fn gtk_color_button_set_alpha(button: *mut GtkColorButton, alpha: u16);
19329    pub fn gtk_color_button_set_color(button: *mut GtkColorButton, color: *const gdk::GdkColor);
19330    pub fn gtk_color_button_set_rgba(button: *mut GtkColorButton, rgba: *const gdk::GdkRGBA);
19331    pub fn gtk_color_button_set_title(button: *mut GtkColorButton, title: *const c_char);
19332    pub fn gtk_color_button_set_use_alpha(button: *mut GtkColorButton, use_alpha: gboolean);
19333
19334    //=========================================================================
19335    // GtkColorChooserDialog
19336    //=========================================================================
19337    pub fn gtk_color_chooser_dialog_get_type() -> GType;
19338    pub fn gtk_color_chooser_dialog_new(
19339        title: *const c_char,
19340        parent: *mut GtkWindow,
19341    ) -> *mut GtkWidget;
19342
19343    //=========================================================================
19344    // GtkColorChooserWidget
19345    //=========================================================================
19346    pub fn gtk_color_chooser_widget_get_type() -> GType;
19347    pub fn gtk_color_chooser_widget_new() -> *mut GtkWidget;
19348
19349    //=========================================================================
19350    // GtkColorSelection
19351    //=========================================================================
19352    pub fn gtk_color_selection_get_type() -> GType;
19353    pub fn gtk_color_selection_new() -> *mut GtkWidget;
19354    pub fn gtk_color_selection_palette_from_string(
19355        str: *const c_char,
19356        colors: *mut *mut gdk::GdkColor,
19357        n_colors: *mut c_int,
19358    ) -> gboolean;
19359    pub fn gtk_color_selection_palette_to_string(
19360        colors: *const gdk::GdkColor,
19361        n_colors: c_int,
19362    ) -> *mut c_char;
19363    pub fn gtk_color_selection_set_change_palette_with_screen_hook(
19364        func: GtkColorSelectionChangePaletteWithScreenFunc,
19365    ) -> GtkColorSelectionChangePaletteWithScreenFunc;
19366    pub fn gtk_color_selection_get_current_alpha(colorsel: *mut GtkColorSelection) -> u16;
19367    pub fn gtk_color_selection_get_current_color(
19368        colorsel: *mut GtkColorSelection,
19369        color: *mut gdk::GdkColor,
19370    );
19371    pub fn gtk_color_selection_get_current_rgba(
19372        colorsel: *mut GtkColorSelection,
19373        rgba: *mut gdk::GdkRGBA,
19374    );
19375    pub fn gtk_color_selection_get_has_opacity_control(
19376        colorsel: *mut GtkColorSelection,
19377    ) -> gboolean;
19378    pub fn gtk_color_selection_get_has_palette(colorsel: *mut GtkColorSelection) -> gboolean;
19379    pub fn gtk_color_selection_get_previous_alpha(colorsel: *mut GtkColorSelection) -> u16;
19380    pub fn gtk_color_selection_get_previous_color(
19381        colorsel: *mut GtkColorSelection,
19382        color: *mut gdk::GdkColor,
19383    );
19384    pub fn gtk_color_selection_get_previous_rgba(
19385        colorsel: *mut GtkColorSelection,
19386        rgba: *mut gdk::GdkRGBA,
19387    );
19388    pub fn gtk_color_selection_is_adjusting(colorsel: *mut GtkColorSelection) -> gboolean;
19389    pub fn gtk_color_selection_set_current_alpha(colorsel: *mut GtkColorSelection, alpha: u16);
19390    pub fn gtk_color_selection_set_current_color(
19391        colorsel: *mut GtkColorSelection,
19392        color: *const gdk::GdkColor,
19393    );
19394    pub fn gtk_color_selection_set_current_rgba(
19395        colorsel: *mut GtkColorSelection,
19396        rgba: *const gdk::GdkRGBA,
19397    );
19398    pub fn gtk_color_selection_set_has_opacity_control(
19399        colorsel: *mut GtkColorSelection,
19400        has_opacity: gboolean,
19401    );
19402    pub fn gtk_color_selection_set_has_palette(
19403        colorsel: *mut GtkColorSelection,
19404        has_palette: gboolean,
19405    );
19406    pub fn gtk_color_selection_set_previous_alpha(colorsel: *mut GtkColorSelection, alpha: u16);
19407    pub fn gtk_color_selection_set_previous_color(
19408        colorsel: *mut GtkColorSelection,
19409        color: *const gdk::GdkColor,
19410    );
19411    pub fn gtk_color_selection_set_previous_rgba(
19412        colorsel: *mut GtkColorSelection,
19413        rgba: *const gdk::GdkRGBA,
19414    );
19415
19416    //=========================================================================
19417    // GtkColorSelectionDialog
19418    //=========================================================================
19419    pub fn gtk_color_selection_dialog_get_type() -> GType;
19420    pub fn gtk_color_selection_dialog_new(title: *const c_char) -> *mut GtkWidget;
19421    pub fn gtk_color_selection_dialog_get_color_selection(
19422        colorsel: *mut GtkColorSelectionDialog,
19423    ) -> *mut GtkWidget;
19424
19425    //=========================================================================
19426    // GtkComboBox
19427    //=========================================================================
19428    pub fn gtk_combo_box_get_type() -> GType;
19429    pub fn gtk_combo_box_new() -> *mut GtkWidget;
19430    pub fn gtk_combo_box_new_with_area(area: *mut GtkCellArea) -> *mut GtkWidget;
19431    pub fn gtk_combo_box_new_with_area_and_entry(area: *mut GtkCellArea) -> *mut GtkWidget;
19432    pub fn gtk_combo_box_new_with_entry() -> *mut GtkWidget;
19433    pub fn gtk_combo_box_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
19434    pub fn gtk_combo_box_new_with_model_and_entry(model: *mut GtkTreeModel) -> *mut GtkWidget;
19435    pub fn gtk_combo_box_get_active(combo_box: *mut GtkComboBox) -> c_int;
19436    pub fn gtk_combo_box_get_active_id(combo_box: *mut GtkComboBox) -> *const c_char;
19437    pub fn gtk_combo_box_get_active_iter(
19438        combo_box: *mut GtkComboBox,
19439        iter: *mut GtkTreeIter,
19440    ) -> gboolean;
19441    pub fn gtk_combo_box_get_add_tearoffs(combo_box: *mut GtkComboBox) -> gboolean;
19442    pub fn gtk_combo_box_get_button_sensitivity(combo_box: *mut GtkComboBox) -> GtkSensitivityType;
19443    pub fn gtk_combo_box_get_column_span_column(combo_box: *mut GtkComboBox) -> c_int;
19444    pub fn gtk_combo_box_get_entry_text_column(combo_box: *mut GtkComboBox) -> c_int;
19445    pub fn gtk_combo_box_get_focus_on_click(combo: *mut GtkComboBox) -> gboolean;
19446    pub fn gtk_combo_box_get_has_entry(combo_box: *mut GtkComboBox) -> gboolean;
19447    pub fn gtk_combo_box_get_id_column(combo_box: *mut GtkComboBox) -> c_int;
19448    pub fn gtk_combo_box_get_model(combo_box: *mut GtkComboBox) -> *mut GtkTreeModel;
19449    pub fn gtk_combo_box_get_popup_accessible(combo_box: *mut GtkComboBox) -> *mut atk::AtkObject;
19450    pub fn gtk_combo_box_get_popup_fixed_width(combo_box: *mut GtkComboBox) -> gboolean;
19451    pub fn gtk_combo_box_get_row_separator_func(
19452        combo_box: *mut GtkComboBox,
19453    ) -> GtkTreeViewRowSeparatorFunc;
19454    pub fn gtk_combo_box_get_row_span_column(combo_box: *mut GtkComboBox) -> c_int;
19455    pub fn gtk_combo_box_get_title(combo_box: *mut GtkComboBox) -> *const c_char;
19456    pub fn gtk_combo_box_get_wrap_width(combo_box: *mut GtkComboBox) -> c_int;
19457    pub fn gtk_combo_box_popdown(combo_box: *mut GtkComboBox);
19458    pub fn gtk_combo_box_popup(combo_box: *mut GtkComboBox);
19459    pub fn gtk_combo_box_popup_for_device(combo_box: *mut GtkComboBox, device: *mut gdk::GdkDevice);
19460    pub fn gtk_combo_box_set_active(combo_box: *mut GtkComboBox, index_: c_int);
19461    pub fn gtk_combo_box_set_active_id(
19462        combo_box: *mut GtkComboBox,
19463        active_id: *const c_char,
19464    ) -> gboolean;
19465    pub fn gtk_combo_box_set_active_iter(combo_box: *mut GtkComboBox, iter: *mut GtkTreeIter);
19466    pub fn gtk_combo_box_set_add_tearoffs(combo_box: *mut GtkComboBox, add_tearoffs: gboolean);
19467    pub fn gtk_combo_box_set_button_sensitivity(
19468        combo_box: *mut GtkComboBox,
19469        sensitivity: GtkSensitivityType,
19470    );
19471    pub fn gtk_combo_box_set_column_span_column(combo_box: *mut GtkComboBox, column_span: c_int);
19472    pub fn gtk_combo_box_set_entry_text_column(combo_box: *mut GtkComboBox, text_column: c_int);
19473    pub fn gtk_combo_box_set_focus_on_click(combo: *mut GtkComboBox, focus_on_click: gboolean);
19474    pub fn gtk_combo_box_set_id_column(combo_box: *mut GtkComboBox, id_column: c_int);
19475    pub fn gtk_combo_box_set_model(combo_box: *mut GtkComboBox, model: *mut GtkTreeModel);
19476    pub fn gtk_combo_box_set_popup_fixed_width(combo_box: *mut GtkComboBox, fixed: gboolean);
19477    pub fn gtk_combo_box_set_row_separator_func(
19478        combo_box: *mut GtkComboBox,
19479        func: GtkTreeViewRowSeparatorFunc,
19480        data: gpointer,
19481        destroy: glib::GDestroyNotify,
19482    );
19483    pub fn gtk_combo_box_set_row_span_column(combo_box: *mut GtkComboBox, row_span: c_int);
19484    pub fn gtk_combo_box_set_title(combo_box: *mut GtkComboBox, title: *const c_char);
19485    pub fn gtk_combo_box_set_wrap_width(combo_box: *mut GtkComboBox, width: c_int);
19486
19487    //=========================================================================
19488    // GtkComboBoxAccessible
19489    //=========================================================================
19490    pub fn gtk_combo_box_accessible_get_type() -> GType;
19491
19492    //=========================================================================
19493    // GtkComboBoxText
19494    //=========================================================================
19495    pub fn gtk_combo_box_text_get_type() -> GType;
19496    pub fn gtk_combo_box_text_new() -> *mut GtkWidget;
19497    pub fn gtk_combo_box_text_new_with_entry() -> *mut GtkWidget;
19498    pub fn gtk_combo_box_text_append(
19499        combo_box: *mut GtkComboBoxText,
19500        id: *const c_char,
19501        text: *const c_char,
19502    );
19503    pub fn gtk_combo_box_text_append_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
19504    pub fn gtk_combo_box_text_get_active_text(combo_box: *mut GtkComboBoxText) -> *mut c_char;
19505    pub fn gtk_combo_box_text_insert(
19506        combo_box: *mut GtkComboBoxText,
19507        position: c_int,
19508        id: *const c_char,
19509        text: *const c_char,
19510    );
19511    pub fn gtk_combo_box_text_insert_text(
19512        combo_box: *mut GtkComboBoxText,
19513        position: c_int,
19514        text: *const c_char,
19515    );
19516    pub fn gtk_combo_box_text_prepend(
19517        combo_box: *mut GtkComboBoxText,
19518        id: *const c_char,
19519        text: *const c_char,
19520    );
19521    pub fn gtk_combo_box_text_prepend_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
19522    pub fn gtk_combo_box_text_remove(combo_box: *mut GtkComboBoxText, position: c_int);
19523    pub fn gtk_combo_box_text_remove_all(combo_box: *mut GtkComboBoxText);
19524
19525    //=========================================================================
19526    // GtkContainer
19527    //=========================================================================
19528    pub fn gtk_container_get_type() -> GType;
19529    pub fn gtk_container_add(container: *mut GtkContainer, widget: *mut GtkWidget);
19530    pub fn gtk_container_add_with_properties(
19531        container: *mut GtkContainer,
19532        widget: *mut GtkWidget,
19533        first_prop_name: *const c_char,
19534        ...
19535    );
19536    pub fn gtk_container_check_resize(container: *mut GtkContainer);
19537    pub fn gtk_container_child_get(
19538        container: *mut GtkContainer,
19539        child: *mut GtkWidget,
19540        first_prop_name: *const c_char,
19541        ...
19542    );
19543    pub fn gtk_container_child_get_property(
19544        container: *mut GtkContainer,
19545        child: *mut GtkWidget,
19546        property_name: *const c_char,
19547        value: *mut gobject::GValue,
19548    );
19549    //pub fn gtk_container_child_get_valist(container: *mut GtkContainer, child: *mut GtkWidget, first_property_name: *const c_char, var_args: /*Unimplemented*/va_list);
19550    pub fn gtk_container_child_notify(
19551        container: *mut GtkContainer,
19552        child: *mut GtkWidget,
19553        child_property: *const c_char,
19554    );
19555    pub fn gtk_container_child_notify_by_pspec(
19556        container: *mut GtkContainer,
19557        child: *mut GtkWidget,
19558        pspec: *mut gobject::GParamSpec,
19559    );
19560    pub fn gtk_container_child_set(
19561        container: *mut GtkContainer,
19562        child: *mut GtkWidget,
19563        first_prop_name: *const c_char,
19564        ...
19565    );
19566    pub fn gtk_container_child_set_property(
19567        container: *mut GtkContainer,
19568        child: *mut GtkWidget,
19569        property_name: *const c_char,
19570        value: *const gobject::GValue,
19571    );
19572    //pub fn gtk_container_child_set_valist(container: *mut GtkContainer, child: *mut GtkWidget, first_property_name: *const c_char, var_args: /*Unimplemented*/va_list);
19573    pub fn gtk_container_child_type(container: *mut GtkContainer) -> GType;
19574    pub fn gtk_container_forall(
19575        container: *mut GtkContainer,
19576        callback: GtkCallback,
19577        callback_data: gpointer,
19578    );
19579    pub fn gtk_container_foreach(
19580        container: *mut GtkContainer,
19581        callback: GtkCallback,
19582        callback_data: gpointer,
19583    );
19584    pub fn gtk_container_get_border_width(container: *mut GtkContainer) -> c_uint;
19585    pub fn gtk_container_get_children(container: *mut GtkContainer) -> *mut glib::GList;
19586    pub fn gtk_container_get_focus_chain(
19587        container: *mut GtkContainer,
19588        focusable_widgets: *mut *mut glib::GList,
19589    ) -> gboolean;
19590    pub fn gtk_container_get_focus_child(container: *mut GtkContainer) -> *mut GtkWidget;
19591    pub fn gtk_container_get_focus_hadjustment(container: *mut GtkContainer) -> *mut GtkAdjustment;
19592    pub fn gtk_container_get_focus_vadjustment(container: *mut GtkContainer) -> *mut GtkAdjustment;
19593    pub fn gtk_container_get_path_for_child(
19594        container: *mut GtkContainer,
19595        child: *mut GtkWidget,
19596    ) -> *mut GtkWidgetPath;
19597    pub fn gtk_container_get_resize_mode(container: *mut GtkContainer) -> GtkResizeMode;
19598    pub fn gtk_container_propagate_draw(
19599        container: *mut GtkContainer,
19600        child: *mut GtkWidget,
19601        cr: *mut cairo::cairo_t,
19602    );
19603    pub fn gtk_container_remove(container: *mut GtkContainer, widget: *mut GtkWidget);
19604    pub fn gtk_container_resize_children(container: *mut GtkContainer);
19605    pub fn gtk_container_set_border_width(container: *mut GtkContainer, border_width: c_uint);
19606    pub fn gtk_container_set_focus_chain(
19607        container: *mut GtkContainer,
19608        focusable_widgets: *mut glib::GList,
19609    );
19610    pub fn gtk_container_set_focus_child(container: *mut GtkContainer, child: *mut GtkWidget);
19611    pub fn gtk_container_set_focus_hadjustment(
19612        container: *mut GtkContainer,
19613        adjustment: *mut GtkAdjustment,
19614    );
19615    pub fn gtk_container_set_focus_vadjustment(
19616        container: *mut GtkContainer,
19617        adjustment: *mut GtkAdjustment,
19618    );
19619    pub fn gtk_container_set_reallocate_redraws(
19620        container: *mut GtkContainer,
19621        needs_redraws: gboolean,
19622    );
19623    pub fn gtk_container_set_resize_mode(container: *mut GtkContainer, resize_mode: GtkResizeMode);
19624    pub fn gtk_container_unset_focus_chain(container: *mut GtkContainer);
19625
19626    //=========================================================================
19627    // GtkContainerAccessible
19628    //=========================================================================
19629    pub fn gtk_container_accessible_get_type() -> GType;
19630
19631    //=========================================================================
19632    // GtkContainerCellAccessible
19633    //=========================================================================
19634    pub fn gtk_container_cell_accessible_get_type() -> GType;
19635    pub fn gtk_container_cell_accessible_new() -> *mut GtkContainerCellAccessible;
19636    pub fn gtk_container_cell_accessible_add_child(
19637        container: *mut GtkContainerCellAccessible,
19638        child: *mut GtkCellAccessible,
19639    );
19640    pub fn gtk_container_cell_accessible_get_children(
19641        container: *mut GtkContainerCellAccessible,
19642    ) -> *mut glib::GList;
19643    pub fn gtk_container_cell_accessible_remove_child(
19644        container: *mut GtkContainerCellAccessible,
19645        child: *mut GtkCellAccessible,
19646    );
19647
19648    //=========================================================================
19649    // GtkCssProvider
19650    //=========================================================================
19651    pub fn gtk_css_provider_get_type() -> GType;
19652    pub fn gtk_css_provider_new() -> *mut GtkCssProvider;
19653    pub fn gtk_css_provider_get_default() -> *mut GtkCssProvider;
19654    pub fn gtk_css_provider_get_named(
19655        name: *const c_char,
19656        variant: *const c_char,
19657    ) -> *mut GtkCssProvider;
19658    pub fn gtk_css_provider_load_from_data(
19659        css_provider: *mut GtkCssProvider,
19660        data: *const u8,
19661        length: ssize_t,
19662        error: *mut *mut glib::GError,
19663    ) -> gboolean;
19664    pub fn gtk_css_provider_load_from_file(
19665        css_provider: *mut GtkCssProvider,
19666        file: *mut gio::GFile,
19667        error: *mut *mut glib::GError,
19668    ) -> gboolean;
19669    pub fn gtk_css_provider_load_from_path(
19670        css_provider: *mut GtkCssProvider,
19671        path: *const c_char,
19672        error: *mut *mut glib::GError,
19673    ) -> gboolean;
19674    pub fn gtk_css_provider_load_from_resource(
19675        css_provider: *mut GtkCssProvider,
19676        resource_path: *const c_char,
19677    );
19678    pub fn gtk_css_provider_to_string(provider: *mut GtkCssProvider) -> *mut c_char;
19679
19680    //=========================================================================
19681    // GtkDialog
19682    //=========================================================================
19683    pub fn gtk_dialog_get_type() -> GType;
19684    pub fn gtk_dialog_new() -> *mut GtkWidget;
19685    pub fn gtk_dialog_new_with_buttons(
19686        title: *const c_char,
19687        parent: *mut GtkWindow,
19688        flags: GtkDialogFlags,
19689        first_button_text: *const c_char,
19690        ...
19691    ) -> *mut GtkWidget;
19692    pub fn gtk_dialog_add_action_widget(
19693        dialog: *mut GtkDialog,
19694        child: *mut GtkWidget,
19695        response_id: GtkResponseType,
19696    );
19697    pub fn gtk_dialog_add_button(
19698        dialog: *mut GtkDialog,
19699        button_text: *const c_char,
19700        response_id: GtkResponseType,
19701    ) -> *mut GtkWidget;
19702    pub fn gtk_dialog_add_buttons(dialog: *mut GtkDialog, first_button_text: *const c_char, ...);
19703    pub fn gtk_dialog_get_action_area(dialog: *mut GtkDialog) -> *mut GtkBox;
19704    pub fn gtk_dialog_get_content_area(dialog: *mut GtkDialog) -> *mut GtkBox;
19705    pub fn gtk_dialog_get_header_bar(dialog: *mut GtkDialog) -> *mut GtkHeaderBar;
19706    pub fn gtk_dialog_get_response_for_widget(
19707        dialog: *mut GtkDialog,
19708        widget: *mut GtkWidget,
19709    ) -> c_int;
19710    pub fn gtk_dialog_get_widget_for_response(
19711        dialog: *mut GtkDialog,
19712        response_id: GtkResponseType,
19713    ) -> *mut GtkWidget;
19714    pub fn gtk_dialog_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
19715    pub fn gtk_dialog_run(dialog: *mut GtkDialog) -> c_int;
19716    pub fn gtk_dialog_set_alternative_button_order(
19717        dialog: *mut GtkDialog,
19718        first_response_id: c_int,
19719        ...
19720    );
19721    pub fn gtk_dialog_set_alternative_button_order_from_array(
19722        dialog: *mut GtkDialog,
19723        n_params: c_int,
19724        new_order: *mut c_int,
19725    );
19726    pub fn gtk_dialog_set_default_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
19727    pub fn gtk_dialog_set_response_sensitive(
19728        dialog: *mut GtkDialog,
19729        response_id: GtkResponseType,
19730        setting: gboolean,
19731    );
19732
19733    //=========================================================================
19734    // GtkDrawingArea
19735    //=========================================================================
19736    pub fn gtk_drawing_area_get_type() -> GType;
19737    pub fn gtk_drawing_area_new() -> *mut GtkWidget;
19738
19739    //=========================================================================
19740    // GtkEntry
19741    //=========================================================================
19742    pub fn gtk_entry_get_type() -> GType;
19743    pub fn gtk_entry_new() -> *mut GtkWidget;
19744    pub fn gtk_entry_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
19745    pub fn gtk_entry_get_activates_default(entry: *mut GtkEntry) -> gboolean;
19746    pub fn gtk_entry_get_alignment(entry: *mut GtkEntry) -> c_float;
19747    pub fn gtk_entry_get_attributes(entry: *mut GtkEntry) -> *mut pango::PangoAttrList;
19748    pub fn gtk_entry_get_buffer(entry: *mut GtkEntry) -> *mut GtkEntryBuffer;
19749    pub fn gtk_entry_get_completion(entry: *mut GtkEntry) -> *mut GtkEntryCompletion;
19750    pub fn gtk_entry_get_current_icon_drag_source(entry: *mut GtkEntry) -> c_int;
19751    pub fn gtk_entry_get_cursor_hadjustment(entry: *mut GtkEntry) -> *mut GtkAdjustment;
19752    pub fn gtk_entry_get_has_frame(entry: *mut GtkEntry) -> gboolean;
19753    pub fn gtk_entry_get_icon_activatable(
19754        entry: *mut GtkEntry,
19755        icon_pos: GtkEntryIconPosition,
19756    ) -> gboolean;
19757    pub fn gtk_entry_get_icon_area(
19758        entry: *mut GtkEntry,
19759        icon_pos: GtkEntryIconPosition,
19760        icon_area: *mut gdk::GdkRectangle,
19761    );
19762    pub fn gtk_entry_get_icon_at_pos(entry: *mut GtkEntry, x: c_int, y: c_int) -> c_int;
19763    pub fn gtk_entry_get_icon_gicon(
19764        entry: *mut GtkEntry,
19765        icon_pos: GtkEntryIconPosition,
19766    ) -> *mut gio::GIcon;
19767    pub fn gtk_entry_get_icon_name(
19768        entry: *mut GtkEntry,
19769        icon_pos: GtkEntryIconPosition,
19770    ) -> *const c_char;
19771    pub fn gtk_entry_get_icon_pixbuf(
19772        entry: *mut GtkEntry,
19773        icon_pos: GtkEntryIconPosition,
19774    ) -> *mut gdk_pixbuf::GdkPixbuf;
19775    pub fn gtk_entry_get_icon_sensitive(
19776        entry: *mut GtkEntry,
19777        icon_pos: GtkEntryIconPosition,
19778    ) -> gboolean;
19779    pub fn gtk_entry_get_icon_stock(
19780        entry: *mut GtkEntry,
19781        icon_pos: GtkEntryIconPosition,
19782    ) -> *const c_char;
19783    pub fn gtk_entry_get_icon_storage_type(
19784        entry: *mut GtkEntry,
19785        icon_pos: GtkEntryIconPosition,
19786    ) -> GtkImageType;
19787    pub fn gtk_entry_get_icon_tooltip_markup(
19788        entry: *mut GtkEntry,
19789        icon_pos: GtkEntryIconPosition,
19790    ) -> *mut c_char;
19791    pub fn gtk_entry_get_icon_tooltip_text(
19792        entry: *mut GtkEntry,
19793        icon_pos: GtkEntryIconPosition,
19794    ) -> *mut c_char;
19795    pub fn gtk_entry_get_inner_border(entry: *mut GtkEntry) -> *const GtkBorder;
19796    pub fn gtk_entry_get_input_hints(entry: *mut GtkEntry) -> GtkInputHints;
19797    pub fn gtk_entry_get_input_purpose(entry: *mut GtkEntry) -> GtkInputPurpose;
19798    pub fn gtk_entry_get_invisible_char(entry: *mut GtkEntry) -> u32;
19799    pub fn gtk_entry_get_layout(entry: *mut GtkEntry) -> *mut pango::PangoLayout;
19800    pub fn gtk_entry_get_layout_offsets(entry: *mut GtkEntry, x: *mut c_int, y: *mut c_int);
19801    pub fn gtk_entry_get_max_length(entry: *mut GtkEntry) -> c_int;
19802    pub fn gtk_entry_get_max_width_chars(entry: *mut GtkEntry) -> c_int;
19803    pub fn gtk_entry_get_overwrite_mode(entry: *mut GtkEntry) -> gboolean;
19804    pub fn gtk_entry_get_placeholder_text(entry: *mut GtkEntry) -> *const c_char;
19805    pub fn gtk_entry_get_progress_fraction(entry: *mut GtkEntry) -> c_double;
19806    pub fn gtk_entry_get_progress_pulse_step(entry: *mut GtkEntry) -> c_double;
19807    pub fn gtk_entry_get_tabs(entry: *mut GtkEntry) -> *mut pango::PangoTabArray;
19808    pub fn gtk_entry_get_text(entry: *mut GtkEntry) -> *const c_char;
19809    pub fn gtk_entry_get_text_area(entry: *mut GtkEntry, text_area: *mut gdk::GdkRectangle);
19810    pub fn gtk_entry_get_text_length(entry: *mut GtkEntry) -> u16;
19811    pub fn gtk_entry_get_visibility(entry: *mut GtkEntry) -> gboolean;
19812    pub fn gtk_entry_get_width_chars(entry: *mut GtkEntry) -> c_int;
19813    pub fn gtk_entry_grab_focus_without_selecting(entry: *mut GtkEntry);
19814    pub fn gtk_entry_im_context_filter_keypress(
19815        entry: *mut GtkEntry,
19816        event: *mut gdk::GdkEventKey,
19817    ) -> gboolean;
19818    pub fn gtk_entry_layout_index_to_text_index(entry: *mut GtkEntry, layout_index: c_int)
19819    -> c_int;
19820    pub fn gtk_entry_progress_pulse(entry: *mut GtkEntry);
19821    pub fn gtk_entry_reset_im_context(entry: *mut GtkEntry);
19822    pub fn gtk_entry_set_activates_default(entry: *mut GtkEntry, setting: gboolean);
19823    pub fn gtk_entry_set_alignment(entry: *mut GtkEntry, xalign: c_float);
19824    pub fn gtk_entry_set_attributes(entry: *mut GtkEntry, attrs: *mut pango::PangoAttrList);
19825    pub fn gtk_entry_set_buffer(entry: *mut GtkEntry, buffer: *mut GtkEntryBuffer);
19826    pub fn gtk_entry_set_completion(entry: *mut GtkEntry, completion: *mut GtkEntryCompletion);
19827    pub fn gtk_entry_set_cursor_hadjustment(entry: *mut GtkEntry, adjustment: *mut GtkAdjustment);
19828    pub fn gtk_entry_set_has_frame(entry: *mut GtkEntry, setting: gboolean);
19829    pub fn gtk_entry_set_icon_activatable(
19830        entry: *mut GtkEntry,
19831        icon_pos: GtkEntryIconPosition,
19832        activatable: gboolean,
19833    );
19834    pub fn gtk_entry_set_icon_drag_source(
19835        entry: *mut GtkEntry,
19836        icon_pos: GtkEntryIconPosition,
19837        target_list: *mut GtkTargetList,
19838        actions: gdk::GdkDragAction,
19839    );
19840    pub fn gtk_entry_set_icon_from_gicon(
19841        entry: *mut GtkEntry,
19842        icon_pos: GtkEntryIconPosition,
19843        icon: *mut gio::GIcon,
19844    );
19845    pub fn gtk_entry_set_icon_from_icon_name(
19846        entry: *mut GtkEntry,
19847        icon_pos: GtkEntryIconPosition,
19848        icon_name: *const c_char,
19849    );
19850    pub fn gtk_entry_set_icon_from_pixbuf(
19851        entry: *mut GtkEntry,
19852        icon_pos: GtkEntryIconPosition,
19853        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
19854    );
19855    pub fn gtk_entry_set_icon_from_stock(
19856        entry: *mut GtkEntry,
19857        icon_pos: GtkEntryIconPosition,
19858        stock_id: *const c_char,
19859    );
19860    pub fn gtk_entry_set_icon_sensitive(
19861        entry: *mut GtkEntry,
19862        icon_pos: GtkEntryIconPosition,
19863        sensitive: gboolean,
19864    );
19865    pub fn gtk_entry_set_icon_tooltip_markup(
19866        entry: *mut GtkEntry,
19867        icon_pos: GtkEntryIconPosition,
19868        tooltip: *const c_char,
19869    );
19870    pub fn gtk_entry_set_icon_tooltip_text(
19871        entry: *mut GtkEntry,
19872        icon_pos: GtkEntryIconPosition,
19873        tooltip: *const c_char,
19874    );
19875    pub fn gtk_entry_set_inner_border(entry: *mut GtkEntry, border: *const GtkBorder);
19876    pub fn gtk_entry_set_input_hints(entry: *mut GtkEntry, hints: GtkInputHints);
19877    pub fn gtk_entry_set_input_purpose(entry: *mut GtkEntry, purpose: GtkInputPurpose);
19878    pub fn gtk_entry_set_invisible_char(entry: *mut GtkEntry, ch: u32);
19879    pub fn gtk_entry_set_max_length(entry: *mut GtkEntry, max: c_int);
19880    pub fn gtk_entry_set_max_width_chars(entry: *mut GtkEntry, n_chars: c_int);
19881    pub fn gtk_entry_set_overwrite_mode(entry: *mut GtkEntry, overwrite: gboolean);
19882    pub fn gtk_entry_set_placeholder_text(entry: *mut GtkEntry, text: *const c_char);
19883    pub fn gtk_entry_set_progress_fraction(entry: *mut GtkEntry, fraction: c_double);
19884    pub fn gtk_entry_set_progress_pulse_step(entry: *mut GtkEntry, fraction: c_double);
19885    pub fn gtk_entry_set_tabs(entry: *mut GtkEntry, tabs: *mut pango::PangoTabArray);
19886    pub fn gtk_entry_set_text(entry: *mut GtkEntry, text: *const c_char);
19887    pub fn gtk_entry_set_visibility(entry: *mut GtkEntry, visible: gboolean);
19888    pub fn gtk_entry_set_width_chars(entry: *mut GtkEntry, n_chars: c_int);
19889    pub fn gtk_entry_text_index_to_layout_index(entry: *mut GtkEntry, text_index: c_int) -> c_int;
19890    pub fn gtk_entry_unset_invisible_char(entry: *mut GtkEntry);
19891
19892    //=========================================================================
19893    // GtkEntryAccessible
19894    //=========================================================================
19895    pub fn gtk_entry_accessible_get_type() -> GType;
19896
19897    //=========================================================================
19898    // GtkEntryBuffer
19899    //=========================================================================
19900    pub fn gtk_entry_buffer_get_type() -> GType;
19901    pub fn gtk_entry_buffer_new(
19902        initial_chars: *const c_char,
19903        n_initial_chars: c_int,
19904    ) -> *mut GtkEntryBuffer;
19905    pub fn gtk_entry_buffer_delete_text(
19906        buffer: *mut GtkEntryBuffer,
19907        position: c_uint,
19908        n_chars: c_int,
19909    ) -> c_uint;
19910    pub fn gtk_entry_buffer_emit_deleted_text(
19911        buffer: *mut GtkEntryBuffer,
19912        position: c_uint,
19913        n_chars: c_uint,
19914    );
19915    pub fn gtk_entry_buffer_emit_inserted_text(
19916        buffer: *mut GtkEntryBuffer,
19917        position: c_uint,
19918        chars: *const c_char,
19919        n_chars: c_uint,
19920    );
19921    pub fn gtk_entry_buffer_get_bytes(buffer: *mut GtkEntryBuffer) -> size_t;
19922    pub fn gtk_entry_buffer_get_length(buffer: *mut GtkEntryBuffer) -> c_uint;
19923    pub fn gtk_entry_buffer_get_max_length(buffer: *mut GtkEntryBuffer) -> c_int;
19924    pub fn gtk_entry_buffer_get_text(buffer: *mut GtkEntryBuffer) -> *const c_char;
19925    pub fn gtk_entry_buffer_insert_text(
19926        buffer: *mut GtkEntryBuffer,
19927        position: c_uint,
19928        chars: *const c_char,
19929        n_chars: c_int,
19930    ) -> c_uint;
19931    pub fn gtk_entry_buffer_set_max_length(buffer: *mut GtkEntryBuffer, max_length: c_int);
19932    pub fn gtk_entry_buffer_set_text(
19933        buffer: *mut GtkEntryBuffer,
19934        chars: *const c_char,
19935        n_chars: c_int,
19936    );
19937
19938    //=========================================================================
19939    // GtkEntryCompletion
19940    //=========================================================================
19941    pub fn gtk_entry_completion_get_type() -> GType;
19942    pub fn gtk_entry_completion_new() -> *mut GtkEntryCompletion;
19943    pub fn gtk_entry_completion_new_with_area(area: *mut GtkCellArea) -> *mut GtkEntryCompletion;
19944    pub fn gtk_entry_completion_complete(completion: *mut GtkEntryCompletion);
19945    pub fn gtk_entry_completion_compute_prefix(
19946        completion: *mut GtkEntryCompletion,
19947        key: *const c_char,
19948    ) -> *mut c_char;
19949    pub fn gtk_entry_completion_delete_action(completion: *mut GtkEntryCompletion, index_: c_int);
19950    pub fn gtk_entry_completion_get_completion_prefix(
19951        completion: *mut GtkEntryCompletion,
19952    ) -> *const c_char;
19953    pub fn gtk_entry_completion_get_entry(completion: *mut GtkEntryCompletion) -> *mut GtkWidget;
19954    pub fn gtk_entry_completion_get_inline_completion(
19955        completion: *mut GtkEntryCompletion,
19956    ) -> gboolean;
19957    pub fn gtk_entry_completion_get_inline_selection(
19958        completion: *mut GtkEntryCompletion,
19959    ) -> gboolean;
19960    pub fn gtk_entry_completion_get_minimum_key_length(
19961        completion: *mut GtkEntryCompletion,
19962    ) -> c_int;
19963    pub fn gtk_entry_completion_get_model(completion: *mut GtkEntryCompletion)
19964    -> *mut GtkTreeModel;
19965    pub fn gtk_entry_completion_get_popup_completion(
19966        completion: *mut GtkEntryCompletion,
19967    ) -> gboolean;
19968    pub fn gtk_entry_completion_get_popup_set_width(
19969        completion: *mut GtkEntryCompletion,
19970    ) -> gboolean;
19971    pub fn gtk_entry_completion_get_popup_single_match(
19972        completion: *mut GtkEntryCompletion,
19973    ) -> gboolean;
19974    pub fn gtk_entry_completion_get_text_column(completion: *mut GtkEntryCompletion) -> c_int;
19975    pub fn gtk_entry_completion_insert_action_markup(
19976        completion: *mut GtkEntryCompletion,
19977        index_: c_int,
19978        markup: *const c_char,
19979    );
19980    pub fn gtk_entry_completion_insert_action_text(
19981        completion: *mut GtkEntryCompletion,
19982        index_: c_int,
19983        text: *const c_char,
19984    );
19985    pub fn gtk_entry_completion_insert_prefix(completion: *mut GtkEntryCompletion);
19986    pub fn gtk_entry_completion_set_inline_completion(
19987        completion: *mut GtkEntryCompletion,
19988        inline_completion: gboolean,
19989    );
19990    pub fn gtk_entry_completion_set_inline_selection(
19991        completion: *mut GtkEntryCompletion,
19992        inline_selection: gboolean,
19993    );
19994    pub fn gtk_entry_completion_set_match_func(
19995        completion: *mut GtkEntryCompletion,
19996        func: GtkEntryCompletionMatchFunc,
19997        func_data: gpointer,
19998        func_notify: glib::GDestroyNotify,
19999    );
20000    pub fn gtk_entry_completion_set_minimum_key_length(
20001        completion: *mut GtkEntryCompletion,
20002        length: c_int,
20003    );
20004    pub fn gtk_entry_completion_set_model(
20005        completion: *mut GtkEntryCompletion,
20006        model: *mut GtkTreeModel,
20007    );
20008    pub fn gtk_entry_completion_set_popup_completion(
20009        completion: *mut GtkEntryCompletion,
20010        popup_completion: gboolean,
20011    );
20012    pub fn gtk_entry_completion_set_popup_set_width(
20013        completion: *mut GtkEntryCompletion,
20014        popup_set_width: gboolean,
20015    );
20016    pub fn gtk_entry_completion_set_popup_single_match(
20017        completion: *mut GtkEntryCompletion,
20018        popup_single_match: gboolean,
20019    );
20020    pub fn gtk_entry_completion_set_text_column(completion: *mut GtkEntryCompletion, column: c_int);
20021
20022    //=========================================================================
20023    // GtkEntryIconAccessible
20024    //=========================================================================
20025    pub fn gtk_entry_icon_accessible_get_type() -> GType;
20026
20027    //=========================================================================
20028    // GtkEventBox
20029    //=========================================================================
20030    pub fn gtk_event_box_get_type() -> GType;
20031    pub fn gtk_event_box_new() -> *mut GtkWidget;
20032    pub fn gtk_event_box_get_above_child(event_box: *mut GtkEventBox) -> gboolean;
20033    pub fn gtk_event_box_get_visible_window(event_box: *mut GtkEventBox) -> gboolean;
20034    pub fn gtk_event_box_set_above_child(event_box: *mut GtkEventBox, above_child: gboolean);
20035    pub fn gtk_event_box_set_visible_window(event_box: *mut GtkEventBox, visible_window: gboolean);
20036
20037    //=========================================================================
20038    // GtkEventController
20039    //=========================================================================
20040    pub fn gtk_event_controller_get_type() -> GType;
20041    pub fn gtk_event_controller_get_propagation_phase(
20042        controller: *mut GtkEventController,
20043    ) -> GtkPropagationPhase;
20044    pub fn gtk_event_controller_get_widget(controller: *mut GtkEventController) -> *mut GtkWidget;
20045    pub fn gtk_event_controller_handle_event(
20046        controller: *mut GtkEventController,
20047        event: *const gdk::GdkEvent,
20048    ) -> gboolean;
20049    pub fn gtk_event_controller_reset(controller: *mut GtkEventController);
20050    pub fn gtk_event_controller_set_propagation_phase(
20051        controller: *mut GtkEventController,
20052        phase: GtkPropagationPhase,
20053    );
20054
20055    //=========================================================================
20056    // GtkEventControllerKey
20057    //=========================================================================
20058    #[cfg(feature = "v3_24")]
20059    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20060    pub fn gtk_event_controller_key_get_type() -> GType;
20061    #[cfg(feature = "v3_24")]
20062    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20063    pub fn gtk_event_controller_key_new(widget: *mut GtkWidget) -> *mut GtkEventController;
20064    #[cfg(feature = "v3_24")]
20065    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20066    pub fn gtk_event_controller_key_forward(
20067        controller: *mut GtkEventControllerKey,
20068        widget: *mut GtkWidget,
20069    ) -> gboolean;
20070    #[cfg(feature = "v3_24")]
20071    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20072    pub fn gtk_event_controller_key_get_group(controller: *mut GtkEventControllerKey) -> c_uint;
20073    #[cfg(feature = "v3_24")]
20074    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20075    pub fn gtk_event_controller_key_get_im_context(
20076        controller: *mut GtkEventControllerKey,
20077    ) -> *mut GtkIMContext;
20078    #[cfg(feature = "v3_24")]
20079    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20080    pub fn gtk_event_controller_key_set_im_context(
20081        controller: *mut GtkEventControllerKey,
20082        im_context: *mut GtkIMContext,
20083    );
20084
20085    //=========================================================================
20086    // GtkEventControllerMotion
20087    //=========================================================================
20088    #[cfg(feature = "v3_24")]
20089    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20090    pub fn gtk_event_controller_motion_get_type() -> GType;
20091    #[cfg(feature = "v3_24")]
20092    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20093    pub fn gtk_event_controller_motion_new(widget: *mut GtkWidget) -> *mut GtkEventController;
20094
20095    //=========================================================================
20096    // GtkEventControllerScroll
20097    //=========================================================================
20098    #[cfg(feature = "v3_24")]
20099    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20100    pub fn gtk_event_controller_scroll_get_type() -> GType;
20101    #[cfg(feature = "v3_24")]
20102    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20103    pub fn gtk_event_controller_scroll_new(
20104        widget: *mut GtkWidget,
20105        flags: GtkEventControllerScrollFlags,
20106    ) -> *mut GtkEventController;
20107    #[cfg(feature = "v3_24")]
20108    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20109    pub fn gtk_event_controller_scroll_get_flags(
20110        scroll: *mut GtkEventControllerScroll,
20111    ) -> GtkEventControllerScrollFlags;
20112    #[cfg(feature = "v3_24")]
20113    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20114    pub fn gtk_event_controller_scroll_set_flags(
20115        scroll: *mut GtkEventControllerScroll,
20116        flags: GtkEventControllerScrollFlags,
20117    );
20118
20119    //=========================================================================
20120    // GtkExpander
20121    //=========================================================================
20122    pub fn gtk_expander_get_type() -> GType;
20123    pub fn gtk_expander_new(label: *const c_char) -> *mut GtkWidget;
20124    pub fn gtk_expander_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
20125    pub fn gtk_expander_get_expanded(expander: *mut GtkExpander) -> gboolean;
20126    pub fn gtk_expander_get_label(expander: *mut GtkExpander) -> *const c_char;
20127    pub fn gtk_expander_get_label_fill(expander: *mut GtkExpander) -> gboolean;
20128    pub fn gtk_expander_get_label_widget(expander: *mut GtkExpander) -> *mut GtkWidget;
20129    pub fn gtk_expander_get_resize_toplevel(expander: *mut GtkExpander) -> gboolean;
20130    pub fn gtk_expander_get_spacing(expander: *mut GtkExpander) -> c_int;
20131    pub fn gtk_expander_get_use_markup(expander: *mut GtkExpander) -> gboolean;
20132    pub fn gtk_expander_get_use_underline(expander: *mut GtkExpander) -> gboolean;
20133    pub fn gtk_expander_set_expanded(expander: *mut GtkExpander, expanded: gboolean);
20134    pub fn gtk_expander_set_label(expander: *mut GtkExpander, label: *const c_char);
20135    pub fn gtk_expander_set_label_fill(expander: *mut GtkExpander, label_fill: gboolean);
20136    pub fn gtk_expander_set_label_widget(expander: *mut GtkExpander, label_widget: *mut GtkWidget);
20137    pub fn gtk_expander_set_resize_toplevel(expander: *mut GtkExpander, resize_toplevel: gboolean);
20138    pub fn gtk_expander_set_spacing(expander: *mut GtkExpander, spacing: c_int);
20139    pub fn gtk_expander_set_use_markup(expander: *mut GtkExpander, use_markup: gboolean);
20140    pub fn gtk_expander_set_use_underline(expander: *mut GtkExpander, use_underline: gboolean);
20141
20142    //=========================================================================
20143    // GtkExpanderAccessible
20144    //=========================================================================
20145    pub fn gtk_expander_accessible_get_type() -> GType;
20146
20147    //=========================================================================
20148    // GtkFileChooserButton
20149    //=========================================================================
20150    pub fn gtk_file_chooser_button_get_type() -> GType;
20151    pub fn gtk_file_chooser_button_new(
20152        title: *const c_char,
20153        action: GtkFileChooserAction,
20154    ) -> *mut GtkWidget;
20155    pub fn gtk_file_chooser_button_new_with_dialog(dialog: *mut GtkDialog) -> *mut GtkWidget;
20156    pub fn gtk_file_chooser_button_get_focus_on_click(
20157        button: *mut GtkFileChooserButton,
20158    ) -> gboolean;
20159    pub fn gtk_file_chooser_button_get_title(button: *mut GtkFileChooserButton) -> *const c_char;
20160    pub fn gtk_file_chooser_button_get_width_chars(button: *mut GtkFileChooserButton) -> c_int;
20161    pub fn gtk_file_chooser_button_set_focus_on_click(
20162        button: *mut GtkFileChooserButton,
20163        focus_on_click: gboolean,
20164    );
20165    pub fn gtk_file_chooser_button_set_title(
20166        button: *mut GtkFileChooserButton,
20167        title: *const c_char,
20168    );
20169    pub fn gtk_file_chooser_button_set_width_chars(
20170        button: *mut GtkFileChooserButton,
20171        n_chars: c_int,
20172    );
20173
20174    //=========================================================================
20175    // GtkFileChooserDialog
20176    //=========================================================================
20177    pub fn gtk_file_chooser_dialog_get_type() -> GType;
20178    pub fn gtk_file_chooser_dialog_new(
20179        title: *const c_char,
20180        parent: *mut GtkWindow,
20181        action: GtkFileChooserAction,
20182        first_button_text: *const c_char,
20183        ...
20184    ) -> *mut GtkWidget;
20185
20186    //=========================================================================
20187    // GtkFileChooserNative
20188    //=========================================================================
20189    pub fn gtk_file_chooser_native_get_type() -> GType;
20190    pub fn gtk_file_chooser_native_new(
20191        title: *const c_char,
20192        parent: *mut GtkWindow,
20193        action: GtkFileChooserAction,
20194        accept_label: *const c_char,
20195        cancel_label: *const c_char,
20196    ) -> *mut GtkFileChooserNative;
20197    pub fn gtk_file_chooser_native_get_accept_label(
20198        self_: *mut GtkFileChooserNative,
20199    ) -> *const c_char;
20200    pub fn gtk_file_chooser_native_get_cancel_label(
20201        self_: *mut GtkFileChooserNative,
20202    ) -> *const c_char;
20203    pub fn gtk_file_chooser_native_set_accept_label(
20204        self_: *mut GtkFileChooserNative,
20205        accept_label: *const c_char,
20206    );
20207    pub fn gtk_file_chooser_native_set_cancel_label(
20208        self_: *mut GtkFileChooserNative,
20209        cancel_label: *const c_char,
20210    );
20211
20212    //=========================================================================
20213    // GtkFileChooserWidget
20214    //=========================================================================
20215    pub fn gtk_file_chooser_widget_get_type() -> GType;
20216    pub fn gtk_file_chooser_widget_new(action: GtkFileChooserAction) -> *mut GtkWidget;
20217
20218    //=========================================================================
20219    // GtkFileChooserWidgetAccessible
20220    //=========================================================================
20221    #[cfg(feature = "v3_24_30")]
20222    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24_30")))]
20223    pub fn gtk_file_chooser_widget_accessible_get_type() -> GType;
20224
20225    //=========================================================================
20226    // GtkFileFilter
20227    //=========================================================================
20228    pub fn gtk_file_filter_get_type() -> GType;
20229    pub fn gtk_file_filter_new() -> *mut GtkFileFilter;
20230    pub fn gtk_file_filter_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkFileFilter;
20231    pub fn gtk_file_filter_add_custom(
20232        filter: *mut GtkFileFilter,
20233        needed: GtkFileFilterFlags,
20234        func: GtkFileFilterFunc,
20235        data: gpointer,
20236        notify: glib::GDestroyNotify,
20237    );
20238    pub fn gtk_file_filter_add_mime_type(filter: *mut GtkFileFilter, mime_type: *const c_char);
20239    pub fn gtk_file_filter_add_pattern(filter: *mut GtkFileFilter, pattern: *const c_char);
20240    pub fn gtk_file_filter_add_pixbuf_formats(filter: *mut GtkFileFilter);
20241    pub fn gtk_file_filter_filter(
20242        filter: *mut GtkFileFilter,
20243        filter_info: *const GtkFileFilterInfo,
20244    ) -> gboolean;
20245    pub fn gtk_file_filter_get_name(filter: *mut GtkFileFilter) -> *const c_char;
20246    pub fn gtk_file_filter_get_needed(filter: *mut GtkFileFilter) -> GtkFileFilterFlags;
20247    pub fn gtk_file_filter_set_name(filter: *mut GtkFileFilter, name: *const c_char);
20248    pub fn gtk_file_filter_to_gvariant(filter: *mut GtkFileFilter) -> *mut glib::GVariant;
20249
20250    //=========================================================================
20251    // GtkFixed
20252    //=========================================================================
20253    pub fn gtk_fixed_get_type() -> GType;
20254    pub fn gtk_fixed_new() -> *mut GtkWidget;
20255    pub fn gtk_fixed_move(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_int, y: c_int);
20256    pub fn gtk_fixed_put(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_int, y: c_int);
20257
20258    //=========================================================================
20259    // GtkFlowBox
20260    //=========================================================================
20261    pub fn gtk_flow_box_get_type() -> GType;
20262    pub fn gtk_flow_box_new() -> *mut GtkWidget;
20263    pub fn gtk_flow_box_bind_model(
20264        box_: *mut GtkFlowBox,
20265        model: *mut gio::GListModel,
20266        create_widget_func: GtkFlowBoxCreateWidgetFunc,
20267        user_data: gpointer,
20268        user_data_free_func: glib::GDestroyNotify,
20269    );
20270    pub fn gtk_flow_box_get_activate_on_single_click(box_: *mut GtkFlowBox) -> gboolean;
20271    pub fn gtk_flow_box_get_child_at_index(
20272        box_: *mut GtkFlowBox,
20273        idx: c_int,
20274    ) -> *mut GtkFlowBoxChild;
20275    pub fn gtk_flow_box_get_child_at_pos(
20276        box_: *mut GtkFlowBox,
20277        x: c_int,
20278        y: c_int,
20279    ) -> *mut GtkFlowBoxChild;
20280    pub fn gtk_flow_box_get_column_spacing(box_: *mut GtkFlowBox) -> c_uint;
20281    pub fn gtk_flow_box_get_homogeneous(box_: *mut GtkFlowBox) -> gboolean;
20282    pub fn gtk_flow_box_get_max_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
20283    pub fn gtk_flow_box_get_min_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
20284    pub fn gtk_flow_box_get_row_spacing(box_: *mut GtkFlowBox) -> c_uint;
20285    pub fn gtk_flow_box_get_selected_children(box_: *mut GtkFlowBox) -> *mut glib::GList;
20286    pub fn gtk_flow_box_get_selection_mode(box_: *mut GtkFlowBox) -> GtkSelectionMode;
20287    pub fn gtk_flow_box_insert(box_: *mut GtkFlowBox, widget: *mut GtkWidget, position: c_int);
20288    pub fn gtk_flow_box_invalidate_filter(box_: *mut GtkFlowBox);
20289    pub fn gtk_flow_box_invalidate_sort(box_: *mut GtkFlowBox);
20290    pub fn gtk_flow_box_select_all(box_: *mut GtkFlowBox);
20291    pub fn gtk_flow_box_select_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
20292    pub fn gtk_flow_box_selected_foreach(
20293        box_: *mut GtkFlowBox,
20294        func: GtkFlowBoxForeachFunc,
20295        data: gpointer,
20296    );
20297    pub fn gtk_flow_box_set_activate_on_single_click(box_: *mut GtkFlowBox, single: gboolean);
20298    pub fn gtk_flow_box_set_column_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
20299    pub fn gtk_flow_box_set_filter_func(
20300        box_: *mut GtkFlowBox,
20301        filter_func: GtkFlowBoxFilterFunc,
20302        user_data: gpointer,
20303        destroy: glib::GDestroyNotify,
20304    );
20305    pub fn gtk_flow_box_set_hadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
20306    pub fn gtk_flow_box_set_homogeneous(box_: *mut GtkFlowBox, homogeneous: gboolean);
20307    pub fn gtk_flow_box_set_max_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
20308    pub fn gtk_flow_box_set_min_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
20309    pub fn gtk_flow_box_set_row_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
20310    pub fn gtk_flow_box_set_selection_mode(box_: *mut GtkFlowBox, mode: GtkSelectionMode);
20311    pub fn gtk_flow_box_set_sort_func(
20312        box_: *mut GtkFlowBox,
20313        sort_func: GtkFlowBoxSortFunc,
20314        user_data: gpointer,
20315        destroy: glib::GDestroyNotify,
20316    );
20317    pub fn gtk_flow_box_set_vadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
20318    pub fn gtk_flow_box_unselect_all(box_: *mut GtkFlowBox);
20319    pub fn gtk_flow_box_unselect_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
20320
20321    //=========================================================================
20322    // GtkFlowBoxAccessible
20323    //=========================================================================
20324    pub fn gtk_flow_box_accessible_get_type() -> GType;
20325
20326    //=========================================================================
20327    // GtkFlowBoxChild
20328    //=========================================================================
20329    pub fn gtk_flow_box_child_get_type() -> GType;
20330    pub fn gtk_flow_box_child_new() -> *mut GtkWidget;
20331    pub fn gtk_flow_box_child_changed(child: *mut GtkFlowBoxChild);
20332    pub fn gtk_flow_box_child_get_index(child: *mut GtkFlowBoxChild) -> c_int;
20333    pub fn gtk_flow_box_child_is_selected(child: *mut GtkFlowBoxChild) -> gboolean;
20334
20335    //=========================================================================
20336    // GtkFlowBoxChildAccessible
20337    //=========================================================================
20338    pub fn gtk_flow_box_child_accessible_get_type() -> GType;
20339
20340    //=========================================================================
20341    // GtkFontButton
20342    //=========================================================================
20343    pub fn gtk_font_button_get_type() -> GType;
20344    pub fn gtk_font_button_new() -> *mut GtkWidget;
20345    pub fn gtk_font_button_new_with_font(fontname: *const c_char) -> *mut GtkWidget;
20346    pub fn gtk_font_button_get_font_name(font_button: *mut GtkFontButton) -> *const c_char;
20347    pub fn gtk_font_button_get_show_size(font_button: *mut GtkFontButton) -> gboolean;
20348    pub fn gtk_font_button_get_show_style(font_button: *mut GtkFontButton) -> gboolean;
20349    pub fn gtk_font_button_get_title(font_button: *mut GtkFontButton) -> *const c_char;
20350    pub fn gtk_font_button_get_use_font(font_button: *mut GtkFontButton) -> gboolean;
20351    pub fn gtk_font_button_get_use_size(font_button: *mut GtkFontButton) -> gboolean;
20352    pub fn gtk_font_button_set_font_name(
20353        font_button: *mut GtkFontButton,
20354        fontname: *const c_char,
20355    ) -> gboolean;
20356    pub fn gtk_font_button_set_show_size(font_button: *mut GtkFontButton, show_size: gboolean);
20357    pub fn gtk_font_button_set_show_style(font_button: *mut GtkFontButton, show_style: gboolean);
20358    pub fn gtk_font_button_set_title(font_button: *mut GtkFontButton, title: *const c_char);
20359    pub fn gtk_font_button_set_use_font(font_button: *mut GtkFontButton, use_font: gboolean);
20360    pub fn gtk_font_button_set_use_size(font_button: *mut GtkFontButton, use_size: gboolean);
20361
20362    //=========================================================================
20363    // GtkFontChooserDialog
20364    //=========================================================================
20365    pub fn gtk_font_chooser_dialog_get_type() -> GType;
20366    pub fn gtk_font_chooser_dialog_new(
20367        title: *const c_char,
20368        parent: *mut GtkWindow,
20369    ) -> *mut GtkWidget;
20370
20371    //=========================================================================
20372    // GtkFontChooserWidget
20373    //=========================================================================
20374    pub fn gtk_font_chooser_widget_get_type() -> GType;
20375    pub fn gtk_font_chooser_widget_new() -> *mut GtkWidget;
20376
20377    //=========================================================================
20378    // GtkFontSelection
20379    //=========================================================================
20380    pub fn gtk_font_selection_get_type() -> GType;
20381    pub fn gtk_font_selection_new() -> *mut GtkWidget;
20382    pub fn gtk_font_selection_get_face(fontsel: *mut GtkFontSelection)
20383    -> *mut pango::PangoFontFace;
20384    pub fn gtk_font_selection_get_face_list(fontsel: *mut GtkFontSelection) -> *mut GtkWidget;
20385    pub fn gtk_font_selection_get_family(
20386        fontsel: *mut GtkFontSelection,
20387    ) -> *mut pango::PangoFontFamily;
20388    pub fn gtk_font_selection_get_family_list(fontsel: *mut GtkFontSelection) -> *mut GtkWidget;
20389    pub fn gtk_font_selection_get_font_name(fontsel: *mut GtkFontSelection) -> *mut c_char;
20390    pub fn gtk_font_selection_get_preview_entry(fontsel: *mut GtkFontSelection) -> *mut GtkWidget;
20391    pub fn gtk_font_selection_get_preview_text(fontsel: *mut GtkFontSelection) -> *const c_char;
20392    pub fn gtk_font_selection_get_size(fontsel: *mut GtkFontSelection) -> c_int;
20393    pub fn gtk_font_selection_get_size_entry(fontsel: *mut GtkFontSelection) -> *mut GtkWidget;
20394    pub fn gtk_font_selection_get_size_list(fontsel: *mut GtkFontSelection) -> *mut GtkWidget;
20395    pub fn gtk_font_selection_set_font_name(
20396        fontsel: *mut GtkFontSelection,
20397        fontname: *const c_char,
20398    ) -> gboolean;
20399    pub fn gtk_font_selection_set_preview_text(fontsel: *mut GtkFontSelection, text: *const c_char);
20400
20401    //=========================================================================
20402    // GtkFontSelectionDialog
20403    //=========================================================================
20404    pub fn gtk_font_selection_dialog_get_type() -> GType;
20405    pub fn gtk_font_selection_dialog_new(title: *const c_char) -> *mut GtkWidget;
20406    pub fn gtk_font_selection_dialog_get_cancel_button(
20407        fsd: *mut GtkFontSelectionDialog,
20408    ) -> *mut GtkWidget;
20409    pub fn gtk_font_selection_dialog_get_font_name(fsd: *mut GtkFontSelectionDialog)
20410    -> *mut c_char;
20411    pub fn gtk_font_selection_dialog_get_font_selection(
20412        fsd: *mut GtkFontSelectionDialog,
20413    ) -> *mut GtkWidget;
20414    pub fn gtk_font_selection_dialog_get_ok_button(
20415        fsd: *mut GtkFontSelectionDialog,
20416    ) -> *mut GtkWidget;
20417    pub fn gtk_font_selection_dialog_get_preview_text(
20418        fsd: *mut GtkFontSelectionDialog,
20419    ) -> *const c_char;
20420    pub fn gtk_font_selection_dialog_set_font_name(
20421        fsd: *mut GtkFontSelectionDialog,
20422        fontname: *const c_char,
20423    ) -> gboolean;
20424    pub fn gtk_font_selection_dialog_set_preview_text(
20425        fsd: *mut GtkFontSelectionDialog,
20426        text: *const c_char,
20427    );
20428
20429    //=========================================================================
20430    // GtkFrame
20431    //=========================================================================
20432    pub fn gtk_frame_get_type() -> GType;
20433    pub fn gtk_frame_new(label: *const c_char) -> *mut GtkWidget;
20434    pub fn gtk_frame_get_label(frame: *mut GtkFrame) -> *const c_char;
20435    pub fn gtk_frame_get_label_align(
20436        frame: *mut GtkFrame,
20437        xalign: *mut c_float,
20438        yalign: *mut c_float,
20439    );
20440    pub fn gtk_frame_get_label_widget(frame: *mut GtkFrame) -> *mut GtkWidget;
20441    pub fn gtk_frame_get_shadow_type(frame: *mut GtkFrame) -> GtkShadowType;
20442    pub fn gtk_frame_set_label(frame: *mut GtkFrame, label: *const c_char);
20443    pub fn gtk_frame_set_label_align(frame: *mut GtkFrame, xalign: c_float, yalign: c_float);
20444    pub fn gtk_frame_set_label_widget(frame: *mut GtkFrame, label_widget: *mut GtkWidget);
20445    pub fn gtk_frame_set_shadow_type(frame: *mut GtkFrame, type_: GtkShadowType);
20446
20447    //=========================================================================
20448    // GtkFrameAccessible
20449    //=========================================================================
20450    pub fn gtk_frame_accessible_get_type() -> GType;
20451
20452    //=========================================================================
20453    // GtkGLArea
20454    //=========================================================================
20455    pub fn gtk_gl_area_get_type() -> GType;
20456    pub fn gtk_gl_area_new() -> *mut GtkWidget;
20457    pub fn gtk_gl_area_attach_buffers(area: *mut GtkGLArea);
20458    pub fn gtk_gl_area_get_auto_render(area: *mut GtkGLArea) -> gboolean;
20459    pub fn gtk_gl_area_get_context(area: *mut GtkGLArea) -> *mut gdk::GdkGLContext;
20460    pub fn gtk_gl_area_get_error(area: *mut GtkGLArea) -> *mut glib::GError;
20461    pub fn gtk_gl_area_get_has_alpha(area: *mut GtkGLArea) -> gboolean;
20462    pub fn gtk_gl_area_get_has_depth_buffer(area: *mut GtkGLArea) -> gboolean;
20463    pub fn gtk_gl_area_get_has_stencil_buffer(area: *mut GtkGLArea) -> gboolean;
20464    pub fn gtk_gl_area_get_required_version(
20465        area: *mut GtkGLArea,
20466        major: *mut c_int,
20467        minor: *mut c_int,
20468    );
20469    pub fn gtk_gl_area_get_use_es(area: *mut GtkGLArea) -> gboolean;
20470    pub fn gtk_gl_area_make_current(area: *mut GtkGLArea);
20471    pub fn gtk_gl_area_queue_render(area: *mut GtkGLArea);
20472    pub fn gtk_gl_area_set_auto_render(area: *mut GtkGLArea, auto_render: gboolean);
20473    pub fn gtk_gl_area_set_error(area: *mut GtkGLArea, error: *const glib::GError);
20474    pub fn gtk_gl_area_set_has_alpha(area: *mut GtkGLArea, has_alpha: gboolean);
20475    pub fn gtk_gl_area_set_has_depth_buffer(area: *mut GtkGLArea, has_depth_buffer: gboolean);
20476    pub fn gtk_gl_area_set_has_stencil_buffer(area: *mut GtkGLArea, has_stencil_buffer: gboolean);
20477    pub fn gtk_gl_area_set_required_version(area: *mut GtkGLArea, major: c_int, minor: c_int);
20478    pub fn gtk_gl_area_set_use_es(area: *mut GtkGLArea, use_es: gboolean);
20479
20480    //=========================================================================
20481    // GtkGesture
20482    //=========================================================================
20483    pub fn gtk_gesture_get_type() -> GType;
20484    pub fn gtk_gesture_get_bounding_box(
20485        gesture: *mut GtkGesture,
20486        rect: *mut gdk::GdkRectangle,
20487    ) -> gboolean;
20488    pub fn gtk_gesture_get_bounding_box_center(
20489        gesture: *mut GtkGesture,
20490        x: *mut c_double,
20491        y: *mut c_double,
20492    ) -> gboolean;
20493    pub fn gtk_gesture_get_device(gesture: *mut GtkGesture) -> *mut gdk::GdkDevice;
20494    pub fn gtk_gesture_get_group(gesture: *mut GtkGesture) -> *mut glib::GList;
20495    pub fn gtk_gesture_get_last_event(
20496        gesture: *mut GtkGesture,
20497        sequence: *mut gdk::GdkEventSequence,
20498    ) -> *const gdk::GdkEvent;
20499    pub fn gtk_gesture_get_last_updated_sequence(
20500        gesture: *mut GtkGesture,
20501    ) -> *mut gdk::GdkEventSequence;
20502    pub fn gtk_gesture_get_point(
20503        gesture: *mut GtkGesture,
20504        sequence: *mut gdk::GdkEventSequence,
20505        x: *mut c_double,
20506        y: *mut c_double,
20507    ) -> gboolean;
20508    pub fn gtk_gesture_get_sequence_state(
20509        gesture: *mut GtkGesture,
20510        sequence: *mut gdk::GdkEventSequence,
20511    ) -> GtkEventSequenceState;
20512    pub fn gtk_gesture_get_sequences(gesture: *mut GtkGesture) -> *mut glib::GList;
20513    pub fn gtk_gesture_get_window(gesture: *mut GtkGesture) -> *mut gdk::GdkWindow;
20514    pub fn gtk_gesture_group(group_gesture: *mut GtkGesture, gesture: *mut GtkGesture);
20515    pub fn gtk_gesture_handles_sequence(
20516        gesture: *mut GtkGesture,
20517        sequence: *mut gdk::GdkEventSequence,
20518    ) -> gboolean;
20519    pub fn gtk_gesture_is_active(gesture: *mut GtkGesture) -> gboolean;
20520    pub fn gtk_gesture_is_grouped_with(
20521        gesture: *mut GtkGesture,
20522        other: *mut GtkGesture,
20523    ) -> gboolean;
20524    pub fn gtk_gesture_is_recognized(gesture: *mut GtkGesture) -> gboolean;
20525    pub fn gtk_gesture_set_sequence_state(
20526        gesture: *mut GtkGesture,
20527        sequence: *mut gdk::GdkEventSequence,
20528        state: GtkEventSequenceState,
20529    ) -> gboolean;
20530    pub fn gtk_gesture_set_state(
20531        gesture: *mut GtkGesture,
20532        state: GtkEventSequenceState,
20533    ) -> gboolean;
20534    pub fn gtk_gesture_set_window(gesture: *mut GtkGesture, window: *mut gdk::GdkWindow);
20535    pub fn gtk_gesture_ungroup(gesture: *mut GtkGesture);
20536
20537    //=========================================================================
20538    // GtkGestureDrag
20539    //=========================================================================
20540    pub fn gtk_gesture_drag_get_type() -> GType;
20541    pub fn gtk_gesture_drag_new(widget: *mut GtkWidget) -> *mut GtkGesture;
20542    pub fn gtk_gesture_drag_get_offset(
20543        gesture: *mut GtkGestureDrag,
20544        x: *mut c_double,
20545        y: *mut c_double,
20546    ) -> gboolean;
20547    pub fn gtk_gesture_drag_get_start_point(
20548        gesture: *mut GtkGestureDrag,
20549        x: *mut c_double,
20550        y: *mut c_double,
20551    ) -> gboolean;
20552
20553    //=========================================================================
20554    // GtkGestureLongPress
20555    //=========================================================================
20556    pub fn gtk_gesture_long_press_get_type() -> GType;
20557    pub fn gtk_gesture_long_press_new(widget: *mut GtkWidget) -> *mut GtkGesture;
20558
20559    //=========================================================================
20560    // GtkGestureMultiPress
20561    //=========================================================================
20562    pub fn gtk_gesture_multi_press_get_type() -> GType;
20563    pub fn gtk_gesture_multi_press_new(widget: *mut GtkWidget) -> *mut GtkGesture;
20564    pub fn gtk_gesture_multi_press_get_area(
20565        gesture: *mut GtkGestureMultiPress,
20566        rect: *mut gdk::GdkRectangle,
20567    ) -> gboolean;
20568    pub fn gtk_gesture_multi_press_set_area(
20569        gesture: *mut GtkGestureMultiPress,
20570        rect: *const gdk::GdkRectangle,
20571    );
20572
20573    //=========================================================================
20574    // GtkGesturePan
20575    //=========================================================================
20576    pub fn gtk_gesture_pan_get_type() -> GType;
20577    pub fn gtk_gesture_pan_new(
20578        widget: *mut GtkWidget,
20579        orientation: GtkOrientation,
20580    ) -> *mut GtkGesture;
20581    pub fn gtk_gesture_pan_get_orientation(gesture: *mut GtkGesturePan) -> GtkOrientation;
20582    pub fn gtk_gesture_pan_set_orientation(
20583        gesture: *mut GtkGesturePan,
20584        orientation: GtkOrientation,
20585    );
20586
20587    //=========================================================================
20588    // GtkGestureRotate
20589    //=========================================================================
20590    pub fn gtk_gesture_rotate_get_type() -> GType;
20591    pub fn gtk_gesture_rotate_new(widget: *mut GtkWidget) -> *mut GtkGesture;
20592    pub fn gtk_gesture_rotate_get_angle_delta(gesture: *mut GtkGestureRotate) -> c_double;
20593
20594    //=========================================================================
20595    // GtkGestureSingle
20596    //=========================================================================
20597    pub fn gtk_gesture_single_get_type() -> GType;
20598    pub fn gtk_gesture_single_get_button(gesture: *mut GtkGestureSingle) -> c_uint;
20599    pub fn gtk_gesture_single_get_current_button(gesture: *mut GtkGestureSingle) -> c_uint;
20600    pub fn gtk_gesture_single_get_current_sequence(
20601        gesture: *mut GtkGestureSingle,
20602    ) -> *mut gdk::GdkEventSequence;
20603    pub fn gtk_gesture_single_get_exclusive(gesture: *mut GtkGestureSingle) -> gboolean;
20604    pub fn gtk_gesture_single_get_touch_only(gesture: *mut GtkGestureSingle) -> gboolean;
20605    pub fn gtk_gesture_single_set_button(gesture: *mut GtkGestureSingle, button: c_uint);
20606    pub fn gtk_gesture_single_set_exclusive(gesture: *mut GtkGestureSingle, exclusive: gboolean);
20607    pub fn gtk_gesture_single_set_touch_only(gesture: *mut GtkGestureSingle, touch_only: gboolean);
20608
20609    //=========================================================================
20610    // GtkGestureStylus
20611    //=========================================================================
20612    pub fn gtk_gesture_stylus_get_type() -> GType;
20613    #[cfg(feature = "v3_24")]
20614    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20615    pub fn gtk_gesture_stylus_new(widget: *mut GtkWidget) -> *mut GtkGesture;
20616    #[cfg(feature = "v3_24")]
20617    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20618    pub fn gtk_gesture_stylus_get_axes(
20619        gesture: *mut GtkGestureStylus,
20620        axes: *mut gdk::GdkAxisUse,
20621        values: *mut *mut c_double,
20622    ) -> gboolean;
20623    #[cfg(feature = "v3_24")]
20624    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20625    pub fn gtk_gesture_stylus_get_axis(
20626        gesture: *mut GtkGestureStylus,
20627        axis: gdk::GdkAxisUse,
20628        value: *mut c_double,
20629    ) -> gboolean;
20630    #[cfg(feature = "v3_24")]
20631    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
20632    pub fn gtk_gesture_stylus_get_device_tool(
20633        gesture: *mut GtkGestureStylus,
20634    ) -> *mut gdk::GdkDeviceTool;
20635
20636    //=========================================================================
20637    // GtkGestureSwipe
20638    //=========================================================================
20639    pub fn gtk_gesture_swipe_get_type() -> GType;
20640    pub fn gtk_gesture_swipe_new(widget: *mut GtkWidget) -> *mut GtkGesture;
20641    pub fn gtk_gesture_swipe_get_velocity(
20642        gesture: *mut GtkGestureSwipe,
20643        velocity_x: *mut c_double,
20644        velocity_y: *mut c_double,
20645    ) -> gboolean;
20646
20647    //=========================================================================
20648    // GtkGestureZoom
20649    //=========================================================================
20650    pub fn gtk_gesture_zoom_get_type() -> GType;
20651    pub fn gtk_gesture_zoom_new(widget: *mut GtkWidget) -> *mut GtkGesture;
20652    pub fn gtk_gesture_zoom_get_scale_delta(gesture: *mut GtkGestureZoom) -> c_double;
20653
20654    //=========================================================================
20655    // GtkGrid
20656    //=========================================================================
20657    pub fn gtk_grid_get_type() -> GType;
20658    pub fn gtk_grid_new() -> *mut GtkWidget;
20659    pub fn gtk_grid_attach(
20660        grid: *mut GtkGrid,
20661        child: *mut GtkWidget,
20662        left: c_int,
20663        top: c_int,
20664        width: c_int,
20665        height: c_int,
20666    );
20667    pub fn gtk_grid_attach_next_to(
20668        grid: *mut GtkGrid,
20669        child: *mut GtkWidget,
20670        sibling: *mut GtkWidget,
20671        side: GtkPositionType,
20672        width: c_int,
20673        height: c_int,
20674    );
20675    pub fn gtk_grid_get_baseline_row(grid: *mut GtkGrid) -> c_int;
20676    pub fn gtk_grid_get_child_at(grid: *mut GtkGrid, left: c_int, top: c_int) -> *mut GtkWidget;
20677    pub fn gtk_grid_get_column_homogeneous(grid: *mut GtkGrid) -> gboolean;
20678    pub fn gtk_grid_get_column_spacing(grid: *mut GtkGrid) -> c_uint;
20679    pub fn gtk_grid_get_row_baseline_position(
20680        grid: *mut GtkGrid,
20681        row: c_int,
20682    ) -> GtkBaselinePosition;
20683    pub fn gtk_grid_get_row_homogeneous(grid: *mut GtkGrid) -> gboolean;
20684    pub fn gtk_grid_get_row_spacing(grid: *mut GtkGrid) -> c_uint;
20685    pub fn gtk_grid_insert_column(grid: *mut GtkGrid, position: c_int);
20686    pub fn gtk_grid_insert_next_to(
20687        grid: *mut GtkGrid,
20688        sibling: *mut GtkWidget,
20689        side: GtkPositionType,
20690    );
20691    pub fn gtk_grid_insert_row(grid: *mut GtkGrid, position: c_int);
20692    pub fn gtk_grid_remove_column(grid: *mut GtkGrid, position: c_int);
20693    pub fn gtk_grid_remove_row(grid: *mut GtkGrid, position: c_int);
20694    pub fn gtk_grid_set_baseline_row(grid: *mut GtkGrid, row: c_int);
20695    pub fn gtk_grid_set_column_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
20696    pub fn gtk_grid_set_column_spacing(grid: *mut GtkGrid, spacing: c_uint);
20697    pub fn gtk_grid_set_row_baseline_position(
20698        grid: *mut GtkGrid,
20699        row: c_int,
20700        pos: GtkBaselinePosition,
20701    );
20702    pub fn gtk_grid_set_row_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
20703    pub fn gtk_grid_set_row_spacing(grid: *mut GtkGrid, spacing: c_uint);
20704
20705    //=========================================================================
20706    // GtkHBox
20707    //=========================================================================
20708    pub fn gtk_hbox_get_type() -> GType;
20709    pub fn gtk_hbox_new(homogeneous: gboolean, spacing: c_int) -> *mut GtkWidget;
20710
20711    //=========================================================================
20712    // GtkHButtonBox
20713    //=========================================================================
20714    pub fn gtk_hbutton_box_get_type() -> GType;
20715    pub fn gtk_hbutton_box_new() -> *mut GtkWidget;
20716
20717    //=========================================================================
20718    // GtkHPaned
20719    //=========================================================================
20720    pub fn gtk_hpaned_get_type() -> GType;
20721    pub fn gtk_hpaned_new() -> *mut GtkWidget;
20722
20723    //=========================================================================
20724    // GtkHSV
20725    //=========================================================================
20726    pub fn gtk_hsv_get_type() -> GType;
20727    pub fn gtk_hsv_new() -> *mut GtkWidget;
20728    pub fn gtk_hsv_to_rgb(
20729        h: c_double,
20730        s: c_double,
20731        v: c_double,
20732        r: *mut c_double,
20733        g: *mut c_double,
20734        b: *mut c_double,
20735    );
20736    pub fn gtk_hsv_get_color(
20737        hsv: *mut GtkHSV,
20738        h: *mut c_double,
20739        s: *mut c_double,
20740        v: *mut c_double,
20741    );
20742    pub fn gtk_hsv_get_metrics(hsv: *mut GtkHSV, size: *mut c_int, ring_width: *mut c_int);
20743    pub fn gtk_hsv_is_adjusting(hsv: *mut GtkHSV) -> gboolean;
20744    pub fn gtk_hsv_set_color(hsv: *mut GtkHSV, h: c_double, s: c_double, v: c_double);
20745    pub fn gtk_hsv_set_metrics(hsv: *mut GtkHSV, size: c_int, ring_width: c_int);
20746
20747    //=========================================================================
20748    // GtkHScale
20749    //=========================================================================
20750    pub fn gtk_hscale_get_type() -> GType;
20751    pub fn gtk_hscale_new(adjustment: *mut GtkAdjustment) -> *mut GtkWidget;
20752    pub fn gtk_hscale_new_with_range(
20753        min: c_double,
20754        max: c_double,
20755        step: c_double,
20756    ) -> *mut GtkWidget;
20757
20758    //=========================================================================
20759    // GtkHScrollbar
20760    //=========================================================================
20761    pub fn gtk_hscrollbar_get_type() -> GType;
20762    pub fn gtk_hscrollbar_new(adjustment: *mut GtkAdjustment) -> *mut GtkWidget;
20763
20764    //=========================================================================
20765    // GtkHSeparator
20766    //=========================================================================
20767    pub fn gtk_hseparator_get_type() -> GType;
20768    pub fn gtk_hseparator_new() -> *mut GtkWidget;
20769
20770    //=========================================================================
20771    // GtkHandleBox
20772    //=========================================================================
20773    pub fn gtk_handle_box_get_type() -> GType;
20774    pub fn gtk_handle_box_new() -> *mut GtkWidget;
20775    pub fn gtk_handle_box_get_child_detached(handle_box: *mut GtkHandleBox) -> gboolean;
20776    pub fn gtk_handle_box_get_handle_position(handle_box: *mut GtkHandleBox) -> GtkPositionType;
20777    pub fn gtk_handle_box_get_shadow_type(handle_box: *mut GtkHandleBox) -> GtkShadowType;
20778    pub fn gtk_handle_box_get_snap_edge(handle_box: *mut GtkHandleBox) -> GtkPositionType;
20779    pub fn gtk_handle_box_set_handle_position(
20780        handle_box: *mut GtkHandleBox,
20781        position: GtkPositionType,
20782    );
20783    pub fn gtk_handle_box_set_shadow_type(handle_box: *mut GtkHandleBox, type_: GtkShadowType);
20784    pub fn gtk_handle_box_set_snap_edge(handle_box: *mut GtkHandleBox, edge: GtkPositionType);
20785
20786    //=========================================================================
20787    // GtkHeaderBar
20788    //=========================================================================
20789    pub fn gtk_header_bar_get_type() -> GType;
20790    pub fn gtk_header_bar_new() -> *mut GtkWidget;
20791    pub fn gtk_header_bar_get_custom_title(bar: *mut GtkHeaderBar) -> *mut GtkWidget;
20792    pub fn gtk_header_bar_get_decoration_layout(bar: *mut GtkHeaderBar) -> *const c_char;
20793    pub fn gtk_header_bar_get_has_subtitle(bar: *mut GtkHeaderBar) -> gboolean;
20794    pub fn gtk_header_bar_get_show_close_button(bar: *mut GtkHeaderBar) -> gboolean;
20795    pub fn gtk_header_bar_get_subtitle(bar: *mut GtkHeaderBar) -> *const c_char;
20796    pub fn gtk_header_bar_get_title(bar: *mut GtkHeaderBar) -> *const c_char;
20797    pub fn gtk_header_bar_pack_end(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
20798    pub fn gtk_header_bar_pack_start(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
20799    pub fn gtk_header_bar_set_custom_title(bar: *mut GtkHeaderBar, title_widget: *mut GtkWidget);
20800    pub fn gtk_header_bar_set_decoration_layout(bar: *mut GtkHeaderBar, layout: *const c_char);
20801    pub fn gtk_header_bar_set_has_subtitle(bar: *mut GtkHeaderBar, setting: gboolean);
20802    pub fn gtk_header_bar_set_show_close_button(bar: *mut GtkHeaderBar, setting: gboolean);
20803    pub fn gtk_header_bar_set_subtitle(bar: *mut GtkHeaderBar, subtitle: *const c_char);
20804    pub fn gtk_header_bar_set_title(bar: *mut GtkHeaderBar, title: *const c_char);
20805
20806    //=========================================================================
20807    // GtkHeaderBarAccessible
20808    //=========================================================================
20809    #[cfg(feature = "v3_24_11")]
20810    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24_11")))]
20811    pub fn gtk_header_bar_accessible_get_type() -> GType;
20812
20813    //=========================================================================
20814    // GtkIMContext
20815    //=========================================================================
20816    pub fn gtk_im_context_get_type() -> GType;
20817    pub fn gtk_im_context_delete_surrounding(
20818        context: *mut GtkIMContext,
20819        offset: c_int,
20820        n_chars: c_int,
20821    ) -> gboolean;
20822    pub fn gtk_im_context_filter_keypress(
20823        context: *mut GtkIMContext,
20824        event: *mut gdk::GdkEventKey,
20825    ) -> gboolean;
20826    pub fn gtk_im_context_focus_in(context: *mut GtkIMContext);
20827    pub fn gtk_im_context_focus_out(context: *mut GtkIMContext);
20828    pub fn gtk_im_context_get_preedit_string(
20829        context: *mut GtkIMContext,
20830        str: *mut *mut c_char,
20831        attrs: *mut *mut pango::PangoAttrList,
20832        cursor_pos: *mut c_int,
20833    );
20834    pub fn gtk_im_context_get_surrounding(
20835        context: *mut GtkIMContext,
20836        text: *mut *mut c_char,
20837        cursor_index: *mut c_int,
20838    ) -> gboolean;
20839    pub fn gtk_im_context_reset(context: *mut GtkIMContext);
20840    pub fn gtk_im_context_set_client_window(
20841        context: *mut GtkIMContext,
20842        window: *mut gdk::GdkWindow,
20843    );
20844    pub fn gtk_im_context_set_cursor_location(
20845        context: *mut GtkIMContext,
20846        area: *const gdk::GdkRectangle,
20847    );
20848    pub fn gtk_im_context_set_surrounding(
20849        context: *mut GtkIMContext,
20850        text: *const c_char,
20851        len: c_int,
20852        cursor_index: c_int,
20853    );
20854    pub fn gtk_im_context_set_use_preedit(context: *mut GtkIMContext, use_preedit: gboolean);
20855
20856    //=========================================================================
20857    // GtkIMContextSimple
20858    //=========================================================================
20859    pub fn gtk_im_context_simple_get_type() -> GType;
20860    pub fn gtk_im_context_simple_new() -> *mut GtkIMContext;
20861    pub fn gtk_im_context_simple_add_compose_file(
20862        context_simple: *mut GtkIMContextSimple,
20863        compose_file: *const c_char,
20864    );
20865    pub fn gtk_im_context_simple_add_table(
20866        context_simple: *mut GtkIMContextSimple,
20867        data: *mut u16,
20868        max_seq_len: c_int,
20869        n_seqs: c_int,
20870    );
20871
20872    //=========================================================================
20873    // GtkIMMulticontext
20874    //=========================================================================
20875    pub fn gtk_im_multicontext_get_type() -> GType;
20876    pub fn gtk_im_multicontext_new() -> *mut GtkIMContext;
20877    pub fn gtk_im_multicontext_append_menuitems(
20878        context: *mut GtkIMMulticontext,
20879        menushell: *mut GtkMenuShell,
20880    );
20881    pub fn gtk_im_multicontext_get_context_id(context: *mut GtkIMMulticontext) -> *const c_char;
20882    pub fn gtk_im_multicontext_set_context_id(
20883        context: *mut GtkIMMulticontext,
20884        context_id: *const c_char,
20885    );
20886
20887    //=========================================================================
20888    // GtkIconFactory
20889    //=========================================================================
20890    pub fn gtk_icon_factory_get_type() -> GType;
20891    pub fn gtk_icon_factory_new() -> *mut GtkIconFactory;
20892    pub fn gtk_icon_factory_lookup_default(stock_id: *const c_char) -> *mut GtkIconSet;
20893    pub fn gtk_icon_factory_add(
20894        factory: *mut GtkIconFactory,
20895        stock_id: *const c_char,
20896        icon_set: *mut GtkIconSet,
20897    );
20898    pub fn gtk_icon_factory_add_default(factory: *mut GtkIconFactory);
20899    pub fn gtk_icon_factory_lookup(
20900        factory: *mut GtkIconFactory,
20901        stock_id: *const c_char,
20902    ) -> *mut GtkIconSet;
20903    pub fn gtk_icon_factory_remove_default(factory: *mut GtkIconFactory);
20904
20905    //=========================================================================
20906    // GtkIconInfo
20907    //=========================================================================
20908    pub fn gtk_icon_info_get_type() -> GType;
20909    pub fn gtk_icon_info_new_for_pixbuf(
20910        icon_theme: *mut GtkIconTheme,
20911        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
20912    ) -> *mut GtkIconInfo;
20913    pub fn gtk_icon_info_copy(icon_info: *mut GtkIconInfo) -> *mut GtkIconInfo;
20914    pub fn gtk_icon_info_free(icon_info: *mut GtkIconInfo);
20915    pub fn gtk_icon_info_get_attach_points(
20916        icon_info: *mut GtkIconInfo,
20917        points: *mut *mut gdk::GdkPoint,
20918        n_points: *mut c_int,
20919    ) -> gboolean;
20920    pub fn gtk_icon_info_get_base_scale(icon_info: *mut GtkIconInfo) -> c_int;
20921    pub fn gtk_icon_info_get_base_size(icon_info: *mut GtkIconInfo) -> c_int;
20922    pub fn gtk_icon_info_get_builtin_pixbuf(
20923        icon_info: *mut GtkIconInfo,
20924    ) -> *mut gdk_pixbuf::GdkPixbuf;
20925    pub fn gtk_icon_info_get_display_name(icon_info: *mut GtkIconInfo) -> *const c_char;
20926    pub fn gtk_icon_info_get_embedded_rect(
20927        icon_info: *mut GtkIconInfo,
20928        rectangle: *mut gdk::GdkRectangle,
20929    ) -> gboolean;
20930    pub fn gtk_icon_info_get_filename(icon_info: *mut GtkIconInfo) -> *const c_char;
20931    pub fn gtk_icon_info_is_symbolic(icon_info: *mut GtkIconInfo) -> gboolean;
20932    pub fn gtk_icon_info_load_icon(
20933        icon_info: *mut GtkIconInfo,
20934        error: *mut *mut glib::GError,
20935    ) -> *mut gdk_pixbuf::GdkPixbuf;
20936    pub fn gtk_icon_info_load_icon_async(
20937        icon_info: *mut GtkIconInfo,
20938        cancellable: *mut gio::GCancellable,
20939        callback: gio::GAsyncReadyCallback,
20940        user_data: gpointer,
20941    );
20942    pub fn gtk_icon_info_load_icon_finish(
20943        icon_info: *mut GtkIconInfo,
20944        res: *mut gio::GAsyncResult,
20945        error: *mut *mut glib::GError,
20946    ) -> *mut gdk_pixbuf::GdkPixbuf;
20947    pub fn gtk_icon_info_load_surface(
20948        icon_info: *mut GtkIconInfo,
20949        for_window: *mut gdk::GdkWindow,
20950        error: *mut *mut glib::GError,
20951    ) -> *mut cairo::cairo_surface_t;
20952    pub fn gtk_icon_info_load_symbolic(
20953        icon_info: *mut GtkIconInfo,
20954        fg: *const gdk::GdkRGBA,
20955        success_color: *const gdk::GdkRGBA,
20956        warning_color: *const gdk::GdkRGBA,
20957        error_color: *const gdk::GdkRGBA,
20958        was_symbolic: *mut gboolean,
20959        error: *mut *mut glib::GError,
20960    ) -> *mut gdk_pixbuf::GdkPixbuf;
20961    pub fn gtk_icon_info_load_symbolic_async(
20962        icon_info: *mut GtkIconInfo,
20963        fg: *const gdk::GdkRGBA,
20964        success_color: *const gdk::GdkRGBA,
20965        warning_color: *const gdk::GdkRGBA,
20966        error_color: *const gdk::GdkRGBA,
20967        cancellable: *mut gio::GCancellable,
20968        callback: gio::GAsyncReadyCallback,
20969        user_data: gpointer,
20970    );
20971    pub fn gtk_icon_info_load_symbolic_finish(
20972        icon_info: *mut GtkIconInfo,
20973        res: *mut gio::GAsyncResult,
20974        was_symbolic: *mut gboolean,
20975        error: *mut *mut glib::GError,
20976    ) -> *mut gdk_pixbuf::GdkPixbuf;
20977    pub fn gtk_icon_info_load_symbolic_for_context(
20978        icon_info: *mut GtkIconInfo,
20979        context: *mut GtkStyleContext,
20980        was_symbolic: *mut gboolean,
20981        error: *mut *mut glib::GError,
20982    ) -> *mut gdk_pixbuf::GdkPixbuf;
20983    pub fn gtk_icon_info_load_symbolic_for_context_async(
20984        icon_info: *mut GtkIconInfo,
20985        context: *mut GtkStyleContext,
20986        cancellable: *mut gio::GCancellable,
20987        callback: gio::GAsyncReadyCallback,
20988        user_data: gpointer,
20989    );
20990    pub fn gtk_icon_info_load_symbolic_for_context_finish(
20991        icon_info: *mut GtkIconInfo,
20992        res: *mut gio::GAsyncResult,
20993        was_symbolic: *mut gboolean,
20994        error: *mut *mut glib::GError,
20995    ) -> *mut gdk_pixbuf::GdkPixbuf;
20996    pub fn gtk_icon_info_load_symbolic_for_style(
20997        icon_info: *mut GtkIconInfo,
20998        style: *mut GtkStyle,
20999        state: GtkStateType,
21000        was_symbolic: *mut gboolean,
21001        error: *mut *mut glib::GError,
21002    ) -> *mut gdk_pixbuf::GdkPixbuf;
21003    pub fn gtk_icon_info_set_raw_coordinates(
21004        icon_info: *mut GtkIconInfo,
21005        raw_coordinates: gboolean,
21006    );
21007
21008    //=========================================================================
21009    // GtkIconTheme
21010    //=========================================================================
21011    pub fn gtk_icon_theme_get_type() -> GType;
21012    pub fn gtk_icon_theme_new() -> *mut GtkIconTheme;
21013    pub fn gtk_icon_theme_add_builtin_icon(
21014        icon_name: *const c_char,
21015        size: c_int,
21016        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
21017    );
21018    pub fn gtk_icon_theme_get_default() -> *mut GtkIconTheme;
21019    pub fn gtk_icon_theme_get_for_screen(screen: *mut gdk::GdkScreen) -> *mut GtkIconTheme;
21020    pub fn gtk_icon_theme_add_resource_path(icon_theme: *mut GtkIconTheme, path: *const c_char);
21021    pub fn gtk_icon_theme_append_search_path(icon_theme: *mut GtkIconTheme, path: *const c_char);
21022    pub fn gtk_icon_theme_choose_icon(
21023        icon_theme: *mut GtkIconTheme,
21024        icon_names: *mut *const c_char,
21025        size: c_int,
21026        flags: GtkIconLookupFlags,
21027    ) -> *mut GtkIconInfo;
21028    pub fn gtk_icon_theme_choose_icon_for_scale(
21029        icon_theme: *mut GtkIconTheme,
21030        icon_names: *mut *const c_char,
21031        size: c_int,
21032        scale: c_int,
21033        flags: GtkIconLookupFlags,
21034    ) -> *mut GtkIconInfo;
21035    pub fn gtk_icon_theme_get_example_icon_name(icon_theme: *mut GtkIconTheme) -> *mut c_char;
21036    pub fn gtk_icon_theme_get_icon_sizes(
21037        icon_theme: *mut GtkIconTheme,
21038        icon_name: *const c_char,
21039    ) -> *mut c_int;
21040    pub fn gtk_icon_theme_get_search_path(
21041        icon_theme: *mut GtkIconTheme,
21042        path: *mut *mut *mut c_char,
21043        n_elements: *mut c_int,
21044    );
21045    pub fn gtk_icon_theme_has_icon(
21046        icon_theme: *mut GtkIconTheme,
21047        icon_name: *const c_char,
21048    ) -> gboolean;
21049    pub fn gtk_icon_theme_list_contexts(icon_theme: *mut GtkIconTheme) -> *mut glib::GList;
21050    pub fn gtk_icon_theme_list_icons(
21051        icon_theme: *mut GtkIconTheme,
21052        context: *const c_char,
21053    ) -> *mut glib::GList;
21054    pub fn gtk_icon_theme_load_icon(
21055        icon_theme: *mut GtkIconTheme,
21056        icon_name: *const c_char,
21057        size: c_int,
21058        flags: GtkIconLookupFlags,
21059        error: *mut *mut glib::GError,
21060    ) -> *mut gdk_pixbuf::GdkPixbuf;
21061    pub fn gtk_icon_theme_load_icon_for_scale(
21062        icon_theme: *mut GtkIconTheme,
21063        icon_name: *const c_char,
21064        size: c_int,
21065        scale: c_int,
21066        flags: GtkIconLookupFlags,
21067        error: *mut *mut glib::GError,
21068    ) -> *mut gdk_pixbuf::GdkPixbuf;
21069    pub fn gtk_icon_theme_load_surface(
21070        icon_theme: *mut GtkIconTheme,
21071        icon_name: *const c_char,
21072        size: c_int,
21073        scale: c_int,
21074        for_window: *mut gdk::GdkWindow,
21075        flags: GtkIconLookupFlags,
21076        error: *mut *mut glib::GError,
21077    ) -> *mut cairo::cairo_surface_t;
21078    pub fn gtk_icon_theme_lookup_by_gicon(
21079        icon_theme: *mut GtkIconTheme,
21080        icon: *mut gio::GIcon,
21081        size: c_int,
21082        flags: GtkIconLookupFlags,
21083    ) -> *mut GtkIconInfo;
21084    pub fn gtk_icon_theme_lookup_by_gicon_for_scale(
21085        icon_theme: *mut GtkIconTheme,
21086        icon: *mut gio::GIcon,
21087        size: c_int,
21088        scale: c_int,
21089        flags: GtkIconLookupFlags,
21090    ) -> *mut GtkIconInfo;
21091    pub fn gtk_icon_theme_lookup_icon(
21092        icon_theme: *mut GtkIconTheme,
21093        icon_name: *const c_char,
21094        size: c_int,
21095        flags: GtkIconLookupFlags,
21096    ) -> *mut GtkIconInfo;
21097    pub fn gtk_icon_theme_lookup_icon_for_scale(
21098        icon_theme: *mut GtkIconTheme,
21099        icon_name: *const c_char,
21100        size: c_int,
21101        scale: c_int,
21102        flags: GtkIconLookupFlags,
21103    ) -> *mut GtkIconInfo;
21104    pub fn gtk_icon_theme_prepend_search_path(icon_theme: *mut GtkIconTheme, path: *const c_char);
21105    pub fn gtk_icon_theme_rescan_if_needed(icon_theme: *mut GtkIconTheme) -> gboolean;
21106    pub fn gtk_icon_theme_set_custom_theme(
21107        icon_theme: *mut GtkIconTheme,
21108        theme_name: *const c_char,
21109    );
21110    pub fn gtk_icon_theme_set_screen(icon_theme: *mut GtkIconTheme, screen: *mut gdk::GdkScreen);
21111    pub fn gtk_icon_theme_set_search_path(
21112        icon_theme: *mut GtkIconTheme,
21113        path: *mut *const c_char,
21114        n_elements: c_int,
21115    );
21116
21117    //=========================================================================
21118    // GtkIconView
21119    //=========================================================================
21120    pub fn gtk_icon_view_get_type() -> GType;
21121    pub fn gtk_icon_view_new() -> *mut GtkWidget;
21122    pub fn gtk_icon_view_new_with_area(area: *mut GtkCellArea) -> *mut GtkWidget;
21123    pub fn gtk_icon_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
21124    pub fn gtk_icon_view_convert_widget_to_bin_window_coords(
21125        icon_view: *mut GtkIconView,
21126        wx: c_int,
21127        wy: c_int,
21128        bx: *mut c_int,
21129        by: *mut c_int,
21130    );
21131    pub fn gtk_icon_view_create_drag_icon(
21132        icon_view: *mut GtkIconView,
21133        path: *mut GtkTreePath,
21134    ) -> *mut cairo::cairo_surface_t;
21135    pub fn gtk_icon_view_enable_model_drag_dest(
21136        icon_view: *mut GtkIconView,
21137        targets: *const GtkTargetEntry,
21138        n_targets: c_int,
21139        actions: gdk::GdkDragAction,
21140    );
21141    pub fn gtk_icon_view_enable_model_drag_source(
21142        icon_view: *mut GtkIconView,
21143        start_button_mask: gdk::GdkModifierType,
21144        targets: *const GtkTargetEntry,
21145        n_targets: c_int,
21146        actions: gdk::GdkDragAction,
21147    );
21148    pub fn gtk_icon_view_get_activate_on_single_click(icon_view: *mut GtkIconView) -> gboolean;
21149    pub fn gtk_icon_view_get_cell_rect(
21150        icon_view: *mut GtkIconView,
21151        path: *mut GtkTreePath,
21152        cell: *mut GtkCellRenderer,
21153        rect: *mut gdk::GdkRectangle,
21154    ) -> gboolean;
21155    pub fn gtk_icon_view_get_column_spacing(icon_view: *mut GtkIconView) -> c_int;
21156    pub fn gtk_icon_view_get_columns(icon_view: *mut GtkIconView) -> c_int;
21157    pub fn gtk_icon_view_get_cursor(
21158        icon_view: *mut GtkIconView,
21159        path: *mut *mut GtkTreePath,
21160        cell: *mut *mut GtkCellRenderer,
21161    ) -> gboolean;
21162    pub fn gtk_icon_view_get_dest_item_at_pos(
21163        icon_view: *mut GtkIconView,
21164        drag_x: c_int,
21165        drag_y: c_int,
21166        path: *mut *mut GtkTreePath,
21167        pos: *mut GtkIconViewDropPosition,
21168    ) -> gboolean;
21169    pub fn gtk_icon_view_get_drag_dest_item(
21170        icon_view: *mut GtkIconView,
21171        path: *mut *mut GtkTreePath,
21172        pos: *mut GtkIconViewDropPosition,
21173    );
21174    pub fn gtk_icon_view_get_item_at_pos(
21175        icon_view: *mut GtkIconView,
21176        x: c_int,
21177        y: c_int,
21178        path: *mut *mut GtkTreePath,
21179        cell: *mut *mut GtkCellRenderer,
21180    ) -> gboolean;
21181    pub fn gtk_icon_view_get_item_column(
21182        icon_view: *mut GtkIconView,
21183        path: *mut GtkTreePath,
21184    ) -> c_int;
21185    pub fn gtk_icon_view_get_item_orientation(icon_view: *mut GtkIconView) -> GtkOrientation;
21186    pub fn gtk_icon_view_get_item_padding(icon_view: *mut GtkIconView) -> c_int;
21187    pub fn gtk_icon_view_get_item_row(icon_view: *mut GtkIconView, path: *mut GtkTreePath)
21188    -> c_int;
21189    pub fn gtk_icon_view_get_item_width(icon_view: *mut GtkIconView) -> c_int;
21190    pub fn gtk_icon_view_get_margin(icon_view: *mut GtkIconView) -> c_int;
21191    pub fn gtk_icon_view_get_markup_column(icon_view: *mut GtkIconView) -> c_int;
21192    pub fn gtk_icon_view_get_model(icon_view: *mut GtkIconView) -> *mut GtkTreeModel;
21193    pub fn gtk_icon_view_get_path_at_pos(
21194        icon_view: *mut GtkIconView,
21195        x: c_int,
21196        y: c_int,
21197    ) -> *mut GtkTreePath;
21198    pub fn gtk_icon_view_get_pixbuf_column(icon_view: *mut GtkIconView) -> c_int;
21199    pub fn gtk_icon_view_get_reorderable(icon_view: *mut GtkIconView) -> gboolean;
21200    pub fn gtk_icon_view_get_row_spacing(icon_view: *mut GtkIconView) -> c_int;
21201    pub fn gtk_icon_view_get_selected_items(icon_view: *mut GtkIconView) -> *mut glib::GList;
21202    pub fn gtk_icon_view_get_selection_mode(icon_view: *mut GtkIconView) -> GtkSelectionMode;
21203    pub fn gtk_icon_view_get_spacing(icon_view: *mut GtkIconView) -> c_int;
21204    pub fn gtk_icon_view_get_text_column(icon_view: *mut GtkIconView) -> c_int;
21205    pub fn gtk_icon_view_get_tooltip_column(icon_view: *mut GtkIconView) -> c_int;
21206    pub fn gtk_icon_view_get_tooltip_context(
21207        icon_view: *mut GtkIconView,
21208        x: *mut c_int,
21209        y: *mut c_int,
21210        keyboard_tip: gboolean,
21211        model: *mut *mut GtkTreeModel,
21212        path: *mut *mut GtkTreePath,
21213        iter: *mut GtkTreeIter,
21214    ) -> gboolean;
21215    pub fn gtk_icon_view_get_visible_range(
21216        icon_view: *mut GtkIconView,
21217        start_path: *mut *mut GtkTreePath,
21218        end_path: *mut *mut GtkTreePath,
21219    ) -> gboolean;
21220    pub fn gtk_icon_view_item_activated(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
21221    pub fn gtk_icon_view_path_is_selected(
21222        icon_view: *mut GtkIconView,
21223        path: *mut GtkTreePath,
21224    ) -> gboolean;
21225    pub fn gtk_icon_view_scroll_to_path(
21226        icon_view: *mut GtkIconView,
21227        path: *mut GtkTreePath,
21228        use_align: gboolean,
21229        row_align: c_float,
21230        col_align: c_float,
21231    );
21232    pub fn gtk_icon_view_select_all(icon_view: *mut GtkIconView);
21233    pub fn gtk_icon_view_select_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
21234    pub fn gtk_icon_view_selected_foreach(
21235        icon_view: *mut GtkIconView,
21236        func: GtkIconViewForeachFunc,
21237        data: gpointer,
21238    );
21239    pub fn gtk_icon_view_set_activate_on_single_click(
21240        icon_view: *mut GtkIconView,
21241        single: gboolean,
21242    );
21243    pub fn gtk_icon_view_set_column_spacing(icon_view: *mut GtkIconView, column_spacing: c_int);
21244    pub fn gtk_icon_view_set_columns(icon_view: *mut GtkIconView, columns: c_int);
21245    pub fn gtk_icon_view_set_cursor(
21246        icon_view: *mut GtkIconView,
21247        path: *mut GtkTreePath,
21248        cell: *mut GtkCellRenderer,
21249        start_editing: gboolean,
21250    );
21251    pub fn gtk_icon_view_set_drag_dest_item(
21252        icon_view: *mut GtkIconView,
21253        path: *mut GtkTreePath,
21254        pos: GtkIconViewDropPosition,
21255    );
21256    pub fn gtk_icon_view_set_item_orientation(
21257        icon_view: *mut GtkIconView,
21258        orientation: GtkOrientation,
21259    );
21260    pub fn gtk_icon_view_set_item_padding(icon_view: *mut GtkIconView, item_padding: c_int);
21261    pub fn gtk_icon_view_set_item_width(icon_view: *mut GtkIconView, item_width: c_int);
21262    pub fn gtk_icon_view_set_margin(icon_view: *mut GtkIconView, margin: c_int);
21263    pub fn gtk_icon_view_set_markup_column(icon_view: *mut GtkIconView, column: c_int);
21264    pub fn gtk_icon_view_set_model(icon_view: *mut GtkIconView, model: *mut GtkTreeModel);
21265    pub fn gtk_icon_view_set_pixbuf_column(icon_view: *mut GtkIconView, column: c_int);
21266    pub fn gtk_icon_view_set_reorderable(icon_view: *mut GtkIconView, reorderable: gboolean);
21267    pub fn gtk_icon_view_set_row_spacing(icon_view: *mut GtkIconView, row_spacing: c_int);
21268    pub fn gtk_icon_view_set_selection_mode(icon_view: *mut GtkIconView, mode: GtkSelectionMode);
21269    pub fn gtk_icon_view_set_spacing(icon_view: *mut GtkIconView, spacing: c_int);
21270    pub fn gtk_icon_view_set_text_column(icon_view: *mut GtkIconView, column: c_int);
21271    pub fn gtk_icon_view_set_tooltip_cell(
21272        icon_view: *mut GtkIconView,
21273        tooltip: *mut GtkTooltip,
21274        path: *mut GtkTreePath,
21275        cell: *mut GtkCellRenderer,
21276    );
21277    pub fn gtk_icon_view_set_tooltip_column(icon_view: *mut GtkIconView, column: c_int);
21278    pub fn gtk_icon_view_set_tooltip_item(
21279        icon_view: *mut GtkIconView,
21280        tooltip: *mut GtkTooltip,
21281        path: *mut GtkTreePath,
21282    );
21283    pub fn gtk_icon_view_unselect_all(icon_view: *mut GtkIconView);
21284    pub fn gtk_icon_view_unselect_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
21285    pub fn gtk_icon_view_unset_model_drag_dest(icon_view: *mut GtkIconView);
21286    pub fn gtk_icon_view_unset_model_drag_source(icon_view: *mut GtkIconView);
21287
21288    //=========================================================================
21289    // GtkIconViewAccessible
21290    //=========================================================================
21291    pub fn gtk_icon_view_accessible_get_type() -> GType;
21292
21293    //=========================================================================
21294    // GtkImage
21295    //=========================================================================
21296    pub fn gtk_image_get_type() -> GType;
21297    pub fn gtk_image_new() -> *mut GtkWidget;
21298    pub fn gtk_image_new_from_animation(
21299        animation: *mut gdk_pixbuf::GdkPixbufAnimation,
21300    ) -> *mut GtkWidget;
21301    pub fn gtk_image_new_from_file(filename: *const c_char) -> *mut GtkWidget;
21302    pub fn gtk_image_new_from_gicon(icon: *mut gio::GIcon, size: GtkIconSize) -> *mut GtkWidget;
21303    pub fn gtk_image_new_from_icon_name(
21304        icon_name: *const c_char,
21305        size: GtkIconSize,
21306    ) -> *mut GtkWidget;
21307    pub fn gtk_image_new_from_icon_set(
21308        icon_set: *mut GtkIconSet,
21309        size: GtkIconSize,
21310    ) -> *mut GtkWidget;
21311    pub fn gtk_image_new_from_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
21312    pub fn gtk_image_new_from_resource(resource_path: *const c_char) -> *mut GtkWidget;
21313    pub fn gtk_image_new_from_stock(stock_id: *const c_char, size: GtkIconSize) -> *mut GtkWidget;
21314    pub fn gtk_image_new_from_surface(surface: *mut cairo::cairo_surface_t) -> *mut GtkWidget;
21315    pub fn gtk_image_clear(image: *mut GtkImage);
21316    pub fn gtk_image_get_animation(image: *mut GtkImage) -> *mut gdk_pixbuf::GdkPixbufAnimation;
21317    pub fn gtk_image_get_gicon(
21318        image: *mut GtkImage,
21319        gicon: *mut *mut gio::GIcon,
21320        size: *mut GtkIconSize,
21321    );
21322    pub fn gtk_image_get_icon_name(
21323        image: *mut GtkImage,
21324        icon_name: *mut *const c_char,
21325        size: *mut GtkIconSize,
21326    );
21327    pub fn gtk_image_get_icon_set(
21328        image: *mut GtkImage,
21329        icon_set: *mut *mut GtkIconSet,
21330        size: *mut GtkIconSize,
21331    );
21332    pub fn gtk_image_get_pixbuf(image: *mut GtkImage) -> *mut gdk_pixbuf::GdkPixbuf;
21333    pub fn gtk_image_get_pixel_size(image: *mut GtkImage) -> c_int;
21334    pub fn gtk_image_get_stock(
21335        image: *mut GtkImage,
21336        stock_id: *mut *mut c_char,
21337        size: *mut GtkIconSize,
21338    );
21339    pub fn gtk_image_get_storage_type(image: *mut GtkImage) -> GtkImageType;
21340    pub fn gtk_image_set_from_animation(
21341        image: *mut GtkImage,
21342        animation: *mut gdk_pixbuf::GdkPixbufAnimation,
21343    );
21344    pub fn gtk_image_set_from_file(image: *mut GtkImage, filename: *const c_char);
21345    pub fn gtk_image_set_from_gicon(image: *mut GtkImage, icon: *mut gio::GIcon, size: GtkIconSize);
21346    pub fn gtk_image_set_from_icon_name(
21347        image: *mut GtkImage,
21348        icon_name: *const c_char,
21349        size: GtkIconSize,
21350    );
21351    pub fn gtk_image_set_from_icon_set(
21352        image: *mut GtkImage,
21353        icon_set: *mut GtkIconSet,
21354        size: GtkIconSize,
21355    );
21356    pub fn gtk_image_set_from_pixbuf(image: *mut GtkImage, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
21357    pub fn gtk_image_set_from_resource(image: *mut GtkImage, resource_path: *const c_char);
21358    pub fn gtk_image_set_from_stock(
21359        image: *mut GtkImage,
21360        stock_id: *const c_char,
21361        size: GtkIconSize,
21362    );
21363    pub fn gtk_image_set_from_surface(image: *mut GtkImage, surface: *mut cairo::cairo_surface_t);
21364    pub fn gtk_image_set_pixel_size(image: *mut GtkImage, pixel_size: c_int);
21365
21366    //=========================================================================
21367    // GtkImageAccessible
21368    //=========================================================================
21369    pub fn gtk_image_accessible_get_type() -> GType;
21370
21371    //=========================================================================
21372    // GtkImageCellAccessible
21373    //=========================================================================
21374    pub fn gtk_image_cell_accessible_get_type() -> GType;
21375
21376    //=========================================================================
21377    // GtkImageMenuItem
21378    //=========================================================================
21379    pub fn gtk_image_menu_item_get_type() -> GType;
21380    pub fn gtk_image_menu_item_new() -> *mut GtkWidget;
21381    pub fn gtk_image_menu_item_new_from_stock(
21382        stock_id: *const c_char,
21383        accel_group: *mut GtkAccelGroup,
21384    ) -> *mut GtkWidget;
21385    pub fn gtk_image_menu_item_new_with_label(label: *const c_char) -> *mut GtkWidget;
21386    pub fn gtk_image_menu_item_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
21387    pub fn gtk_image_menu_item_get_always_show_image(
21388        image_menu_item: *mut GtkImageMenuItem,
21389    ) -> gboolean;
21390    pub fn gtk_image_menu_item_get_image(image_menu_item: *mut GtkImageMenuItem) -> *mut GtkWidget;
21391    pub fn gtk_image_menu_item_get_use_stock(image_menu_item: *mut GtkImageMenuItem) -> gboolean;
21392    pub fn gtk_image_menu_item_set_accel_group(
21393        image_menu_item: *mut GtkImageMenuItem,
21394        accel_group: *mut GtkAccelGroup,
21395    );
21396    pub fn gtk_image_menu_item_set_always_show_image(
21397        image_menu_item: *mut GtkImageMenuItem,
21398        always_show: gboolean,
21399    );
21400    pub fn gtk_image_menu_item_set_image(
21401        image_menu_item: *mut GtkImageMenuItem,
21402        image: *mut GtkWidget,
21403    );
21404    pub fn gtk_image_menu_item_set_use_stock(
21405        image_menu_item: *mut GtkImageMenuItem,
21406        use_stock: gboolean,
21407    );
21408
21409    //=========================================================================
21410    // GtkInfoBar
21411    //=========================================================================
21412    pub fn gtk_info_bar_get_type() -> GType;
21413    pub fn gtk_info_bar_new() -> *mut GtkWidget;
21414    pub fn gtk_info_bar_new_with_buttons(first_button_text: *const c_char, ...) -> *mut GtkWidget;
21415    pub fn gtk_info_bar_add_action_widget(
21416        info_bar: *mut GtkInfoBar,
21417        child: *mut GtkWidget,
21418        response_id: GtkResponseType,
21419    );
21420    pub fn gtk_info_bar_add_button(
21421        info_bar: *mut GtkInfoBar,
21422        button_text: *const c_char,
21423        response_id: GtkResponseType,
21424    ) -> *mut GtkButton;
21425    pub fn gtk_info_bar_add_buttons(
21426        info_bar: *mut GtkInfoBar,
21427        first_button_text: *const c_char,
21428        ...
21429    );
21430    pub fn gtk_info_bar_get_action_area(info_bar: *mut GtkInfoBar) -> *mut GtkBox;
21431    pub fn gtk_info_bar_get_content_area(info_bar: *mut GtkInfoBar) -> *mut GtkBox;
21432    pub fn gtk_info_bar_get_message_type(info_bar: *mut GtkInfoBar) -> GtkMessageType;
21433    pub fn gtk_info_bar_get_revealed(info_bar: *mut GtkInfoBar) -> gboolean;
21434    pub fn gtk_info_bar_get_show_close_button(info_bar: *mut GtkInfoBar) -> gboolean;
21435    pub fn gtk_info_bar_response(info_bar: *mut GtkInfoBar, response_id: GtkResponseType);
21436    pub fn gtk_info_bar_set_default_response(
21437        info_bar: *mut GtkInfoBar,
21438        response_id: GtkResponseType,
21439    );
21440    pub fn gtk_info_bar_set_message_type(info_bar: *mut GtkInfoBar, message_type: GtkMessageType);
21441    pub fn gtk_info_bar_set_response_sensitive(
21442        info_bar: *mut GtkInfoBar,
21443        response_id: GtkResponseType,
21444        setting: gboolean,
21445    );
21446    pub fn gtk_info_bar_set_revealed(info_bar: *mut GtkInfoBar, revealed: gboolean);
21447    pub fn gtk_info_bar_set_show_close_button(info_bar: *mut GtkInfoBar, setting: gboolean);
21448
21449    //=========================================================================
21450    // GtkInvisible
21451    //=========================================================================
21452    pub fn gtk_invisible_get_type() -> GType;
21453    pub fn gtk_invisible_new() -> *mut GtkWidget;
21454    pub fn gtk_invisible_new_for_screen(screen: *mut gdk::GdkScreen) -> *mut GtkWidget;
21455    pub fn gtk_invisible_get_screen(invisible: *mut GtkInvisible) -> *mut gdk::GdkScreen;
21456    pub fn gtk_invisible_set_screen(invisible: *mut GtkInvisible, screen: *mut gdk::GdkScreen);
21457
21458    //=========================================================================
21459    // GtkLabel
21460    //=========================================================================
21461    pub fn gtk_label_get_type() -> GType;
21462    pub fn gtk_label_new(str: *const c_char) -> *mut GtkWidget;
21463    pub fn gtk_label_new_with_mnemonic(str: *const c_char) -> *mut GtkWidget;
21464    pub fn gtk_label_get_angle(label: *mut GtkLabel) -> c_double;
21465    pub fn gtk_label_get_attributes(label: *mut GtkLabel) -> *mut pango::PangoAttrList;
21466    pub fn gtk_label_get_current_uri(label: *mut GtkLabel) -> *const c_char;
21467    pub fn gtk_label_get_ellipsize(label: *mut GtkLabel) -> pango::PangoEllipsizeMode;
21468    pub fn gtk_label_get_justify(label: *mut GtkLabel) -> GtkJustification;
21469    pub fn gtk_label_get_label(label: *mut GtkLabel) -> *const c_char;
21470    pub fn gtk_label_get_layout(label: *mut GtkLabel) -> *mut pango::PangoLayout;
21471    pub fn gtk_label_get_layout_offsets(label: *mut GtkLabel, x: *mut c_int, y: *mut c_int);
21472    pub fn gtk_label_get_line_wrap(label: *mut GtkLabel) -> gboolean;
21473    pub fn gtk_label_get_line_wrap_mode(label: *mut GtkLabel) -> pango::PangoWrapMode;
21474    pub fn gtk_label_get_lines(label: *mut GtkLabel) -> c_int;
21475    pub fn gtk_label_get_max_width_chars(label: *mut GtkLabel) -> c_int;
21476    pub fn gtk_label_get_mnemonic_keyval(label: *mut GtkLabel) -> c_uint;
21477    pub fn gtk_label_get_mnemonic_widget(label: *mut GtkLabel) -> *mut GtkWidget;
21478    pub fn gtk_label_get_selectable(label: *mut GtkLabel) -> gboolean;
21479    pub fn gtk_label_get_selection_bounds(
21480        label: *mut GtkLabel,
21481        start: *mut c_int,
21482        end: *mut c_int,
21483    ) -> gboolean;
21484    pub fn gtk_label_get_single_line_mode(label: *mut GtkLabel) -> gboolean;
21485    pub fn gtk_label_get_text(label: *mut GtkLabel) -> *const c_char;
21486    pub fn gtk_label_get_track_visited_links(label: *mut GtkLabel) -> gboolean;
21487    pub fn gtk_label_get_use_markup(label: *mut GtkLabel) -> gboolean;
21488    pub fn gtk_label_get_use_underline(label: *mut GtkLabel) -> gboolean;
21489    pub fn gtk_label_get_width_chars(label: *mut GtkLabel) -> c_int;
21490    pub fn gtk_label_get_xalign(label: *mut GtkLabel) -> c_float;
21491    pub fn gtk_label_get_yalign(label: *mut GtkLabel) -> c_float;
21492    pub fn gtk_label_select_region(label: *mut GtkLabel, start_offset: c_int, end_offset: c_int);
21493    pub fn gtk_label_set_angle(label: *mut GtkLabel, angle: c_double);
21494    pub fn gtk_label_set_attributes(label: *mut GtkLabel, attrs: *mut pango::PangoAttrList);
21495    pub fn gtk_label_set_ellipsize(label: *mut GtkLabel, mode: pango::PangoEllipsizeMode);
21496    pub fn gtk_label_set_justify(label: *mut GtkLabel, jtype: GtkJustification);
21497    pub fn gtk_label_set_label(label: *mut GtkLabel, str: *const c_char);
21498    pub fn gtk_label_set_line_wrap(label: *mut GtkLabel, wrap: gboolean);
21499    pub fn gtk_label_set_line_wrap_mode(label: *mut GtkLabel, wrap_mode: pango::PangoWrapMode);
21500    pub fn gtk_label_set_lines(label: *mut GtkLabel, lines: c_int);
21501    pub fn gtk_label_set_markup(label: *mut GtkLabel, str: *const c_char);
21502    pub fn gtk_label_set_markup_with_mnemonic(label: *mut GtkLabel, str: *const c_char);
21503    pub fn gtk_label_set_max_width_chars(label: *mut GtkLabel, n_chars: c_int);
21504    pub fn gtk_label_set_mnemonic_widget(label: *mut GtkLabel, widget: *mut GtkWidget);
21505    pub fn gtk_label_set_pattern(label: *mut GtkLabel, pattern: *const c_char);
21506    pub fn gtk_label_set_selectable(label: *mut GtkLabel, setting: gboolean);
21507    pub fn gtk_label_set_single_line_mode(label: *mut GtkLabel, single_line_mode: gboolean);
21508    pub fn gtk_label_set_text(label: *mut GtkLabel, str: *const c_char);
21509    pub fn gtk_label_set_text_with_mnemonic(label: *mut GtkLabel, str: *const c_char);
21510    pub fn gtk_label_set_track_visited_links(label: *mut GtkLabel, track_links: gboolean);
21511    pub fn gtk_label_set_use_markup(label: *mut GtkLabel, setting: gboolean);
21512    pub fn gtk_label_set_use_underline(label: *mut GtkLabel, setting: gboolean);
21513    pub fn gtk_label_set_width_chars(label: *mut GtkLabel, n_chars: c_int);
21514    pub fn gtk_label_set_xalign(label: *mut GtkLabel, xalign: c_float);
21515    pub fn gtk_label_set_yalign(label: *mut GtkLabel, yalign: c_float);
21516
21517    //=========================================================================
21518    // GtkLabelAccessible
21519    //=========================================================================
21520    pub fn gtk_label_accessible_get_type() -> GType;
21521
21522    //=========================================================================
21523    // GtkLayout
21524    //=========================================================================
21525    pub fn gtk_layout_get_type() -> GType;
21526    pub fn gtk_layout_new(
21527        hadjustment: *mut GtkAdjustment,
21528        vadjustment: *mut GtkAdjustment,
21529    ) -> *mut GtkWidget;
21530    pub fn gtk_layout_get_bin_window(layout: *mut GtkLayout) -> *mut gdk::GdkWindow;
21531    pub fn gtk_layout_get_hadjustment(layout: *mut GtkLayout) -> *mut GtkAdjustment;
21532    pub fn gtk_layout_get_size(layout: *mut GtkLayout, width: *mut c_uint, height: *mut c_uint);
21533    pub fn gtk_layout_get_vadjustment(layout: *mut GtkLayout) -> *mut GtkAdjustment;
21534    pub fn gtk_layout_move(
21535        layout: *mut GtkLayout,
21536        child_widget: *mut GtkWidget,
21537        x: c_int,
21538        y: c_int,
21539    );
21540    pub fn gtk_layout_put(layout: *mut GtkLayout, child_widget: *mut GtkWidget, x: c_int, y: c_int);
21541    pub fn gtk_layout_set_hadjustment(layout: *mut GtkLayout, adjustment: *mut GtkAdjustment);
21542    pub fn gtk_layout_set_size(layout: *mut GtkLayout, width: c_uint, height: c_uint);
21543    pub fn gtk_layout_set_vadjustment(layout: *mut GtkLayout, adjustment: *mut GtkAdjustment);
21544
21545    //=========================================================================
21546    // GtkLevelBar
21547    //=========================================================================
21548    pub fn gtk_level_bar_get_type() -> GType;
21549    pub fn gtk_level_bar_new() -> *mut GtkWidget;
21550    pub fn gtk_level_bar_new_for_interval(
21551        min_value: c_double,
21552        max_value: c_double,
21553    ) -> *mut GtkWidget;
21554    pub fn gtk_level_bar_add_offset_value(
21555        self_: *mut GtkLevelBar,
21556        name: *const c_char,
21557        value: c_double,
21558    );
21559    pub fn gtk_level_bar_get_inverted(self_: *mut GtkLevelBar) -> gboolean;
21560    pub fn gtk_level_bar_get_max_value(self_: *mut GtkLevelBar) -> c_double;
21561    pub fn gtk_level_bar_get_min_value(self_: *mut GtkLevelBar) -> c_double;
21562    pub fn gtk_level_bar_get_mode(self_: *mut GtkLevelBar) -> GtkLevelBarMode;
21563    pub fn gtk_level_bar_get_offset_value(
21564        self_: *mut GtkLevelBar,
21565        name: *const c_char,
21566        value: *mut c_double,
21567    ) -> gboolean;
21568    pub fn gtk_level_bar_get_value(self_: *mut GtkLevelBar) -> c_double;
21569    pub fn gtk_level_bar_remove_offset_value(self_: *mut GtkLevelBar, name: *const c_char);
21570    pub fn gtk_level_bar_set_inverted(self_: *mut GtkLevelBar, inverted: gboolean);
21571    pub fn gtk_level_bar_set_max_value(self_: *mut GtkLevelBar, value: c_double);
21572    pub fn gtk_level_bar_set_min_value(self_: *mut GtkLevelBar, value: c_double);
21573    pub fn gtk_level_bar_set_mode(self_: *mut GtkLevelBar, mode: GtkLevelBarMode);
21574    pub fn gtk_level_bar_set_value(self_: *mut GtkLevelBar, value: c_double);
21575
21576    //=========================================================================
21577    // GtkLevelBarAccessible
21578    //=========================================================================
21579    pub fn gtk_level_bar_accessible_get_type() -> GType;
21580
21581    //=========================================================================
21582    // GtkLinkButton
21583    //=========================================================================
21584    pub fn gtk_link_button_get_type() -> GType;
21585    pub fn gtk_link_button_new(uri: *const c_char) -> *mut GtkWidget;
21586    pub fn gtk_link_button_new_with_label(
21587        uri: *const c_char,
21588        label: *const c_char,
21589    ) -> *mut GtkWidget;
21590    pub fn gtk_link_button_get_uri(link_button: *mut GtkLinkButton) -> *const c_char;
21591    pub fn gtk_link_button_get_visited(link_button: *mut GtkLinkButton) -> gboolean;
21592    pub fn gtk_link_button_set_uri(link_button: *mut GtkLinkButton, uri: *const c_char);
21593    pub fn gtk_link_button_set_visited(link_button: *mut GtkLinkButton, visited: gboolean);
21594
21595    //=========================================================================
21596    // GtkLinkButtonAccessible
21597    //=========================================================================
21598    pub fn gtk_link_button_accessible_get_type() -> GType;
21599
21600    //=========================================================================
21601    // GtkListBox
21602    //=========================================================================
21603    pub fn gtk_list_box_get_type() -> GType;
21604    pub fn gtk_list_box_new() -> *mut GtkWidget;
21605    pub fn gtk_list_box_bind_model(
21606        box_: *mut GtkListBox,
21607        model: *mut gio::GListModel,
21608        create_widget_func: GtkListBoxCreateWidgetFunc,
21609        user_data: gpointer,
21610        user_data_free_func: glib::GDestroyNotify,
21611    );
21612    pub fn gtk_list_box_drag_highlight_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
21613    pub fn gtk_list_box_drag_unhighlight_row(box_: *mut GtkListBox);
21614    pub fn gtk_list_box_get_activate_on_single_click(box_: *mut GtkListBox) -> gboolean;
21615    pub fn gtk_list_box_get_adjustment(box_: *mut GtkListBox) -> *mut GtkAdjustment;
21616    pub fn gtk_list_box_get_row_at_index(
21617        box_: *mut GtkListBox,
21618        index_: c_int,
21619    ) -> *mut GtkListBoxRow;
21620    pub fn gtk_list_box_get_row_at_y(box_: *mut GtkListBox, y: c_int) -> *mut GtkListBoxRow;
21621    pub fn gtk_list_box_get_selected_row(box_: *mut GtkListBox) -> *mut GtkListBoxRow;
21622    pub fn gtk_list_box_get_selected_rows(box_: *mut GtkListBox) -> *mut glib::GList;
21623    pub fn gtk_list_box_get_selection_mode(box_: *mut GtkListBox) -> GtkSelectionMode;
21624    pub fn gtk_list_box_insert(box_: *mut GtkListBox, child: *mut GtkWidget, position: c_int);
21625    pub fn gtk_list_box_invalidate_filter(box_: *mut GtkListBox);
21626    pub fn gtk_list_box_invalidate_headers(box_: *mut GtkListBox);
21627    pub fn gtk_list_box_invalidate_sort(box_: *mut GtkListBox);
21628    pub fn gtk_list_box_prepend(box_: *mut GtkListBox, child: *mut GtkWidget);
21629    pub fn gtk_list_box_select_all(box_: *mut GtkListBox);
21630    pub fn gtk_list_box_select_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
21631    pub fn gtk_list_box_selected_foreach(
21632        box_: *mut GtkListBox,
21633        func: GtkListBoxForeachFunc,
21634        data: gpointer,
21635    );
21636    pub fn gtk_list_box_set_activate_on_single_click(box_: *mut GtkListBox, single: gboolean);
21637    pub fn gtk_list_box_set_adjustment(box_: *mut GtkListBox, adjustment: *mut GtkAdjustment);
21638    pub fn gtk_list_box_set_filter_func(
21639        box_: *mut GtkListBox,
21640        filter_func: GtkListBoxFilterFunc,
21641        user_data: gpointer,
21642        destroy: glib::GDestroyNotify,
21643    );
21644    pub fn gtk_list_box_set_header_func(
21645        box_: *mut GtkListBox,
21646        update_header: GtkListBoxUpdateHeaderFunc,
21647        user_data: gpointer,
21648        destroy: glib::GDestroyNotify,
21649    );
21650    pub fn gtk_list_box_set_placeholder(box_: *mut GtkListBox, placeholder: *mut GtkWidget);
21651    pub fn gtk_list_box_set_selection_mode(box_: *mut GtkListBox, mode: GtkSelectionMode);
21652    pub fn gtk_list_box_set_sort_func(
21653        box_: *mut GtkListBox,
21654        sort_func: GtkListBoxSortFunc,
21655        user_data: gpointer,
21656        destroy: glib::GDestroyNotify,
21657    );
21658    pub fn gtk_list_box_unselect_all(box_: *mut GtkListBox);
21659    pub fn gtk_list_box_unselect_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
21660
21661    //=========================================================================
21662    // GtkListBoxAccessible
21663    //=========================================================================
21664    pub fn gtk_list_box_accessible_get_type() -> GType;
21665
21666    //=========================================================================
21667    // GtkListBoxRow
21668    //=========================================================================
21669    pub fn gtk_list_box_row_get_type() -> GType;
21670    pub fn gtk_list_box_row_new() -> *mut GtkWidget;
21671    pub fn gtk_list_box_row_changed(row: *mut GtkListBoxRow);
21672    pub fn gtk_list_box_row_get_activatable(row: *mut GtkListBoxRow) -> gboolean;
21673    pub fn gtk_list_box_row_get_header(row: *mut GtkListBoxRow) -> *mut GtkWidget;
21674    pub fn gtk_list_box_row_get_index(row: *mut GtkListBoxRow) -> c_int;
21675    pub fn gtk_list_box_row_get_selectable(row: *mut GtkListBoxRow) -> gboolean;
21676    pub fn gtk_list_box_row_is_selected(row: *mut GtkListBoxRow) -> gboolean;
21677    pub fn gtk_list_box_row_set_activatable(row: *mut GtkListBoxRow, activatable: gboolean);
21678    pub fn gtk_list_box_row_set_header(row: *mut GtkListBoxRow, header: *mut GtkWidget);
21679    pub fn gtk_list_box_row_set_selectable(row: *mut GtkListBoxRow, selectable: gboolean);
21680
21681    //=========================================================================
21682    // GtkListBoxRowAccessible
21683    //=========================================================================
21684    pub fn gtk_list_box_row_accessible_get_type() -> GType;
21685
21686    //=========================================================================
21687    // GtkListStore
21688    //=========================================================================
21689    pub fn gtk_list_store_get_type() -> GType;
21690    pub fn gtk_list_store_new(n_columns: c_int, ...) -> *mut GtkListStore;
21691    pub fn gtk_list_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkListStore;
21692    pub fn gtk_list_store_append(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
21693    pub fn gtk_list_store_clear(list_store: *mut GtkListStore);
21694    pub fn gtk_list_store_insert(
21695        list_store: *mut GtkListStore,
21696        iter: *mut GtkTreeIter,
21697        position: c_int,
21698    );
21699    pub fn gtk_list_store_insert_after(
21700        list_store: *mut GtkListStore,
21701        iter: *mut GtkTreeIter,
21702        sibling: *mut GtkTreeIter,
21703    );
21704    pub fn gtk_list_store_insert_before(
21705        list_store: *mut GtkListStore,
21706        iter: *mut GtkTreeIter,
21707        sibling: *mut GtkTreeIter,
21708    );
21709    pub fn gtk_list_store_insert_with_values(
21710        list_store: *mut GtkListStore,
21711        iter: *mut GtkTreeIter,
21712        position: c_int,
21713        ...
21714    );
21715    pub fn gtk_list_store_insert_with_valuesv(
21716        list_store: *mut GtkListStore,
21717        iter: *mut GtkTreeIter,
21718        position: c_int,
21719        columns: *mut c_int,
21720        values: *mut gobject::GValue,
21721        n_values: c_int,
21722    );
21723    pub fn gtk_list_store_iter_is_valid(
21724        list_store: *mut GtkListStore,
21725        iter: *mut GtkTreeIter,
21726    ) -> gboolean;
21727    pub fn gtk_list_store_move_after(
21728        store: *mut GtkListStore,
21729        iter: *mut GtkTreeIter,
21730        position: *mut GtkTreeIter,
21731    );
21732    pub fn gtk_list_store_move_before(
21733        store: *mut GtkListStore,
21734        iter: *mut GtkTreeIter,
21735        position: *mut GtkTreeIter,
21736    );
21737    pub fn gtk_list_store_prepend(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
21738    pub fn gtk_list_store_remove(list_store: *mut GtkListStore, iter: *mut GtkTreeIter)
21739    -> gboolean;
21740    pub fn gtk_list_store_reorder(store: *mut GtkListStore, new_order: *mut c_int);
21741    pub fn gtk_list_store_set(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, ...);
21742    pub fn gtk_list_store_set_column_types(
21743        list_store: *mut GtkListStore,
21744        n_columns: c_int,
21745        types: *mut GType,
21746    );
21747    //pub fn gtk_list_store_set_valist(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
21748    pub fn gtk_list_store_set_value(
21749        list_store: *mut GtkListStore,
21750        iter: *mut GtkTreeIter,
21751        column: c_int,
21752        value: *mut gobject::GValue,
21753    );
21754    pub fn gtk_list_store_set_valuesv(
21755        list_store: *mut GtkListStore,
21756        iter: *mut GtkTreeIter,
21757        columns: *mut c_int,
21758        values: *mut gobject::GValue,
21759        n_values: c_int,
21760    );
21761    pub fn gtk_list_store_swap(store: *mut GtkListStore, a: *mut GtkTreeIter, b: *mut GtkTreeIter);
21762
21763    //=========================================================================
21764    // GtkLockButton
21765    //=========================================================================
21766    pub fn gtk_lock_button_get_type() -> GType;
21767    pub fn gtk_lock_button_new(permission: *mut gio::GPermission) -> *mut GtkWidget;
21768    pub fn gtk_lock_button_get_permission(button: *mut GtkLockButton) -> *mut gio::GPermission;
21769    pub fn gtk_lock_button_set_permission(
21770        button: *mut GtkLockButton,
21771        permission: *mut gio::GPermission,
21772    );
21773
21774    //=========================================================================
21775    // GtkLockButtonAccessible
21776    //=========================================================================
21777    pub fn gtk_lock_button_accessible_get_type() -> GType;
21778
21779    //=========================================================================
21780    // GtkMenu
21781    //=========================================================================
21782    pub fn gtk_menu_get_type() -> GType;
21783    pub fn gtk_menu_new() -> *mut GtkWidget;
21784    pub fn gtk_menu_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
21785    pub fn gtk_menu_get_for_attach_widget(widget: *mut GtkWidget) -> *mut glib::GList;
21786    pub fn gtk_menu_attach(
21787        menu: *mut GtkMenu,
21788        child: *mut GtkWidget,
21789        left_attach: c_uint,
21790        right_attach: c_uint,
21791        top_attach: c_uint,
21792        bottom_attach: c_uint,
21793    );
21794    pub fn gtk_menu_attach_to_widget(
21795        menu: *mut GtkMenu,
21796        attach_widget: *mut GtkWidget,
21797        detacher: GtkMenuDetachFunc,
21798    );
21799    pub fn gtk_menu_detach(menu: *mut GtkMenu);
21800    pub fn gtk_menu_get_accel_group(menu: *mut GtkMenu) -> *mut GtkAccelGroup;
21801    pub fn gtk_menu_get_accel_path(menu: *mut GtkMenu) -> *const c_char;
21802    pub fn gtk_menu_get_active(menu: *mut GtkMenu) -> *mut GtkWidget;
21803    pub fn gtk_menu_get_attach_widget(menu: *mut GtkMenu) -> *mut GtkWidget;
21804    pub fn gtk_menu_get_monitor(menu: *mut GtkMenu) -> c_int;
21805    pub fn gtk_menu_get_reserve_toggle_size(menu: *mut GtkMenu) -> gboolean;
21806    pub fn gtk_menu_get_tearoff_state(menu: *mut GtkMenu) -> gboolean;
21807    pub fn gtk_menu_get_title(menu: *mut GtkMenu) -> *const c_char;
21808    pub fn gtk_menu_place_on_monitor(menu: *mut GtkMenu, monitor: *mut gdk::GdkMonitor);
21809    pub fn gtk_menu_popdown(menu: *mut GtkMenu);
21810    pub fn gtk_menu_popup(
21811        menu: *mut GtkMenu,
21812        parent_menu_shell: *mut GtkWidget,
21813        parent_menu_item: *mut GtkWidget,
21814        func: GtkMenuPositionFunc,
21815        data: gpointer,
21816        button: c_uint,
21817        activate_time: u32,
21818    );
21819    pub fn gtk_menu_popup_at_pointer(menu: *mut GtkMenu, trigger_event: *const gdk::GdkEvent);
21820    pub fn gtk_menu_popup_at_rect(
21821        menu: *mut GtkMenu,
21822        rect_window: *mut gdk::GdkWindow,
21823        rect: *const gdk::GdkRectangle,
21824        rect_anchor: gdk::GdkGravity,
21825        menu_anchor: gdk::GdkGravity,
21826        trigger_event: *const gdk::GdkEvent,
21827    );
21828    pub fn gtk_menu_popup_at_widget(
21829        menu: *mut GtkMenu,
21830        widget: *mut GtkWidget,
21831        widget_anchor: gdk::GdkGravity,
21832        menu_anchor: gdk::GdkGravity,
21833        trigger_event: *const gdk::GdkEvent,
21834    );
21835    pub fn gtk_menu_popup_for_device(
21836        menu: *mut GtkMenu,
21837        device: *mut gdk::GdkDevice,
21838        parent_menu_shell: *mut GtkWidget,
21839        parent_menu_item: *mut GtkWidget,
21840        func: GtkMenuPositionFunc,
21841        data: gpointer,
21842        destroy: glib::GDestroyNotify,
21843        button: c_uint,
21844        activate_time: u32,
21845    );
21846    pub fn gtk_menu_reorder_child(menu: *mut GtkMenu, child: *mut GtkWidget, position: c_int);
21847    pub fn gtk_menu_reposition(menu: *mut GtkMenu);
21848    pub fn gtk_menu_set_accel_group(menu: *mut GtkMenu, accel_group: *mut GtkAccelGroup);
21849    pub fn gtk_menu_set_accel_path(menu: *mut GtkMenu, accel_path: *const c_char);
21850    pub fn gtk_menu_set_active(menu: *mut GtkMenu, index: c_uint);
21851    pub fn gtk_menu_set_monitor(menu: *mut GtkMenu, monitor_num: c_int);
21852    pub fn gtk_menu_set_reserve_toggle_size(menu: *mut GtkMenu, reserve_toggle_size: gboolean);
21853    pub fn gtk_menu_set_screen(menu: *mut GtkMenu, screen: *mut gdk::GdkScreen);
21854    pub fn gtk_menu_set_tearoff_state(menu: *mut GtkMenu, torn_off: gboolean);
21855    pub fn gtk_menu_set_title(menu: *mut GtkMenu, title: *const c_char);
21856
21857    //=========================================================================
21858    // GtkMenuAccessible
21859    //=========================================================================
21860    pub fn gtk_menu_accessible_get_type() -> GType;
21861
21862    //=========================================================================
21863    // GtkMenuBar
21864    //=========================================================================
21865    pub fn gtk_menu_bar_get_type() -> GType;
21866    pub fn gtk_menu_bar_new() -> *mut GtkWidget;
21867    pub fn gtk_menu_bar_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
21868    pub fn gtk_menu_bar_get_child_pack_direction(menubar: *mut GtkMenuBar) -> GtkPackDirection;
21869    pub fn gtk_menu_bar_get_pack_direction(menubar: *mut GtkMenuBar) -> GtkPackDirection;
21870    pub fn gtk_menu_bar_set_child_pack_direction(
21871        menubar: *mut GtkMenuBar,
21872        child_pack_dir: GtkPackDirection,
21873    );
21874    pub fn gtk_menu_bar_set_pack_direction(menubar: *mut GtkMenuBar, pack_dir: GtkPackDirection);
21875
21876    //=========================================================================
21877    // GtkMenuButton
21878    //=========================================================================
21879    pub fn gtk_menu_button_get_type() -> GType;
21880    pub fn gtk_menu_button_new() -> *mut GtkWidget;
21881    pub fn gtk_menu_button_get_align_widget(menu_button: *mut GtkMenuButton) -> *mut GtkWidget;
21882    pub fn gtk_menu_button_get_direction(menu_button: *mut GtkMenuButton) -> GtkArrowType;
21883    pub fn gtk_menu_button_get_menu_model(menu_button: *mut GtkMenuButton) -> *mut gio::GMenuModel;
21884    pub fn gtk_menu_button_get_popover(menu_button: *mut GtkMenuButton) -> *mut GtkPopover;
21885    pub fn gtk_menu_button_get_popup(menu_button: *mut GtkMenuButton) -> *mut GtkMenu;
21886    pub fn gtk_menu_button_get_use_popover(menu_button: *mut GtkMenuButton) -> gboolean;
21887    pub fn gtk_menu_button_set_align_widget(
21888        menu_button: *mut GtkMenuButton,
21889        align_widget: *mut GtkWidget,
21890    );
21891    pub fn gtk_menu_button_set_direction(menu_button: *mut GtkMenuButton, direction: GtkArrowType);
21892    pub fn gtk_menu_button_set_menu_model(
21893        menu_button: *mut GtkMenuButton,
21894        menu_model: *mut gio::GMenuModel,
21895    );
21896    pub fn gtk_menu_button_set_popover(menu_button: *mut GtkMenuButton, popover: *mut GtkWidget);
21897    pub fn gtk_menu_button_set_popup(menu_button: *mut GtkMenuButton, menu: *mut GtkWidget);
21898    pub fn gtk_menu_button_set_use_popover(menu_button: *mut GtkMenuButton, use_popover: gboolean);
21899
21900    //=========================================================================
21901    // GtkMenuButtonAccessible
21902    //=========================================================================
21903    pub fn gtk_menu_button_accessible_get_type() -> GType;
21904
21905    //=========================================================================
21906    // GtkMenuItem
21907    //=========================================================================
21908    pub fn gtk_menu_item_get_type() -> GType;
21909    pub fn gtk_menu_item_new() -> *mut GtkWidget;
21910    pub fn gtk_menu_item_new_with_label(label: *const c_char) -> *mut GtkWidget;
21911    pub fn gtk_menu_item_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
21912    pub fn gtk_menu_item_activate(menu_item: *mut GtkMenuItem);
21913    pub fn gtk_menu_item_deselect(menu_item: *mut GtkMenuItem);
21914    pub fn gtk_menu_item_get_accel_path(menu_item: *mut GtkMenuItem) -> *const c_char;
21915    pub fn gtk_menu_item_get_label(menu_item: *mut GtkMenuItem) -> *const c_char;
21916    pub fn gtk_menu_item_get_reserve_indicator(menu_item: *mut GtkMenuItem) -> gboolean;
21917    pub fn gtk_menu_item_get_right_justified(menu_item: *mut GtkMenuItem) -> gboolean;
21918    pub fn gtk_menu_item_get_submenu(menu_item: *mut GtkMenuItem) -> *mut GtkWidget;
21919    pub fn gtk_menu_item_get_use_underline(menu_item: *mut GtkMenuItem) -> gboolean;
21920    pub fn gtk_menu_item_select(menu_item: *mut GtkMenuItem);
21921    pub fn gtk_menu_item_set_accel_path(menu_item: *mut GtkMenuItem, accel_path: *const c_char);
21922    pub fn gtk_menu_item_set_label(menu_item: *mut GtkMenuItem, label: *const c_char);
21923    pub fn gtk_menu_item_set_reserve_indicator(menu_item: *mut GtkMenuItem, reserve: gboolean);
21924    pub fn gtk_menu_item_set_right_justified(
21925        menu_item: *mut GtkMenuItem,
21926        right_justified: gboolean,
21927    );
21928    pub fn gtk_menu_item_set_submenu(menu_item: *mut GtkMenuItem, submenu: *mut GtkMenu);
21929    pub fn gtk_menu_item_set_use_underline(menu_item: *mut GtkMenuItem, setting: gboolean);
21930    pub fn gtk_menu_item_toggle_size_allocate(menu_item: *mut GtkMenuItem, allocation: c_int);
21931    pub fn gtk_menu_item_toggle_size_request(menu_item: *mut GtkMenuItem, requisition: *mut c_int);
21932
21933    //=========================================================================
21934    // GtkMenuItemAccessible
21935    //=========================================================================
21936    pub fn gtk_menu_item_accessible_get_type() -> GType;
21937
21938    //=========================================================================
21939    // GtkMenuShell
21940    //=========================================================================
21941    pub fn gtk_menu_shell_get_type() -> GType;
21942    pub fn gtk_menu_shell_activate_item(
21943        menu_shell: *mut GtkMenuShell,
21944        menu_item: *mut GtkWidget,
21945        force_deactivate: gboolean,
21946    );
21947    pub fn gtk_menu_shell_append(menu_shell: *mut GtkMenuShell, child: *mut GtkMenuItem);
21948    pub fn gtk_menu_shell_bind_model(
21949        menu_shell: *mut GtkMenuShell,
21950        model: *mut gio::GMenuModel,
21951        action_namespace: *const c_char,
21952        with_separators: gboolean,
21953    );
21954    pub fn gtk_menu_shell_cancel(menu_shell: *mut GtkMenuShell);
21955    pub fn gtk_menu_shell_deactivate(menu_shell: *mut GtkMenuShell);
21956    pub fn gtk_menu_shell_deselect(menu_shell: *mut GtkMenuShell);
21957    pub fn gtk_menu_shell_get_parent_shell(menu_shell: *mut GtkMenuShell) -> *mut GtkWidget;
21958    pub fn gtk_menu_shell_get_selected_item(menu_shell: *mut GtkMenuShell) -> *mut GtkWidget;
21959    pub fn gtk_menu_shell_get_take_focus(menu_shell: *mut GtkMenuShell) -> gboolean;
21960    pub fn gtk_menu_shell_insert(
21961        menu_shell: *mut GtkMenuShell,
21962        child: *mut GtkWidget,
21963        position: c_int,
21964    );
21965    pub fn gtk_menu_shell_prepend(menu_shell: *mut GtkMenuShell, child: *mut GtkWidget);
21966    pub fn gtk_menu_shell_select_first(menu_shell: *mut GtkMenuShell, search_sensitive: gboolean);
21967    pub fn gtk_menu_shell_select_item(menu_shell: *mut GtkMenuShell, menu_item: *mut GtkWidget);
21968    pub fn gtk_menu_shell_set_take_focus(menu_shell: *mut GtkMenuShell, take_focus: gboolean);
21969
21970    //=========================================================================
21971    // GtkMenuShellAccessible
21972    //=========================================================================
21973    pub fn gtk_menu_shell_accessible_get_type() -> GType;
21974
21975    //=========================================================================
21976    // GtkMenuToolButton
21977    //=========================================================================
21978    pub fn gtk_menu_tool_button_get_type() -> GType;
21979    pub fn gtk_menu_tool_button_new(
21980        icon_widget: *mut GtkWidget,
21981        label: *const c_char,
21982    ) -> *mut GtkToolItem;
21983    pub fn gtk_menu_tool_button_new_from_stock(stock_id: *const c_char) -> *mut GtkToolItem;
21984    pub fn gtk_menu_tool_button_get_menu(button: *mut GtkMenuToolButton) -> *mut GtkWidget;
21985    pub fn gtk_menu_tool_button_set_arrow_tooltip_markup(
21986        button: *mut GtkMenuToolButton,
21987        markup: *const c_char,
21988    );
21989    pub fn gtk_menu_tool_button_set_arrow_tooltip_text(
21990        button: *mut GtkMenuToolButton,
21991        text: *const c_char,
21992    );
21993    pub fn gtk_menu_tool_button_set_menu(button: *mut GtkMenuToolButton, menu: *mut GtkWidget);
21994
21995    //=========================================================================
21996    // GtkMessageDialog
21997    //=========================================================================
21998    pub fn gtk_message_dialog_get_type() -> GType;
21999    pub fn gtk_message_dialog_new(
22000        parent: *mut GtkWindow,
22001        flags: GtkDialogFlags,
22002        type_: GtkMessageType,
22003        buttons: GtkButtonsType,
22004        message_format: *const c_char,
22005        ...
22006    ) -> *mut GtkWidget;
22007    pub fn gtk_message_dialog_new_with_markup(
22008        parent: *mut GtkWindow,
22009        flags: GtkDialogFlags,
22010        type_: GtkMessageType,
22011        buttons: GtkButtonsType,
22012        message_format: *const c_char,
22013        ...
22014    ) -> *mut GtkWidget;
22015    pub fn gtk_message_dialog_format_secondary_markup(
22016        message_dialog: *mut GtkMessageDialog,
22017        message_format: *const c_char,
22018        ...
22019    );
22020    pub fn gtk_message_dialog_format_secondary_text(
22021        message_dialog: *mut GtkMessageDialog,
22022        message_format: *const c_char,
22023        ...
22024    );
22025    pub fn gtk_message_dialog_get_image(dialog: *mut GtkMessageDialog) -> *mut GtkWidget;
22026    pub fn gtk_message_dialog_get_message_area(
22027        message_dialog: *mut GtkMessageDialog,
22028    ) -> *mut GtkWidget;
22029    pub fn gtk_message_dialog_set_image(dialog: *mut GtkMessageDialog, image: *mut GtkWidget);
22030    pub fn gtk_message_dialog_set_markup(message_dialog: *mut GtkMessageDialog, str: *const c_char);
22031
22032    //=========================================================================
22033    // GtkMisc
22034    //=========================================================================
22035    pub fn gtk_misc_get_type() -> GType;
22036    pub fn gtk_misc_get_alignment(misc: *mut GtkMisc, xalign: *mut c_float, yalign: *mut c_float);
22037    pub fn gtk_misc_get_padding(misc: *mut GtkMisc, xpad: *mut c_int, ypad: *mut c_int);
22038    pub fn gtk_misc_set_alignment(misc: *mut GtkMisc, xalign: c_float, yalign: c_float);
22039    pub fn gtk_misc_set_padding(misc: *mut GtkMisc, xpad: c_int, ypad: c_int);
22040
22041    //=========================================================================
22042    // GtkModelButton
22043    //=========================================================================
22044    pub fn gtk_model_button_get_type() -> GType;
22045    pub fn gtk_model_button_new() -> *mut GtkWidget;
22046
22047    //=========================================================================
22048    // GtkMountOperation
22049    //=========================================================================
22050    pub fn gtk_mount_operation_get_type() -> GType;
22051    pub fn gtk_mount_operation_new(parent: *mut GtkWindow) -> *mut gio::GMountOperation;
22052    pub fn gtk_mount_operation_get_parent(op: *mut GtkMountOperation) -> *mut GtkWindow;
22053    pub fn gtk_mount_operation_get_screen(op: *mut GtkMountOperation) -> *mut gdk::GdkScreen;
22054    pub fn gtk_mount_operation_is_showing(op: *mut GtkMountOperation) -> gboolean;
22055    pub fn gtk_mount_operation_set_parent(op: *mut GtkMountOperation, parent: *mut GtkWindow);
22056    pub fn gtk_mount_operation_set_screen(op: *mut GtkMountOperation, screen: *mut gdk::GdkScreen);
22057
22058    //=========================================================================
22059    // GtkNativeDialog
22060    //=========================================================================
22061    pub fn gtk_native_dialog_get_type() -> GType;
22062    pub fn gtk_native_dialog_destroy(self_: *mut GtkNativeDialog);
22063    pub fn gtk_native_dialog_get_modal(self_: *mut GtkNativeDialog) -> gboolean;
22064    pub fn gtk_native_dialog_get_title(self_: *mut GtkNativeDialog) -> *const c_char;
22065    pub fn gtk_native_dialog_get_transient_for(self_: *mut GtkNativeDialog) -> *mut GtkWindow;
22066    pub fn gtk_native_dialog_get_visible(self_: *mut GtkNativeDialog) -> gboolean;
22067    pub fn gtk_native_dialog_hide(self_: *mut GtkNativeDialog);
22068    pub fn gtk_native_dialog_run(self_: *mut GtkNativeDialog) -> c_int;
22069    pub fn gtk_native_dialog_set_modal(self_: *mut GtkNativeDialog, modal: gboolean);
22070    pub fn gtk_native_dialog_set_title(self_: *mut GtkNativeDialog, title: *const c_char);
22071    pub fn gtk_native_dialog_set_transient_for(self_: *mut GtkNativeDialog, parent: *mut GtkWindow);
22072    pub fn gtk_native_dialog_show(self_: *mut GtkNativeDialog);
22073
22074    //=========================================================================
22075    // GtkNotebook
22076    //=========================================================================
22077    pub fn gtk_notebook_get_type() -> GType;
22078    pub fn gtk_notebook_new() -> *mut GtkWidget;
22079    pub fn gtk_notebook_append_page(
22080        notebook: *mut GtkNotebook,
22081        child: *mut GtkWidget,
22082        tab_label: *mut GtkWidget,
22083    ) -> c_int;
22084    pub fn gtk_notebook_append_page_menu(
22085        notebook: *mut GtkNotebook,
22086        child: *mut GtkWidget,
22087        tab_label: *mut GtkWidget,
22088        menu_label: *mut GtkWidget,
22089    ) -> c_int;
22090    pub fn gtk_notebook_detach_tab(notebook: *mut GtkNotebook, child: *mut GtkWidget);
22091    pub fn gtk_notebook_get_action_widget(
22092        notebook: *mut GtkNotebook,
22093        pack_type: GtkPackType,
22094    ) -> *mut GtkWidget;
22095    pub fn gtk_notebook_get_current_page(notebook: *mut GtkNotebook) -> c_int;
22096    pub fn gtk_notebook_get_group_name(notebook: *mut GtkNotebook) -> *const c_char;
22097    pub fn gtk_notebook_get_menu_label(
22098        notebook: *mut GtkNotebook,
22099        child: *mut GtkWidget,
22100    ) -> *mut GtkWidget;
22101    pub fn gtk_notebook_get_menu_label_text(
22102        notebook: *mut GtkNotebook,
22103        child: *mut GtkWidget,
22104    ) -> *const c_char;
22105    pub fn gtk_notebook_get_n_pages(notebook: *mut GtkNotebook) -> c_int;
22106    pub fn gtk_notebook_get_nth_page(notebook: *mut GtkNotebook, page_num: c_int)
22107    -> *mut GtkWidget;
22108    pub fn gtk_notebook_get_scrollable(notebook: *mut GtkNotebook) -> gboolean;
22109    pub fn gtk_notebook_get_show_border(notebook: *mut GtkNotebook) -> gboolean;
22110    pub fn gtk_notebook_get_show_tabs(notebook: *mut GtkNotebook) -> gboolean;
22111    pub fn gtk_notebook_get_tab_detachable(
22112        notebook: *mut GtkNotebook,
22113        child: *mut GtkWidget,
22114    ) -> gboolean;
22115    pub fn gtk_notebook_get_tab_hborder(notebook: *mut GtkNotebook) -> u16;
22116    pub fn gtk_notebook_get_tab_label(
22117        notebook: *mut GtkNotebook,
22118        child: *mut GtkWidget,
22119    ) -> *mut GtkWidget;
22120    pub fn gtk_notebook_get_tab_label_text(
22121        notebook: *mut GtkNotebook,
22122        child: *mut GtkWidget,
22123    ) -> *const c_char;
22124    pub fn gtk_notebook_get_tab_pos(notebook: *mut GtkNotebook) -> GtkPositionType;
22125    pub fn gtk_notebook_get_tab_reorderable(
22126        notebook: *mut GtkNotebook,
22127        child: *mut GtkWidget,
22128    ) -> gboolean;
22129    pub fn gtk_notebook_get_tab_vborder(notebook: *mut GtkNotebook) -> u16;
22130    pub fn gtk_notebook_insert_page(
22131        notebook: *mut GtkNotebook,
22132        child: *mut GtkWidget,
22133        tab_label: *mut GtkWidget,
22134        position: c_int,
22135    ) -> c_int;
22136    pub fn gtk_notebook_insert_page_menu(
22137        notebook: *mut GtkNotebook,
22138        child: *mut GtkWidget,
22139        tab_label: *mut GtkWidget,
22140        menu_label: *mut GtkWidget,
22141        position: c_int,
22142    ) -> c_int;
22143    pub fn gtk_notebook_next_page(notebook: *mut GtkNotebook);
22144    pub fn gtk_notebook_page_num(notebook: *mut GtkNotebook, child: *mut GtkWidget) -> c_int;
22145    pub fn gtk_notebook_popup_disable(notebook: *mut GtkNotebook);
22146    pub fn gtk_notebook_popup_enable(notebook: *mut GtkNotebook);
22147    pub fn gtk_notebook_prepend_page(
22148        notebook: *mut GtkNotebook,
22149        child: *mut GtkWidget,
22150        tab_label: *mut GtkWidget,
22151    ) -> c_int;
22152    pub fn gtk_notebook_prepend_page_menu(
22153        notebook: *mut GtkNotebook,
22154        child: *mut GtkWidget,
22155        tab_label: *mut GtkWidget,
22156        menu_label: *mut GtkWidget,
22157    ) -> c_int;
22158    pub fn gtk_notebook_prev_page(notebook: *mut GtkNotebook);
22159    pub fn gtk_notebook_remove_page(notebook: *mut GtkNotebook, page_num: c_int);
22160    pub fn gtk_notebook_reorder_child(
22161        notebook: *mut GtkNotebook,
22162        child: *mut GtkWidget,
22163        position: c_int,
22164    );
22165    pub fn gtk_notebook_set_action_widget(
22166        notebook: *mut GtkNotebook,
22167        widget: *mut GtkWidget,
22168        pack_type: GtkPackType,
22169    );
22170    pub fn gtk_notebook_set_current_page(notebook: *mut GtkNotebook, page_num: c_int);
22171    pub fn gtk_notebook_set_group_name(notebook: *mut GtkNotebook, group_name: *const c_char);
22172    pub fn gtk_notebook_set_menu_label(
22173        notebook: *mut GtkNotebook,
22174        child: *mut GtkWidget,
22175        menu_label: *mut GtkWidget,
22176    );
22177    pub fn gtk_notebook_set_menu_label_text(
22178        notebook: *mut GtkNotebook,
22179        child: *mut GtkWidget,
22180        menu_text: *const c_char,
22181    );
22182    pub fn gtk_notebook_set_scrollable(notebook: *mut GtkNotebook, scrollable: gboolean);
22183    pub fn gtk_notebook_set_show_border(notebook: *mut GtkNotebook, show_border: gboolean);
22184    pub fn gtk_notebook_set_show_tabs(notebook: *mut GtkNotebook, show_tabs: gboolean);
22185    pub fn gtk_notebook_set_tab_detachable(
22186        notebook: *mut GtkNotebook,
22187        child: *mut GtkWidget,
22188        detachable: gboolean,
22189    );
22190    pub fn gtk_notebook_set_tab_label(
22191        notebook: *mut GtkNotebook,
22192        child: *mut GtkWidget,
22193        tab_label: *mut GtkWidget,
22194    );
22195    pub fn gtk_notebook_set_tab_label_text(
22196        notebook: *mut GtkNotebook,
22197        child: *mut GtkWidget,
22198        tab_text: *const c_char,
22199    );
22200    pub fn gtk_notebook_set_tab_pos(notebook: *mut GtkNotebook, pos: GtkPositionType);
22201    pub fn gtk_notebook_set_tab_reorderable(
22202        notebook: *mut GtkNotebook,
22203        child: *mut GtkWidget,
22204        reorderable: gboolean,
22205    );
22206
22207    //=========================================================================
22208    // GtkNotebookAccessible
22209    //=========================================================================
22210    pub fn gtk_notebook_accessible_get_type() -> GType;
22211
22212    //=========================================================================
22213    // GtkNotebookPageAccessible
22214    //=========================================================================
22215    pub fn gtk_notebook_page_accessible_get_type() -> GType;
22216    pub fn gtk_notebook_page_accessible_new(
22217        notebook: *mut GtkNotebookAccessible,
22218        child: *mut GtkWidget,
22219    ) -> *mut atk::AtkObject;
22220    pub fn gtk_notebook_page_accessible_invalidate(page: *mut GtkNotebookPageAccessible);
22221
22222    //=========================================================================
22223    // GtkNumerableIcon
22224    //=========================================================================
22225    pub fn gtk_numerable_icon_get_type() -> GType;
22226    pub fn gtk_numerable_icon_new(base_icon: *mut gio::GIcon) -> *mut gio::GIcon;
22227    pub fn gtk_numerable_icon_new_with_style_context(
22228        base_icon: *mut gio::GIcon,
22229        context: *mut GtkStyleContext,
22230    ) -> *mut gio::GIcon;
22231    pub fn gtk_numerable_icon_get_background_gicon(self_: *mut GtkNumerableIcon)
22232    -> *mut gio::GIcon;
22233    pub fn gtk_numerable_icon_get_background_icon_name(
22234        self_: *mut GtkNumerableIcon,
22235    ) -> *const c_char;
22236    pub fn gtk_numerable_icon_get_count(self_: *mut GtkNumerableIcon) -> c_int;
22237    pub fn gtk_numerable_icon_get_label(self_: *mut GtkNumerableIcon) -> *const c_char;
22238    pub fn gtk_numerable_icon_get_style_context(
22239        self_: *mut GtkNumerableIcon,
22240    ) -> *mut GtkStyleContext;
22241    pub fn gtk_numerable_icon_set_background_gicon(
22242        self_: *mut GtkNumerableIcon,
22243        icon: *mut gio::GIcon,
22244    );
22245    pub fn gtk_numerable_icon_set_background_icon_name(
22246        self_: *mut GtkNumerableIcon,
22247        icon_name: *const c_char,
22248    );
22249    pub fn gtk_numerable_icon_set_count(self_: *mut GtkNumerableIcon, count: c_int);
22250    pub fn gtk_numerable_icon_set_label(self_: *mut GtkNumerableIcon, label: *const c_char);
22251    pub fn gtk_numerable_icon_set_style_context(
22252        self_: *mut GtkNumerableIcon,
22253        style: *mut GtkStyleContext,
22254    );
22255
22256    //=========================================================================
22257    // GtkOffscreenWindow
22258    //=========================================================================
22259    pub fn gtk_offscreen_window_get_type() -> GType;
22260    pub fn gtk_offscreen_window_new() -> *mut GtkWidget;
22261    pub fn gtk_offscreen_window_get_pixbuf(
22262        offscreen: *mut GtkOffscreenWindow,
22263    ) -> *mut gdk_pixbuf::GdkPixbuf;
22264    pub fn gtk_offscreen_window_get_surface(
22265        offscreen: *mut GtkOffscreenWindow,
22266    ) -> *mut cairo::cairo_surface_t;
22267
22268    //=========================================================================
22269    // GtkOverlay
22270    //=========================================================================
22271    pub fn gtk_overlay_get_type() -> GType;
22272    pub fn gtk_overlay_new() -> *mut GtkWidget;
22273    pub fn gtk_overlay_add_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
22274    pub fn gtk_overlay_get_overlay_pass_through(
22275        overlay: *mut GtkOverlay,
22276        widget: *mut GtkWidget,
22277    ) -> gboolean;
22278    pub fn gtk_overlay_reorder_overlay(
22279        overlay: *mut GtkOverlay,
22280        child: *mut GtkWidget,
22281        index_: c_int,
22282    );
22283    pub fn gtk_overlay_set_overlay_pass_through(
22284        overlay: *mut GtkOverlay,
22285        widget: *mut GtkWidget,
22286        pass_through: gboolean,
22287    );
22288
22289    //=========================================================================
22290    // GtkPadController
22291    //=========================================================================
22292    pub fn gtk_pad_controller_get_type() -> GType;
22293    pub fn gtk_pad_controller_new(
22294        window: *mut GtkWindow,
22295        group: *mut gio::GActionGroup,
22296        pad: *mut gdk::GdkDevice,
22297    ) -> *mut GtkPadController;
22298    pub fn gtk_pad_controller_set_action(
22299        controller: *mut GtkPadController,
22300        type_: GtkPadActionType,
22301        index: c_int,
22302        mode: c_int,
22303        label: *const c_char,
22304        action_name: *const c_char,
22305    );
22306    pub fn gtk_pad_controller_set_action_entries(
22307        controller: *mut GtkPadController,
22308        entries: *const GtkPadActionEntry,
22309        n_entries: c_int,
22310    );
22311
22312    //=========================================================================
22313    // GtkPageSetup
22314    //=========================================================================
22315    pub fn gtk_page_setup_get_type() -> GType;
22316    pub fn gtk_page_setup_new() -> *mut GtkPageSetup;
22317    pub fn gtk_page_setup_new_from_file(
22318        file_name: *const c_char,
22319        error: *mut *mut glib::GError,
22320    ) -> *mut GtkPageSetup;
22321    pub fn gtk_page_setup_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPageSetup;
22322    pub fn gtk_page_setup_new_from_key_file(
22323        key_file: *mut glib::GKeyFile,
22324        group_name: *const c_char,
22325        error: *mut *mut glib::GError,
22326    ) -> *mut GtkPageSetup;
22327    pub fn gtk_page_setup_copy(other: *mut GtkPageSetup) -> *mut GtkPageSetup;
22328    pub fn gtk_page_setup_get_bottom_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
22329    pub fn gtk_page_setup_get_left_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
22330    pub fn gtk_page_setup_get_orientation(setup: *mut GtkPageSetup) -> GtkPageOrientation;
22331    pub fn gtk_page_setup_get_page_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
22332    pub fn gtk_page_setup_get_page_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
22333    pub fn gtk_page_setup_get_paper_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
22334    pub fn gtk_page_setup_get_paper_size(setup: *mut GtkPageSetup) -> *mut GtkPaperSize;
22335    pub fn gtk_page_setup_get_paper_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
22336    pub fn gtk_page_setup_get_right_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
22337    pub fn gtk_page_setup_get_top_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
22338    pub fn gtk_page_setup_load_file(
22339        setup: *mut GtkPageSetup,
22340        file_name: *const c_char,
22341        error: *mut *mut glib::GError,
22342    ) -> gboolean;
22343    pub fn gtk_page_setup_load_key_file(
22344        setup: *mut GtkPageSetup,
22345        key_file: *mut glib::GKeyFile,
22346        group_name: *const c_char,
22347        error: *mut *mut glib::GError,
22348    ) -> gboolean;
22349    pub fn gtk_page_setup_set_bottom_margin(
22350        setup: *mut GtkPageSetup,
22351        margin: c_double,
22352        unit: GtkUnit,
22353    );
22354    pub fn gtk_page_setup_set_left_margin(
22355        setup: *mut GtkPageSetup,
22356        margin: c_double,
22357        unit: GtkUnit,
22358    );
22359    pub fn gtk_page_setup_set_orientation(
22360        setup: *mut GtkPageSetup,
22361        orientation: GtkPageOrientation,
22362    );
22363    pub fn gtk_page_setup_set_paper_size(setup: *mut GtkPageSetup, size: *mut GtkPaperSize);
22364    pub fn gtk_page_setup_set_paper_size_and_default_margins(
22365        setup: *mut GtkPageSetup,
22366        size: *mut GtkPaperSize,
22367    );
22368    pub fn gtk_page_setup_set_right_margin(
22369        setup: *mut GtkPageSetup,
22370        margin: c_double,
22371        unit: GtkUnit,
22372    );
22373    pub fn gtk_page_setup_set_top_margin(setup: *mut GtkPageSetup, margin: c_double, unit: GtkUnit);
22374    pub fn gtk_page_setup_to_file(
22375        setup: *mut GtkPageSetup,
22376        file_name: *const c_char,
22377        error: *mut *mut glib::GError,
22378    ) -> gboolean;
22379    pub fn gtk_page_setup_to_gvariant(setup: *mut GtkPageSetup) -> *mut glib::GVariant;
22380    pub fn gtk_page_setup_to_key_file(
22381        setup: *mut GtkPageSetup,
22382        key_file: *mut glib::GKeyFile,
22383        group_name: *const c_char,
22384    );
22385
22386    //=========================================================================
22387    // GtkPaned
22388    //=========================================================================
22389    pub fn gtk_paned_get_type() -> GType;
22390    pub fn gtk_paned_new(orientation: GtkOrientation) -> *mut GtkWidget;
22391    pub fn gtk_paned_add1(paned: *mut GtkPaned, child: *mut GtkWidget);
22392    pub fn gtk_paned_add2(paned: *mut GtkPaned, child: *mut GtkWidget);
22393    pub fn gtk_paned_get_child1(paned: *mut GtkPaned) -> *mut GtkWidget;
22394    pub fn gtk_paned_get_child2(paned: *mut GtkPaned) -> *mut GtkWidget;
22395    pub fn gtk_paned_get_handle_window(paned: *mut GtkPaned) -> *mut gdk::GdkWindow;
22396    pub fn gtk_paned_get_position(paned: *mut GtkPaned) -> c_int;
22397    pub fn gtk_paned_get_wide_handle(paned: *mut GtkPaned) -> gboolean;
22398    pub fn gtk_paned_pack1(
22399        paned: *mut GtkPaned,
22400        child: *mut GtkWidget,
22401        resize: gboolean,
22402        shrink: gboolean,
22403    );
22404    pub fn gtk_paned_pack2(
22405        paned: *mut GtkPaned,
22406        child: *mut GtkWidget,
22407        resize: gboolean,
22408        shrink: gboolean,
22409    );
22410    pub fn gtk_paned_set_position(paned: *mut GtkPaned, position: c_int);
22411    pub fn gtk_paned_set_wide_handle(paned: *mut GtkPaned, wide: gboolean);
22412
22413    //=========================================================================
22414    // GtkPanedAccessible
22415    //=========================================================================
22416    pub fn gtk_paned_accessible_get_type() -> GType;
22417
22418    //=========================================================================
22419    // GtkPlacesSidebar
22420    //=========================================================================
22421    pub fn gtk_places_sidebar_get_type() -> GType;
22422    pub fn gtk_places_sidebar_new() -> *mut GtkWidget;
22423    pub fn gtk_places_sidebar_add_shortcut(
22424        sidebar: *mut GtkPlacesSidebar,
22425        location: *mut gio::GFile,
22426    );
22427    pub fn gtk_places_sidebar_get_local_only(sidebar: *mut GtkPlacesSidebar) -> gboolean;
22428    pub fn gtk_places_sidebar_get_location(sidebar: *mut GtkPlacesSidebar) -> *mut gio::GFile;
22429    pub fn gtk_places_sidebar_get_nth_bookmark(
22430        sidebar: *mut GtkPlacesSidebar,
22431        n: c_int,
22432    ) -> *mut gio::GFile;
22433    pub fn gtk_places_sidebar_get_open_flags(sidebar: *mut GtkPlacesSidebar) -> GtkPlacesOpenFlags;
22434    pub fn gtk_places_sidebar_get_show_connect_to_server(
22435        sidebar: *mut GtkPlacesSidebar,
22436    ) -> gboolean;
22437    pub fn gtk_places_sidebar_get_show_desktop(sidebar: *mut GtkPlacesSidebar) -> gboolean;
22438    pub fn gtk_places_sidebar_get_show_enter_location(sidebar: *mut GtkPlacesSidebar) -> gboolean;
22439    pub fn gtk_places_sidebar_get_show_other_locations(sidebar: *mut GtkPlacesSidebar) -> gboolean;
22440    pub fn gtk_places_sidebar_get_show_recent(sidebar: *mut GtkPlacesSidebar) -> gboolean;
22441    pub fn gtk_places_sidebar_get_show_starred_location(sidebar: *mut GtkPlacesSidebar)
22442    -> gboolean;
22443    pub fn gtk_places_sidebar_get_show_trash(sidebar: *mut GtkPlacesSidebar) -> gboolean;
22444    pub fn gtk_places_sidebar_list_shortcuts(sidebar: *mut GtkPlacesSidebar) -> *mut glib::GSList;
22445    pub fn gtk_places_sidebar_remove_shortcut(
22446        sidebar: *mut GtkPlacesSidebar,
22447        location: *mut gio::GFile,
22448    );
22449    pub fn gtk_places_sidebar_set_drop_targets_visible(
22450        sidebar: *mut GtkPlacesSidebar,
22451        visible: gboolean,
22452        context: *mut gdk::GdkDragContext,
22453    );
22454    pub fn gtk_places_sidebar_set_local_only(sidebar: *mut GtkPlacesSidebar, local_only: gboolean);
22455    pub fn gtk_places_sidebar_set_location(
22456        sidebar: *mut GtkPlacesSidebar,
22457        location: *mut gio::GFile,
22458    );
22459    pub fn gtk_places_sidebar_set_open_flags(
22460        sidebar: *mut GtkPlacesSidebar,
22461        flags: GtkPlacesOpenFlags,
22462    );
22463    pub fn gtk_places_sidebar_set_show_connect_to_server(
22464        sidebar: *mut GtkPlacesSidebar,
22465        show_connect_to_server: gboolean,
22466    );
22467    pub fn gtk_places_sidebar_set_show_desktop(
22468        sidebar: *mut GtkPlacesSidebar,
22469        show_desktop: gboolean,
22470    );
22471    pub fn gtk_places_sidebar_set_show_enter_location(
22472        sidebar: *mut GtkPlacesSidebar,
22473        show_enter_location: gboolean,
22474    );
22475    pub fn gtk_places_sidebar_set_show_other_locations(
22476        sidebar: *mut GtkPlacesSidebar,
22477        show_other_locations: gboolean,
22478    );
22479    pub fn gtk_places_sidebar_set_show_recent(
22480        sidebar: *mut GtkPlacesSidebar,
22481        show_recent: gboolean,
22482    );
22483    pub fn gtk_places_sidebar_set_show_starred_location(
22484        sidebar: *mut GtkPlacesSidebar,
22485        show_starred_location: gboolean,
22486    );
22487    pub fn gtk_places_sidebar_set_show_trash(sidebar: *mut GtkPlacesSidebar, show_trash: gboolean);
22488
22489    //=========================================================================
22490    // GtkPlug
22491    //=========================================================================
22492    pub fn gtk_plug_get_type() -> GType;
22493    pub fn gtk_plug_new(socket_id: xlib::Window) -> *mut GtkWidget;
22494    pub fn gtk_plug_new_for_display(
22495        display: *mut gdk::GdkDisplay,
22496        socket_id: xlib::Window,
22497    ) -> *mut GtkWidget;
22498    pub fn gtk_plug_construct(plug: *mut GtkPlug, socket_id: xlib::Window);
22499    pub fn gtk_plug_construct_for_display(
22500        plug: *mut GtkPlug,
22501        display: *mut gdk::GdkDisplay,
22502        socket_id: xlib::Window,
22503    );
22504    pub fn gtk_plug_get_embedded(plug: *mut GtkPlug) -> gboolean;
22505    pub fn gtk_plug_get_id(plug: *mut GtkPlug) -> xlib::Window;
22506    pub fn gtk_plug_get_socket_window(plug: *mut GtkPlug) -> *mut gdk::GdkWindow;
22507
22508    //=========================================================================
22509    // GtkPlugAccessible
22510    //=========================================================================
22511    #[cfg(feature = "v3_24_30")]
22512    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24_30")))]
22513    pub fn gtk_plug_accessible_get_type() -> GType;
22514    #[cfg(feature = "v3_24_30")]
22515    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24_30")))]
22516    pub fn gtk_plug_accessible_get_id(plug: *mut GtkPlugAccessible) -> *mut c_char;
22517
22518    //=========================================================================
22519    // GtkPopover
22520    //=========================================================================
22521    pub fn gtk_popover_get_type() -> GType;
22522    pub fn gtk_popover_new(relative_to: *mut GtkWidget) -> *mut GtkWidget;
22523    pub fn gtk_popover_new_from_model(
22524        relative_to: *mut GtkWidget,
22525        model: *mut gio::GMenuModel,
22526    ) -> *mut GtkWidget;
22527    pub fn gtk_popover_bind_model(
22528        popover: *mut GtkPopover,
22529        model: *mut gio::GMenuModel,
22530        action_namespace: *const c_char,
22531    );
22532    pub fn gtk_popover_get_constrain_to(popover: *mut GtkPopover) -> GtkPopoverConstraint;
22533    pub fn gtk_popover_get_default_widget(popover: *mut GtkPopover) -> *mut GtkWidget;
22534    pub fn gtk_popover_get_modal(popover: *mut GtkPopover) -> gboolean;
22535    pub fn gtk_popover_get_pointing_to(
22536        popover: *mut GtkPopover,
22537        rect: *mut gdk::GdkRectangle,
22538    ) -> gboolean;
22539    pub fn gtk_popover_get_position(popover: *mut GtkPopover) -> GtkPositionType;
22540    pub fn gtk_popover_get_relative_to(popover: *mut GtkPopover) -> *mut GtkWidget;
22541    pub fn gtk_popover_get_transitions_enabled(popover: *mut GtkPopover) -> gboolean;
22542    pub fn gtk_popover_popdown(popover: *mut GtkPopover);
22543    pub fn gtk_popover_popup(popover: *mut GtkPopover);
22544    pub fn gtk_popover_set_constrain_to(popover: *mut GtkPopover, constraint: GtkPopoverConstraint);
22545    pub fn gtk_popover_set_default_widget(popover: *mut GtkPopover, widget: *mut GtkWidget);
22546    pub fn gtk_popover_set_modal(popover: *mut GtkPopover, modal: gboolean);
22547    pub fn gtk_popover_set_pointing_to(popover: *mut GtkPopover, rect: *const gdk::GdkRectangle);
22548    pub fn gtk_popover_set_position(popover: *mut GtkPopover, position: GtkPositionType);
22549    pub fn gtk_popover_set_relative_to(popover: *mut GtkPopover, relative_to: *mut GtkWidget);
22550    pub fn gtk_popover_set_transitions_enabled(
22551        popover: *mut GtkPopover,
22552        transitions_enabled: gboolean,
22553    );
22554
22555    //=========================================================================
22556    // GtkPopoverAccessible
22557    //=========================================================================
22558    pub fn gtk_popover_accessible_get_type() -> GType;
22559
22560    //=========================================================================
22561    // GtkPopoverMenu
22562    //=========================================================================
22563    pub fn gtk_popover_menu_get_type() -> GType;
22564    pub fn gtk_popover_menu_new() -> *mut GtkWidget;
22565    pub fn gtk_popover_menu_open_submenu(popover: *mut GtkPopoverMenu, name: *const c_char);
22566
22567    //=========================================================================
22568    // GtkPrintContext
22569    //=========================================================================
22570    pub fn gtk_print_context_get_type() -> GType;
22571    pub fn gtk_print_context_create_pango_context(
22572        context: *mut GtkPrintContext,
22573    ) -> *mut pango::PangoContext;
22574    pub fn gtk_print_context_create_pango_layout(
22575        context: *mut GtkPrintContext,
22576    ) -> *mut pango::PangoLayout;
22577    pub fn gtk_print_context_get_cairo_context(
22578        context: *mut GtkPrintContext,
22579    ) -> *mut cairo::cairo_t;
22580    pub fn gtk_print_context_get_dpi_x(context: *mut GtkPrintContext) -> c_double;
22581    pub fn gtk_print_context_get_dpi_y(context: *mut GtkPrintContext) -> c_double;
22582    pub fn gtk_print_context_get_hard_margins(
22583        context: *mut GtkPrintContext,
22584        top: *mut c_double,
22585        bottom: *mut c_double,
22586        left: *mut c_double,
22587        right: *mut c_double,
22588    ) -> gboolean;
22589    pub fn gtk_print_context_get_height(context: *mut GtkPrintContext) -> c_double;
22590    pub fn gtk_print_context_get_page_setup(context: *mut GtkPrintContext) -> *mut GtkPageSetup;
22591    pub fn gtk_print_context_get_pango_fontmap(
22592        context: *mut GtkPrintContext,
22593    ) -> *mut pango::PangoFontMap;
22594    pub fn gtk_print_context_get_width(context: *mut GtkPrintContext) -> c_double;
22595    pub fn gtk_print_context_set_cairo_context(
22596        context: *mut GtkPrintContext,
22597        cr: *mut cairo::cairo_t,
22598        dpi_x: c_double,
22599        dpi_y: c_double,
22600    );
22601
22602    //=========================================================================
22603    // GtkPrintOperation
22604    //=========================================================================
22605    pub fn gtk_print_operation_get_type() -> GType;
22606    pub fn gtk_print_operation_new() -> *mut GtkPrintOperation;
22607    pub fn gtk_print_operation_cancel(op: *mut GtkPrintOperation);
22608    pub fn gtk_print_operation_draw_page_finish(op: *mut GtkPrintOperation);
22609    pub fn gtk_print_operation_get_default_page_setup(
22610        op: *mut GtkPrintOperation,
22611    ) -> *mut GtkPageSetup;
22612    pub fn gtk_print_operation_get_embed_page_setup(op: *mut GtkPrintOperation) -> gboolean;
22613    pub fn gtk_print_operation_get_error(op: *mut GtkPrintOperation, error: *mut *mut glib::GError);
22614    pub fn gtk_print_operation_get_has_selection(op: *mut GtkPrintOperation) -> gboolean;
22615    pub fn gtk_print_operation_get_n_pages_to_print(op: *mut GtkPrintOperation) -> c_int;
22616    pub fn gtk_print_operation_get_print_settings(
22617        op: *mut GtkPrintOperation,
22618    ) -> *mut GtkPrintSettings;
22619    pub fn gtk_print_operation_get_status(op: *mut GtkPrintOperation) -> GtkPrintStatus;
22620    pub fn gtk_print_operation_get_status_string(op: *mut GtkPrintOperation) -> *const c_char;
22621    pub fn gtk_print_operation_get_support_selection(op: *mut GtkPrintOperation) -> gboolean;
22622    pub fn gtk_print_operation_is_finished(op: *mut GtkPrintOperation) -> gboolean;
22623    pub fn gtk_print_operation_run(
22624        op: *mut GtkPrintOperation,
22625        action: GtkPrintOperationAction,
22626        parent: *mut GtkWindow,
22627        error: *mut *mut glib::GError,
22628    ) -> GtkPrintOperationResult;
22629    pub fn gtk_print_operation_set_allow_async(op: *mut GtkPrintOperation, allow_async: gboolean);
22630    pub fn gtk_print_operation_set_current_page(op: *mut GtkPrintOperation, current_page: c_int);
22631    pub fn gtk_print_operation_set_custom_tab_label(
22632        op: *mut GtkPrintOperation,
22633        label: *const c_char,
22634    );
22635    pub fn gtk_print_operation_set_default_page_setup(
22636        op: *mut GtkPrintOperation,
22637        default_page_setup: *mut GtkPageSetup,
22638    );
22639    pub fn gtk_print_operation_set_defer_drawing(op: *mut GtkPrintOperation);
22640    pub fn gtk_print_operation_set_embed_page_setup(op: *mut GtkPrintOperation, embed: gboolean);
22641    pub fn gtk_print_operation_set_export_filename(
22642        op: *mut GtkPrintOperation,
22643        filename: *const c_char,
22644    );
22645    pub fn gtk_print_operation_set_has_selection(
22646        op: *mut GtkPrintOperation,
22647        has_selection: gboolean,
22648    );
22649    pub fn gtk_print_operation_set_job_name(op: *mut GtkPrintOperation, job_name: *const c_char);
22650    pub fn gtk_print_operation_set_n_pages(op: *mut GtkPrintOperation, n_pages: c_int);
22651    pub fn gtk_print_operation_set_print_settings(
22652        op: *mut GtkPrintOperation,
22653        print_settings: *mut GtkPrintSettings,
22654    );
22655    pub fn gtk_print_operation_set_show_progress(
22656        op: *mut GtkPrintOperation,
22657        show_progress: gboolean,
22658    );
22659    pub fn gtk_print_operation_set_support_selection(
22660        op: *mut GtkPrintOperation,
22661        support_selection: gboolean,
22662    );
22663    pub fn gtk_print_operation_set_track_print_status(
22664        op: *mut GtkPrintOperation,
22665        track_status: gboolean,
22666    );
22667    pub fn gtk_print_operation_set_unit(op: *mut GtkPrintOperation, unit: GtkUnit);
22668    pub fn gtk_print_operation_set_use_full_page(op: *mut GtkPrintOperation, full_page: gboolean);
22669
22670    //=========================================================================
22671    // GtkPrintSettings
22672    //=========================================================================
22673    pub fn gtk_print_settings_get_type() -> GType;
22674    pub fn gtk_print_settings_new() -> *mut GtkPrintSettings;
22675    pub fn gtk_print_settings_new_from_file(
22676        file_name: *const c_char,
22677        error: *mut *mut glib::GError,
22678    ) -> *mut GtkPrintSettings;
22679    pub fn gtk_print_settings_new_from_gvariant(
22680        variant: *mut glib::GVariant,
22681    ) -> *mut GtkPrintSettings;
22682    pub fn gtk_print_settings_new_from_key_file(
22683        key_file: *mut glib::GKeyFile,
22684        group_name: *const c_char,
22685        error: *mut *mut glib::GError,
22686    ) -> *mut GtkPrintSettings;
22687    pub fn gtk_print_settings_copy(other: *mut GtkPrintSettings) -> *mut GtkPrintSettings;
22688    pub fn gtk_print_settings_foreach(
22689        settings: *mut GtkPrintSettings,
22690        func: GtkPrintSettingsFunc,
22691        user_data: gpointer,
22692    );
22693    pub fn gtk_print_settings_get(
22694        settings: *mut GtkPrintSettings,
22695        key: *const c_char,
22696    ) -> *const c_char;
22697    pub fn gtk_print_settings_get_bool(
22698        settings: *mut GtkPrintSettings,
22699        key: *const c_char,
22700    ) -> gboolean;
22701    pub fn gtk_print_settings_get_collate(settings: *mut GtkPrintSettings) -> gboolean;
22702    pub fn gtk_print_settings_get_default_source(settings: *mut GtkPrintSettings) -> *const c_char;
22703    pub fn gtk_print_settings_get_dither(settings: *mut GtkPrintSettings) -> *const c_char;
22704    pub fn gtk_print_settings_get_double(
22705        settings: *mut GtkPrintSettings,
22706        key: *const c_char,
22707    ) -> c_double;
22708    pub fn gtk_print_settings_get_double_with_default(
22709        settings: *mut GtkPrintSettings,
22710        key: *const c_char,
22711        def: c_double,
22712    ) -> c_double;
22713    pub fn gtk_print_settings_get_duplex(settings: *mut GtkPrintSettings) -> GtkPrintDuplex;
22714    pub fn gtk_print_settings_get_finishings(settings: *mut GtkPrintSettings) -> *const c_char;
22715    pub fn gtk_print_settings_get_int(settings: *mut GtkPrintSettings, key: *const c_char)
22716    -> c_int;
22717    pub fn gtk_print_settings_get_int_with_default(
22718        settings: *mut GtkPrintSettings,
22719        key: *const c_char,
22720        def: c_int,
22721    ) -> c_int;
22722    pub fn gtk_print_settings_get_length(
22723        settings: *mut GtkPrintSettings,
22724        key: *const c_char,
22725        unit: GtkUnit,
22726    ) -> c_double;
22727    pub fn gtk_print_settings_get_media_type(settings: *mut GtkPrintSettings) -> *const c_char;
22728    pub fn gtk_print_settings_get_n_copies(settings: *mut GtkPrintSettings) -> c_int;
22729    pub fn gtk_print_settings_get_number_up(settings: *mut GtkPrintSettings) -> c_int;
22730    pub fn gtk_print_settings_get_number_up_layout(
22731        settings: *mut GtkPrintSettings,
22732    ) -> GtkNumberUpLayout;
22733    pub fn gtk_print_settings_get_orientation(
22734        settings: *mut GtkPrintSettings,
22735    ) -> GtkPageOrientation;
22736    pub fn gtk_print_settings_get_output_bin(settings: *mut GtkPrintSettings) -> *const c_char;
22737    pub fn gtk_print_settings_get_page_ranges(
22738        settings: *mut GtkPrintSettings,
22739        num_ranges: *mut c_int,
22740    ) -> *mut GtkPageRange;
22741    pub fn gtk_print_settings_get_page_set(settings: *mut GtkPrintSettings) -> GtkPageSet;
22742    pub fn gtk_print_settings_get_paper_height(
22743        settings: *mut GtkPrintSettings,
22744        unit: GtkUnit,
22745    ) -> c_double;
22746    pub fn gtk_print_settings_get_paper_size(settings: *mut GtkPrintSettings) -> *mut GtkPaperSize;
22747    pub fn gtk_print_settings_get_paper_width(
22748        settings: *mut GtkPrintSettings,
22749        unit: GtkUnit,
22750    ) -> c_double;
22751    pub fn gtk_print_settings_get_print_pages(settings: *mut GtkPrintSettings) -> GtkPrintPages;
22752    pub fn gtk_print_settings_get_printer(settings: *mut GtkPrintSettings) -> *const c_char;
22753    pub fn gtk_print_settings_get_printer_lpi(settings: *mut GtkPrintSettings) -> c_double;
22754    pub fn gtk_print_settings_get_quality(settings: *mut GtkPrintSettings) -> GtkPrintQuality;
22755    pub fn gtk_print_settings_get_resolution(settings: *mut GtkPrintSettings) -> c_int;
22756    pub fn gtk_print_settings_get_resolution_x(settings: *mut GtkPrintSettings) -> c_int;
22757    pub fn gtk_print_settings_get_resolution_y(settings: *mut GtkPrintSettings) -> c_int;
22758    pub fn gtk_print_settings_get_reverse(settings: *mut GtkPrintSettings) -> gboolean;
22759    pub fn gtk_print_settings_get_scale(settings: *mut GtkPrintSettings) -> c_double;
22760    pub fn gtk_print_settings_get_use_color(settings: *mut GtkPrintSettings) -> gboolean;
22761    pub fn gtk_print_settings_has_key(
22762        settings: *mut GtkPrintSettings,
22763        key: *const c_char,
22764    ) -> gboolean;
22765    pub fn gtk_print_settings_load_file(
22766        settings: *mut GtkPrintSettings,
22767        file_name: *const c_char,
22768        error: *mut *mut glib::GError,
22769    ) -> gboolean;
22770    pub fn gtk_print_settings_load_key_file(
22771        settings: *mut GtkPrintSettings,
22772        key_file: *mut glib::GKeyFile,
22773        group_name: *const c_char,
22774        error: *mut *mut glib::GError,
22775    ) -> gboolean;
22776    pub fn gtk_print_settings_set(
22777        settings: *mut GtkPrintSettings,
22778        key: *const c_char,
22779        value: *const c_char,
22780    );
22781    pub fn gtk_print_settings_set_bool(
22782        settings: *mut GtkPrintSettings,
22783        key: *const c_char,
22784        value: gboolean,
22785    );
22786    pub fn gtk_print_settings_set_collate(settings: *mut GtkPrintSettings, collate: gboolean);
22787    pub fn gtk_print_settings_set_default_source(
22788        settings: *mut GtkPrintSettings,
22789        default_source: *const c_char,
22790    );
22791    pub fn gtk_print_settings_set_dither(settings: *mut GtkPrintSettings, dither: *const c_char);
22792    pub fn gtk_print_settings_set_double(
22793        settings: *mut GtkPrintSettings,
22794        key: *const c_char,
22795        value: c_double,
22796    );
22797    pub fn gtk_print_settings_set_duplex(settings: *mut GtkPrintSettings, duplex: GtkPrintDuplex);
22798    pub fn gtk_print_settings_set_finishings(
22799        settings: *mut GtkPrintSettings,
22800        finishings: *const c_char,
22801    );
22802    pub fn gtk_print_settings_set_int(
22803        settings: *mut GtkPrintSettings,
22804        key: *const c_char,
22805        value: c_int,
22806    );
22807    pub fn gtk_print_settings_set_length(
22808        settings: *mut GtkPrintSettings,
22809        key: *const c_char,
22810        value: c_double,
22811        unit: GtkUnit,
22812    );
22813    pub fn gtk_print_settings_set_media_type(
22814        settings: *mut GtkPrintSettings,
22815        media_type: *const c_char,
22816    );
22817    pub fn gtk_print_settings_set_n_copies(settings: *mut GtkPrintSettings, num_copies: c_int);
22818    pub fn gtk_print_settings_set_number_up(settings: *mut GtkPrintSettings, number_up: c_int);
22819    pub fn gtk_print_settings_set_number_up_layout(
22820        settings: *mut GtkPrintSettings,
22821        number_up_layout: GtkNumberUpLayout,
22822    );
22823    pub fn gtk_print_settings_set_orientation(
22824        settings: *mut GtkPrintSettings,
22825        orientation: GtkPageOrientation,
22826    );
22827    pub fn gtk_print_settings_set_output_bin(
22828        settings: *mut GtkPrintSettings,
22829        output_bin: *const c_char,
22830    );
22831    pub fn gtk_print_settings_set_page_ranges(
22832        settings: *mut GtkPrintSettings,
22833        page_ranges: *mut GtkPageRange,
22834        num_ranges: c_int,
22835    );
22836    pub fn gtk_print_settings_set_page_set(settings: *mut GtkPrintSettings, page_set: GtkPageSet);
22837    pub fn gtk_print_settings_set_paper_height(
22838        settings: *mut GtkPrintSettings,
22839        height: c_double,
22840        unit: GtkUnit,
22841    );
22842    pub fn gtk_print_settings_set_paper_size(
22843        settings: *mut GtkPrintSettings,
22844        paper_size: *mut GtkPaperSize,
22845    );
22846    pub fn gtk_print_settings_set_paper_width(
22847        settings: *mut GtkPrintSettings,
22848        width: c_double,
22849        unit: GtkUnit,
22850    );
22851    pub fn gtk_print_settings_set_print_pages(
22852        settings: *mut GtkPrintSettings,
22853        pages: GtkPrintPages,
22854    );
22855    pub fn gtk_print_settings_set_printer(settings: *mut GtkPrintSettings, printer: *const c_char);
22856    pub fn gtk_print_settings_set_printer_lpi(settings: *mut GtkPrintSettings, lpi: c_double);
22857    pub fn gtk_print_settings_set_quality(
22858        settings: *mut GtkPrintSettings,
22859        quality: GtkPrintQuality,
22860    );
22861    pub fn gtk_print_settings_set_resolution(settings: *mut GtkPrintSettings, resolution: c_int);
22862    pub fn gtk_print_settings_set_resolution_xy(
22863        settings: *mut GtkPrintSettings,
22864        resolution_x: c_int,
22865        resolution_y: c_int,
22866    );
22867    pub fn gtk_print_settings_set_reverse(settings: *mut GtkPrintSettings, reverse: gboolean);
22868    pub fn gtk_print_settings_set_scale(settings: *mut GtkPrintSettings, scale: c_double);
22869    pub fn gtk_print_settings_set_use_color(settings: *mut GtkPrintSettings, use_color: gboolean);
22870    pub fn gtk_print_settings_to_file(
22871        settings: *mut GtkPrintSettings,
22872        file_name: *const c_char,
22873        error: *mut *mut glib::GError,
22874    ) -> gboolean;
22875    pub fn gtk_print_settings_to_gvariant(settings: *mut GtkPrintSettings) -> *mut glib::GVariant;
22876    pub fn gtk_print_settings_to_key_file(
22877        settings: *mut GtkPrintSettings,
22878        key_file: *mut glib::GKeyFile,
22879        group_name: *const c_char,
22880    );
22881    pub fn gtk_print_settings_unset(settings: *mut GtkPrintSettings, key: *const c_char);
22882
22883    //=========================================================================
22884    // GtkProgressBar
22885    //=========================================================================
22886    pub fn gtk_progress_bar_get_type() -> GType;
22887    pub fn gtk_progress_bar_new() -> *mut GtkWidget;
22888    pub fn gtk_progress_bar_get_ellipsize(pbar: *mut GtkProgressBar) -> pango::PangoEllipsizeMode;
22889    pub fn gtk_progress_bar_get_fraction(pbar: *mut GtkProgressBar) -> c_double;
22890    pub fn gtk_progress_bar_get_inverted(pbar: *mut GtkProgressBar) -> gboolean;
22891    pub fn gtk_progress_bar_get_pulse_step(pbar: *mut GtkProgressBar) -> c_double;
22892    pub fn gtk_progress_bar_get_show_text(pbar: *mut GtkProgressBar) -> gboolean;
22893    pub fn gtk_progress_bar_get_text(pbar: *mut GtkProgressBar) -> *const c_char;
22894    pub fn gtk_progress_bar_pulse(pbar: *mut GtkProgressBar);
22895    pub fn gtk_progress_bar_set_ellipsize(
22896        pbar: *mut GtkProgressBar,
22897        mode: pango::PangoEllipsizeMode,
22898    );
22899    pub fn gtk_progress_bar_set_fraction(pbar: *mut GtkProgressBar, fraction: c_double);
22900    pub fn gtk_progress_bar_set_inverted(pbar: *mut GtkProgressBar, inverted: gboolean);
22901    pub fn gtk_progress_bar_set_pulse_step(pbar: *mut GtkProgressBar, fraction: c_double);
22902    pub fn gtk_progress_bar_set_show_text(pbar: *mut GtkProgressBar, show_text: gboolean);
22903    pub fn gtk_progress_bar_set_text(pbar: *mut GtkProgressBar, text: *const c_char);
22904
22905    //=========================================================================
22906    // GtkProgressBarAccessible
22907    //=========================================================================
22908    pub fn gtk_progress_bar_accessible_get_type() -> GType;
22909
22910    //=========================================================================
22911    // GtkRadioAction
22912    //=========================================================================
22913    pub fn gtk_radio_action_get_type() -> GType;
22914    pub fn gtk_radio_action_new(
22915        name: *const c_char,
22916        label: *const c_char,
22917        tooltip: *const c_char,
22918        stock_id: *const c_char,
22919        value: c_int,
22920    ) -> *mut GtkRadioAction;
22921    pub fn gtk_radio_action_get_current_value(action: *mut GtkRadioAction) -> c_int;
22922    pub fn gtk_radio_action_get_group(action: *mut GtkRadioAction) -> *mut glib::GSList;
22923    pub fn gtk_radio_action_join_group(
22924        action: *mut GtkRadioAction,
22925        group_source: *mut GtkRadioAction,
22926    );
22927    pub fn gtk_radio_action_set_current_value(action: *mut GtkRadioAction, current_value: c_int);
22928    pub fn gtk_radio_action_set_group(action: *mut GtkRadioAction, group: *mut glib::GSList);
22929
22930    //=========================================================================
22931    // GtkRadioButton
22932    //=========================================================================
22933    pub fn gtk_radio_button_get_type() -> GType;
22934    pub fn gtk_radio_button_new(group: *mut glib::GSList) -> *mut GtkWidget;
22935    pub fn gtk_radio_button_new_from_widget(
22936        radio_group_member: *mut GtkRadioButton,
22937    ) -> *mut GtkWidget;
22938    pub fn gtk_radio_button_new_with_label(
22939        group: *mut glib::GSList,
22940        label: *const c_char,
22941    ) -> *mut GtkWidget;
22942    pub fn gtk_radio_button_new_with_label_from_widget(
22943        radio_group_member: *mut GtkRadioButton,
22944        label: *const c_char,
22945    ) -> *mut GtkWidget;
22946    pub fn gtk_radio_button_new_with_mnemonic(
22947        group: *mut glib::GSList,
22948        label: *const c_char,
22949    ) -> *mut GtkWidget;
22950    pub fn gtk_radio_button_new_with_mnemonic_from_widget(
22951        radio_group_member: *mut GtkRadioButton,
22952        label: *const c_char,
22953    ) -> *mut GtkWidget;
22954    pub fn gtk_radio_button_get_group(radio_button: *mut GtkRadioButton) -> *mut glib::GSList;
22955    pub fn gtk_radio_button_join_group(
22956        radio_button: *mut GtkRadioButton,
22957        group_source: *mut GtkRadioButton,
22958    );
22959    pub fn gtk_radio_button_set_group(radio_button: *mut GtkRadioButton, group: *mut glib::GSList);
22960
22961    //=========================================================================
22962    // GtkRadioButtonAccessible
22963    //=========================================================================
22964    pub fn gtk_radio_button_accessible_get_type() -> GType;
22965
22966    //=========================================================================
22967    // GtkRadioMenuItem
22968    //=========================================================================
22969    pub fn gtk_radio_menu_item_get_type() -> GType;
22970    pub fn gtk_radio_menu_item_new(group: *mut glib::GSList) -> *mut GtkWidget;
22971    pub fn gtk_radio_menu_item_new_from_widget(group: *mut GtkRadioMenuItem) -> *mut GtkWidget;
22972    pub fn gtk_radio_menu_item_new_with_label(
22973        group: *mut glib::GSList,
22974        label: *const c_char,
22975    ) -> *mut GtkWidget;
22976    pub fn gtk_radio_menu_item_new_with_label_from_widget(
22977        group: *mut GtkRadioMenuItem,
22978        label: *const c_char,
22979    ) -> *mut GtkWidget;
22980    pub fn gtk_radio_menu_item_new_with_mnemonic(
22981        group: *mut glib::GSList,
22982        label: *const c_char,
22983    ) -> *mut GtkWidget;
22984    pub fn gtk_radio_menu_item_new_with_mnemonic_from_widget(
22985        group: *mut GtkRadioMenuItem,
22986        label: *const c_char,
22987    ) -> *mut GtkWidget;
22988    pub fn gtk_radio_menu_item_get_group(
22989        radio_menu_item: *mut GtkRadioMenuItem,
22990    ) -> *mut glib::GSList;
22991    pub fn gtk_radio_menu_item_join_group(
22992        radio_menu_item: *mut GtkRadioMenuItem,
22993        group_source: *mut GtkRadioMenuItem,
22994    );
22995    pub fn gtk_radio_menu_item_set_group(
22996        radio_menu_item: *mut GtkRadioMenuItem,
22997        group: *mut glib::GSList,
22998    );
22999
23000    //=========================================================================
23001    // GtkRadioMenuItemAccessible
23002    //=========================================================================
23003    pub fn gtk_radio_menu_item_accessible_get_type() -> GType;
23004
23005    //=========================================================================
23006    // GtkRadioToolButton
23007    //=========================================================================
23008    pub fn gtk_radio_tool_button_get_type() -> GType;
23009    pub fn gtk_radio_tool_button_new(group: *mut glib::GSList) -> *mut GtkToolItem;
23010    pub fn gtk_radio_tool_button_new_from_stock(
23011        group: *mut glib::GSList,
23012        stock_id: *const c_char,
23013    ) -> *mut GtkToolItem;
23014    pub fn gtk_radio_tool_button_new_from_widget(
23015        group: *mut GtkRadioToolButton,
23016    ) -> *mut GtkToolItem;
23017    pub fn gtk_radio_tool_button_new_with_stock_from_widget(
23018        group: *mut GtkRadioToolButton,
23019        stock_id: *const c_char,
23020    ) -> *mut GtkToolItem;
23021    pub fn gtk_radio_tool_button_get_group(button: *mut GtkRadioToolButton) -> *mut glib::GSList;
23022    pub fn gtk_radio_tool_button_set_group(
23023        button: *mut GtkRadioToolButton,
23024        group: *mut glib::GSList,
23025    );
23026
23027    //=========================================================================
23028    // GtkRange
23029    //=========================================================================
23030    pub fn gtk_range_get_type() -> GType;
23031    pub fn gtk_range_get_adjustment(range: *mut GtkRange) -> *mut GtkAdjustment;
23032    pub fn gtk_range_get_fill_level(range: *mut GtkRange) -> c_double;
23033    pub fn gtk_range_get_flippable(range: *mut GtkRange) -> gboolean;
23034    pub fn gtk_range_get_inverted(range: *mut GtkRange) -> gboolean;
23035    pub fn gtk_range_get_lower_stepper_sensitivity(range: *mut GtkRange) -> GtkSensitivityType;
23036    pub fn gtk_range_get_min_slider_size(range: *mut GtkRange) -> c_int;
23037    pub fn gtk_range_get_range_rect(range: *mut GtkRange, range_rect: *mut gdk::GdkRectangle);
23038    pub fn gtk_range_get_restrict_to_fill_level(range: *mut GtkRange) -> gboolean;
23039    pub fn gtk_range_get_round_digits(range: *mut GtkRange) -> c_int;
23040    pub fn gtk_range_get_show_fill_level(range: *mut GtkRange) -> gboolean;
23041    pub fn gtk_range_get_slider_range(
23042        range: *mut GtkRange,
23043        slider_start: *mut c_int,
23044        slider_end: *mut c_int,
23045    );
23046    pub fn gtk_range_get_slider_size_fixed(range: *mut GtkRange) -> gboolean;
23047    pub fn gtk_range_get_upper_stepper_sensitivity(range: *mut GtkRange) -> GtkSensitivityType;
23048    pub fn gtk_range_get_value(range: *mut GtkRange) -> c_double;
23049    pub fn gtk_range_set_adjustment(range: *mut GtkRange, adjustment: *mut GtkAdjustment);
23050    pub fn gtk_range_set_fill_level(range: *mut GtkRange, fill_level: c_double);
23051    pub fn gtk_range_set_flippable(range: *mut GtkRange, flippable: gboolean);
23052    pub fn gtk_range_set_increments(range: *mut GtkRange, step: c_double, page: c_double);
23053    pub fn gtk_range_set_inverted(range: *mut GtkRange, setting: gboolean);
23054    pub fn gtk_range_set_lower_stepper_sensitivity(
23055        range: *mut GtkRange,
23056        sensitivity: GtkSensitivityType,
23057    );
23058    pub fn gtk_range_set_min_slider_size(range: *mut GtkRange, min_size: c_int);
23059    pub fn gtk_range_set_range(range: *mut GtkRange, min: c_double, max: c_double);
23060    pub fn gtk_range_set_restrict_to_fill_level(
23061        range: *mut GtkRange,
23062        restrict_to_fill_level: gboolean,
23063    );
23064    pub fn gtk_range_set_round_digits(range: *mut GtkRange, round_digits: c_int);
23065    pub fn gtk_range_set_show_fill_level(range: *mut GtkRange, show_fill_level: gboolean);
23066    pub fn gtk_range_set_slider_size_fixed(range: *mut GtkRange, size_fixed: gboolean);
23067    pub fn gtk_range_set_upper_stepper_sensitivity(
23068        range: *mut GtkRange,
23069        sensitivity: GtkSensitivityType,
23070    );
23071    pub fn gtk_range_set_value(range: *mut GtkRange, value: c_double);
23072
23073    //=========================================================================
23074    // GtkRangeAccessible
23075    //=========================================================================
23076    pub fn gtk_range_accessible_get_type() -> GType;
23077
23078    //=========================================================================
23079    // GtkRcStyle
23080    //=========================================================================
23081    pub fn gtk_rc_style_get_type() -> GType;
23082    pub fn gtk_rc_style_new() -> *mut GtkRcStyle;
23083    pub fn gtk_rc_style_copy(orig: *mut GtkRcStyle) -> *mut GtkRcStyle;
23084
23085    //=========================================================================
23086    // GtkRecentAction
23087    //=========================================================================
23088    pub fn gtk_recent_action_get_type() -> GType;
23089    pub fn gtk_recent_action_new(
23090        name: *const c_char,
23091        label: *const c_char,
23092        tooltip: *const c_char,
23093        stock_id: *const c_char,
23094    ) -> *mut GtkAction;
23095    pub fn gtk_recent_action_new_for_manager(
23096        name: *const c_char,
23097        label: *const c_char,
23098        tooltip: *const c_char,
23099        stock_id: *const c_char,
23100        manager: *mut GtkRecentManager,
23101    ) -> *mut GtkAction;
23102    pub fn gtk_recent_action_get_show_numbers(action: *mut GtkRecentAction) -> gboolean;
23103    pub fn gtk_recent_action_set_show_numbers(action: *mut GtkRecentAction, show_numbers: gboolean);
23104
23105    //=========================================================================
23106    // GtkRecentChooserDialog
23107    //=========================================================================
23108    pub fn gtk_recent_chooser_dialog_get_type() -> GType;
23109    pub fn gtk_recent_chooser_dialog_new(
23110        title: *const c_char,
23111        parent: *mut GtkWindow,
23112        first_button_text: *const c_char,
23113        ...
23114    ) -> *mut GtkWidget;
23115    pub fn gtk_recent_chooser_dialog_new_for_manager(
23116        title: *const c_char,
23117        parent: *mut GtkWindow,
23118        manager: *mut GtkRecentManager,
23119        first_button_text: *const c_char,
23120        ...
23121    ) -> *mut GtkWidget;
23122
23123    //=========================================================================
23124    // GtkRecentChooserMenu
23125    //=========================================================================
23126    pub fn gtk_recent_chooser_menu_get_type() -> GType;
23127    pub fn gtk_recent_chooser_menu_new() -> *mut GtkWidget;
23128    pub fn gtk_recent_chooser_menu_new_for_manager(
23129        manager: *mut GtkRecentManager,
23130    ) -> *mut GtkWidget;
23131    pub fn gtk_recent_chooser_menu_get_show_numbers(menu: *mut GtkRecentChooserMenu) -> gboolean;
23132    pub fn gtk_recent_chooser_menu_set_show_numbers(
23133        menu: *mut GtkRecentChooserMenu,
23134        show_numbers: gboolean,
23135    );
23136
23137    //=========================================================================
23138    // GtkRecentChooserWidget
23139    //=========================================================================
23140    pub fn gtk_recent_chooser_widget_get_type() -> GType;
23141    pub fn gtk_recent_chooser_widget_new() -> *mut GtkWidget;
23142    pub fn gtk_recent_chooser_widget_new_for_manager(
23143        manager: *mut GtkRecentManager,
23144    ) -> *mut GtkWidget;
23145
23146    //=========================================================================
23147    // GtkRecentFilter
23148    //=========================================================================
23149    pub fn gtk_recent_filter_get_type() -> GType;
23150    pub fn gtk_recent_filter_new() -> *mut GtkRecentFilter;
23151    pub fn gtk_recent_filter_add_age(filter: *mut GtkRecentFilter, days: c_int);
23152    pub fn gtk_recent_filter_add_application(
23153        filter: *mut GtkRecentFilter,
23154        application: *const c_char,
23155    );
23156    pub fn gtk_recent_filter_add_custom(
23157        filter: *mut GtkRecentFilter,
23158        needed: GtkRecentFilterFlags,
23159        func: GtkRecentFilterFunc,
23160        data: gpointer,
23161        data_destroy: glib::GDestroyNotify,
23162    );
23163    pub fn gtk_recent_filter_add_group(filter: *mut GtkRecentFilter, group: *const c_char);
23164    pub fn gtk_recent_filter_add_mime_type(filter: *mut GtkRecentFilter, mime_type: *const c_char);
23165    pub fn gtk_recent_filter_add_pattern(filter: *mut GtkRecentFilter, pattern: *const c_char);
23166    pub fn gtk_recent_filter_add_pixbuf_formats(filter: *mut GtkRecentFilter);
23167    pub fn gtk_recent_filter_filter(
23168        filter: *mut GtkRecentFilter,
23169        filter_info: *const GtkRecentFilterInfo,
23170    ) -> gboolean;
23171    pub fn gtk_recent_filter_get_name(filter: *mut GtkRecentFilter) -> *const c_char;
23172    pub fn gtk_recent_filter_get_needed(filter: *mut GtkRecentFilter) -> GtkRecentFilterFlags;
23173    pub fn gtk_recent_filter_set_name(filter: *mut GtkRecentFilter, name: *const c_char);
23174
23175    //=========================================================================
23176    // GtkRecentManager
23177    //=========================================================================
23178    pub fn gtk_recent_manager_get_type() -> GType;
23179    pub fn gtk_recent_manager_new() -> *mut GtkRecentManager;
23180    pub fn gtk_recent_manager_get_default() -> *mut GtkRecentManager;
23181    pub fn gtk_recent_manager_add_full(
23182        manager: *mut GtkRecentManager,
23183        uri: *const c_char,
23184        recent_data: *const GtkRecentData,
23185    ) -> gboolean;
23186    pub fn gtk_recent_manager_add_item(
23187        manager: *mut GtkRecentManager,
23188        uri: *const c_char,
23189    ) -> gboolean;
23190    pub fn gtk_recent_manager_get_items(manager: *mut GtkRecentManager) -> *mut glib::GList;
23191    pub fn gtk_recent_manager_has_item(
23192        manager: *mut GtkRecentManager,
23193        uri: *const c_char,
23194    ) -> gboolean;
23195    pub fn gtk_recent_manager_lookup_item(
23196        manager: *mut GtkRecentManager,
23197        uri: *const c_char,
23198        error: *mut *mut glib::GError,
23199    ) -> *mut GtkRecentInfo;
23200    pub fn gtk_recent_manager_move_item(
23201        manager: *mut GtkRecentManager,
23202        uri: *const c_char,
23203        new_uri: *const c_char,
23204        error: *mut *mut glib::GError,
23205    ) -> gboolean;
23206    pub fn gtk_recent_manager_purge_items(
23207        manager: *mut GtkRecentManager,
23208        error: *mut *mut glib::GError,
23209    ) -> c_int;
23210    pub fn gtk_recent_manager_remove_item(
23211        manager: *mut GtkRecentManager,
23212        uri: *const c_char,
23213        error: *mut *mut glib::GError,
23214    ) -> gboolean;
23215
23216    //=========================================================================
23217    // GtkRendererCellAccessible
23218    //=========================================================================
23219    pub fn gtk_renderer_cell_accessible_get_type() -> GType;
23220    pub fn gtk_renderer_cell_accessible_new(renderer: *mut GtkCellRenderer) -> *mut atk::AtkObject;
23221
23222    //=========================================================================
23223    // GtkRevealer
23224    //=========================================================================
23225    pub fn gtk_revealer_get_type() -> GType;
23226    pub fn gtk_revealer_new() -> *mut GtkWidget;
23227    pub fn gtk_revealer_get_child_revealed(revealer: *mut GtkRevealer) -> gboolean;
23228    pub fn gtk_revealer_get_reveal_child(revealer: *mut GtkRevealer) -> gboolean;
23229    pub fn gtk_revealer_get_transition_duration(revealer: *mut GtkRevealer) -> c_uint;
23230    pub fn gtk_revealer_get_transition_type(
23231        revealer: *mut GtkRevealer,
23232    ) -> GtkRevealerTransitionType;
23233    pub fn gtk_revealer_set_reveal_child(revealer: *mut GtkRevealer, reveal_child: gboolean);
23234    pub fn gtk_revealer_set_transition_duration(revealer: *mut GtkRevealer, duration: c_uint);
23235    pub fn gtk_revealer_set_transition_type(
23236        revealer: *mut GtkRevealer,
23237        transition: GtkRevealerTransitionType,
23238    );
23239
23240    //=========================================================================
23241    // GtkScale
23242    //=========================================================================
23243    pub fn gtk_scale_get_type() -> GType;
23244    pub fn gtk_scale_new(
23245        orientation: GtkOrientation,
23246        adjustment: *mut GtkAdjustment,
23247    ) -> *mut GtkWidget;
23248    pub fn gtk_scale_new_with_range(
23249        orientation: GtkOrientation,
23250        min: c_double,
23251        max: c_double,
23252        step: c_double,
23253    ) -> *mut GtkWidget;
23254    pub fn gtk_scale_add_mark(
23255        scale: *mut GtkScale,
23256        value: c_double,
23257        position: GtkPositionType,
23258        markup: *const c_char,
23259    );
23260    pub fn gtk_scale_clear_marks(scale: *mut GtkScale);
23261    pub fn gtk_scale_get_digits(scale: *mut GtkScale) -> c_int;
23262    pub fn gtk_scale_get_draw_value(scale: *mut GtkScale) -> gboolean;
23263    pub fn gtk_scale_get_has_origin(scale: *mut GtkScale) -> gboolean;
23264    pub fn gtk_scale_get_layout(scale: *mut GtkScale) -> *mut pango::PangoLayout;
23265    pub fn gtk_scale_get_layout_offsets(scale: *mut GtkScale, x: *mut c_int, y: *mut c_int);
23266    pub fn gtk_scale_get_value_pos(scale: *mut GtkScale) -> GtkPositionType;
23267    pub fn gtk_scale_set_digits(scale: *mut GtkScale, digits: c_int);
23268    pub fn gtk_scale_set_draw_value(scale: *mut GtkScale, draw_value: gboolean);
23269    pub fn gtk_scale_set_has_origin(scale: *mut GtkScale, has_origin: gboolean);
23270    pub fn gtk_scale_set_value_pos(scale: *mut GtkScale, pos: GtkPositionType);
23271
23272    //=========================================================================
23273    // GtkScaleAccessible
23274    //=========================================================================
23275    pub fn gtk_scale_accessible_get_type() -> GType;
23276
23277    //=========================================================================
23278    // GtkScaleButton
23279    //=========================================================================
23280    pub fn gtk_scale_button_get_type() -> GType;
23281    pub fn gtk_scale_button_new(
23282        size: GtkIconSize,
23283        min: c_double,
23284        max: c_double,
23285        step: c_double,
23286        icons: *mut *const c_char,
23287    ) -> *mut GtkWidget;
23288    pub fn gtk_scale_button_get_adjustment(button: *mut GtkScaleButton) -> *mut GtkAdjustment;
23289    pub fn gtk_scale_button_get_minus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
23290    pub fn gtk_scale_button_get_plus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
23291    pub fn gtk_scale_button_get_popup(button: *mut GtkScaleButton) -> *mut GtkWidget;
23292    pub fn gtk_scale_button_get_value(button: *mut GtkScaleButton) -> c_double;
23293    pub fn gtk_scale_button_set_adjustment(
23294        button: *mut GtkScaleButton,
23295        adjustment: *mut GtkAdjustment,
23296    );
23297    pub fn gtk_scale_button_set_icons(button: *mut GtkScaleButton, icons: *mut *const c_char);
23298    pub fn gtk_scale_button_set_value(button: *mut GtkScaleButton, value: c_double);
23299
23300    //=========================================================================
23301    // GtkScaleButtonAccessible
23302    //=========================================================================
23303    pub fn gtk_scale_button_accessible_get_type() -> GType;
23304
23305    //=========================================================================
23306    // GtkScrollbar
23307    //=========================================================================
23308    pub fn gtk_scrollbar_get_type() -> GType;
23309    pub fn gtk_scrollbar_new(
23310        orientation: GtkOrientation,
23311        adjustment: *mut GtkAdjustment,
23312    ) -> *mut GtkWidget;
23313
23314    //=========================================================================
23315    // GtkScrolledWindow
23316    //=========================================================================
23317    pub fn gtk_scrolled_window_get_type() -> GType;
23318    pub fn gtk_scrolled_window_new(
23319        hadjustment: *mut GtkAdjustment,
23320        vadjustment: *mut GtkAdjustment,
23321    ) -> *mut GtkWidget;
23322    pub fn gtk_scrolled_window_add_with_viewport(
23323        scrolled_window: *mut GtkScrolledWindow,
23324        child: *mut GtkWidget,
23325    );
23326    pub fn gtk_scrolled_window_get_capture_button_press(
23327        scrolled_window: *mut GtkScrolledWindow,
23328    ) -> gboolean;
23329    pub fn gtk_scrolled_window_get_hadjustment(
23330        scrolled_window: *mut GtkScrolledWindow,
23331    ) -> *mut GtkAdjustment;
23332    pub fn gtk_scrolled_window_get_hscrollbar(
23333        scrolled_window: *mut GtkScrolledWindow,
23334    ) -> *mut GtkWidget;
23335    pub fn gtk_scrolled_window_get_kinetic_scrolling(
23336        scrolled_window: *mut GtkScrolledWindow,
23337    ) -> gboolean;
23338    pub fn gtk_scrolled_window_get_max_content_height(
23339        scrolled_window: *mut GtkScrolledWindow,
23340    ) -> c_int;
23341    pub fn gtk_scrolled_window_get_max_content_width(
23342        scrolled_window: *mut GtkScrolledWindow,
23343    ) -> c_int;
23344    pub fn gtk_scrolled_window_get_min_content_height(
23345        scrolled_window: *mut GtkScrolledWindow,
23346    ) -> c_int;
23347    pub fn gtk_scrolled_window_get_min_content_width(
23348        scrolled_window: *mut GtkScrolledWindow,
23349    ) -> c_int;
23350    pub fn gtk_scrolled_window_get_overlay_scrolling(
23351        scrolled_window: *mut GtkScrolledWindow,
23352    ) -> gboolean;
23353    pub fn gtk_scrolled_window_get_placement(
23354        scrolled_window: *mut GtkScrolledWindow,
23355    ) -> GtkCornerType;
23356    pub fn gtk_scrolled_window_get_policy(
23357        scrolled_window: *mut GtkScrolledWindow,
23358        hscrollbar_policy: *mut GtkPolicyType,
23359        vscrollbar_policy: *mut GtkPolicyType,
23360    );
23361    pub fn gtk_scrolled_window_get_propagate_natural_height(
23362        scrolled_window: *mut GtkScrolledWindow,
23363    ) -> gboolean;
23364    pub fn gtk_scrolled_window_get_propagate_natural_width(
23365        scrolled_window: *mut GtkScrolledWindow,
23366    ) -> gboolean;
23367    pub fn gtk_scrolled_window_get_shadow_type(
23368        scrolled_window: *mut GtkScrolledWindow,
23369    ) -> GtkShadowType;
23370    pub fn gtk_scrolled_window_get_vadjustment(
23371        scrolled_window: *mut GtkScrolledWindow,
23372    ) -> *mut GtkAdjustment;
23373    pub fn gtk_scrolled_window_get_vscrollbar(
23374        scrolled_window: *mut GtkScrolledWindow,
23375    ) -> *mut GtkWidget;
23376    pub fn gtk_scrolled_window_set_capture_button_press(
23377        scrolled_window: *mut GtkScrolledWindow,
23378        capture_button_press: gboolean,
23379    );
23380    pub fn gtk_scrolled_window_set_hadjustment(
23381        scrolled_window: *mut GtkScrolledWindow,
23382        hadjustment: *mut GtkAdjustment,
23383    );
23384    pub fn gtk_scrolled_window_set_kinetic_scrolling(
23385        scrolled_window: *mut GtkScrolledWindow,
23386        kinetic_scrolling: gboolean,
23387    );
23388    pub fn gtk_scrolled_window_set_max_content_height(
23389        scrolled_window: *mut GtkScrolledWindow,
23390        height: c_int,
23391    );
23392    pub fn gtk_scrolled_window_set_max_content_width(
23393        scrolled_window: *mut GtkScrolledWindow,
23394        width: c_int,
23395    );
23396    pub fn gtk_scrolled_window_set_min_content_height(
23397        scrolled_window: *mut GtkScrolledWindow,
23398        height: c_int,
23399    );
23400    pub fn gtk_scrolled_window_set_min_content_width(
23401        scrolled_window: *mut GtkScrolledWindow,
23402        width: c_int,
23403    );
23404    pub fn gtk_scrolled_window_set_overlay_scrolling(
23405        scrolled_window: *mut GtkScrolledWindow,
23406        overlay_scrolling: gboolean,
23407    );
23408    pub fn gtk_scrolled_window_set_placement(
23409        scrolled_window: *mut GtkScrolledWindow,
23410        window_placement: GtkCornerType,
23411    );
23412    pub fn gtk_scrolled_window_set_policy(
23413        scrolled_window: *mut GtkScrolledWindow,
23414        hscrollbar_policy: GtkPolicyType,
23415        vscrollbar_policy: GtkPolicyType,
23416    );
23417    pub fn gtk_scrolled_window_set_propagate_natural_height(
23418        scrolled_window: *mut GtkScrolledWindow,
23419        propagate: gboolean,
23420    );
23421    pub fn gtk_scrolled_window_set_propagate_natural_width(
23422        scrolled_window: *mut GtkScrolledWindow,
23423        propagate: gboolean,
23424    );
23425    pub fn gtk_scrolled_window_set_shadow_type(
23426        scrolled_window: *mut GtkScrolledWindow,
23427        type_: GtkShadowType,
23428    );
23429    pub fn gtk_scrolled_window_set_vadjustment(
23430        scrolled_window: *mut GtkScrolledWindow,
23431        vadjustment: *mut GtkAdjustment,
23432    );
23433    pub fn gtk_scrolled_window_unset_placement(scrolled_window: *mut GtkScrolledWindow);
23434
23435    //=========================================================================
23436    // GtkScrolledWindowAccessible
23437    //=========================================================================
23438    pub fn gtk_scrolled_window_accessible_get_type() -> GType;
23439
23440    //=========================================================================
23441    // GtkSearchBar
23442    //=========================================================================
23443    pub fn gtk_search_bar_get_type() -> GType;
23444    pub fn gtk_search_bar_new() -> *mut GtkWidget;
23445    pub fn gtk_search_bar_connect_entry(bar: *mut GtkSearchBar, entry: *mut GtkEntry);
23446    pub fn gtk_search_bar_get_search_mode(bar: *mut GtkSearchBar) -> gboolean;
23447    pub fn gtk_search_bar_get_show_close_button(bar: *mut GtkSearchBar) -> gboolean;
23448    pub fn gtk_search_bar_handle_event(
23449        bar: *mut GtkSearchBar,
23450        event: *mut gdk::GdkEvent,
23451    ) -> gboolean;
23452    pub fn gtk_search_bar_set_search_mode(bar: *mut GtkSearchBar, search_mode: gboolean);
23453    pub fn gtk_search_bar_set_show_close_button(bar: *mut GtkSearchBar, visible: gboolean);
23454
23455    //=========================================================================
23456    // GtkSearchEntry
23457    //=========================================================================
23458    pub fn gtk_search_entry_get_type() -> GType;
23459    pub fn gtk_search_entry_new() -> *mut GtkWidget;
23460    pub fn gtk_search_entry_handle_event(
23461        entry: *mut GtkSearchEntry,
23462        event: *mut gdk::GdkEvent,
23463    ) -> gboolean;
23464
23465    //=========================================================================
23466    // GtkSeparator
23467    //=========================================================================
23468    pub fn gtk_separator_get_type() -> GType;
23469    pub fn gtk_separator_new(orientation: GtkOrientation) -> *mut GtkWidget;
23470
23471    //=========================================================================
23472    // GtkSeparatorMenuItem
23473    //=========================================================================
23474    pub fn gtk_separator_menu_item_get_type() -> GType;
23475    pub fn gtk_separator_menu_item_new() -> *mut GtkWidget;
23476
23477    //=========================================================================
23478    // GtkSeparatorToolItem
23479    //=========================================================================
23480    pub fn gtk_separator_tool_item_get_type() -> GType;
23481    pub fn gtk_separator_tool_item_new() -> *mut GtkToolItem;
23482    pub fn gtk_separator_tool_item_get_draw(item: *mut GtkSeparatorToolItem) -> gboolean;
23483    pub fn gtk_separator_tool_item_set_draw(item: *mut GtkSeparatorToolItem, draw: gboolean);
23484
23485    //=========================================================================
23486    // GtkSettings
23487    //=========================================================================
23488    pub fn gtk_settings_get_type() -> GType;
23489    pub fn gtk_settings_get_default() -> *mut GtkSettings;
23490    pub fn gtk_settings_get_for_screen(screen: *mut gdk::GdkScreen) -> *mut GtkSettings;
23491    pub fn gtk_settings_install_property(pspec: *mut gobject::GParamSpec);
23492    pub fn gtk_settings_install_property_parser(
23493        pspec: *mut gobject::GParamSpec,
23494        parser: GtkRcPropertyParser,
23495    );
23496    pub fn gtk_settings_reset_property(settings: *mut GtkSettings, name: *const c_char);
23497    pub fn gtk_settings_set_double_property(
23498        settings: *mut GtkSettings,
23499        name: *const c_char,
23500        v_double: c_double,
23501        origin: *const c_char,
23502    );
23503    pub fn gtk_settings_set_long_property(
23504        settings: *mut GtkSettings,
23505        name: *const c_char,
23506        v_long: c_long,
23507        origin: *const c_char,
23508    );
23509    pub fn gtk_settings_set_property_value(
23510        settings: *mut GtkSettings,
23511        name: *const c_char,
23512        svalue: *const GtkSettingsValue,
23513    );
23514    pub fn gtk_settings_set_string_property(
23515        settings: *mut GtkSettings,
23516        name: *const c_char,
23517        v_string: *const c_char,
23518        origin: *const c_char,
23519    );
23520
23521    //=========================================================================
23522    // GtkShortcutLabel
23523    //=========================================================================
23524    pub fn gtk_shortcut_label_get_type() -> GType;
23525    pub fn gtk_shortcut_label_new(accelerator: *const c_char) -> *mut GtkWidget;
23526    pub fn gtk_shortcut_label_get_accelerator(self_: *mut GtkShortcutLabel) -> *const c_char;
23527    pub fn gtk_shortcut_label_get_disabled_text(self_: *mut GtkShortcutLabel) -> *const c_char;
23528    pub fn gtk_shortcut_label_set_accelerator(
23529        self_: *mut GtkShortcutLabel,
23530        accelerator: *const c_char,
23531    );
23532    pub fn gtk_shortcut_label_set_disabled_text(
23533        self_: *mut GtkShortcutLabel,
23534        disabled_text: *const c_char,
23535    );
23536
23537    //=========================================================================
23538    // GtkShortcutsGroup
23539    //=========================================================================
23540    pub fn gtk_shortcuts_group_get_type() -> GType;
23541
23542    //=========================================================================
23543    // GtkShortcutsSection
23544    //=========================================================================
23545    pub fn gtk_shortcuts_section_get_type() -> GType;
23546
23547    //=========================================================================
23548    // GtkShortcutsShortcut
23549    //=========================================================================
23550    pub fn gtk_shortcuts_shortcut_get_type() -> GType;
23551
23552    //=========================================================================
23553    // GtkShortcutsWindow
23554    //=========================================================================
23555    pub fn gtk_shortcuts_window_get_type() -> GType;
23556
23557    //=========================================================================
23558    // GtkSizeGroup
23559    //=========================================================================
23560    pub fn gtk_size_group_get_type() -> GType;
23561    pub fn gtk_size_group_new(mode: GtkSizeGroupMode) -> *mut GtkSizeGroup;
23562    pub fn gtk_size_group_add_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
23563    pub fn gtk_size_group_get_ignore_hidden(size_group: *mut GtkSizeGroup) -> gboolean;
23564    pub fn gtk_size_group_get_mode(size_group: *mut GtkSizeGroup) -> GtkSizeGroupMode;
23565    pub fn gtk_size_group_get_widgets(size_group: *mut GtkSizeGroup) -> *mut glib::GSList;
23566    pub fn gtk_size_group_remove_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
23567    pub fn gtk_size_group_set_ignore_hidden(size_group: *mut GtkSizeGroup, ignore_hidden: gboolean);
23568    pub fn gtk_size_group_set_mode(size_group: *mut GtkSizeGroup, mode: GtkSizeGroupMode);
23569
23570    //=========================================================================
23571    // GtkSocket
23572    //=========================================================================
23573    pub fn gtk_socket_get_type() -> GType;
23574    pub fn gtk_socket_new() -> *mut GtkWidget;
23575    pub fn gtk_socket_add_id(socket_: *mut GtkSocket, window: xlib::Window);
23576    pub fn gtk_socket_get_id(socket_: *mut GtkSocket) -> xlib::Window;
23577    pub fn gtk_socket_get_plug_window(socket_: *mut GtkSocket) -> *mut gdk::GdkWindow;
23578
23579    //=========================================================================
23580    // GtkSocketAccessible
23581    //=========================================================================
23582    #[cfg(feature = "v3_24_30")]
23583    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24_30")))]
23584    pub fn gtk_socket_accessible_get_type() -> GType;
23585    #[cfg(feature = "v3_24_30")]
23586    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24_30")))]
23587    pub fn gtk_socket_accessible_embed(socket: *mut GtkSocketAccessible, path: *mut c_char);
23588
23589    //=========================================================================
23590    // GtkSpinButton
23591    //=========================================================================
23592    pub fn gtk_spin_button_get_type() -> GType;
23593    pub fn gtk_spin_button_new(
23594        adjustment: *mut GtkAdjustment,
23595        climb_rate: c_double,
23596        digits: c_uint,
23597    ) -> *mut GtkWidget;
23598    pub fn gtk_spin_button_new_with_range(
23599        min: c_double,
23600        max: c_double,
23601        step: c_double,
23602    ) -> *mut GtkWidget;
23603    pub fn gtk_spin_button_configure(
23604        spin_button: *mut GtkSpinButton,
23605        adjustment: *mut GtkAdjustment,
23606        climb_rate: c_double,
23607        digits: c_uint,
23608    );
23609    pub fn gtk_spin_button_get_adjustment(spin_button: *mut GtkSpinButton) -> *mut GtkAdjustment;
23610    pub fn gtk_spin_button_get_digits(spin_button: *mut GtkSpinButton) -> c_uint;
23611    pub fn gtk_spin_button_get_increments(
23612        spin_button: *mut GtkSpinButton,
23613        step: *mut c_double,
23614        page: *mut c_double,
23615    );
23616    pub fn gtk_spin_button_get_numeric(spin_button: *mut GtkSpinButton) -> gboolean;
23617    pub fn gtk_spin_button_get_range(
23618        spin_button: *mut GtkSpinButton,
23619        min: *mut c_double,
23620        max: *mut c_double,
23621    );
23622    pub fn gtk_spin_button_get_snap_to_ticks(spin_button: *mut GtkSpinButton) -> gboolean;
23623    pub fn gtk_spin_button_get_update_policy(
23624        spin_button: *mut GtkSpinButton,
23625    ) -> GtkSpinButtonUpdatePolicy;
23626    pub fn gtk_spin_button_get_value(spin_button: *mut GtkSpinButton) -> c_double;
23627    pub fn gtk_spin_button_get_value_as_int(spin_button: *mut GtkSpinButton) -> c_int;
23628    pub fn gtk_spin_button_get_wrap(spin_button: *mut GtkSpinButton) -> gboolean;
23629    pub fn gtk_spin_button_set_adjustment(
23630        spin_button: *mut GtkSpinButton,
23631        adjustment: *mut GtkAdjustment,
23632    );
23633    pub fn gtk_spin_button_set_digits(spin_button: *mut GtkSpinButton, digits: c_uint);
23634    pub fn gtk_spin_button_set_increments(
23635        spin_button: *mut GtkSpinButton,
23636        step: c_double,
23637        page: c_double,
23638    );
23639    pub fn gtk_spin_button_set_numeric(spin_button: *mut GtkSpinButton, numeric: gboolean);
23640    pub fn gtk_spin_button_set_range(spin_button: *mut GtkSpinButton, min: c_double, max: c_double);
23641    pub fn gtk_spin_button_set_snap_to_ticks(
23642        spin_button: *mut GtkSpinButton,
23643        snap_to_ticks: gboolean,
23644    );
23645    pub fn gtk_spin_button_set_update_policy(
23646        spin_button: *mut GtkSpinButton,
23647        policy: GtkSpinButtonUpdatePolicy,
23648    );
23649    pub fn gtk_spin_button_set_value(spin_button: *mut GtkSpinButton, value: c_double);
23650    pub fn gtk_spin_button_set_wrap(spin_button: *mut GtkSpinButton, wrap: gboolean);
23651    pub fn gtk_spin_button_spin(
23652        spin_button: *mut GtkSpinButton,
23653        direction: GtkSpinType,
23654        increment: c_double,
23655    );
23656    pub fn gtk_spin_button_update(spin_button: *mut GtkSpinButton);
23657
23658    //=========================================================================
23659    // GtkSpinButtonAccessible
23660    //=========================================================================
23661    pub fn gtk_spin_button_accessible_get_type() -> GType;
23662
23663    //=========================================================================
23664    // GtkSpinner
23665    //=========================================================================
23666    pub fn gtk_spinner_get_type() -> GType;
23667    pub fn gtk_spinner_new() -> *mut GtkWidget;
23668    pub fn gtk_spinner_start(spinner: *mut GtkSpinner);
23669    pub fn gtk_spinner_stop(spinner: *mut GtkSpinner);
23670
23671    //=========================================================================
23672    // GtkSpinnerAccessible
23673    //=========================================================================
23674    pub fn gtk_spinner_accessible_get_type() -> GType;
23675
23676    //=========================================================================
23677    // GtkStack
23678    //=========================================================================
23679    pub fn gtk_stack_get_type() -> GType;
23680    pub fn gtk_stack_new() -> *mut GtkWidget;
23681    pub fn gtk_stack_add_named(stack: *mut GtkStack, child: *mut GtkWidget, name: *const c_char);
23682    pub fn gtk_stack_add_titled(
23683        stack: *mut GtkStack,
23684        child: *mut GtkWidget,
23685        name: *const c_char,
23686        title: *const c_char,
23687    );
23688    pub fn gtk_stack_get_child_by_name(stack: *mut GtkStack, name: *const c_char)
23689    -> *mut GtkWidget;
23690    pub fn gtk_stack_get_hhomogeneous(stack: *mut GtkStack) -> gboolean;
23691    pub fn gtk_stack_get_homogeneous(stack: *mut GtkStack) -> gboolean;
23692    pub fn gtk_stack_get_interpolate_size(stack: *mut GtkStack) -> gboolean;
23693    pub fn gtk_stack_get_transition_duration(stack: *mut GtkStack) -> c_uint;
23694    pub fn gtk_stack_get_transition_running(stack: *mut GtkStack) -> gboolean;
23695    pub fn gtk_stack_get_transition_type(stack: *mut GtkStack) -> GtkStackTransitionType;
23696    pub fn gtk_stack_get_vhomogeneous(stack: *mut GtkStack) -> gboolean;
23697    pub fn gtk_stack_get_visible_child(stack: *mut GtkStack) -> *mut GtkWidget;
23698    pub fn gtk_stack_get_visible_child_name(stack: *mut GtkStack) -> *const c_char;
23699    pub fn gtk_stack_set_hhomogeneous(stack: *mut GtkStack, hhomogeneous: gboolean);
23700    pub fn gtk_stack_set_homogeneous(stack: *mut GtkStack, homogeneous: gboolean);
23701    pub fn gtk_stack_set_interpolate_size(stack: *mut GtkStack, interpolate_size: gboolean);
23702    pub fn gtk_stack_set_transition_duration(stack: *mut GtkStack, duration: c_uint);
23703    pub fn gtk_stack_set_transition_type(stack: *mut GtkStack, transition: GtkStackTransitionType);
23704    pub fn gtk_stack_set_vhomogeneous(stack: *mut GtkStack, vhomogeneous: gboolean);
23705    pub fn gtk_stack_set_visible_child(stack: *mut GtkStack, child: *mut GtkWidget);
23706    pub fn gtk_stack_set_visible_child_full(
23707        stack: *mut GtkStack,
23708        name: *const c_char,
23709        transition: GtkStackTransitionType,
23710    );
23711    pub fn gtk_stack_set_visible_child_name(stack: *mut GtkStack, name: *const c_char);
23712
23713    //=========================================================================
23714    // GtkStackAccessible
23715    //=========================================================================
23716    pub fn gtk_stack_accessible_get_type() -> GType;
23717
23718    //=========================================================================
23719    // GtkStackSidebar
23720    //=========================================================================
23721    pub fn gtk_stack_sidebar_get_type() -> GType;
23722    pub fn gtk_stack_sidebar_new() -> *mut GtkWidget;
23723    pub fn gtk_stack_sidebar_get_stack(sidebar: *mut GtkStackSidebar) -> *mut GtkStack;
23724    pub fn gtk_stack_sidebar_set_stack(sidebar: *mut GtkStackSidebar, stack: *mut GtkStack);
23725
23726    //=========================================================================
23727    // GtkStackSwitcher
23728    //=========================================================================
23729    pub fn gtk_stack_switcher_get_type() -> GType;
23730    pub fn gtk_stack_switcher_new() -> *mut GtkWidget;
23731    pub fn gtk_stack_switcher_get_stack(switcher: *mut GtkStackSwitcher) -> *mut GtkStack;
23732    pub fn gtk_stack_switcher_set_stack(switcher: *mut GtkStackSwitcher, stack: *mut GtkStack);
23733
23734    //=========================================================================
23735    // GtkStatusIcon
23736    //=========================================================================
23737    pub fn gtk_status_icon_get_type() -> GType;
23738    pub fn gtk_status_icon_new() -> *mut GtkStatusIcon;
23739    pub fn gtk_status_icon_new_from_file(filename: *const c_char) -> *mut GtkStatusIcon;
23740    pub fn gtk_status_icon_new_from_gicon(icon: *mut gio::GIcon) -> *mut GtkStatusIcon;
23741    pub fn gtk_status_icon_new_from_icon_name(icon_name: *const c_char) -> *mut GtkStatusIcon;
23742    pub fn gtk_status_icon_new_from_pixbuf(
23743        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
23744    ) -> *mut GtkStatusIcon;
23745    pub fn gtk_status_icon_new_from_stock(stock_id: *const c_char) -> *mut GtkStatusIcon;
23746    pub fn gtk_status_icon_position_menu(
23747        menu: *mut GtkMenu,
23748        x: *mut c_int,
23749        y: *mut c_int,
23750        push_in: *mut gboolean,
23751        user_data: *mut GtkStatusIcon,
23752    );
23753    pub fn gtk_status_icon_get_geometry(
23754        status_icon: *mut GtkStatusIcon,
23755        screen: *mut *mut gdk::GdkScreen,
23756        area: *mut gdk::GdkRectangle,
23757        orientation: *mut GtkOrientation,
23758    ) -> gboolean;
23759    pub fn gtk_status_icon_get_gicon(status_icon: *mut GtkStatusIcon) -> *mut gio::GIcon;
23760    pub fn gtk_status_icon_get_has_tooltip(status_icon: *mut GtkStatusIcon) -> gboolean;
23761    pub fn gtk_status_icon_get_icon_name(status_icon: *mut GtkStatusIcon) -> *const c_char;
23762    pub fn gtk_status_icon_get_pixbuf(
23763        status_icon: *mut GtkStatusIcon,
23764    ) -> *mut gdk_pixbuf::GdkPixbuf;
23765    pub fn gtk_status_icon_get_screen(status_icon: *mut GtkStatusIcon) -> *mut gdk::GdkScreen;
23766    pub fn gtk_status_icon_get_size(status_icon: *mut GtkStatusIcon) -> c_int;
23767    pub fn gtk_status_icon_get_stock(status_icon: *mut GtkStatusIcon) -> *const c_char;
23768    pub fn gtk_status_icon_get_storage_type(status_icon: *mut GtkStatusIcon) -> GtkImageType;
23769    pub fn gtk_status_icon_get_title(status_icon: *mut GtkStatusIcon) -> *const c_char;
23770    pub fn gtk_status_icon_get_tooltip_markup(status_icon: *mut GtkStatusIcon) -> *mut c_char;
23771    pub fn gtk_status_icon_get_tooltip_text(status_icon: *mut GtkStatusIcon) -> *mut c_char;
23772    pub fn gtk_status_icon_get_visible(status_icon: *mut GtkStatusIcon) -> gboolean;
23773    pub fn gtk_status_icon_get_x11_window_id(status_icon: *mut GtkStatusIcon) -> u32;
23774    pub fn gtk_status_icon_is_embedded(status_icon: *mut GtkStatusIcon) -> gboolean;
23775    pub fn gtk_status_icon_set_from_file(status_icon: *mut GtkStatusIcon, filename: *const c_char);
23776    pub fn gtk_status_icon_set_from_gicon(status_icon: *mut GtkStatusIcon, icon: *mut gio::GIcon);
23777    pub fn gtk_status_icon_set_from_icon_name(
23778        status_icon: *mut GtkStatusIcon,
23779        icon_name: *const c_char,
23780    );
23781    pub fn gtk_status_icon_set_from_pixbuf(
23782        status_icon: *mut GtkStatusIcon,
23783        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
23784    );
23785    pub fn gtk_status_icon_set_from_stock(status_icon: *mut GtkStatusIcon, stock_id: *const c_char);
23786    pub fn gtk_status_icon_set_has_tooltip(status_icon: *mut GtkStatusIcon, has_tooltip: gboolean);
23787    pub fn gtk_status_icon_set_name(status_icon: *mut GtkStatusIcon, name: *const c_char);
23788    pub fn gtk_status_icon_set_screen(status_icon: *mut GtkStatusIcon, screen: *mut gdk::GdkScreen);
23789    pub fn gtk_status_icon_set_title(status_icon: *mut GtkStatusIcon, title: *const c_char);
23790    pub fn gtk_status_icon_set_tooltip_markup(
23791        status_icon: *mut GtkStatusIcon,
23792        markup: *const c_char,
23793    );
23794    pub fn gtk_status_icon_set_tooltip_text(status_icon: *mut GtkStatusIcon, text: *const c_char);
23795    pub fn gtk_status_icon_set_visible(status_icon: *mut GtkStatusIcon, visible: gboolean);
23796
23797    //=========================================================================
23798    // GtkStatusbar
23799    //=========================================================================
23800    pub fn gtk_statusbar_get_type() -> GType;
23801    pub fn gtk_statusbar_new() -> *mut GtkWidget;
23802    pub fn gtk_statusbar_get_context_id(
23803        statusbar: *mut GtkStatusbar,
23804        context_description: *const c_char,
23805    ) -> c_uint;
23806    pub fn gtk_statusbar_get_message_area(statusbar: *mut GtkStatusbar) -> *mut GtkBox;
23807    pub fn gtk_statusbar_pop(statusbar: *mut GtkStatusbar, context_id: c_uint);
23808    pub fn gtk_statusbar_push(
23809        statusbar: *mut GtkStatusbar,
23810        context_id: c_uint,
23811        text: *const c_char,
23812    ) -> c_uint;
23813    pub fn gtk_statusbar_remove(
23814        statusbar: *mut GtkStatusbar,
23815        context_id: c_uint,
23816        message_id: c_uint,
23817    );
23818    pub fn gtk_statusbar_remove_all(statusbar: *mut GtkStatusbar, context_id: c_uint);
23819
23820    //=========================================================================
23821    // GtkStatusbarAccessible
23822    //=========================================================================
23823    pub fn gtk_statusbar_accessible_get_type() -> GType;
23824
23825    //=========================================================================
23826    // GtkStyle
23827    //=========================================================================
23828    pub fn gtk_style_get_type() -> GType;
23829    pub fn gtk_style_new() -> *mut GtkStyle;
23830    pub fn gtk_style_apply_default_background(
23831        style: *mut GtkStyle,
23832        cr: *mut cairo::cairo_t,
23833        window: *mut gdk::GdkWindow,
23834        state_type: GtkStateType,
23835        x: c_int,
23836        y: c_int,
23837        width: c_int,
23838        height: c_int,
23839    );
23840    pub fn gtk_style_attach(style: *mut GtkStyle, window: *mut gdk::GdkWindow) -> *mut GtkStyle;
23841    pub fn gtk_style_copy(style: *mut GtkStyle) -> *mut GtkStyle;
23842    pub fn gtk_style_detach(style: *mut GtkStyle);
23843    pub fn gtk_style_get(
23844        style: *mut GtkStyle,
23845        widget_type: GType,
23846        first_property_name: *const c_char,
23847        ...
23848    );
23849    pub fn gtk_style_get_style_property(
23850        style: *mut GtkStyle,
23851        widget_type: GType,
23852        property_name: *const c_char,
23853        value: *mut gobject::GValue,
23854    );
23855    //pub fn gtk_style_get_valist(style: *mut GtkStyle, widget_type: GType, first_property_name: *const c_char, var_args: /*Unimplemented*/va_list);
23856    pub fn gtk_style_has_context(style: *mut GtkStyle) -> gboolean;
23857    pub fn gtk_style_lookup_color(
23858        style: *mut GtkStyle,
23859        color_name: *const c_char,
23860        color: *mut gdk::GdkColor,
23861    ) -> gboolean;
23862    pub fn gtk_style_lookup_icon_set(
23863        style: *mut GtkStyle,
23864        stock_id: *const c_char,
23865    ) -> *mut GtkIconSet;
23866    pub fn gtk_style_render_icon(
23867        style: *mut GtkStyle,
23868        source: *const GtkIconSource,
23869        direction: GtkTextDirection,
23870        state: GtkStateType,
23871        size: GtkIconSize,
23872        widget: *mut GtkWidget,
23873        detail: *const c_char,
23874    ) -> *mut gdk_pixbuf::GdkPixbuf;
23875    pub fn gtk_style_set_background(
23876        style: *mut GtkStyle,
23877        window: *mut gdk::GdkWindow,
23878        state_type: GtkStateType,
23879    );
23880
23881    //=========================================================================
23882    // GtkStyleContext
23883    //=========================================================================
23884    pub fn gtk_style_context_get_type() -> GType;
23885    pub fn gtk_style_context_new() -> *mut GtkStyleContext;
23886    pub fn gtk_style_context_add_provider_for_screen(
23887        screen: *mut gdk::GdkScreen,
23888        provider: *mut GtkStyleProvider,
23889        priority: c_uint,
23890    );
23891    pub fn gtk_style_context_remove_provider_for_screen(
23892        screen: *mut gdk::GdkScreen,
23893        provider: *mut GtkStyleProvider,
23894    );
23895    pub fn gtk_style_context_reset_widgets(screen: *mut gdk::GdkScreen);
23896    pub fn gtk_style_context_add_class(context: *mut GtkStyleContext, class_name: *const c_char);
23897    pub fn gtk_style_context_add_provider(
23898        context: *mut GtkStyleContext,
23899        provider: *mut GtkStyleProvider,
23900        priority: c_uint,
23901    );
23902    pub fn gtk_style_context_add_region(
23903        context: *mut GtkStyleContext,
23904        region_name: *const c_char,
23905        flags: GtkRegionFlags,
23906    );
23907    pub fn gtk_style_context_cancel_animations(context: *mut GtkStyleContext, region_id: gpointer);
23908    pub fn gtk_style_context_get(context: *mut GtkStyleContext, state: GtkStateFlags, ...);
23909    pub fn gtk_style_context_get_background_color(
23910        context: *mut GtkStyleContext,
23911        state: GtkStateFlags,
23912        color: *mut gdk::GdkRGBA,
23913    );
23914    pub fn gtk_style_context_get_border(
23915        context: *mut GtkStyleContext,
23916        state: GtkStateFlags,
23917        border: *mut GtkBorder,
23918    );
23919    pub fn gtk_style_context_get_border_color(
23920        context: *mut GtkStyleContext,
23921        state: GtkStateFlags,
23922        color: *mut gdk::GdkRGBA,
23923    );
23924    pub fn gtk_style_context_get_color(
23925        context: *mut GtkStyleContext,
23926        state: GtkStateFlags,
23927        color: *mut gdk::GdkRGBA,
23928    );
23929    pub fn gtk_style_context_get_direction(context: *mut GtkStyleContext) -> GtkTextDirection;
23930    pub fn gtk_style_context_get_font(
23931        context: *mut GtkStyleContext,
23932        state: GtkStateFlags,
23933    ) -> *const pango::PangoFontDescription;
23934    pub fn gtk_style_context_get_frame_clock(
23935        context: *mut GtkStyleContext,
23936    ) -> *mut gdk::GdkFrameClock;
23937    pub fn gtk_style_context_get_junction_sides(context: *mut GtkStyleContext) -> GtkJunctionSides;
23938    pub fn gtk_style_context_get_margin(
23939        context: *mut GtkStyleContext,
23940        state: GtkStateFlags,
23941        margin: *mut GtkBorder,
23942    );
23943    pub fn gtk_style_context_get_padding(
23944        context: *mut GtkStyleContext,
23945        state: GtkStateFlags,
23946        padding: *mut GtkBorder,
23947    );
23948    pub fn gtk_style_context_get_parent(context: *mut GtkStyleContext) -> *mut GtkStyleContext;
23949    pub fn gtk_style_context_get_path(context: *mut GtkStyleContext) -> *const GtkWidgetPath;
23950    pub fn gtk_style_context_get_property(
23951        context: *mut GtkStyleContext,
23952        property: *const c_char,
23953        state: GtkStateFlags,
23954        value: *mut gobject::GValue,
23955    );
23956    pub fn gtk_style_context_get_scale(context: *mut GtkStyleContext) -> c_int;
23957    pub fn gtk_style_context_get_screen(context: *mut GtkStyleContext) -> *mut gdk::GdkScreen;
23958    pub fn gtk_style_context_get_section(
23959        context: *mut GtkStyleContext,
23960        property: *const c_char,
23961    ) -> *mut GtkCssSection;
23962    pub fn gtk_style_context_get_state(context: *mut GtkStyleContext) -> GtkStateFlags;
23963    pub fn gtk_style_context_get_style(context: *mut GtkStyleContext, ...);
23964    pub fn gtk_style_context_get_style_property(
23965        context: *mut GtkStyleContext,
23966        property_name: *const c_char,
23967        value: *mut gobject::GValue,
23968    );
23969    //pub fn gtk_style_context_get_style_valist(context: *mut GtkStyleContext, args: /*Unimplemented*/va_list);
23970    //pub fn gtk_style_context_get_valist(context: *mut GtkStyleContext, state: GtkStateFlags, args: /*Unimplemented*/va_list);
23971    pub fn gtk_style_context_has_class(
23972        context: *mut GtkStyleContext,
23973        class_name: *const c_char,
23974    ) -> gboolean;
23975    pub fn gtk_style_context_has_region(
23976        context: *mut GtkStyleContext,
23977        region_name: *const c_char,
23978        flags_return: *mut GtkRegionFlags,
23979    ) -> gboolean;
23980    pub fn gtk_style_context_invalidate(context: *mut GtkStyleContext);
23981    pub fn gtk_style_context_list_classes(context: *mut GtkStyleContext) -> *mut glib::GList;
23982    pub fn gtk_style_context_list_regions(context: *mut GtkStyleContext) -> *mut glib::GList;
23983    pub fn gtk_style_context_lookup_color(
23984        context: *mut GtkStyleContext,
23985        color_name: *const c_char,
23986        color: *mut gdk::GdkRGBA,
23987    ) -> gboolean;
23988    pub fn gtk_style_context_lookup_icon_set(
23989        context: *mut GtkStyleContext,
23990        stock_id: *const c_char,
23991    ) -> *mut GtkIconSet;
23992    pub fn gtk_style_context_notify_state_change(
23993        context: *mut GtkStyleContext,
23994        window: *mut gdk::GdkWindow,
23995        region_id: gpointer,
23996        state: GtkStateType,
23997        state_value: gboolean,
23998    );
23999    pub fn gtk_style_context_pop_animatable_region(context: *mut GtkStyleContext);
24000    pub fn gtk_style_context_push_animatable_region(
24001        context: *mut GtkStyleContext,
24002        region_id: gpointer,
24003    );
24004    pub fn gtk_style_context_remove_class(context: *mut GtkStyleContext, class_name: *const c_char);
24005    pub fn gtk_style_context_remove_provider(
24006        context: *mut GtkStyleContext,
24007        provider: *mut GtkStyleProvider,
24008    );
24009    pub fn gtk_style_context_remove_region(
24010        context: *mut GtkStyleContext,
24011        region_name: *const c_char,
24012    );
24013    pub fn gtk_style_context_restore(context: *mut GtkStyleContext);
24014    pub fn gtk_style_context_save(context: *mut GtkStyleContext);
24015    pub fn gtk_style_context_scroll_animations(
24016        context: *mut GtkStyleContext,
24017        window: *mut gdk::GdkWindow,
24018        dx: c_int,
24019        dy: c_int,
24020    );
24021    pub fn gtk_style_context_set_background(
24022        context: *mut GtkStyleContext,
24023        window: *mut gdk::GdkWindow,
24024    );
24025    pub fn gtk_style_context_set_direction(
24026        context: *mut GtkStyleContext,
24027        direction: GtkTextDirection,
24028    );
24029    pub fn gtk_style_context_set_frame_clock(
24030        context: *mut GtkStyleContext,
24031        frame_clock: *mut gdk::GdkFrameClock,
24032    );
24033    pub fn gtk_style_context_set_junction_sides(
24034        context: *mut GtkStyleContext,
24035        sides: GtkJunctionSides,
24036    );
24037    pub fn gtk_style_context_set_parent(
24038        context: *mut GtkStyleContext,
24039        parent: *mut GtkStyleContext,
24040    );
24041    pub fn gtk_style_context_set_path(context: *mut GtkStyleContext, path: *mut GtkWidgetPath);
24042    pub fn gtk_style_context_set_scale(context: *mut GtkStyleContext, scale: c_int);
24043    pub fn gtk_style_context_set_screen(context: *mut GtkStyleContext, screen: *mut gdk::GdkScreen);
24044    pub fn gtk_style_context_set_state(context: *mut GtkStyleContext, flags: GtkStateFlags);
24045    pub fn gtk_style_context_state_is_running(
24046        context: *mut GtkStyleContext,
24047        state: GtkStateType,
24048        progress: *mut c_double,
24049    ) -> gboolean;
24050    pub fn gtk_style_context_to_string(
24051        context: *mut GtkStyleContext,
24052        flags: GtkStyleContextPrintFlags,
24053    ) -> *mut c_char;
24054
24055    //=========================================================================
24056    // GtkStyleProperties
24057    //=========================================================================
24058    pub fn gtk_style_properties_get_type() -> GType;
24059    pub fn gtk_style_properties_new() -> *mut GtkStyleProperties;
24060    pub fn gtk_style_properties_lookup_property(
24061        property_name: *const c_char,
24062        parse_func: *mut GtkStylePropertyParser,
24063        pspec: *mut *mut gobject::GParamSpec,
24064    ) -> gboolean;
24065    pub fn gtk_style_properties_register_property(
24066        parse_func: GtkStylePropertyParser,
24067        pspec: *mut gobject::GParamSpec,
24068    );
24069    pub fn gtk_style_properties_clear(props: *mut GtkStyleProperties);
24070    pub fn gtk_style_properties_get(props: *mut GtkStyleProperties, state: GtkStateFlags, ...);
24071    pub fn gtk_style_properties_get_property(
24072        props: *mut GtkStyleProperties,
24073        property: *const c_char,
24074        state: GtkStateFlags,
24075        value: *mut gobject::GValue,
24076    ) -> gboolean;
24077    //pub fn gtk_style_properties_get_valist(props: *mut GtkStyleProperties, state: GtkStateFlags, args: /*Unimplemented*/va_list);
24078    pub fn gtk_style_properties_lookup_color(
24079        props: *mut GtkStyleProperties,
24080        name: *const c_char,
24081    ) -> *mut GtkSymbolicColor;
24082    pub fn gtk_style_properties_map_color(
24083        props: *mut GtkStyleProperties,
24084        name: *const c_char,
24085        color: *mut GtkSymbolicColor,
24086    );
24087    pub fn gtk_style_properties_merge(
24088        props: *mut GtkStyleProperties,
24089        props_to_merge: *const GtkStyleProperties,
24090        replace: gboolean,
24091    );
24092    pub fn gtk_style_properties_set(props: *mut GtkStyleProperties, state: GtkStateFlags, ...);
24093    pub fn gtk_style_properties_set_property(
24094        props: *mut GtkStyleProperties,
24095        property: *const c_char,
24096        state: GtkStateFlags,
24097        value: *const gobject::GValue,
24098    );
24099    //pub fn gtk_style_properties_set_valist(props: *mut GtkStyleProperties, state: GtkStateFlags, args: /*Unimplemented*/va_list);
24100    pub fn gtk_style_properties_unset_property(
24101        props: *mut GtkStyleProperties,
24102        property: *const c_char,
24103        state: GtkStateFlags,
24104    );
24105
24106    //=========================================================================
24107    // GtkSwitch
24108    //=========================================================================
24109    pub fn gtk_switch_get_type() -> GType;
24110    pub fn gtk_switch_new() -> *mut GtkWidget;
24111    pub fn gtk_switch_get_active(sw: *mut GtkSwitch) -> gboolean;
24112    pub fn gtk_switch_get_state(sw: *mut GtkSwitch) -> gboolean;
24113    pub fn gtk_switch_set_active(sw: *mut GtkSwitch, is_active: gboolean);
24114    pub fn gtk_switch_set_state(sw: *mut GtkSwitch, state: gboolean);
24115
24116    //=========================================================================
24117    // GtkSwitchAccessible
24118    //=========================================================================
24119    pub fn gtk_switch_accessible_get_type() -> GType;
24120
24121    //=========================================================================
24122    // GtkTable
24123    //=========================================================================
24124    pub fn gtk_table_get_type() -> GType;
24125    pub fn gtk_table_new(rows: c_uint, columns: c_uint, homogeneous: gboolean) -> *mut GtkWidget;
24126    pub fn gtk_table_attach(
24127        table: *mut GtkTable,
24128        child: *mut GtkWidget,
24129        left_attach: c_uint,
24130        right_attach: c_uint,
24131        top_attach: c_uint,
24132        bottom_attach: c_uint,
24133        xoptions: GtkAttachOptions,
24134        yoptions: GtkAttachOptions,
24135        xpadding: c_uint,
24136        ypadding: c_uint,
24137    );
24138    pub fn gtk_table_attach_defaults(
24139        table: *mut GtkTable,
24140        widget: *mut GtkWidget,
24141        left_attach: c_uint,
24142        right_attach: c_uint,
24143        top_attach: c_uint,
24144        bottom_attach: c_uint,
24145    );
24146    pub fn gtk_table_get_col_spacing(table: *mut GtkTable, column: c_uint) -> c_uint;
24147    pub fn gtk_table_get_default_col_spacing(table: *mut GtkTable) -> c_uint;
24148    pub fn gtk_table_get_default_row_spacing(table: *mut GtkTable) -> c_uint;
24149    pub fn gtk_table_get_homogeneous(table: *mut GtkTable) -> gboolean;
24150    pub fn gtk_table_get_row_spacing(table: *mut GtkTable, row: c_uint) -> c_uint;
24151    pub fn gtk_table_get_size(table: *mut GtkTable, rows: *mut c_uint, columns: *mut c_uint);
24152    pub fn gtk_table_resize(table: *mut GtkTable, rows: c_uint, columns: c_uint);
24153    pub fn gtk_table_set_col_spacing(table: *mut GtkTable, column: c_uint, spacing: c_uint);
24154    pub fn gtk_table_set_col_spacings(table: *mut GtkTable, spacing: c_uint);
24155    pub fn gtk_table_set_homogeneous(table: *mut GtkTable, homogeneous: gboolean);
24156    pub fn gtk_table_set_row_spacing(table: *mut GtkTable, row: c_uint, spacing: c_uint);
24157    pub fn gtk_table_set_row_spacings(table: *mut GtkTable, spacing: c_uint);
24158
24159    //=========================================================================
24160    // GtkTearoffMenuItem
24161    //=========================================================================
24162    pub fn gtk_tearoff_menu_item_get_type() -> GType;
24163    pub fn gtk_tearoff_menu_item_new() -> *mut GtkWidget;
24164
24165    //=========================================================================
24166    // GtkTextBuffer
24167    //=========================================================================
24168    pub fn gtk_text_buffer_get_type() -> GType;
24169    pub fn gtk_text_buffer_new(table: *mut GtkTextTagTable) -> *mut GtkTextBuffer;
24170    pub fn gtk_text_buffer_add_mark(
24171        buffer: *mut GtkTextBuffer,
24172        mark: *mut GtkTextMark,
24173        where_: *const GtkTextIter,
24174    );
24175    pub fn gtk_text_buffer_add_selection_clipboard(
24176        buffer: *mut GtkTextBuffer,
24177        clipboard: *mut GtkClipboard,
24178    );
24179    pub fn gtk_text_buffer_apply_tag(
24180        buffer: *mut GtkTextBuffer,
24181        tag: *mut GtkTextTag,
24182        start: *const GtkTextIter,
24183        end: *const GtkTextIter,
24184    );
24185    pub fn gtk_text_buffer_apply_tag_by_name(
24186        buffer: *mut GtkTextBuffer,
24187        name: *const c_char,
24188        start: *const GtkTextIter,
24189        end: *const GtkTextIter,
24190    );
24191    pub fn gtk_text_buffer_backspace(
24192        buffer: *mut GtkTextBuffer,
24193        iter: *mut GtkTextIter,
24194        interactive: gboolean,
24195        default_editable: gboolean,
24196    ) -> gboolean;
24197    pub fn gtk_text_buffer_begin_user_action(buffer: *mut GtkTextBuffer);
24198    pub fn gtk_text_buffer_copy_clipboard(buffer: *mut GtkTextBuffer, clipboard: *mut GtkClipboard);
24199    pub fn gtk_text_buffer_create_child_anchor(
24200        buffer: *mut GtkTextBuffer,
24201        iter: *mut GtkTextIter,
24202    ) -> *mut GtkTextChildAnchor;
24203    pub fn gtk_text_buffer_create_mark(
24204        buffer: *mut GtkTextBuffer,
24205        mark_name: *const c_char,
24206        where_: *const GtkTextIter,
24207        left_gravity: gboolean,
24208    ) -> *mut GtkTextMark;
24209    pub fn gtk_text_buffer_create_tag(
24210        buffer: *mut GtkTextBuffer,
24211        tag_name: *const c_char,
24212        first_property_name: *const c_char,
24213        ...
24214    ) -> *mut GtkTextTag;
24215    pub fn gtk_text_buffer_cut_clipboard(
24216        buffer: *mut GtkTextBuffer,
24217        clipboard: *mut GtkClipboard,
24218        default_editable: gboolean,
24219    );
24220    pub fn gtk_text_buffer_delete(
24221        buffer: *mut GtkTextBuffer,
24222        start: *mut GtkTextIter,
24223        end: *mut GtkTextIter,
24224    );
24225    pub fn gtk_text_buffer_delete_interactive(
24226        buffer: *mut GtkTextBuffer,
24227        start_iter: *mut GtkTextIter,
24228        end_iter: *mut GtkTextIter,
24229        default_editable: gboolean,
24230    ) -> gboolean;
24231    pub fn gtk_text_buffer_delete_mark(buffer: *mut GtkTextBuffer, mark: *mut GtkTextMark);
24232    pub fn gtk_text_buffer_delete_mark_by_name(buffer: *mut GtkTextBuffer, name: *const c_char);
24233    pub fn gtk_text_buffer_delete_selection(
24234        buffer: *mut GtkTextBuffer,
24235        interactive: gboolean,
24236        default_editable: gboolean,
24237    ) -> gboolean;
24238    pub fn gtk_text_buffer_deserialize(
24239        register_buffer: *mut GtkTextBuffer,
24240        content_buffer: *mut GtkTextBuffer,
24241        format: gdk::GdkAtom,
24242        iter: *mut GtkTextIter,
24243        data: *const u8,
24244        length: size_t,
24245        error: *mut *mut glib::GError,
24246    ) -> gboolean;
24247    pub fn gtk_text_buffer_deserialize_get_can_create_tags(
24248        buffer: *mut GtkTextBuffer,
24249        format: gdk::GdkAtom,
24250    ) -> gboolean;
24251    pub fn gtk_text_buffer_deserialize_set_can_create_tags(
24252        buffer: *mut GtkTextBuffer,
24253        format: gdk::GdkAtom,
24254        can_create_tags: gboolean,
24255    );
24256    pub fn gtk_text_buffer_end_user_action(buffer: *mut GtkTextBuffer);
24257    pub fn gtk_text_buffer_get_bounds(
24258        buffer: *mut GtkTextBuffer,
24259        start: *mut GtkTextIter,
24260        end: *mut GtkTextIter,
24261    );
24262    pub fn gtk_text_buffer_get_char_count(buffer: *mut GtkTextBuffer) -> c_int;
24263    pub fn gtk_text_buffer_get_copy_target_list(buffer: *mut GtkTextBuffer) -> *mut GtkTargetList;
24264    pub fn gtk_text_buffer_get_deserialize_formats(
24265        buffer: *mut GtkTextBuffer,
24266        n_formats: *mut c_int,
24267    ) -> *mut gdk::GdkAtom;
24268    pub fn gtk_text_buffer_get_end_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
24269    pub fn gtk_text_buffer_get_has_selection(buffer: *mut GtkTextBuffer) -> gboolean;
24270    pub fn gtk_text_buffer_get_insert(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
24271    pub fn gtk_text_buffer_get_iter_at_child_anchor(
24272        buffer: *mut GtkTextBuffer,
24273        iter: *mut GtkTextIter,
24274        anchor: *mut GtkTextChildAnchor,
24275    );
24276    pub fn gtk_text_buffer_get_iter_at_line(
24277        buffer: *mut GtkTextBuffer,
24278        iter: *mut GtkTextIter,
24279        line_number: c_int,
24280    );
24281    pub fn gtk_text_buffer_get_iter_at_line_index(
24282        buffer: *mut GtkTextBuffer,
24283        iter: *mut GtkTextIter,
24284        line_number: c_int,
24285        byte_index: c_int,
24286    );
24287    pub fn gtk_text_buffer_get_iter_at_line_offset(
24288        buffer: *mut GtkTextBuffer,
24289        iter: *mut GtkTextIter,
24290        line_number: c_int,
24291        char_offset: c_int,
24292    );
24293    pub fn gtk_text_buffer_get_iter_at_mark(
24294        buffer: *mut GtkTextBuffer,
24295        iter: *mut GtkTextIter,
24296        mark: *mut GtkTextMark,
24297    );
24298    pub fn gtk_text_buffer_get_iter_at_offset(
24299        buffer: *mut GtkTextBuffer,
24300        iter: *mut GtkTextIter,
24301        char_offset: c_int,
24302    );
24303    pub fn gtk_text_buffer_get_line_count(buffer: *mut GtkTextBuffer) -> c_int;
24304    pub fn gtk_text_buffer_get_mark(
24305        buffer: *mut GtkTextBuffer,
24306        name: *const c_char,
24307    ) -> *mut GtkTextMark;
24308    pub fn gtk_text_buffer_get_modified(buffer: *mut GtkTextBuffer) -> gboolean;
24309    pub fn gtk_text_buffer_get_paste_target_list(buffer: *mut GtkTextBuffer) -> *mut GtkTargetList;
24310    pub fn gtk_text_buffer_get_selection_bound(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
24311    pub fn gtk_text_buffer_get_selection_bounds(
24312        buffer: *mut GtkTextBuffer,
24313        start: *mut GtkTextIter,
24314        end: *mut GtkTextIter,
24315    ) -> gboolean;
24316    pub fn gtk_text_buffer_get_serialize_formats(
24317        buffer: *mut GtkTextBuffer,
24318        n_formats: *mut c_int,
24319    ) -> *mut gdk::GdkAtom;
24320    pub fn gtk_text_buffer_get_slice(
24321        buffer: *mut GtkTextBuffer,
24322        start: *const GtkTextIter,
24323        end: *const GtkTextIter,
24324        include_hidden_chars: gboolean,
24325    ) -> *mut c_char;
24326    pub fn gtk_text_buffer_get_start_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
24327    pub fn gtk_text_buffer_get_tag_table(buffer: *mut GtkTextBuffer) -> *mut GtkTextTagTable;
24328    pub fn gtk_text_buffer_get_text(
24329        buffer: *mut GtkTextBuffer,
24330        start: *const GtkTextIter,
24331        end: *const GtkTextIter,
24332        include_hidden_chars: gboolean,
24333    ) -> *mut c_char;
24334    pub fn gtk_text_buffer_insert(
24335        buffer: *mut GtkTextBuffer,
24336        iter: *mut GtkTextIter,
24337        text: *const c_char,
24338        len: c_int,
24339    );
24340    pub fn gtk_text_buffer_insert_at_cursor(
24341        buffer: *mut GtkTextBuffer,
24342        text: *const c_char,
24343        len: c_int,
24344    );
24345    pub fn gtk_text_buffer_insert_child_anchor(
24346        buffer: *mut GtkTextBuffer,
24347        iter: *mut GtkTextIter,
24348        anchor: *mut GtkTextChildAnchor,
24349    );
24350    pub fn gtk_text_buffer_insert_interactive(
24351        buffer: *mut GtkTextBuffer,
24352        iter: *mut GtkTextIter,
24353        text: *const c_char,
24354        len: c_int,
24355        default_editable: gboolean,
24356    ) -> gboolean;
24357    pub fn gtk_text_buffer_insert_interactive_at_cursor(
24358        buffer: *mut GtkTextBuffer,
24359        text: *const c_char,
24360        len: c_int,
24361        default_editable: gboolean,
24362    ) -> gboolean;
24363    pub fn gtk_text_buffer_insert_markup(
24364        buffer: *mut GtkTextBuffer,
24365        iter: *mut GtkTextIter,
24366        markup: *const c_char,
24367        len: c_int,
24368    );
24369    pub fn gtk_text_buffer_insert_pixbuf(
24370        buffer: *mut GtkTextBuffer,
24371        iter: *mut GtkTextIter,
24372        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
24373    );
24374    pub fn gtk_text_buffer_insert_range(
24375        buffer: *mut GtkTextBuffer,
24376        iter: *mut GtkTextIter,
24377        start: *const GtkTextIter,
24378        end: *const GtkTextIter,
24379    );
24380    pub fn gtk_text_buffer_insert_range_interactive(
24381        buffer: *mut GtkTextBuffer,
24382        iter: *mut GtkTextIter,
24383        start: *const GtkTextIter,
24384        end: *const GtkTextIter,
24385        default_editable: gboolean,
24386    ) -> gboolean;
24387    pub fn gtk_text_buffer_insert_with_tags(
24388        buffer: *mut GtkTextBuffer,
24389        iter: *mut GtkTextIter,
24390        text: *const c_char,
24391        len: c_int,
24392        first_tag: *mut GtkTextTag,
24393        ...
24394    );
24395    pub fn gtk_text_buffer_insert_with_tags_by_name(
24396        buffer: *mut GtkTextBuffer,
24397        iter: *mut GtkTextIter,
24398        text: *const c_char,
24399        len: c_int,
24400        first_tag_name: *const c_char,
24401        ...
24402    );
24403    pub fn gtk_text_buffer_move_mark(
24404        buffer: *mut GtkTextBuffer,
24405        mark: *mut GtkTextMark,
24406        where_: *const GtkTextIter,
24407    );
24408    pub fn gtk_text_buffer_move_mark_by_name(
24409        buffer: *mut GtkTextBuffer,
24410        name: *const c_char,
24411        where_: *const GtkTextIter,
24412    );
24413    pub fn gtk_text_buffer_paste_clipboard(
24414        buffer: *mut GtkTextBuffer,
24415        clipboard: *mut GtkClipboard,
24416        override_location: *mut GtkTextIter,
24417        default_editable: gboolean,
24418    );
24419    pub fn gtk_text_buffer_place_cursor(buffer: *mut GtkTextBuffer, where_: *const GtkTextIter);
24420    pub fn gtk_text_buffer_register_deserialize_format(
24421        buffer: *mut GtkTextBuffer,
24422        mime_type: *const c_char,
24423        function: GtkTextBufferDeserializeFunc,
24424        user_data: gpointer,
24425        user_data_destroy: glib::GDestroyNotify,
24426    ) -> gdk::GdkAtom;
24427    pub fn gtk_text_buffer_register_deserialize_tagset(
24428        buffer: *mut GtkTextBuffer,
24429        tagset_name: *const c_char,
24430    ) -> gdk::GdkAtom;
24431    pub fn gtk_text_buffer_register_serialize_format(
24432        buffer: *mut GtkTextBuffer,
24433        mime_type: *const c_char,
24434        function: GtkTextBufferSerializeFunc,
24435        user_data: gpointer,
24436        user_data_destroy: glib::GDestroyNotify,
24437    ) -> gdk::GdkAtom;
24438    pub fn gtk_text_buffer_register_serialize_tagset(
24439        buffer: *mut GtkTextBuffer,
24440        tagset_name: *const c_char,
24441    ) -> gdk::GdkAtom;
24442    pub fn gtk_text_buffer_remove_all_tags(
24443        buffer: *mut GtkTextBuffer,
24444        start: *const GtkTextIter,
24445        end: *const GtkTextIter,
24446    );
24447    pub fn gtk_text_buffer_remove_selection_clipboard(
24448        buffer: *mut GtkTextBuffer,
24449        clipboard: *mut GtkClipboard,
24450    );
24451    pub fn gtk_text_buffer_remove_tag(
24452        buffer: *mut GtkTextBuffer,
24453        tag: *mut GtkTextTag,
24454        start: *const GtkTextIter,
24455        end: *const GtkTextIter,
24456    );
24457    pub fn gtk_text_buffer_remove_tag_by_name(
24458        buffer: *mut GtkTextBuffer,
24459        name: *const c_char,
24460        start: *const GtkTextIter,
24461        end: *const GtkTextIter,
24462    );
24463    pub fn gtk_text_buffer_select_range(
24464        buffer: *mut GtkTextBuffer,
24465        ins: *const GtkTextIter,
24466        bound: *const GtkTextIter,
24467    );
24468    pub fn gtk_text_buffer_serialize(
24469        register_buffer: *mut GtkTextBuffer,
24470        content_buffer: *mut GtkTextBuffer,
24471        format: gdk::GdkAtom,
24472        start: *const GtkTextIter,
24473        end: *const GtkTextIter,
24474        length: *mut size_t,
24475    ) -> *mut u8;
24476    pub fn gtk_text_buffer_set_modified(buffer: *mut GtkTextBuffer, setting: gboolean);
24477    pub fn gtk_text_buffer_set_text(buffer: *mut GtkTextBuffer, text: *const c_char, len: c_int);
24478    pub fn gtk_text_buffer_unregister_deserialize_format(
24479        buffer: *mut GtkTextBuffer,
24480        format: gdk::GdkAtom,
24481    );
24482    pub fn gtk_text_buffer_unregister_serialize_format(
24483        buffer: *mut GtkTextBuffer,
24484        format: gdk::GdkAtom,
24485    );
24486
24487    //=========================================================================
24488    // GtkTextCellAccessible
24489    //=========================================================================
24490    pub fn gtk_text_cell_accessible_get_type() -> GType;
24491
24492    //=========================================================================
24493    // GtkTextChildAnchor
24494    //=========================================================================
24495    pub fn gtk_text_child_anchor_get_type() -> GType;
24496    pub fn gtk_text_child_anchor_new() -> *mut GtkTextChildAnchor;
24497    pub fn gtk_text_child_anchor_get_deleted(anchor: *mut GtkTextChildAnchor) -> gboolean;
24498    pub fn gtk_text_child_anchor_get_widgets(anchor: *mut GtkTextChildAnchor) -> *mut glib::GList;
24499
24500    //=========================================================================
24501    // GtkTextMark
24502    //=========================================================================
24503    pub fn gtk_text_mark_get_type() -> GType;
24504    pub fn gtk_text_mark_new(name: *const c_char, left_gravity: gboolean) -> *mut GtkTextMark;
24505    pub fn gtk_text_mark_get_buffer(mark: *mut GtkTextMark) -> *mut GtkTextBuffer;
24506    pub fn gtk_text_mark_get_deleted(mark: *mut GtkTextMark) -> gboolean;
24507    pub fn gtk_text_mark_get_left_gravity(mark: *mut GtkTextMark) -> gboolean;
24508    pub fn gtk_text_mark_get_name(mark: *mut GtkTextMark) -> *const c_char;
24509    pub fn gtk_text_mark_get_visible(mark: *mut GtkTextMark) -> gboolean;
24510    pub fn gtk_text_mark_set_visible(mark: *mut GtkTextMark, setting: gboolean);
24511
24512    //=========================================================================
24513    // GtkTextTag
24514    //=========================================================================
24515    pub fn gtk_text_tag_get_type() -> GType;
24516    pub fn gtk_text_tag_new(name: *const c_char) -> *mut GtkTextTag;
24517    pub fn gtk_text_tag_changed(tag: *mut GtkTextTag, size_changed: gboolean);
24518    pub fn gtk_text_tag_event(
24519        tag: *mut GtkTextTag,
24520        event_object: *mut gobject::GObject,
24521        event: *mut gdk::GdkEvent,
24522        iter: *const GtkTextIter,
24523    ) -> gboolean;
24524    pub fn gtk_text_tag_get_priority(tag: *mut GtkTextTag) -> c_int;
24525    pub fn gtk_text_tag_set_priority(tag: *mut GtkTextTag, priority: c_int);
24526
24527    //=========================================================================
24528    // GtkTextTagTable
24529    //=========================================================================
24530    pub fn gtk_text_tag_table_get_type() -> GType;
24531    pub fn gtk_text_tag_table_new() -> *mut GtkTextTagTable;
24532    pub fn gtk_text_tag_table_add(table: *mut GtkTextTagTable, tag: *mut GtkTextTag) -> gboolean;
24533    pub fn gtk_text_tag_table_foreach(
24534        table: *mut GtkTextTagTable,
24535        func: GtkTextTagTableForeach,
24536        data: gpointer,
24537    );
24538    pub fn gtk_text_tag_table_get_size(table: *mut GtkTextTagTable) -> c_int;
24539    pub fn gtk_text_tag_table_lookup(
24540        table: *mut GtkTextTagTable,
24541        name: *const c_char,
24542    ) -> *mut GtkTextTag;
24543    pub fn gtk_text_tag_table_remove(table: *mut GtkTextTagTable, tag: *mut GtkTextTag);
24544
24545    //=========================================================================
24546    // GtkTextView
24547    //=========================================================================
24548    pub fn gtk_text_view_get_type() -> GType;
24549    pub fn gtk_text_view_new() -> *mut GtkWidget;
24550    pub fn gtk_text_view_new_with_buffer(buffer: *mut GtkTextBuffer) -> *mut GtkWidget;
24551    pub fn gtk_text_view_add_child_at_anchor(
24552        text_view: *mut GtkTextView,
24553        child: *mut GtkWidget,
24554        anchor: *mut GtkTextChildAnchor,
24555    );
24556    pub fn gtk_text_view_add_child_in_window(
24557        text_view: *mut GtkTextView,
24558        child: *mut GtkWidget,
24559        which_window: GtkTextWindowType,
24560        xpos: c_int,
24561        ypos: c_int,
24562    );
24563    pub fn gtk_text_view_backward_display_line(
24564        text_view: *mut GtkTextView,
24565        iter: *mut GtkTextIter,
24566    ) -> gboolean;
24567    pub fn gtk_text_view_backward_display_line_start(
24568        text_view: *mut GtkTextView,
24569        iter: *mut GtkTextIter,
24570    ) -> gboolean;
24571    pub fn gtk_text_view_buffer_to_window_coords(
24572        text_view: *mut GtkTextView,
24573        win: GtkTextWindowType,
24574        buffer_x: c_int,
24575        buffer_y: c_int,
24576        window_x: *mut c_int,
24577        window_y: *mut c_int,
24578    );
24579    pub fn gtk_text_view_forward_display_line(
24580        text_view: *mut GtkTextView,
24581        iter: *mut GtkTextIter,
24582    ) -> gboolean;
24583    pub fn gtk_text_view_forward_display_line_end(
24584        text_view: *mut GtkTextView,
24585        iter: *mut GtkTextIter,
24586    ) -> gboolean;
24587    pub fn gtk_text_view_get_accepts_tab(text_view: *mut GtkTextView) -> gboolean;
24588    pub fn gtk_text_view_get_border_window_size(
24589        text_view: *mut GtkTextView,
24590        type_: GtkTextWindowType,
24591    ) -> c_int;
24592    pub fn gtk_text_view_get_bottom_margin(text_view: *mut GtkTextView) -> c_int;
24593    pub fn gtk_text_view_get_buffer(text_view: *mut GtkTextView) -> *mut GtkTextBuffer;
24594    pub fn gtk_text_view_get_cursor_locations(
24595        text_view: *mut GtkTextView,
24596        iter: *const GtkTextIter,
24597        strong: *mut gdk::GdkRectangle,
24598        weak: *mut gdk::GdkRectangle,
24599    );
24600    pub fn gtk_text_view_get_cursor_visible(text_view: *mut GtkTextView) -> gboolean;
24601    pub fn gtk_text_view_get_default_attributes(
24602        text_view: *mut GtkTextView,
24603    ) -> *mut GtkTextAttributes;
24604    pub fn gtk_text_view_get_editable(text_view: *mut GtkTextView) -> gboolean;
24605    pub fn gtk_text_view_get_hadjustment(text_view: *mut GtkTextView) -> *mut GtkAdjustment;
24606    pub fn gtk_text_view_get_indent(text_view: *mut GtkTextView) -> c_int;
24607    pub fn gtk_text_view_get_input_hints(text_view: *mut GtkTextView) -> GtkInputHints;
24608    pub fn gtk_text_view_get_input_purpose(text_view: *mut GtkTextView) -> GtkInputPurpose;
24609    pub fn gtk_text_view_get_iter_at_location(
24610        text_view: *mut GtkTextView,
24611        iter: *mut GtkTextIter,
24612        x: c_int,
24613        y: c_int,
24614    ) -> gboolean;
24615    pub fn gtk_text_view_get_iter_at_position(
24616        text_view: *mut GtkTextView,
24617        iter: *mut GtkTextIter,
24618        trailing: *mut c_int,
24619        x: c_int,
24620        y: c_int,
24621    ) -> gboolean;
24622    pub fn gtk_text_view_get_iter_location(
24623        text_view: *mut GtkTextView,
24624        iter: *const GtkTextIter,
24625        location: *mut gdk::GdkRectangle,
24626    );
24627    pub fn gtk_text_view_get_justification(text_view: *mut GtkTextView) -> GtkJustification;
24628    pub fn gtk_text_view_get_left_margin(text_view: *mut GtkTextView) -> c_int;
24629    pub fn gtk_text_view_get_line_at_y(
24630        text_view: *mut GtkTextView,
24631        target_iter: *mut GtkTextIter,
24632        y: c_int,
24633        line_top: *mut c_int,
24634    );
24635    pub fn gtk_text_view_get_line_yrange(
24636        text_view: *mut GtkTextView,
24637        iter: *const GtkTextIter,
24638        y: *mut c_int,
24639        height: *mut c_int,
24640    );
24641    pub fn gtk_text_view_get_monospace(text_view: *mut GtkTextView) -> gboolean;
24642    pub fn gtk_text_view_get_overwrite(text_view: *mut GtkTextView) -> gboolean;
24643    pub fn gtk_text_view_get_pixels_above_lines(text_view: *mut GtkTextView) -> c_int;
24644    pub fn gtk_text_view_get_pixels_below_lines(text_view: *mut GtkTextView) -> c_int;
24645    pub fn gtk_text_view_get_pixels_inside_wrap(text_view: *mut GtkTextView) -> c_int;
24646    pub fn gtk_text_view_get_right_margin(text_view: *mut GtkTextView) -> c_int;
24647    pub fn gtk_text_view_get_tabs(text_view: *mut GtkTextView) -> *mut pango::PangoTabArray;
24648    pub fn gtk_text_view_get_top_margin(text_view: *mut GtkTextView) -> c_int;
24649    pub fn gtk_text_view_get_vadjustment(text_view: *mut GtkTextView) -> *mut GtkAdjustment;
24650    pub fn gtk_text_view_get_visible_rect(
24651        text_view: *mut GtkTextView,
24652        visible_rect: *mut gdk::GdkRectangle,
24653    );
24654    pub fn gtk_text_view_get_window(
24655        text_view: *mut GtkTextView,
24656        win: GtkTextWindowType,
24657    ) -> *mut gdk::GdkWindow;
24658    pub fn gtk_text_view_get_window_type(
24659        text_view: *mut GtkTextView,
24660        window: *mut gdk::GdkWindow,
24661    ) -> GtkTextWindowType;
24662    pub fn gtk_text_view_get_wrap_mode(text_view: *mut GtkTextView) -> GtkWrapMode;
24663    pub fn gtk_text_view_im_context_filter_keypress(
24664        text_view: *mut GtkTextView,
24665        event: *mut gdk::GdkEventKey,
24666    ) -> gboolean;
24667    pub fn gtk_text_view_move_child(
24668        text_view: *mut GtkTextView,
24669        child: *mut GtkWidget,
24670        xpos: c_int,
24671        ypos: c_int,
24672    );
24673    pub fn gtk_text_view_move_mark_onscreen(
24674        text_view: *mut GtkTextView,
24675        mark: *mut GtkTextMark,
24676    ) -> gboolean;
24677    pub fn gtk_text_view_move_visually(
24678        text_view: *mut GtkTextView,
24679        iter: *mut GtkTextIter,
24680        count: c_int,
24681    ) -> gboolean;
24682    pub fn gtk_text_view_place_cursor_onscreen(text_view: *mut GtkTextView) -> gboolean;
24683    pub fn gtk_text_view_reset_cursor_blink(text_view: *mut GtkTextView);
24684    pub fn gtk_text_view_reset_im_context(text_view: *mut GtkTextView);
24685    pub fn gtk_text_view_scroll_mark_onscreen(text_view: *mut GtkTextView, mark: *mut GtkTextMark);
24686    pub fn gtk_text_view_scroll_to_iter(
24687        text_view: *mut GtkTextView,
24688        iter: *mut GtkTextIter,
24689        within_margin: c_double,
24690        use_align: gboolean,
24691        xalign: c_double,
24692        yalign: c_double,
24693    ) -> gboolean;
24694    pub fn gtk_text_view_scroll_to_mark(
24695        text_view: *mut GtkTextView,
24696        mark: *mut GtkTextMark,
24697        within_margin: c_double,
24698        use_align: gboolean,
24699        xalign: c_double,
24700        yalign: c_double,
24701    );
24702    pub fn gtk_text_view_set_accepts_tab(text_view: *mut GtkTextView, accepts_tab: gboolean);
24703    pub fn gtk_text_view_set_border_window_size(
24704        text_view: *mut GtkTextView,
24705        type_: GtkTextWindowType,
24706        size: c_int,
24707    );
24708    pub fn gtk_text_view_set_bottom_margin(text_view: *mut GtkTextView, bottom_margin: c_int);
24709    pub fn gtk_text_view_set_buffer(text_view: *mut GtkTextView, buffer: *mut GtkTextBuffer);
24710    pub fn gtk_text_view_set_cursor_visible(text_view: *mut GtkTextView, setting: gboolean);
24711    pub fn gtk_text_view_set_editable(text_view: *mut GtkTextView, setting: gboolean);
24712    pub fn gtk_text_view_set_indent(text_view: *mut GtkTextView, indent: c_int);
24713    pub fn gtk_text_view_set_input_hints(text_view: *mut GtkTextView, hints: GtkInputHints);
24714    pub fn gtk_text_view_set_input_purpose(text_view: *mut GtkTextView, purpose: GtkInputPurpose);
24715    pub fn gtk_text_view_set_justification(
24716        text_view: *mut GtkTextView,
24717        justification: GtkJustification,
24718    );
24719    pub fn gtk_text_view_set_left_margin(text_view: *mut GtkTextView, left_margin: c_int);
24720    pub fn gtk_text_view_set_monospace(text_view: *mut GtkTextView, monospace: gboolean);
24721    pub fn gtk_text_view_set_overwrite(text_view: *mut GtkTextView, overwrite: gboolean);
24722    pub fn gtk_text_view_set_pixels_above_lines(
24723        text_view: *mut GtkTextView,
24724        pixels_above_lines: c_int,
24725    );
24726    pub fn gtk_text_view_set_pixels_below_lines(
24727        text_view: *mut GtkTextView,
24728        pixels_below_lines: c_int,
24729    );
24730    pub fn gtk_text_view_set_pixels_inside_wrap(
24731        text_view: *mut GtkTextView,
24732        pixels_inside_wrap: c_int,
24733    );
24734    pub fn gtk_text_view_set_right_margin(text_view: *mut GtkTextView, right_margin: c_int);
24735    pub fn gtk_text_view_set_tabs(text_view: *mut GtkTextView, tabs: *mut pango::PangoTabArray);
24736    pub fn gtk_text_view_set_top_margin(text_view: *mut GtkTextView, top_margin: c_int);
24737    pub fn gtk_text_view_set_wrap_mode(text_view: *mut GtkTextView, wrap_mode: GtkWrapMode);
24738    pub fn gtk_text_view_starts_display_line(
24739        text_view: *mut GtkTextView,
24740        iter: *const GtkTextIter,
24741    ) -> gboolean;
24742    pub fn gtk_text_view_window_to_buffer_coords(
24743        text_view: *mut GtkTextView,
24744        win: GtkTextWindowType,
24745        window_x: c_int,
24746        window_y: c_int,
24747        buffer_x: *mut c_int,
24748        buffer_y: *mut c_int,
24749    );
24750
24751    //=========================================================================
24752    // GtkTextViewAccessible
24753    //=========================================================================
24754    pub fn gtk_text_view_accessible_get_type() -> GType;
24755
24756    //=========================================================================
24757    // GtkThemingEngine
24758    //=========================================================================
24759    pub fn gtk_theming_engine_get_type() -> GType;
24760    pub fn gtk_theming_engine_load(name: *const c_char) -> *mut GtkThemingEngine;
24761    pub fn gtk_theming_engine_register_property(
24762        name_space: *const c_char,
24763        parse_func: GtkStylePropertyParser,
24764        pspec: *mut gobject::GParamSpec,
24765    );
24766    pub fn gtk_theming_engine_get(engine: *mut GtkThemingEngine, state: GtkStateFlags, ...);
24767    pub fn gtk_theming_engine_get_background_color(
24768        engine: *mut GtkThemingEngine,
24769        state: GtkStateFlags,
24770        color: *mut gdk::GdkRGBA,
24771    );
24772    pub fn gtk_theming_engine_get_border(
24773        engine: *mut GtkThemingEngine,
24774        state: GtkStateFlags,
24775        border: *mut GtkBorder,
24776    );
24777    pub fn gtk_theming_engine_get_border_color(
24778        engine: *mut GtkThemingEngine,
24779        state: GtkStateFlags,
24780        color: *mut gdk::GdkRGBA,
24781    );
24782    pub fn gtk_theming_engine_get_color(
24783        engine: *mut GtkThemingEngine,
24784        state: GtkStateFlags,
24785        color: *mut gdk::GdkRGBA,
24786    );
24787    pub fn gtk_theming_engine_get_direction(engine: *mut GtkThemingEngine) -> GtkTextDirection;
24788    pub fn gtk_theming_engine_get_font(
24789        engine: *mut GtkThemingEngine,
24790        state: GtkStateFlags,
24791    ) -> *const pango::PangoFontDescription;
24792    pub fn gtk_theming_engine_get_junction_sides(engine: *mut GtkThemingEngine)
24793    -> GtkJunctionSides;
24794    pub fn gtk_theming_engine_get_margin(
24795        engine: *mut GtkThemingEngine,
24796        state: GtkStateFlags,
24797        margin: *mut GtkBorder,
24798    );
24799    pub fn gtk_theming_engine_get_padding(
24800        engine: *mut GtkThemingEngine,
24801        state: GtkStateFlags,
24802        padding: *mut GtkBorder,
24803    );
24804    pub fn gtk_theming_engine_get_path(engine: *mut GtkThemingEngine) -> *const GtkWidgetPath;
24805    pub fn gtk_theming_engine_get_property(
24806        engine: *mut GtkThemingEngine,
24807        property: *const c_char,
24808        state: GtkStateFlags,
24809        value: *mut gobject::GValue,
24810    );
24811    pub fn gtk_theming_engine_get_screen(engine: *mut GtkThemingEngine) -> *mut gdk::GdkScreen;
24812    pub fn gtk_theming_engine_get_state(engine: *mut GtkThemingEngine) -> GtkStateFlags;
24813    pub fn gtk_theming_engine_get_style(engine: *mut GtkThemingEngine, ...);
24814    pub fn gtk_theming_engine_get_style_property(
24815        engine: *mut GtkThemingEngine,
24816        property_name: *const c_char,
24817        value: *mut gobject::GValue,
24818    );
24819    //pub fn gtk_theming_engine_get_style_valist(engine: *mut GtkThemingEngine, args: /*Unimplemented*/va_list);
24820    //pub fn gtk_theming_engine_get_valist(engine: *mut GtkThemingEngine, state: GtkStateFlags, args: /*Unimplemented*/va_list);
24821    pub fn gtk_theming_engine_has_class(
24822        engine: *mut GtkThemingEngine,
24823        style_class: *const c_char,
24824    ) -> gboolean;
24825    pub fn gtk_theming_engine_has_region(
24826        engine: *mut GtkThemingEngine,
24827        style_region: *const c_char,
24828        flags: *mut GtkRegionFlags,
24829    ) -> gboolean;
24830    pub fn gtk_theming_engine_lookup_color(
24831        engine: *mut GtkThemingEngine,
24832        color_name: *const c_char,
24833        color: *mut gdk::GdkRGBA,
24834    ) -> gboolean;
24835    pub fn gtk_theming_engine_state_is_running(
24836        engine: *mut GtkThemingEngine,
24837        state: GtkStateType,
24838        progress: *mut c_double,
24839    ) -> gboolean;
24840
24841    //=========================================================================
24842    // GtkToggleAction
24843    //=========================================================================
24844    pub fn gtk_toggle_action_get_type() -> GType;
24845    pub fn gtk_toggle_action_new(
24846        name: *const c_char,
24847        label: *const c_char,
24848        tooltip: *const c_char,
24849        stock_id: *const c_char,
24850    ) -> *mut GtkToggleAction;
24851    pub fn gtk_toggle_action_get_active(action: *mut GtkToggleAction) -> gboolean;
24852    pub fn gtk_toggle_action_get_draw_as_radio(action: *mut GtkToggleAction) -> gboolean;
24853    pub fn gtk_toggle_action_set_active(action: *mut GtkToggleAction, is_active: gboolean);
24854    pub fn gtk_toggle_action_set_draw_as_radio(
24855        action: *mut GtkToggleAction,
24856        draw_as_radio: gboolean,
24857    );
24858    pub fn gtk_toggle_action_toggled(action: *mut GtkToggleAction);
24859
24860    //=========================================================================
24861    // GtkToggleButton
24862    //=========================================================================
24863    pub fn gtk_toggle_button_get_type() -> GType;
24864    pub fn gtk_toggle_button_new() -> *mut GtkWidget;
24865    pub fn gtk_toggle_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
24866    pub fn gtk_toggle_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
24867    pub fn gtk_toggle_button_get_active(toggle_button: *mut GtkToggleButton) -> gboolean;
24868    pub fn gtk_toggle_button_get_inconsistent(toggle_button: *mut GtkToggleButton) -> gboolean;
24869    pub fn gtk_toggle_button_get_mode(toggle_button: *mut GtkToggleButton) -> gboolean;
24870    pub fn gtk_toggle_button_set_active(toggle_button: *mut GtkToggleButton, is_active: gboolean);
24871    pub fn gtk_toggle_button_set_inconsistent(
24872        toggle_button: *mut GtkToggleButton,
24873        setting: gboolean,
24874    );
24875    pub fn gtk_toggle_button_set_mode(
24876        toggle_button: *mut GtkToggleButton,
24877        draw_indicator: gboolean,
24878    );
24879    pub fn gtk_toggle_button_toggled(toggle_button: *mut GtkToggleButton);
24880
24881    //=========================================================================
24882    // GtkToggleButtonAccessible
24883    //=========================================================================
24884    pub fn gtk_toggle_button_accessible_get_type() -> GType;
24885
24886    //=========================================================================
24887    // GtkToggleToolButton
24888    //=========================================================================
24889    pub fn gtk_toggle_tool_button_get_type() -> GType;
24890    pub fn gtk_toggle_tool_button_new() -> *mut GtkToolItem;
24891    pub fn gtk_toggle_tool_button_new_from_stock(stock_id: *const c_char) -> *mut GtkToolItem;
24892    pub fn gtk_toggle_tool_button_get_active(button: *mut GtkToggleToolButton) -> gboolean;
24893    pub fn gtk_toggle_tool_button_set_active(button: *mut GtkToggleToolButton, is_active: gboolean);
24894
24895    //=========================================================================
24896    // GtkToolButton
24897    //=========================================================================
24898    pub fn gtk_tool_button_get_type() -> GType;
24899    pub fn gtk_tool_button_new(
24900        icon_widget: *mut GtkWidget,
24901        label: *const c_char,
24902    ) -> *mut GtkToolItem;
24903    pub fn gtk_tool_button_new_from_stock(stock_id: *const c_char) -> *mut GtkToolItem;
24904    pub fn gtk_tool_button_get_icon_name(button: *mut GtkToolButton) -> *const c_char;
24905    pub fn gtk_tool_button_get_icon_widget(button: *mut GtkToolButton) -> *mut GtkWidget;
24906    pub fn gtk_tool_button_get_label(button: *mut GtkToolButton) -> *const c_char;
24907    pub fn gtk_tool_button_get_label_widget(button: *mut GtkToolButton) -> *mut GtkWidget;
24908    pub fn gtk_tool_button_get_stock_id(button: *mut GtkToolButton) -> *const c_char;
24909    pub fn gtk_tool_button_get_use_underline(button: *mut GtkToolButton) -> gboolean;
24910    pub fn gtk_tool_button_set_icon_name(button: *mut GtkToolButton, icon_name: *const c_char);
24911    pub fn gtk_tool_button_set_icon_widget(button: *mut GtkToolButton, icon_widget: *mut GtkWidget);
24912    pub fn gtk_tool_button_set_label(button: *mut GtkToolButton, label: *const c_char);
24913    pub fn gtk_tool_button_set_label_widget(
24914        button: *mut GtkToolButton,
24915        label_widget: *mut GtkWidget,
24916    );
24917    pub fn gtk_tool_button_set_stock_id(button: *mut GtkToolButton, stock_id: *const c_char);
24918    pub fn gtk_tool_button_set_use_underline(button: *mut GtkToolButton, use_underline: gboolean);
24919
24920    //=========================================================================
24921    // GtkToolItem
24922    //=========================================================================
24923    pub fn gtk_tool_item_get_type() -> GType;
24924    pub fn gtk_tool_item_new() -> *mut GtkToolItem;
24925    pub fn gtk_tool_item_get_ellipsize_mode(
24926        tool_item: *mut GtkToolItem,
24927    ) -> pango::PangoEllipsizeMode;
24928    pub fn gtk_tool_item_get_expand(tool_item: *mut GtkToolItem) -> gboolean;
24929    pub fn gtk_tool_item_get_homogeneous(tool_item: *mut GtkToolItem) -> gboolean;
24930    pub fn gtk_tool_item_get_icon_size(tool_item: *mut GtkToolItem) -> GtkIconSize;
24931    pub fn gtk_tool_item_get_is_important(tool_item: *mut GtkToolItem) -> gboolean;
24932    pub fn gtk_tool_item_get_orientation(tool_item: *mut GtkToolItem) -> GtkOrientation;
24933    pub fn gtk_tool_item_get_proxy_menu_item(
24934        tool_item: *mut GtkToolItem,
24935        menu_item_id: *const c_char,
24936    ) -> *mut GtkWidget;
24937    pub fn gtk_tool_item_get_relief_style(tool_item: *mut GtkToolItem) -> GtkReliefStyle;
24938    pub fn gtk_tool_item_get_text_alignment(tool_item: *mut GtkToolItem) -> c_float;
24939    pub fn gtk_tool_item_get_text_orientation(tool_item: *mut GtkToolItem) -> GtkOrientation;
24940    pub fn gtk_tool_item_get_text_size_group(tool_item: *mut GtkToolItem) -> *mut GtkSizeGroup;
24941    pub fn gtk_tool_item_get_toolbar_style(tool_item: *mut GtkToolItem) -> GtkToolbarStyle;
24942    pub fn gtk_tool_item_get_use_drag_window(tool_item: *mut GtkToolItem) -> gboolean;
24943    pub fn gtk_tool_item_get_visible_horizontal(tool_item: *mut GtkToolItem) -> gboolean;
24944    pub fn gtk_tool_item_get_visible_vertical(tool_item: *mut GtkToolItem) -> gboolean;
24945    pub fn gtk_tool_item_rebuild_menu(tool_item: *mut GtkToolItem);
24946    pub fn gtk_tool_item_retrieve_proxy_menu_item(tool_item: *mut GtkToolItem) -> *mut GtkWidget;
24947    pub fn gtk_tool_item_set_expand(tool_item: *mut GtkToolItem, expand: gboolean);
24948    pub fn gtk_tool_item_set_homogeneous(tool_item: *mut GtkToolItem, homogeneous: gboolean);
24949    pub fn gtk_tool_item_set_is_important(tool_item: *mut GtkToolItem, is_important: gboolean);
24950    pub fn gtk_tool_item_set_proxy_menu_item(
24951        tool_item: *mut GtkToolItem,
24952        menu_item_id: *const c_char,
24953        menu_item: *mut GtkWidget,
24954    );
24955    pub fn gtk_tool_item_set_tooltip_markup(tool_item: *mut GtkToolItem, markup: *const c_char);
24956    pub fn gtk_tool_item_set_tooltip_text(tool_item: *mut GtkToolItem, text: *const c_char);
24957    pub fn gtk_tool_item_set_use_drag_window(
24958        tool_item: *mut GtkToolItem,
24959        use_drag_window: gboolean,
24960    );
24961    pub fn gtk_tool_item_set_visible_horizontal(
24962        tool_item: *mut GtkToolItem,
24963        visible_horizontal: gboolean,
24964    );
24965    pub fn gtk_tool_item_set_visible_vertical(
24966        tool_item: *mut GtkToolItem,
24967        visible_vertical: gboolean,
24968    );
24969    pub fn gtk_tool_item_toolbar_reconfigured(tool_item: *mut GtkToolItem);
24970
24971    //=========================================================================
24972    // GtkToolItemGroup
24973    //=========================================================================
24974    pub fn gtk_tool_item_group_get_type() -> GType;
24975    pub fn gtk_tool_item_group_new(label: *const c_char) -> *mut GtkWidget;
24976    pub fn gtk_tool_item_group_get_collapsed(group: *mut GtkToolItemGroup) -> gboolean;
24977    pub fn gtk_tool_item_group_get_drop_item(
24978        group: *mut GtkToolItemGroup,
24979        x: c_int,
24980        y: c_int,
24981    ) -> *mut GtkToolItem;
24982    pub fn gtk_tool_item_group_get_ellipsize(
24983        group: *mut GtkToolItemGroup,
24984    ) -> pango::PangoEllipsizeMode;
24985    pub fn gtk_tool_item_group_get_header_relief(group: *mut GtkToolItemGroup) -> GtkReliefStyle;
24986    pub fn gtk_tool_item_group_get_item_position(
24987        group: *mut GtkToolItemGroup,
24988        item: *mut GtkToolItem,
24989    ) -> c_int;
24990    pub fn gtk_tool_item_group_get_label(group: *mut GtkToolItemGroup) -> *const c_char;
24991    pub fn gtk_tool_item_group_get_label_widget(group: *mut GtkToolItemGroup) -> *mut GtkWidget;
24992    pub fn gtk_tool_item_group_get_n_items(group: *mut GtkToolItemGroup) -> c_uint;
24993    pub fn gtk_tool_item_group_get_nth_item(
24994        group: *mut GtkToolItemGroup,
24995        index: c_uint,
24996    ) -> *mut GtkToolItem;
24997    pub fn gtk_tool_item_group_insert(
24998        group: *mut GtkToolItemGroup,
24999        item: *mut GtkToolItem,
25000        position: c_int,
25001    );
25002    pub fn gtk_tool_item_group_set_collapsed(group: *mut GtkToolItemGroup, collapsed: gboolean);
25003    pub fn gtk_tool_item_group_set_ellipsize(
25004        group: *mut GtkToolItemGroup,
25005        ellipsize: pango::PangoEllipsizeMode,
25006    );
25007    pub fn gtk_tool_item_group_set_header_relief(
25008        group: *mut GtkToolItemGroup,
25009        style: GtkReliefStyle,
25010    );
25011    pub fn gtk_tool_item_group_set_item_position(
25012        group: *mut GtkToolItemGroup,
25013        item: *mut GtkToolItem,
25014        position: c_int,
25015    );
25016    pub fn gtk_tool_item_group_set_label(group: *mut GtkToolItemGroup, label: *const c_char);
25017    pub fn gtk_tool_item_group_set_label_widget(
25018        group: *mut GtkToolItemGroup,
25019        label_widget: *mut GtkWidget,
25020    );
25021
25022    //=========================================================================
25023    // GtkToolPalette
25024    //=========================================================================
25025    pub fn gtk_tool_palette_get_type() -> GType;
25026    pub fn gtk_tool_palette_new() -> *mut GtkWidget;
25027    pub fn gtk_tool_palette_get_drag_target_group() -> *const GtkTargetEntry;
25028    pub fn gtk_tool_palette_get_drag_target_item() -> *const GtkTargetEntry;
25029    pub fn gtk_tool_palette_add_drag_dest(
25030        palette: *mut GtkToolPalette,
25031        widget: *mut GtkWidget,
25032        flags: GtkDestDefaults,
25033        targets: GtkToolPaletteDragTargets,
25034        actions: gdk::GdkDragAction,
25035    );
25036    pub fn gtk_tool_palette_get_drag_item(
25037        palette: *mut GtkToolPalette,
25038        selection: *const GtkSelectionData,
25039    ) -> *mut GtkWidget;
25040    pub fn gtk_tool_palette_get_drop_group(
25041        palette: *mut GtkToolPalette,
25042        x: c_int,
25043        y: c_int,
25044    ) -> *mut GtkToolItemGroup;
25045    pub fn gtk_tool_palette_get_drop_item(
25046        palette: *mut GtkToolPalette,
25047        x: c_int,
25048        y: c_int,
25049    ) -> *mut GtkToolItem;
25050    pub fn gtk_tool_palette_get_exclusive(
25051        palette: *mut GtkToolPalette,
25052        group: *mut GtkToolItemGroup,
25053    ) -> gboolean;
25054    pub fn gtk_tool_palette_get_expand(
25055        palette: *mut GtkToolPalette,
25056        group: *mut GtkToolItemGroup,
25057    ) -> gboolean;
25058    pub fn gtk_tool_palette_get_group_position(
25059        palette: *mut GtkToolPalette,
25060        group: *mut GtkToolItemGroup,
25061    ) -> c_int;
25062    pub fn gtk_tool_palette_get_hadjustment(palette: *mut GtkToolPalette) -> *mut GtkAdjustment;
25063    pub fn gtk_tool_palette_get_icon_size(palette: *mut GtkToolPalette) -> GtkIconSize;
25064    pub fn gtk_tool_palette_get_style(palette: *mut GtkToolPalette) -> GtkToolbarStyle;
25065    pub fn gtk_tool_palette_get_vadjustment(palette: *mut GtkToolPalette) -> *mut GtkAdjustment;
25066    pub fn gtk_tool_palette_set_drag_source(
25067        palette: *mut GtkToolPalette,
25068        targets: GtkToolPaletteDragTargets,
25069    );
25070    pub fn gtk_tool_palette_set_exclusive(
25071        palette: *mut GtkToolPalette,
25072        group: *mut GtkToolItemGroup,
25073        exclusive: gboolean,
25074    );
25075    pub fn gtk_tool_palette_set_expand(
25076        palette: *mut GtkToolPalette,
25077        group: *mut GtkToolItemGroup,
25078        expand: gboolean,
25079    );
25080    pub fn gtk_tool_palette_set_group_position(
25081        palette: *mut GtkToolPalette,
25082        group: *mut GtkToolItemGroup,
25083        position: c_int,
25084    );
25085    pub fn gtk_tool_palette_set_icon_size(palette: *mut GtkToolPalette, icon_size: GtkIconSize);
25086    pub fn gtk_tool_palette_set_style(palette: *mut GtkToolPalette, style: GtkToolbarStyle);
25087    pub fn gtk_tool_palette_unset_icon_size(palette: *mut GtkToolPalette);
25088    pub fn gtk_tool_palette_unset_style(palette: *mut GtkToolPalette);
25089
25090    //=========================================================================
25091    // GtkToolbar
25092    //=========================================================================
25093    pub fn gtk_toolbar_get_type() -> GType;
25094    pub fn gtk_toolbar_new() -> *mut GtkWidget;
25095    pub fn gtk_toolbar_get_drop_index(toolbar: *mut GtkToolbar, x: c_int, y: c_int) -> c_int;
25096    pub fn gtk_toolbar_get_icon_size(toolbar: *mut GtkToolbar) -> GtkIconSize;
25097    pub fn gtk_toolbar_get_item_index(toolbar: *mut GtkToolbar, item: *mut GtkToolItem) -> c_int;
25098    pub fn gtk_toolbar_get_n_items(toolbar: *mut GtkToolbar) -> c_int;
25099    pub fn gtk_toolbar_get_nth_item(toolbar: *mut GtkToolbar, n: c_int) -> *mut GtkToolItem;
25100    pub fn gtk_toolbar_get_relief_style(toolbar: *mut GtkToolbar) -> GtkReliefStyle;
25101    pub fn gtk_toolbar_get_show_arrow(toolbar: *mut GtkToolbar) -> gboolean;
25102    pub fn gtk_toolbar_get_style(toolbar: *mut GtkToolbar) -> GtkToolbarStyle;
25103    pub fn gtk_toolbar_insert(toolbar: *mut GtkToolbar, item: *mut GtkToolItem, pos: c_int);
25104    pub fn gtk_toolbar_set_drop_highlight_item(
25105        toolbar: *mut GtkToolbar,
25106        tool_item: *mut GtkToolItem,
25107        index_: c_int,
25108    );
25109    pub fn gtk_toolbar_set_icon_size(toolbar: *mut GtkToolbar, icon_size: GtkIconSize);
25110    pub fn gtk_toolbar_set_show_arrow(toolbar: *mut GtkToolbar, show_arrow: gboolean);
25111    pub fn gtk_toolbar_set_style(toolbar: *mut GtkToolbar, style: GtkToolbarStyle);
25112    pub fn gtk_toolbar_unset_icon_size(toolbar: *mut GtkToolbar);
25113    pub fn gtk_toolbar_unset_style(toolbar: *mut GtkToolbar);
25114
25115    //=========================================================================
25116    // GtkTooltip
25117    //=========================================================================
25118    pub fn gtk_tooltip_get_type() -> GType;
25119    pub fn gtk_tooltip_trigger_tooltip_query(display: *mut gdk::GdkDisplay);
25120    pub fn gtk_tooltip_set_custom(tooltip: *mut GtkTooltip, custom_widget: *mut GtkWidget);
25121    pub fn gtk_tooltip_set_icon(tooltip: *mut GtkTooltip, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
25122    pub fn gtk_tooltip_set_icon_from_gicon(
25123        tooltip: *mut GtkTooltip,
25124        gicon: *mut gio::GIcon,
25125        size: GtkIconSize,
25126    );
25127    pub fn gtk_tooltip_set_icon_from_icon_name(
25128        tooltip: *mut GtkTooltip,
25129        icon_name: *const c_char,
25130        size: GtkIconSize,
25131    );
25132    pub fn gtk_tooltip_set_icon_from_stock(
25133        tooltip: *mut GtkTooltip,
25134        stock_id: *const c_char,
25135        size: GtkIconSize,
25136    );
25137    pub fn gtk_tooltip_set_markup(tooltip: *mut GtkTooltip, markup: *const c_char);
25138    pub fn gtk_tooltip_set_text(tooltip: *mut GtkTooltip, text: *const c_char);
25139    pub fn gtk_tooltip_set_tip_area(tooltip: *mut GtkTooltip, rect: *const gdk::GdkRectangle);
25140
25141    //=========================================================================
25142    // GtkToplevelAccessible
25143    //=========================================================================
25144    pub fn gtk_toplevel_accessible_get_type() -> GType;
25145    pub fn gtk_toplevel_accessible_get_children(
25146        accessible: *mut GtkToplevelAccessible,
25147    ) -> *mut glib::GList;
25148
25149    //=========================================================================
25150    // GtkTreeModelFilter
25151    //=========================================================================
25152    pub fn gtk_tree_model_filter_get_type() -> GType;
25153    pub fn gtk_tree_model_filter_clear_cache(filter: *mut GtkTreeModelFilter);
25154    pub fn gtk_tree_model_filter_convert_child_iter_to_iter(
25155        filter: *mut GtkTreeModelFilter,
25156        filter_iter: *mut GtkTreeIter,
25157        child_iter: *mut GtkTreeIter,
25158    ) -> gboolean;
25159    pub fn gtk_tree_model_filter_convert_child_path_to_path(
25160        filter: *mut GtkTreeModelFilter,
25161        child_path: *mut GtkTreePath,
25162    ) -> *mut GtkTreePath;
25163    pub fn gtk_tree_model_filter_convert_iter_to_child_iter(
25164        filter: *mut GtkTreeModelFilter,
25165        child_iter: *mut GtkTreeIter,
25166        filter_iter: *mut GtkTreeIter,
25167    );
25168    pub fn gtk_tree_model_filter_convert_path_to_child_path(
25169        filter: *mut GtkTreeModelFilter,
25170        filter_path: *mut GtkTreePath,
25171    ) -> *mut GtkTreePath;
25172    pub fn gtk_tree_model_filter_get_model(filter: *mut GtkTreeModelFilter) -> *mut GtkTreeModel;
25173    pub fn gtk_tree_model_filter_refilter(filter: *mut GtkTreeModelFilter);
25174    pub fn gtk_tree_model_filter_set_modify_func(
25175        filter: *mut GtkTreeModelFilter,
25176        n_columns: c_int,
25177        types: *mut GType,
25178        func: GtkTreeModelFilterModifyFunc,
25179        data: gpointer,
25180        destroy: glib::GDestroyNotify,
25181    );
25182    pub fn gtk_tree_model_filter_set_visible_column(filter: *mut GtkTreeModelFilter, column: c_int);
25183    pub fn gtk_tree_model_filter_set_visible_func(
25184        filter: *mut GtkTreeModelFilter,
25185        func: GtkTreeModelFilterVisibleFunc,
25186        data: gpointer,
25187        destroy: glib::GDestroyNotify,
25188    );
25189
25190    //=========================================================================
25191    // GtkTreeModelSort
25192    //=========================================================================
25193    pub fn gtk_tree_model_sort_get_type() -> GType;
25194    pub fn gtk_tree_model_sort_new_with_model(
25195        child_model: *mut GtkTreeModel,
25196    ) -> *mut GtkTreeModelSort;
25197    pub fn gtk_tree_model_sort_clear_cache(tree_model_sort: *mut GtkTreeModelSort);
25198    pub fn gtk_tree_model_sort_convert_child_iter_to_iter(
25199        tree_model_sort: *mut GtkTreeModelSort,
25200        sort_iter: *mut GtkTreeIter,
25201        child_iter: *mut GtkTreeIter,
25202    ) -> gboolean;
25203    pub fn gtk_tree_model_sort_convert_child_path_to_path(
25204        tree_model_sort: *mut GtkTreeModelSort,
25205        child_path: *mut GtkTreePath,
25206    ) -> *mut GtkTreePath;
25207    pub fn gtk_tree_model_sort_convert_iter_to_child_iter(
25208        tree_model_sort: *mut GtkTreeModelSort,
25209        child_iter: *mut GtkTreeIter,
25210        sorted_iter: *mut GtkTreeIter,
25211    );
25212    pub fn gtk_tree_model_sort_convert_path_to_child_path(
25213        tree_model_sort: *mut GtkTreeModelSort,
25214        sorted_path: *mut GtkTreePath,
25215    ) -> *mut GtkTreePath;
25216    pub fn gtk_tree_model_sort_get_model(tree_model: *mut GtkTreeModelSort) -> *mut GtkTreeModel;
25217    pub fn gtk_tree_model_sort_iter_is_valid(
25218        tree_model_sort: *mut GtkTreeModelSort,
25219        iter: *mut GtkTreeIter,
25220    ) -> gboolean;
25221    pub fn gtk_tree_model_sort_reset_default_sort_func(tree_model_sort: *mut GtkTreeModelSort);
25222
25223    //=========================================================================
25224    // GtkTreeSelection
25225    //=========================================================================
25226    pub fn gtk_tree_selection_get_type() -> GType;
25227    pub fn gtk_tree_selection_count_selected_rows(selection: *mut GtkTreeSelection) -> c_int;
25228    pub fn gtk_tree_selection_get_mode(selection: *mut GtkTreeSelection) -> GtkSelectionMode;
25229    pub fn gtk_tree_selection_get_select_function(
25230        selection: *mut GtkTreeSelection,
25231    ) -> GtkTreeSelectionFunc;
25232    pub fn gtk_tree_selection_get_selected(
25233        selection: *mut GtkTreeSelection,
25234        model: *mut *mut GtkTreeModel,
25235        iter: *mut GtkTreeIter,
25236    ) -> gboolean;
25237    pub fn gtk_tree_selection_get_selected_rows(
25238        selection: *mut GtkTreeSelection,
25239        model: *mut *mut GtkTreeModel,
25240    ) -> *mut glib::GList;
25241    pub fn gtk_tree_selection_get_tree_view(selection: *mut GtkTreeSelection) -> *mut GtkTreeView;
25242    pub fn gtk_tree_selection_get_user_data(selection: *mut GtkTreeSelection) -> gpointer;
25243    pub fn gtk_tree_selection_iter_is_selected(
25244        selection: *mut GtkTreeSelection,
25245        iter: *mut GtkTreeIter,
25246    ) -> gboolean;
25247    pub fn gtk_tree_selection_path_is_selected(
25248        selection: *mut GtkTreeSelection,
25249        path: *mut GtkTreePath,
25250    ) -> gboolean;
25251    pub fn gtk_tree_selection_select_all(selection: *mut GtkTreeSelection);
25252    pub fn gtk_tree_selection_select_iter(selection: *mut GtkTreeSelection, iter: *mut GtkTreeIter);
25253    pub fn gtk_tree_selection_select_path(selection: *mut GtkTreeSelection, path: *mut GtkTreePath);
25254    pub fn gtk_tree_selection_select_range(
25255        selection: *mut GtkTreeSelection,
25256        start_path: *mut GtkTreePath,
25257        end_path: *mut GtkTreePath,
25258    );
25259    pub fn gtk_tree_selection_selected_foreach(
25260        selection: *mut GtkTreeSelection,
25261        func: GtkTreeSelectionForeachFunc,
25262        data: gpointer,
25263    );
25264    pub fn gtk_tree_selection_set_mode(selection: *mut GtkTreeSelection, type_: GtkSelectionMode);
25265    pub fn gtk_tree_selection_set_select_function(
25266        selection: *mut GtkTreeSelection,
25267        func: GtkTreeSelectionFunc,
25268        data: gpointer,
25269        destroy: glib::GDestroyNotify,
25270    );
25271    pub fn gtk_tree_selection_unselect_all(selection: *mut GtkTreeSelection);
25272    pub fn gtk_tree_selection_unselect_iter(
25273        selection: *mut GtkTreeSelection,
25274        iter: *mut GtkTreeIter,
25275    );
25276    pub fn gtk_tree_selection_unselect_path(
25277        selection: *mut GtkTreeSelection,
25278        path: *mut GtkTreePath,
25279    );
25280    pub fn gtk_tree_selection_unselect_range(
25281        selection: *mut GtkTreeSelection,
25282        start_path: *mut GtkTreePath,
25283        end_path: *mut GtkTreePath,
25284    );
25285
25286    //=========================================================================
25287    // GtkTreeStore
25288    //=========================================================================
25289    pub fn gtk_tree_store_get_type() -> GType;
25290    pub fn gtk_tree_store_new(n_columns: c_int, ...) -> *mut GtkTreeStore;
25291    pub fn gtk_tree_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkTreeStore;
25292    pub fn gtk_tree_store_append(
25293        tree_store: *mut GtkTreeStore,
25294        iter: *mut GtkTreeIter,
25295        parent: *mut GtkTreeIter,
25296    );
25297    pub fn gtk_tree_store_clear(tree_store: *mut GtkTreeStore);
25298    pub fn gtk_tree_store_insert(
25299        tree_store: *mut GtkTreeStore,
25300        iter: *mut GtkTreeIter,
25301        parent: *mut GtkTreeIter,
25302        position: c_int,
25303    );
25304    pub fn gtk_tree_store_insert_after(
25305        tree_store: *mut GtkTreeStore,
25306        iter: *mut GtkTreeIter,
25307        parent: *mut GtkTreeIter,
25308        sibling: *mut GtkTreeIter,
25309    );
25310    pub fn gtk_tree_store_insert_before(
25311        tree_store: *mut GtkTreeStore,
25312        iter: *mut GtkTreeIter,
25313        parent: *mut GtkTreeIter,
25314        sibling: *mut GtkTreeIter,
25315    );
25316    pub fn gtk_tree_store_insert_with_values(
25317        tree_store: *mut GtkTreeStore,
25318        iter: *mut GtkTreeIter,
25319        parent: *mut GtkTreeIter,
25320        position: c_int,
25321        ...
25322    );
25323    pub fn gtk_tree_store_insert_with_valuesv(
25324        tree_store: *mut GtkTreeStore,
25325        iter: *mut GtkTreeIter,
25326        parent: *mut GtkTreeIter,
25327        position: c_int,
25328        columns: *mut c_int,
25329        values: *mut gobject::GValue,
25330        n_values: c_int,
25331    );
25332    pub fn gtk_tree_store_is_ancestor(
25333        tree_store: *mut GtkTreeStore,
25334        iter: *mut GtkTreeIter,
25335        descendant: *mut GtkTreeIter,
25336    ) -> gboolean;
25337    pub fn gtk_tree_store_iter_depth(
25338        tree_store: *mut GtkTreeStore,
25339        iter: *mut GtkTreeIter,
25340    ) -> c_int;
25341    pub fn gtk_tree_store_iter_is_valid(
25342        tree_store: *mut GtkTreeStore,
25343        iter: *mut GtkTreeIter,
25344    ) -> gboolean;
25345    pub fn gtk_tree_store_move_after(
25346        tree_store: *mut GtkTreeStore,
25347        iter: *mut GtkTreeIter,
25348        position: *mut GtkTreeIter,
25349    );
25350    pub fn gtk_tree_store_move_before(
25351        tree_store: *mut GtkTreeStore,
25352        iter: *mut GtkTreeIter,
25353        position: *mut GtkTreeIter,
25354    );
25355    pub fn gtk_tree_store_prepend(
25356        tree_store: *mut GtkTreeStore,
25357        iter: *mut GtkTreeIter,
25358        parent: *mut GtkTreeIter,
25359    );
25360    pub fn gtk_tree_store_remove(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter)
25361    -> gboolean;
25362    pub fn gtk_tree_store_reorder(
25363        tree_store: *mut GtkTreeStore,
25364        parent: *mut GtkTreeIter,
25365        new_order: *mut c_int,
25366    );
25367    pub fn gtk_tree_store_set(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, ...);
25368    pub fn gtk_tree_store_set_column_types(
25369        tree_store: *mut GtkTreeStore,
25370        n_columns: c_int,
25371        types: *mut GType,
25372    );
25373    //pub fn gtk_tree_store_set_valist(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
25374    pub fn gtk_tree_store_set_value(
25375        tree_store: *mut GtkTreeStore,
25376        iter: *mut GtkTreeIter,
25377        column: c_int,
25378        value: *mut gobject::GValue,
25379    );
25380    pub fn gtk_tree_store_set_valuesv(
25381        tree_store: *mut GtkTreeStore,
25382        iter: *mut GtkTreeIter,
25383        columns: *mut c_int,
25384        values: *mut gobject::GValue,
25385        n_values: c_int,
25386    );
25387    pub fn gtk_tree_store_swap(
25388        tree_store: *mut GtkTreeStore,
25389        a: *mut GtkTreeIter,
25390        b: *mut GtkTreeIter,
25391    );
25392
25393    //=========================================================================
25394    // GtkTreeView
25395    //=========================================================================
25396    pub fn gtk_tree_view_get_type() -> GType;
25397    pub fn gtk_tree_view_new() -> *mut GtkWidget;
25398    pub fn gtk_tree_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
25399    pub fn gtk_tree_view_append_column(
25400        tree_view: *mut GtkTreeView,
25401        column: *mut GtkTreeViewColumn,
25402    ) -> c_int;
25403    pub fn gtk_tree_view_collapse_all(tree_view: *mut GtkTreeView);
25404    pub fn gtk_tree_view_collapse_row(
25405        tree_view: *mut GtkTreeView,
25406        path: *mut GtkTreePath,
25407    ) -> gboolean;
25408    pub fn gtk_tree_view_columns_autosize(tree_view: *mut GtkTreeView);
25409    pub fn gtk_tree_view_convert_bin_window_to_tree_coords(
25410        tree_view: *mut GtkTreeView,
25411        bx: c_int,
25412        by: c_int,
25413        tx: *mut c_int,
25414        ty: *mut c_int,
25415    );
25416    pub fn gtk_tree_view_convert_bin_window_to_widget_coords(
25417        tree_view: *mut GtkTreeView,
25418        bx: c_int,
25419        by: c_int,
25420        wx: *mut c_int,
25421        wy: *mut c_int,
25422    );
25423    pub fn gtk_tree_view_convert_tree_to_bin_window_coords(
25424        tree_view: *mut GtkTreeView,
25425        tx: c_int,
25426        ty: c_int,
25427        bx: *mut c_int,
25428        by: *mut c_int,
25429    );
25430    pub fn gtk_tree_view_convert_tree_to_widget_coords(
25431        tree_view: *mut GtkTreeView,
25432        tx: c_int,
25433        ty: c_int,
25434        wx: *mut c_int,
25435        wy: *mut c_int,
25436    );
25437    pub fn gtk_tree_view_convert_widget_to_bin_window_coords(
25438        tree_view: *mut GtkTreeView,
25439        wx: c_int,
25440        wy: c_int,
25441        bx: *mut c_int,
25442        by: *mut c_int,
25443    );
25444    pub fn gtk_tree_view_convert_widget_to_tree_coords(
25445        tree_view: *mut GtkTreeView,
25446        wx: c_int,
25447        wy: c_int,
25448        tx: *mut c_int,
25449        ty: *mut c_int,
25450    );
25451    pub fn gtk_tree_view_create_row_drag_icon(
25452        tree_view: *mut GtkTreeView,
25453        path: *mut GtkTreePath,
25454    ) -> *mut cairo::cairo_surface_t;
25455    pub fn gtk_tree_view_enable_model_drag_dest(
25456        tree_view: *mut GtkTreeView,
25457        targets: *const GtkTargetEntry,
25458        n_targets: c_int,
25459        actions: gdk::GdkDragAction,
25460    );
25461    pub fn gtk_tree_view_enable_model_drag_source(
25462        tree_view: *mut GtkTreeView,
25463        start_button_mask: gdk::GdkModifierType,
25464        targets: *const GtkTargetEntry,
25465        n_targets: c_int,
25466        actions: gdk::GdkDragAction,
25467    );
25468    pub fn gtk_tree_view_expand_all(tree_view: *mut GtkTreeView);
25469    pub fn gtk_tree_view_expand_row(
25470        tree_view: *mut GtkTreeView,
25471        path: *mut GtkTreePath,
25472        open_all: gboolean,
25473    ) -> gboolean;
25474    pub fn gtk_tree_view_expand_to_path(tree_view: *mut GtkTreeView, path: *mut GtkTreePath);
25475    pub fn gtk_tree_view_get_activate_on_single_click(tree_view: *mut GtkTreeView) -> gboolean;
25476    pub fn gtk_tree_view_get_background_area(
25477        tree_view: *mut GtkTreeView,
25478        path: *mut GtkTreePath,
25479        column: *mut GtkTreeViewColumn,
25480        rect: *mut gdk::GdkRectangle,
25481    );
25482    pub fn gtk_tree_view_get_bin_window(tree_view: *mut GtkTreeView) -> *mut gdk::GdkWindow;
25483    pub fn gtk_tree_view_get_cell_area(
25484        tree_view: *mut GtkTreeView,
25485        path: *mut GtkTreePath,
25486        column: *mut GtkTreeViewColumn,
25487        rect: *mut gdk::GdkRectangle,
25488    );
25489    pub fn gtk_tree_view_get_column(
25490        tree_view: *mut GtkTreeView,
25491        n: c_int,
25492    ) -> *mut GtkTreeViewColumn;
25493    pub fn gtk_tree_view_get_columns(tree_view: *mut GtkTreeView) -> *mut glib::GList;
25494    pub fn gtk_tree_view_get_cursor(
25495        tree_view: *mut GtkTreeView,
25496        path: *mut *mut GtkTreePath,
25497        focus_column: *mut *mut GtkTreeViewColumn,
25498    );
25499    pub fn gtk_tree_view_get_dest_row_at_pos(
25500        tree_view: *mut GtkTreeView,
25501        drag_x: c_int,
25502        drag_y: c_int,
25503        path: *mut *mut GtkTreePath,
25504        pos: *mut GtkTreeViewDropPosition,
25505    ) -> gboolean;
25506    pub fn gtk_tree_view_get_drag_dest_row(
25507        tree_view: *mut GtkTreeView,
25508        path: *mut *mut GtkTreePath,
25509        pos: *mut GtkTreeViewDropPosition,
25510    );
25511    pub fn gtk_tree_view_get_enable_search(tree_view: *mut GtkTreeView) -> gboolean;
25512    pub fn gtk_tree_view_get_enable_tree_lines(tree_view: *mut GtkTreeView) -> gboolean;
25513    pub fn gtk_tree_view_get_expander_column(tree_view: *mut GtkTreeView)
25514    -> *mut GtkTreeViewColumn;
25515    pub fn gtk_tree_view_get_fixed_height_mode(tree_view: *mut GtkTreeView) -> gboolean;
25516    pub fn gtk_tree_view_get_grid_lines(tree_view: *mut GtkTreeView) -> GtkTreeViewGridLines;
25517    pub fn gtk_tree_view_get_hadjustment(tree_view: *mut GtkTreeView) -> *mut GtkAdjustment;
25518    pub fn gtk_tree_view_get_headers_clickable(tree_view: *mut GtkTreeView) -> gboolean;
25519    pub fn gtk_tree_view_get_headers_visible(tree_view: *mut GtkTreeView) -> gboolean;
25520    pub fn gtk_tree_view_get_hover_expand(tree_view: *mut GtkTreeView) -> gboolean;
25521    pub fn gtk_tree_view_get_hover_selection(tree_view: *mut GtkTreeView) -> gboolean;
25522    pub fn gtk_tree_view_get_level_indentation(tree_view: *mut GtkTreeView) -> c_int;
25523    pub fn gtk_tree_view_get_model(tree_view: *mut GtkTreeView) -> *mut GtkTreeModel;
25524    pub fn gtk_tree_view_get_n_columns(tree_view: *mut GtkTreeView) -> c_uint;
25525    pub fn gtk_tree_view_get_path_at_pos(
25526        tree_view: *mut GtkTreeView,
25527        x: c_int,
25528        y: c_int,
25529        path: *mut *mut GtkTreePath,
25530        column: *mut *mut GtkTreeViewColumn,
25531        cell_x: *mut c_int,
25532        cell_y: *mut c_int,
25533    ) -> gboolean;
25534    pub fn gtk_tree_view_get_reorderable(tree_view: *mut GtkTreeView) -> gboolean;
25535    pub fn gtk_tree_view_get_row_separator_func(
25536        tree_view: *mut GtkTreeView,
25537    ) -> GtkTreeViewRowSeparatorFunc;
25538    pub fn gtk_tree_view_get_rubber_banding(tree_view: *mut GtkTreeView) -> gboolean;
25539    pub fn gtk_tree_view_get_rules_hint(tree_view: *mut GtkTreeView) -> gboolean;
25540    pub fn gtk_tree_view_get_search_column(tree_view: *mut GtkTreeView) -> c_int;
25541    pub fn gtk_tree_view_get_search_entry(tree_view: *mut GtkTreeView) -> *mut GtkEntry;
25542    pub fn gtk_tree_view_get_search_equal_func(
25543        tree_view: *mut GtkTreeView,
25544    ) -> GtkTreeViewSearchEqualFunc;
25545    pub fn gtk_tree_view_get_search_position_func(
25546        tree_view: *mut GtkTreeView,
25547    ) -> GtkTreeViewSearchPositionFunc;
25548    pub fn gtk_tree_view_get_selection(tree_view: *mut GtkTreeView) -> *mut GtkTreeSelection;
25549    pub fn gtk_tree_view_get_show_expanders(tree_view: *mut GtkTreeView) -> gboolean;
25550    pub fn gtk_tree_view_get_tooltip_column(tree_view: *mut GtkTreeView) -> c_int;
25551    pub fn gtk_tree_view_get_tooltip_context(
25552        tree_view: *mut GtkTreeView,
25553        x: *mut c_int,
25554        y: *mut c_int,
25555        keyboard_tip: gboolean,
25556        model: *mut *mut GtkTreeModel,
25557        path: *mut *mut GtkTreePath,
25558        iter: *mut GtkTreeIter,
25559    ) -> gboolean;
25560    pub fn gtk_tree_view_get_vadjustment(tree_view: *mut GtkTreeView) -> *mut GtkAdjustment;
25561    pub fn gtk_tree_view_get_visible_range(
25562        tree_view: *mut GtkTreeView,
25563        start_path: *mut *mut GtkTreePath,
25564        end_path: *mut *mut GtkTreePath,
25565    ) -> gboolean;
25566    pub fn gtk_tree_view_get_visible_rect(
25567        tree_view: *mut GtkTreeView,
25568        visible_rect: *mut gdk::GdkRectangle,
25569    );
25570    pub fn gtk_tree_view_insert_column(
25571        tree_view: *mut GtkTreeView,
25572        column: *mut GtkTreeViewColumn,
25573        position: c_int,
25574    ) -> c_int;
25575    pub fn gtk_tree_view_insert_column_with_attributes(
25576        tree_view: *mut GtkTreeView,
25577        position: c_int,
25578        title: *const c_char,
25579        cell: *mut GtkCellRenderer,
25580        ...
25581    ) -> c_int;
25582    pub fn gtk_tree_view_insert_column_with_data_func(
25583        tree_view: *mut GtkTreeView,
25584        position: c_int,
25585        title: *const c_char,
25586        cell: *mut GtkCellRenderer,
25587        func: GtkTreeCellDataFunc,
25588        data: gpointer,
25589        dnotify: glib::GDestroyNotify,
25590    ) -> c_int;
25591    pub fn gtk_tree_view_is_blank_at_pos(
25592        tree_view: *mut GtkTreeView,
25593        x: c_int,
25594        y: c_int,
25595        path: *mut *mut GtkTreePath,
25596        column: *mut *mut GtkTreeViewColumn,
25597        cell_x: *mut c_int,
25598        cell_y: *mut c_int,
25599    ) -> gboolean;
25600    pub fn gtk_tree_view_is_rubber_banding_active(tree_view: *mut GtkTreeView) -> gboolean;
25601    pub fn gtk_tree_view_map_expanded_rows(
25602        tree_view: *mut GtkTreeView,
25603        func: GtkTreeViewMappingFunc,
25604        data: gpointer,
25605    );
25606    pub fn gtk_tree_view_move_column_after(
25607        tree_view: *mut GtkTreeView,
25608        column: *mut GtkTreeViewColumn,
25609        base_column: *mut GtkTreeViewColumn,
25610    );
25611    pub fn gtk_tree_view_remove_column(
25612        tree_view: *mut GtkTreeView,
25613        column: *mut GtkTreeViewColumn,
25614    ) -> c_int;
25615    pub fn gtk_tree_view_row_activated(
25616        tree_view: *mut GtkTreeView,
25617        path: *mut GtkTreePath,
25618        column: *mut GtkTreeViewColumn,
25619    );
25620    pub fn gtk_tree_view_row_expanded(
25621        tree_view: *mut GtkTreeView,
25622        path: *mut GtkTreePath,
25623    ) -> gboolean;
25624    pub fn gtk_tree_view_scroll_to_cell(
25625        tree_view: *mut GtkTreeView,
25626        path: *mut GtkTreePath,
25627        column: *mut GtkTreeViewColumn,
25628        use_align: gboolean,
25629        row_align: c_float,
25630        col_align: c_float,
25631    );
25632    pub fn gtk_tree_view_scroll_to_point(tree_view: *mut GtkTreeView, tree_x: c_int, tree_y: c_int);
25633    pub fn gtk_tree_view_set_activate_on_single_click(
25634        tree_view: *mut GtkTreeView,
25635        single: gboolean,
25636    );
25637    pub fn gtk_tree_view_set_column_drag_function(
25638        tree_view: *mut GtkTreeView,
25639        func: GtkTreeViewColumnDropFunc,
25640        user_data: gpointer,
25641        destroy: glib::GDestroyNotify,
25642    );
25643    pub fn gtk_tree_view_set_cursor(
25644        tree_view: *mut GtkTreeView,
25645        path: *mut GtkTreePath,
25646        focus_column: *mut GtkTreeViewColumn,
25647        start_editing: gboolean,
25648    );
25649    pub fn gtk_tree_view_set_cursor_on_cell(
25650        tree_view: *mut GtkTreeView,
25651        path: *mut GtkTreePath,
25652        focus_column: *mut GtkTreeViewColumn,
25653        focus_cell: *mut GtkCellRenderer,
25654        start_editing: gboolean,
25655    );
25656    pub fn gtk_tree_view_set_destroy_count_func(
25657        tree_view: *mut GtkTreeView,
25658        func: GtkTreeDestroyCountFunc,
25659        data: gpointer,
25660        destroy: glib::GDestroyNotify,
25661    );
25662    pub fn gtk_tree_view_set_drag_dest_row(
25663        tree_view: *mut GtkTreeView,
25664        path: *mut GtkTreePath,
25665        pos: GtkTreeViewDropPosition,
25666    );
25667    pub fn gtk_tree_view_set_enable_search(tree_view: *mut GtkTreeView, enable_search: gboolean);
25668    pub fn gtk_tree_view_set_enable_tree_lines(tree_view: *mut GtkTreeView, enabled: gboolean);
25669    pub fn gtk_tree_view_set_expander_column(
25670        tree_view: *mut GtkTreeView,
25671        column: *mut GtkTreeViewColumn,
25672    );
25673    pub fn gtk_tree_view_set_fixed_height_mode(tree_view: *mut GtkTreeView, enable: gboolean);
25674    pub fn gtk_tree_view_set_grid_lines(
25675        tree_view: *mut GtkTreeView,
25676        grid_lines: GtkTreeViewGridLines,
25677    );
25678    pub fn gtk_tree_view_set_hadjustment(
25679        tree_view: *mut GtkTreeView,
25680        adjustment: *mut GtkAdjustment,
25681    );
25682    pub fn gtk_tree_view_set_headers_clickable(tree_view: *mut GtkTreeView, setting: gboolean);
25683    pub fn gtk_tree_view_set_headers_visible(
25684        tree_view: *mut GtkTreeView,
25685        headers_visible: gboolean,
25686    );
25687    pub fn gtk_tree_view_set_hover_expand(tree_view: *mut GtkTreeView, expand: gboolean);
25688    pub fn gtk_tree_view_set_hover_selection(tree_view: *mut GtkTreeView, hover: gboolean);
25689    pub fn gtk_tree_view_set_level_indentation(tree_view: *mut GtkTreeView, indentation: c_int);
25690    pub fn gtk_tree_view_set_model(tree_view: *mut GtkTreeView, model: *mut GtkTreeModel);
25691    pub fn gtk_tree_view_set_reorderable(tree_view: *mut GtkTreeView, reorderable: gboolean);
25692    pub fn gtk_tree_view_set_row_separator_func(
25693        tree_view: *mut GtkTreeView,
25694        func: GtkTreeViewRowSeparatorFunc,
25695        data: gpointer,
25696        destroy: glib::GDestroyNotify,
25697    );
25698    pub fn gtk_tree_view_set_rubber_banding(tree_view: *mut GtkTreeView, enable: gboolean);
25699    pub fn gtk_tree_view_set_rules_hint(tree_view: *mut GtkTreeView, setting: gboolean);
25700    pub fn gtk_tree_view_set_search_column(tree_view: *mut GtkTreeView, column: c_int);
25701    pub fn gtk_tree_view_set_search_entry(tree_view: *mut GtkTreeView, entry: *mut GtkEntry);
25702    pub fn gtk_tree_view_set_search_equal_func(
25703        tree_view: *mut GtkTreeView,
25704        search_equal_func: GtkTreeViewSearchEqualFunc,
25705        search_user_data: gpointer,
25706        search_destroy: glib::GDestroyNotify,
25707    );
25708    pub fn gtk_tree_view_set_search_position_func(
25709        tree_view: *mut GtkTreeView,
25710        func: GtkTreeViewSearchPositionFunc,
25711        data: gpointer,
25712        destroy: glib::GDestroyNotify,
25713    );
25714    pub fn gtk_tree_view_set_show_expanders(tree_view: *mut GtkTreeView, enabled: gboolean);
25715    pub fn gtk_tree_view_set_tooltip_cell(
25716        tree_view: *mut GtkTreeView,
25717        tooltip: *mut GtkTooltip,
25718        path: *mut GtkTreePath,
25719        column: *mut GtkTreeViewColumn,
25720        cell: *mut GtkCellRenderer,
25721    );
25722    pub fn gtk_tree_view_set_tooltip_column(tree_view: *mut GtkTreeView, column: c_int);
25723    pub fn gtk_tree_view_set_tooltip_row(
25724        tree_view: *mut GtkTreeView,
25725        tooltip: *mut GtkTooltip,
25726        path: *mut GtkTreePath,
25727    );
25728    pub fn gtk_tree_view_set_vadjustment(
25729        tree_view: *mut GtkTreeView,
25730        adjustment: *mut GtkAdjustment,
25731    );
25732    pub fn gtk_tree_view_unset_rows_drag_dest(tree_view: *mut GtkTreeView);
25733    pub fn gtk_tree_view_unset_rows_drag_source(tree_view: *mut GtkTreeView);
25734
25735    //=========================================================================
25736    // GtkTreeViewAccessible
25737    //=========================================================================
25738    pub fn gtk_tree_view_accessible_get_type() -> GType;
25739
25740    //=========================================================================
25741    // GtkTreeViewColumn
25742    //=========================================================================
25743    pub fn gtk_tree_view_column_get_type() -> GType;
25744    pub fn gtk_tree_view_column_new() -> *mut GtkTreeViewColumn;
25745    pub fn gtk_tree_view_column_new_with_area(area: *mut GtkCellArea) -> *mut GtkTreeViewColumn;
25746    pub fn gtk_tree_view_column_new_with_attributes(
25747        title: *const c_char,
25748        cell: *mut GtkCellRenderer,
25749        ...
25750    ) -> *mut GtkTreeViewColumn;
25751    pub fn gtk_tree_view_column_add_attribute(
25752        tree_column: *mut GtkTreeViewColumn,
25753        cell_renderer: *mut GtkCellRenderer,
25754        attribute: *const c_char,
25755        column: c_int,
25756    );
25757    pub fn gtk_tree_view_column_cell_get_position(
25758        tree_column: *mut GtkTreeViewColumn,
25759        cell_renderer: *mut GtkCellRenderer,
25760        x_offset: *mut c_int,
25761        width: *mut c_int,
25762    ) -> gboolean;
25763    pub fn gtk_tree_view_column_cell_get_size(
25764        tree_column: *mut GtkTreeViewColumn,
25765        cell_area: *const gdk::GdkRectangle,
25766        x_offset: *mut c_int,
25767        y_offset: *mut c_int,
25768        width: *mut c_int,
25769        height: *mut c_int,
25770    );
25771    pub fn gtk_tree_view_column_cell_is_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
25772    pub fn gtk_tree_view_column_cell_set_cell_data(
25773        tree_column: *mut GtkTreeViewColumn,
25774        tree_model: *mut GtkTreeModel,
25775        iter: *mut GtkTreeIter,
25776        is_expander: gboolean,
25777        is_expanded: gboolean,
25778    );
25779    pub fn gtk_tree_view_column_clear(tree_column: *mut GtkTreeViewColumn);
25780    pub fn gtk_tree_view_column_clear_attributes(
25781        tree_column: *mut GtkTreeViewColumn,
25782        cell_renderer: *mut GtkCellRenderer,
25783    );
25784    pub fn gtk_tree_view_column_clicked(tree_column: *mut GtkTreeViewColumn);
25785    pub fn gtk_tree_view_column_focus_cell(
25786        tree_column: *mut GtkTreeViewColumn,
25787        cell: *mut GtkCellRenderer,
25788    );
25789    pub fn gtk_tree_view_column_get_alignment(tree_column: *mut GtkTreeViewColumn) -> c_float;
25790    pub fn gtk_tree_view_column_get_button(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
25791    pub fn gtk_tree_view_column_get_clickable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
25792    pub fn gtk_tree_view_column_get_expand(tree_column: *mut GtkTreeViewColumn) -> gboolean;
25793    pub fn gtk_tree_view_column_get_fixed_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
25794    pub fn gtk_tree_view_column_get_max_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
25795    pub fn gtk_tree_view_column_get_min_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
25796    pub fn gtk_tree_view_column_get_reorderable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
25797    pub fn gtk_tree_view_column_get_resizable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
25798    pub fn gtk_tree_view_column_get_sizing(
25799        tree_column: *mut GtkTreeViewColumn,
25800    ) -> GtkTreeViewColumnSizing;
25801    pub fn gtk_tree_view_column_get_sort_column_id(tree_column: *mut GtkTreeViewColumn) -> c_int;
25802    pub fn gtk_tree_view_column_get_sort_indicator(tree_column: *mut GtkTreeViewColumn)
25803    -> gboolean;
25804    pub fn gtk_tree_view_column_get_sort_order(tree_column: *mut GtkTreeViewColumn) -> GtkSortType;
25805    pub fn gtk_tree_view_column_get_spacing(tree_column: *mut GtkTreeViewColumn) -> c_int;
25806    pub fn gtk_tree_view_column_get_title(tree_column: *mut GtkTreeViewColumn) -> *const c_char;
25807    pub fn gtk_tree_view_column_get_tree_view(
25808        tree_column: *mut GtkTreeViewColumn,
25809    ) -> *mut GtkWidget;
25810    pub fn gtk_tree_view_column_get_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
25811    pub fn gtk_tree_view_column_get_widget(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
25812    pub fn gtk_tree_view_column_get_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
25813    pub fn gtk_tree_view_column_get_x_offset(tree_column: *mut GtkTreeViewColumn) -> c_int;
25814    pub fn gtk_tree_view_column_pack_end(
25815        tree_column: *mut GtkTreeViewColumn,
25816        cell: *mut GtkCellRenderer,
25817        expand: gboolean,
25818    );
25819    pub fn gtk_tree_view_column_pack_start(
25820        tree_column: *mut GtkTreeViewColumn,
25821        cell: *mut GtkCellRenderer,
25822        expand: gboolean,
25823    );
25824    pub fn gtk_tree_view_column_queue_resize(tree_column: *mut GtkTreeViewColumn);
25825    pub fn gtk_tree_view_column_set_alignment(tree_column: *mut GtkTreeViewColumn, xalign: c_float);
25826    pub fn gtk_tree_view_column_set_attributes(
25827        tree_column: *mut GtkTreeViewColumn,
25828        cell_renderer: *mut GtkCellRenderer,
25829        ...
25830    );
25831    pub fn gtk_tree_view_column_set_cell_data_func(
25832        tree_column: *mut GtkTreeViewColumn,
25833        cell_renderer: *mut GtkCellRenderer,
25834        func: GtkTreeCellDataFunc,
25835        func_data: gpointer,
25836        destroy: glib::GDestroyNotify,
25837    );
25838    pub fn gtk_tree_view_column_set_clickable(
25839        tree_column: *mut GtkTreeViewColumn,
25840        clickable: gboolean,
25841    );
25842    pub fn gtk_tree_view_column_set_expand(tree_column: *mut GtkTreeViewColumn, expand: gboolean);
25843    pub fn gtk_tree_view_column_set_fixed_width(
25844        tree_column: *mut GtkTreeViewColumn,
25845        fixed_width: c_int,
25846    );
25847    pub fn gtk_tree_view_column_set_max_width(
25848        tree_column: *mut GtkTreeViewColumn,
25849        max_width: c_int,
25850    );
25851    pub fn gtk_tree_view_column_set_min_width(
25852        tree_column: *mut GtkTreeViewColumn,
25853        min_width: c_int,
25854    );
25855    pub fn gtk_tree_view_column_set_reorderable(
25856        tree_column: *mut GtkTreeViewColumn,
25857        reorderable: gboolean,
25858    );
25859    pub fn gtk_tree_view_column_set_resizable(
25860        tree_column: *mut GtkTreeViewColumn,
25861        resizable: gboolean,
25862    );
25863    pub fn gtk_tree_view_column_set_sizing(
25864        tree_column: *mut GtkTreeViewColumn,
25865        type_: GtkTreeViewColumnSizing,
25866    );
25867    pub fn gtk_tree_view_column_set_sort_column_id(
25868        tree_column: *mut GtkTreeViewColumn,
25869        sort_column_id: c_int,
25870    );
25871    pub fn gtk_tree_view_column_set_sort_indicator(
25872        tree_column: *mut GtkTreeViewColumn,
25873        setting: gboolean,
25874    );
25875    pub fn gtk_tree_view_column_set_sort_order(
25876        tree_column: *mut GtkTreeViewColumn,
25877        order: GtkSortType,
25878    );
25879    pub fn gtk_tree_view_column_set_spacing(tree_column: *mut GtkTreeViewColumn, spacing: c_int);
25880    pub fn gtk_tree_view_column_set_title(
25881        tree_column: *mut GtkTreeViewColumn,
25882        title: *const c_char,
25883    );
25884    pub fn gtk_tree_view_column_set_visible(tree_column: *mut GtkTreeViewColumn, visible: gboolean);
25885    pub fn gtk_tree_view_column_set_widget(
25886        tree_column: *mut GtkTreeViewColumn,
25887        widget: *mut GtkWidget,
25888    );
25889
25890    //=========================================================================
25891    // GtkUIManager
25892    //=========================================================================
25893    pub fn gtk_ui_manager_get_type() -> GType;
25894    pub fn gtk_ui_manager_new() -> *mut GtkUIManager;
25895    pub fn gtk_ui_manager_add_ui(
25896        manager: *mut GtkUIManager,
25897        merge_id: c_uint,
25898        path: *const c_char,
25899        name: *const c_char,
25900        action: *const c_char,
25901        type_: GtkUIManagerItemType,
25902        top: gboolean,
25903    );
25904    pub fn gtk_ui_manager_add_ui_from_file(
25905        manager: *mut GtkUIManager,
25906        filename: *const c_char,
25907        error: *mut *mut glib::GError,
25908    ) -> c_uint;
25909    pub fn gtk_ui_manager_add_ui_from_resource(
25910        manager: *mut GtkUIManager,
25911        resource_path: *const c_char,
25912        error: *mut *mut glib::GError,
25913    ) -> c_uint;
25914    pub fn gtk_ui_manager_add_ui_from_string(
25915        manager: *mut GtkUIManager,
25916        buffer: *const c_char,
25917        length: ssize_t,
25918        error: *mut *mut glib::GError,
25919    ) -> c_uint;
25920    pub fn gtk_ui_manager_ensure_update(manager: *mut GtkUIManager);
25921    pub fn gtk_ui_manager_get_accel_group(manager: *mut GtkUIManager) -> *mut GtkAccelGroup;
25922    pub fn gtk_ui_manager_get_action(
25923        manager: *mut GtkUIManager,
25924        path: *const c_char,
25925    ) -> *mut GtkAction;
25926    pub fn gtk_ui_manager_get_action_groups(manager: *mut GtkUIManager) -> *mut glib::GList;
25927    pub fn gtk_ui_manager_get_add_tearoffs(manager: *mut GtkUIManager) -> gboolean;
25928    pub fn gtk_ui_manager_get_toplevels(
25929        manager: *mut GtkUIManager,
25930        types: GtkUIManagerItemType,
25931    ) -> *mut glib::GSList;
25932    pub fn gtk_ui_manager_get_ui(manager: *mut GtkUIManager) -> *mut c_char;
25933    pub fn gtk_ui_manager_get_widget(
25934        manager: *mut GtkUIManager,
25935        path: *const c_char,
25936    ) -> *mut GtkWidget;
25937    pub fn gtk_ui_manager_insert_action_group(
25938        manager: *mut GtkUIManager,
25939        action_group: *mut GtkActionGroup,
25940        pos: c_int,
25941    );
25942    pub fn gtk_ui_manager_new_merge_id(manager: *mut GtkUIManager) -> c_uint;
25943    pub fn gtk_ui_manager_remove_action_group(
25944        manager: *mut GtkUIManager,
25945        action_group: *mut GtkActionGroup,
25946    );
25947    pub fn gtk_ui_manager_remove_ui(manager: *mut GtkUIManager, merge_id: c_uint);
25948    pub fn gtk_ui_manager_set_add_tearoffs(manager: *mut GtkUIManager, add_tearoffs: gboolean);
25949
25950    //=========================================================================
25951    // GtkVBox
25952    //=========================================================================
25953    pub fn gtk_vbox_get_type() -> GType;
25954    pub fn gtk_vbox_new(homogeneous: gboolean, spacing: c_int) -> *mut GtkWidget;
25955
25956    //=========================================================================
25957    // GtkVButtonBox
25958    //=========================================================================
25959    pub fn gtk_vbutton_box_get_type() -> GType;
25960    pub fn gtk_vbutton_box_new() -> *mut GtkWidget;
25961
25962    //=========================================================================
25963    // GtkVPaned
25964    //=========================================================================
25965    pub fn gtk_vpaned_get_type() -> GType;
25966    pub fn gtk_vpaned_new() -> *mut GtkWidget;
25967
25968    //=========================================================================
25969    // GtkVScale
25970    //=========================================================================
25971    pub fn gtk_vscale_get_type() -> GType;
25972    pub fn gtk_vscale_new(adjustment: *mut GtkAdjustment) -> *mut GtkWidget;
25973    pub fn gtk_vscale_new_with_range(
25974        min: c_double,
25975        max: c_double,
25976        step: c_double,
25977    ) -> *mut GtkWidget;
25978
25979    //=========================================================================
25980    // GtkVScrollbar
25981    //=========================================================================
25982    pub fn gtk_vscrollbar_get_type() -> GType;
25983    pub fn gtk_vscrollbar_new(adjustment: *mut GtkAdjustment) -> *mut GtkWidget;
25984
25985    //=========================================================================
25986    // GtkVSeparator
25987    //=========================================================================
25988    pub fn gtk_vseparator_get_type() -> GType;
25989    pub fn gtk_vseparator_new() -> *mut GtkWidget;
25990
25991    //=========================================================================
25992    // GtkViewport
25993    //=========================================================================
25994    pub fn gtk_viewport_get_type() -> GType;
25995    pub fn gtk_viewport_new(
25996        hadjustment: *mut GtkAdjustment,
25997        vadjustment: *mut GtkAdjustment,
25998    ) -> *mut GtkWidget;
25999    pub fn gtk_viewport_get_bin_window(viewport: *mut GtkViewport) -> *mut gdk::GdkWindow;
26000    pub fn gtk_viewport_get_hadjustment(viewport: *mut GtkViewport) -> *mut GtkAdjustment;
26001    pub fn gtk_viewport_get_shadow_type(viewport: *mut GtkViewport) -> GtkShadowType;
26002    pub fn gtk_viewport_get_vadjustment(viewport: *mut GtkViewport) -> *mut GtkAdjustment;
26003    pub fn gtk_viewport_get_view_window(viewport: *mut GtkViewport) -> *mut gdk::GdkWindow;
26004    pub fn gtk_viewport_set_hadjustment(viewport: *mut GtkViewport, adjustment: *mut GtkAdjustment);
26005    pub fn gtk_viewport_set_shadow_type(viewport: *mut GtkViewport, type_: GtkShadowType);
26006    pub fn gtk_viewport_set_vadjustment(viewport: *mut GtkViewport, adjustment: *mut GtkAdjustment);
26007
26008    //=========================================================================
26009    // GtkVolumeButton
26010    //=========================================================================
26011    pub fn gtk_volume_button_get_type() -> GType;
26012    pub fn gtk_volume_button_new() -> *mut GtkWidget;
26013
26014    //=========================================================================
26015    // GtkWidget
26016    //=========================================================================
26017    pub fn gtk_widget_get_type() -> GType;
26018    pub fn gtk_widget_new(type_: GType, first_property_name: *const c_char, ...) -> *mut GtkWidget;
26019    pub fn gtk_widget_get_default_direction() -> GtkTextDirection;
26020    pub fn gtk_widget_get_default_style() -> *mut GtkStyle;
26021    pub fn gtk_widget_pop_composite_child();
26022    pub fn gtk_widget_push_composite_child();
26023    pub fn gtk_widget_set_default_direction(dir: GtkTextDirection);
26024    pub fn gtk_widget_activate(widget: *mut GtkWidget) -> gboolean;
26025    pub fn gtk_widget_add_accelerator(
26026        widget: *mut GtkWidget,
26027        accel_signal: *const c_char,
26028        accel_group: *mut GtkAccelGroup,
26029        accel_key: c_uint,
26030        accel_mods: gdk::GdkModifierType,
26031        accel_flags: GtkAccelFlags,
26032    );
26033    pub fn gtk_widget_add_device_events(
26034        widget: *mut GtkWidget,
26035        device: *mut gdk::GdkDevice,
26036        events: gdk::GdkEventMask,
26037    );
26038    pub fn gtk_widget_add_events(widget: *mut GtkWidget, events: c_int);
26039    pub fn gtk_widget_add_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
26040    pub fn gtk_widget_add_tick_callback(
26041        widget: *mut GtkWidget,
26042        callback: GtkTickCallback,
26043        user_data: gpointer,
26044        notify: glib::GDestroyNotify,
26045    ) -> c_uint;
26046    pub fn gtk_widget_can_activate_accel(widget: *mut GtkWidget, signal_id: c_uint) -> gboolean;
26047    pub fn gtk_widget_child_focus(widget: *mut GtkWidget, direction: GtkDirectionType) -> gboolean;
26048    pub fn gtk_widget_child_notify(widget: *mut GtkWidget, child_property: *const c_char);
26049    pub fn gtk_widget_class_path(
26050        widget: *mut GtkWidget,
26051        path_length: *mut c_uint,
26052        path: *mut *mut c_char,
26053        path_reversed: *mut *mut c_char,
26054    );
26055    pub fn gtk_widget_compute_expand(
26056        widget: *mut GtkWidget,
26057        orientation: GtkOrientation,
26058    ) -> gboolean;
26059    pub fn gtk_widget_create_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
26060    pub fn gtk_widget_create_pango_layout(
26061        widget: *mut GtkWidget,
26062        text: *const c_char,
26063    ) -> *mut pango::PangoLayout;
26064    pub fn gtk_widget_destroy(widget: *mut GtkWidget);
26065    pub fn gtk_widget_destroyed(widget: *mut GtkWidget, widget_pointer: *mut *mut GtkWidget);
26066    pub fn gtk_widget_device_is_shadowed(
26067        widget: *mut GtkWidget,
26068        device: *mut gdk::GdkDevice,
26069    ) -> gboolean;
26070    pub fn gtk_drag_begin(
26071        widget: *mut GtkWidget,
26072        targets: *mut GtkTargetList,
26073        actions: gdk::GdkDragAction,
26074        button: c_int,
26075        event: *mut gdk::GdkEvent,
26076    ) -> *mut gdk::GdkDragContext;
26077    pub fn gtk_drag_begin_with_coordinates(
26078        widget: *mut GtkWidget,
26079        targets: *mut GtkTargetList,
26080        actions: gdk::GdkDragAction,
26081        button: c_int,
26082        event: *mut gdk::GdkEvent,
26083        x: c_int,
26084        y: c_int,
26085    ) -> *mut gdk::GdkDragContext;
26086    pub fn gtk_drag_check_threshold(
26087        widget: *mut GtkWidget,
26088        start_x: c_int,
26089        start_y: c_int,
26090        current_x: c_int,
26091        current_y: c_int,
26092    ) -> gboolean;
26093    pub fn gtk_drag_dest_add_image_targets(widget: *mut GtkWidget);
26094    pub fn gtk_drag_dest_add_text_targets(widget: *mut GtkWidget);
26095    pub fn gtk_drag_dest_add_uri_targets(widget: *mut GtkWidget);
26096    pub fn gtk_drag_dest_find_target(
26097        widget: *mut GtkWidget,
26098        context: *mut gdk::GdkDragContext,
26099        target_list: *mut GtkTargetList,
26100    ) -> gdk::GdkAtom;
26101    pub fn gtk_drag_dest_get_target_list(widget: *mut GtkWidget) -> *mut GtkTargetList;
26102    pub fn gtk_drag_dest_get_track_motion(widget: *mut GtkWidget) -> gboolean;
26103    pub fn gtk_drag_dest_set(
26104        widget: *mut GtkWidget,
26105        flags: GtkDestDefaults,
26106        targets: *const GtkTargetEntry,
26107        n_targets: c_int,
26108        actions: gdk::GdkDragAction,
26109    );
26110    pub fn gtk_drag_dest_set_proxy(
26111        widget: *mut GtkWidget,
26112        proxy_window: *mut gdk::GdkWindow,
26113        protocol: gdk::GdkDragProtocol,
26114        use_coordinates: gboolean,
26115    );
26116    pub fn gtk_drag_dest_set_target_list(widget: *mut GtkWidget, target_list: *mut GtkTargetList);
26117    pub fn gtk_drag_dest_set_track_motion(widget: *mut GtkWidget, track_motion: gboolean);
26118    pub fn gtk_drag_dest_unset(widget: *mut GtkWidget);
26119    pub fn gtk_drag_get_data(
26120        widget: *mut GtkWidget,
26121        context: *mut gdk::GdkDragContext,
26122        target: gdk::GdkAtom,
26123        time_: u32,
26124    );
26125    pub fn gtk_drag_highlight(widget: *mut GtkWidget);
26126    pub fn gtk_drag_source_add_image_targets(widget: *mut GtkWidget);
26127    pub fn gtk_drag_source_add_text_targets(widget: *mut GtkWidget);
26128    pub fn gtk_drag_source_add_uri_targets(widget: *mut GtkWidget);
26129    pub fn gtk_drag_source_get_target_list(widget: *mut GtkWidget) -> *mut GtkTargetList;
26130    pub fn gtk_drag_source_set(
26131        widget: *mut GtkWidget,
26132        start_button_mask: gdk::GdkModifierType,
26133        targets: *const GtkTargetEntry,
26134        n_targets: c_int,
26135        actions: gdk::GdkDragAction,
26136    );
26137    pub fn gtk_drag_source_set_icon_gicon(widget: *mut GtkWidget, icon: *mut gio::GIcon);
26138    pub fn gtk_drag_source_set_icon_name(widget: *mut GtkWidget, icon_name: *const c_char);
26139    pub fn gtk_drag_source_set_icon_pixbuf(
26140        widget: *mut GtkWidget,
26141        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
26142    );
26143    pub fn gtk_drag_source_set_icon_stock(widget: *mut GtkWidget, stock_id: *const c_char);
26144    pub fn gtk_drag_source_set_target_list(widget: *mut GtkWidget, target_list: *mut GtkTargetList);
26145    pub fn gtk_drag_source_unset(widget: *mut GtkWidget);
26146    pub fn gtk_drag_unhighlight(widget: *mut GtkWidget);
26147    pub fn gtk_widget_draw(widget: *mut GtkWidget, cr: *mut cairo::cairo_t);
26148    pub fn gtk_widget_ensure_style(widget: *mut GtkWidget);
26149    pub fn gtk_widget_error_bell(widget: *mut GtkWidget);
26150    pub fn gtk_widget_event(widget: *mut GtkWidget, event: *mut gdk::GdkEvent) -> gboolean;
26151    pub fn gtk_widget_freeze_child_notify(widget: *mut GtkWidget);
26152    pub fn gtk_widget_get_accessible(widget: *mut GtkWidget) -> *mut atk::AtkObject;
26153    pub fn gtk_widget_get_action_group(
26154        widget: *mut GtkWidget,
26155        prefix: *const c_char,
26156    ) -> *mut gio::GActionGroup;
26157    pub fn gtk_widget_get_allocated_baseline(widget: *mut GtkWidget) -> c_int;
26158    pub fn gtk_widget_get_allocated_height(widget: *mut GtkWidget) -> c_int;
26159    pub fn gtk_widget_get_allocated_size(
26160        widget: *mut GtkWidget,
26161        allocation: *mut GtkAllocation,
26162        baseline: *mut c_int,
26163    );
26164    pub fn gtk_widget_get_allocated_width(widget: *mut GtkWidget) -> c_int;
26165    pub fn gtk_widget_get_allocation(widget: *mut GtkWidget, allocation: *mut GtkAllocation);
26166    pub fn gtk_widget_get_ancestor(widget: *mut GtkWidget, widget_type: GType) -> *mut GtkWidget;
26167    pub fn gtk_widget_get_app_paintable(widget: *mut GtkWidget) -> gboolean;
26168    pub fn gtk_widget_get_can_default(widget: *mut GtkWidget) -> gboolean;
26169    pub fn gtk_widget_get_can_focus(widget: *mut GtkWidget) -> gboolean;
26170    pub fn gtk_widget_get_child_requisition(
26171        widget: *mut GtkWidget,
26172        requisition: *mut GtkRequisition,
26173    );
26174    pub fn gtk_widget_get_child_visible(widget: *mut GtkWidget) -> gboolean;
26175    pub fn gtk_widget_get_clip(widget: *mut GtkWidget, clip: *mut GtkAllocation);
26176    pub fn gtk_widget_get_clipboard(
26177        widget: *mut GtkWidget,
26178        selection: gdk::GdkAtom,
26179    ) -> *mut GtkClipboard;
26180    pub fn gtk_widget_get_composite_name(widget: *mut GtkWidget) -> *mut c_char;
26181    pub fn gtk_widget_get_device_enabled(
26182        widget: *mut GtkWidget,
26183        device: *mut gdk::GdkDevice,
26184    ) -> gboolean;
26185    pub fn gtk_widget_get_device_events(
26186        widget: *mut GtkWidget,
26187        device: *mut gdk::GdkDevice,
26188    ) -> gdk::GdkEventMask;
26189    pub fn gtk_widget_get_direction(widget: *mut GtkWidget) -> GtkTextDirection;
26190    pub fn gtk_widget_get_display(widget: *mut GtkWidget) -> *mut gdk::GdkDisplay;
26191    pub fn gtk_widget_get_double_buffered(widget: *mut GtkWidget) -> gboolean;
26192    pub fn gtk_widget_get_events(widget: *mut GtkWidget) -> c_int;
26193    pub fn gtk_widget_get_focus_on_click(widget: *mut GtkWidget) -> gboolean;
26194    pub fn gtk_widget_get_font_map(widget: *mut GtkWidget) -> *mut pango::PangoFontMap;
26195    pub fn gtk_widget_get_font_options(
26196        widget: *mut GtkWidget,
26197    ) -> *const cairo::cairo_font_options_t;
26198    pub fn gtk_widget_get_frame_clock(widget: *mut GtkWidget) -> *mut gdk::GdkFrameClock;
26199    pub fn gtk_widget_get_halign(widget: *mut GtkWidget) -> GtkAlign;
26200    pub fn gtk_widget_get_has_tooltip(widget: *mut GtkWidget) -> gboolean;
26201    pub fn gtk_widget_get_has_window(widget: *mut GtkWidget) -> gboolean;
26202    pub fn gtk_widget_get_hexpand(widget: *mut GtkWidget) -> gboolean;
26203    pub fn gtk_widget_get_hexpand_set(widget: *mut GtkWidget) -> gboolean;
26204    pub fn gtk_widget_get_mapped(widget: *mut GtkWidget) -> gboolean;
26205    pub fn gtk_widget_get_margin_bottom(widget: *mut GtkWidget) -> c_int;
26206    pub fn gtk_widget_get_margin_end(widget: *mut GtkWidget) -> c_int;
26207    pub fn gtk_widget_get_margin_left(widget: *mut GtkWidget) -> c_int;
26208    pub fn gtk_widget_get_margin_right(widget: *mut GtkWidget) -> c_int;
26209    pub fn gtk_widget_get_margin_start(widget: *mut GtkWidget) -> c_int;
26210    pub fn gtk_widget_get_margin_top(widget: *mut GtkWidget) -> c_int;
26211    pub fn gtk_widget_get_modifier_mask(
26212        widget: *mut GtkWidget,
26213        intent: gdk::GdkModifierIntent,
26214    ) -> gdk::GdkModifierType;
26215    pub fn gtk_widget_get_modifier_style(widget: *mut GtkWidget) -> *mut GtkRcStyle;
26216    pub fn gtk_widget_get_name(widget: *mut GtkWidget) -> *const c_char;
26217    pub fn gtk_widget_get_no_show_all(widget: *mut GtkWidget) -> gboolean;
26218    pub fn gtk_widget_get_opacity(widget: *mut GtkWidget) -> c_double;
26219    pub fn gtk_widget_get_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
26220    pub fn gtk_widget_get_parent(widget: *mut GtkWidget) -> *mut GtkWidget;
26221    pub fn gtk_widget_get_parent_window(widget: *mut GtkWidget) -> *mut gdk::GdkWindow;
26222    pub fn gtk_widget_get_path(widget: *mut GtkWidget) -> *mut GtkWidgetPath;
26223    pub fn gtk_widget_get_pointer(widget: *mut GtkWidget, x: *mut c_int, y: *mut c_int);
26224    pub fn gtk_widget_get_preferred_height(
26225        widget: *mut GtkWidget,
26226        minimum_height: *mut c_int,
26227        natural_height: *mut c_int,
26228    );
26229    pub fn gtk_widget_get_preferred_height_and_baseline_for_width(
26230        widget: *mut GtkWidget,
26231        width: c_int,
26232        minimum_height: *mut c_int,
26233        natural_height: *mut c_int,
26234        minimum_baseline: *mut c_int,
26235        natural_baseline: *mut c_int,
26236    );
26237    pub fn gtk_widget_get_preferred_height_for_width(
26238        widget: *mut GtkWidget,
26239        width: c_int,
26240        minimum_height: *mut c_int,
26241        natural_height: *mut c_int,
26242    );
26243    pub fn gtk_widget_get_preferred_size(
26244        widget: *mut GtkWidget,
26245        minimum_size: *mut GtkRequisition,
26246        natural_size: *mut GtkRequisition,
26247    );
26248    pub fn gtk_widget_get_preferred_width(
26249        widget: *mut GtkWidget,
26250        minimum_width: *mut c_int,
26251        natural_width: *mut c_int,
26252    );
26253    pub fn gtk_widget_get_preferred_width_for_height(
26254        widget: *mut GtkWidget,
26255        height: c_int,
26256        minimum_width: *mut c_int,
26257        natural_width: *mut c_int,
26258    );
26259    pub fn gtk_widget_get_realized(widget: *mut GtkWidget) -> gboolean;
26260    pub fn gtk_widget_get_receives_default(widget: *mut GtkWidget) -> gboolean;
26261    pub fn gtk_widget_get_request_mode(widget: *mut GtkWidget) -> GtkSizeRequestMode;
26262    pub fn gtk_widget_get_requisition(widget: *mut GtkWidget, requisition: *mut GtkRequisition);
26263    pub fn gtk_widget_get_root_window(widget: *mut GtkWidget) -> *mut gdk::GdkWindow;
26264    pub fn gtk_widget_get_scale_factor(widget: *mut GtkWidget) -> c_int;
26265    pub fn gtk_widget_get_screen(widget: *mut GtkWidget) -> *mut gdk::GdkScreen;
26266    pub fn gtk_widget_get_sensitive(widget: *mut GtkWidget) -> gboolean;
26267    pub fn gtk_widget_get_settings(widget: *mut GtkWidget) -> *mut GtkSettings;
26268    pub fn gtk_widget_get_size_request(
26269        widget: *mut GtkWidget,
26270        width: *mut c_int,
26271        height: *mut c_int,
26272    );
26273    pub fn gtk_widget_get_state(widget: *mut GtkWidget) -> GtkStateType;
26274    pub fn gtk_widget_get_state_flags(widget: *mut GtkWidget) -> GtkStateFlags;
26275    pub fn gtk_widget_get_style(widget: *mut GtkWidget) -> *mut GtkStyle;
26276    pub fn gtk_widget_get_style_context(widget: *mut GtkWidget) -> *mut GtkStyleContext;
26277    pub fn gtk_widget_get_support_multidevice(widget: *mut GtkWidget) -> gboolean;
26278    pub fn gtk_widget_get_template_child(
26279        widget: *mut GtkWidget,
26280        widget_type: GType,
26281        name: *const c_char,
26282    ) -> *mut gobject::GObject;
26283    pub fn gtk_widget_get_tooltip_markup(widget: *mut GtkWidget) -> *mut c_char;
26284    pub fn gtk_widget_get_tooltip_text(widget: *mut GtkWidget) -> *mut c_char;
26285    pub fn gtk_widget_get_tooltip_window(widget: *mut GtkWidget) -> *mut GtkWindow;
26286    pub fn gtk_widget_get_toplevel(widget: *mut GtkWidget) -> *mut GtkWidget;
26287    pub fn gtk_widget_get_valign(widget: *mut GtkWidget) -> GtkAlign;
26288    pub fn gtk_widget_get_valign_with_baseline(widget: *mut GtkWidget) -> GtkAlign;
26289    pub fn gtk_widget_get_vexpand(widget: *mut GtkWidget) -> gboolean;
26290    pub fn gtk_widget_get_vexpand_set(widget: *mut GtkWidget) -> gboolean;
26291    pub fn gtk_widget_get_visible(widget: *mut GtkWidget) -> gboolean;
26292    pub fn gtk_widget_get_visual(widget: *mut GtkWidget) -> *mut gdk::GdkVisual;
26293    pub fn gtk_widget_get_window(widget: *mut GtkWidget) -> *mut gdk::GdkWindow;
26294    pub fn gtk_grab_add(widget: *mut GtkWidget);
26295    pub fn gtk_widget_grab_default(widget: *mut GtkWidget);
26296    pub fn gtk_widget_grab_focus(widget: *mut GtkWidget);
26297    pub fn gtk_grab_remove(widget: *mut GtkWidget);
26298    pub fn gtk_widget_has_default(widget: *mut GtkWidget) -> gboolean;
26299    pub fn gtk_widget_has_focus(widget: *mut GtkWidget) -> gboolean;
26300    pub fn gtk_widget_has_grab(widget: *mut GtkWidget) -> gboolean;
26301    pub fn gtk_widget_has_rc_style(widget: *mut GtkWidget) -> gboolean;
26302    pub fn gtk_widget_has_screen(widget: *mut GtkWidget) -> gboolean;
26303    pub fn gtk_widget_has_visible_focus(widget: *mut GtkWidget) -> gboolean;
26304    pub fn gtk_widget_hide(widget: *mut GtkWidget);
26305    pub fn gtk_widget_hide_on_delete(widget: *mut GtkWidget) -> gboolean;
26306    pub fn gtk_widget_in_destruction(widget: *mut GtkWidget) -> gboolean;
26307    pub fn gtk_widget_init_template(widget: *mut GtkWidget);
26308    pub fn gtk_widget_input_shape_combine_region(
26309        widget: *mut GtkWidget,
26310        region: *mut cairo::cairo_region_t,
26311    );
26312    pub fn gtk_widget_insert_action_group(
26313        widget: *mut GtkWidget,
26314        name: *const c_char,
26315        group: *mut gio::GActionGroup,
26316    );
26317    pub fn gtk_widget_intersect(
26318        widget: *mut GtkWidget,
26319        area: *const gdk::GdkRectangle,
26320        intersection: *mut gdk::GdkRectangle,
26321    ) -> gboolean;
26322    pub fn gtk_widget_is_ancestor(widget: *mut GtkWidget, ancestor: *mut GtkWidget) -> gboolean;
26323    pub fn gtk_widget_is_composited(widget: *mut GtkWidget) -> gboolean;
26324    pub fn gtk_widget_is_drawable(widget: *mut GtkWidget) -> gboolean;
26325    pub fn gtk_widget_is_focus(widget: *mut GtkWidget) -> gboolean;
26326    pub fn gtk_widget_is_sensitive(widget: *mut GtkWidget) -> gboolean;
26327    pub fn gtk_widget_is_toplevel(widget: *mut GtkWidget) -> gboolean;
26328    pub fn gtk_widget_is_visible(widget: *mut GtkWidget) -> gboolean;
26329    pub fn gtk_widget_keynav_failed(
26330        widget: *mut GtkWidget,
26331        direction: GtkDirectionType,
26332    ) -> gboolean;
26333    pub fn gtk_widget_list_accel_closures(widget: *mut GtkWidget) -> *mut glib::GList;
26334    pub fn gtk_widget_list_action_prefixes(widget: *mut GtkWidget) -> *mut *const c_char;
26335    pub fn gtk_widget_list_mnemonic_labels(widget: *mut GtkWidget) -> *mut glib::GList;
26336    pub fn gtk_widget_map(widget: *mut GtkWidget);
26337    pub fn gtk_widget_mnemonic_activate(
26338        widget: *mut GtkWidget,
26339        group_cycling: gboolean,
26340    ) -> gboolean;
26341    pub fn gtk_widget_modify_base(
26342        widget: *mut GtkWidget,
26343        state: GtkStateType,
26344        color: *const gdk::GdkColor,
26345    );
26346    pub fn gtk_widget_modify_bg(
26347        widget: *mut GtkWidget,
26348        state: GtkStateType,
26349        color: *const gdk::GdkColor,
26350    );
26351    pub fn gtk_widget_modify_cursor(
26352        widget: *mut GtkWidget,
26353        primary: *const gdk::GdkColor,
26354        secondary: *const gdk::GdkColor,
26355    );
26356    pub fn gtk_widget_modify_fg(
26357        widget: *mut GtkWidget,
26358        state: GtkStateType,
26359        color: *const gdk::GdkColor,
26360    );
26361    pub fn gtk_widget_modify_font(
26362        widget: *mut GtkWidget,
26363        font_desc: *mut pango::PangoFontDescription,
26364    );
26365    pub fn gtk_widget_modify_style(widget: *mut GtkWidget, style: *mut GtkRcStyle);
26366    pub fn gtk_widget_modify_text(
26367        widget: *mut GtkWidget,
26368        state: GtkStateType,
26369        color: *const gdk::GdkColor,
26370    );
26371    pub fn gtk_widget_override_background_color(
26372        widget: *mut GtkWidget,
26373        state: GtkStateFlags,
26374        color: *const gdk::GdkRGBA,
26375    );
26376    pub fn gtk_widget_override_color(
26377        widget: *mut GtkWidget,
26378        state: GtkStateFlags,
26379        color: *const gdk::GdkRGBA,
26380    );
26381    pub fn gtk_widget_override_cursor(
26382        widget: *mut GtkWidget,
26383        cursor: *const gdk::GdkRGBA,
26384        secondary_cursor: *const gdk::GdkRGBA,
26385    );
26386    pub fn gtk_widget_override_font(
26387        widget: *mut GtkWidget,
26388        font_desc: *const pango::PangoFontDescription,
26389    );
26390    pub fn gtk_widget_override_symbolic_color(
26391        widget: *mut GtkWidget,
26392        name: *const c_char,
26393        color: *const gdk::GdkRGBA,
26394    );
26395    pub fn gtk_widget_path(
26396        widget: *mut GtkWidget,
26397        path_length: *mut c_uint,
26398        path: *mut *mut c_char,
26399        path_reversed: *mut *mut c_char,
26400    );
26401    pub fn gtk_widget_queue_allocate(widget: *mut GtkWidget);
26402    pub fn gtk_widget_queue_compute_expand(widget: *mut GtkWidget);
26403    pub fn gtk_widget_queue_draw(widget: *mut GtkWidget);
26404    pub fn gtk_widget_queue_draw_area(
26405        widget: *mut GtkWidget,
26406        x: c_int,
26407        y: c_int,
26408        width: c_int,
26409        height: c_int,
26410    );
26411    pub fn gtk_widget_queue_draw_region(
26412        widget: *mut GtkWidget,
26413        region: *const cairo::cairo_region_t,
26414    );
26415    pub fn gtk_widget_queue_resize(widget: *mut GtkWidget);
26416    pub fn gtk_widget_queue_resize_no_redraw(widget: *mut GtkWidget);
26417    pub fn gtk_widget_realize(widget: *mut GtkWidget);
26418    pub fn gtk_widget_region_intersect(
26419        widget: *mut GtkWidget,
26420        region: *const cairo::cairo_region_t,
26421    ) -> *mut cairo::cairo_region_t;
26422    pub fn gtk_widget_register_window(widget: *mut GtkWidget, window: *mut gdk::GdkWindow);
26423    pub fn gtk_widget_remove_accelerator(
26424        widget: *mut GtkWidget,
26425        accel_group: *mut GtkAccelGroup,
26426        accel_key: c_uint,
26427        accel_mods: gdk::GdkModifierType,
26428    ) -> gboolean;
26429    pub fn gtk_widget_remove_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
26430    pub fn gtk_widget_remove_tick_callback(widget: *mut GtkWidget, id: c_uint);
26431    pub fn gtk_widget_render_icon(
26432        widget: *mut GtkWidget,
26433        stock_id: *const c_char,
26434        size: GtkIconSize,
26435        detail: *const c_char,
26436    ) -> *mut gdk_pixbuf::GdkPixbuf;
26437    pub fn gtk_widget_render_icon_pixbuf(
26438        widget: *mut GtkWidget,
26439        stock_id: *const c_char,
26440        size: GtkIconSize,
26441    ) -> *mut gdk_pixbuf::GdkPixbuf;
26442    pub fn gtk_widget_reparent(widget: *mut GtkWidget, new_parent: *mut GtkWidget);
26443    pub fn gtk_widget_reset_rc_styles(widget: *mut GtkWidget);
26444    pub fn gtk_widget_reset_style(widget: *mut GtkWidget);
26445    pub fn gtk_widget_send_expose(widget: *mut GtkWidget, event: *mut gdk::GdkEvent) -> c_int;
26446    pub fn gtk_widget_send_focus_change(
26447        widget: *mut GtkWidget,
26448        event: *mut gdk::GdkEvent,
26449    ) -> gboolean;
26450    pub fn gtk_widget_set_accel_path(
26451        widget: *mut GtkWidget,
26452        accel_path: *const c_char,
26453        accel_group: *mut GtkAccelGroup,
26454    );
26455    pub fn gtk_widget_set_allocation(widget: *mut GtkWidget, allocation: *const GtkAllocation);
26456    pub fn gtk_widget_set_app_paintable(widget: *mut GtkWidget, app_paintable: gboolean);
26457    pub fn gtk_widget_set_can_default(widget: *mut GtkWidget, can_default: gboolean);
26458    pub fn gtk_widget_set_can_focus(widget: *mut GtkWidget, can_focus: gboolean);
26459    pub fn gtk_widget_set_child_visible(widget: *mut GtkWidget, is_visible: gboolean);
26460    pub fn gtk_widget_set_clip(widget: *mut GtkWidget, clip: *const GtkAllocation);
26461    pub fn gtk_widget_set_composite_name(widget: *mut GtkWidget, name: *const c_char);
26462    pub fn gtk_widget_set_device_enabled(
26463        widget: *mut GtkWidget,
26464        device: *mut gdk::GdkDevice,
26465        enabled: gboolean,
26466    );
26467    pub fn gtk_widget_set_device_events(
26468        widget: *mut GtkWidget,
26469        device: *mut gdk::GdkDevice,
26470        events: gdk::GdkEventMask,
26471    );
26472    pub fn gtk_widget_set_direction(widget: *mut GtkWidget, dir: GtkTextDirection);
26473    pub fn gtk_widget_set_double_buffered(widget: *mut GtkWidget, double_buffered: gboolean);
26474    pub fn gtk_widget_set_events(widget: *mut GtkWidget, events: c_int);
26475    pub fn gtk_widget_set_focus_on_click(widget: *mut GtkWidget, focus_on_click: gboolean);
26476    pub fn gtk_widget_set_font_map(widget: *mut GtkWidget, font_map: *mut pango::PangoFontMap);
26477    pub fn gtk_widget_set_font_options(
26478        widget: *mut GtkWidget,
26479        options: *const cairo::cairo_font_options_t,
26480    );
26481    pub fn gtk_widget_set_halign(widget: *mut GtkWidget, align: GtkAlign);
26482    pub fn gtk_widget_set_has_tooltip(widget: *mut GtkWidget, has_tooltip: gboolean);
26483    pub fn gtk_widget_set_has_window(widget: *mut GtkWidget, has_window: gboolean);
26484    pub fn gtk_widget_set_hexpand(widget: *mut GtkWidget, expand: gboolean);
26485    pub fn gtk_widget_set_hexpand_set(widget: *mut GtkWidget, set: gboolean);
26486    pub fn gtk_widget_set_mapped(widget: *mut GtkWidget, mapped: gboolean);
26487    pub fn gtk_widget_set_margin_bottom(widget: *mut GtkWidget, margin: c_int);
26488    pub fn gtk_widget_set_margin_end(widget: *mut GtkWidget, margin: c_int);
26489    pub fn gtk_widget_set_margin_left(widget: *mut GtkWidget, margin: c_int);
26490    pub fn gtk_widget_set_margin_right(widget: *mut GtkWidget, margin: c_int);
26491    pub fn gtk_widget_set_margin_start(widget: *mut GtkWidget, margin: c_int);
26492    pub fn gtk_widget_set_margin_top(widget: *mut GtkWidget, margin: c_int);
26493    pub fn gtk_widget_set_name(widget: *mut GtkWidget, name: *const c_char);
26494    pub fn gtk_widget_set_no_show_all(widget: *mut GtkWidget, no_show_all: gboolean);
26495    pub fn gtk_widget_set_opacity(widget: *mut GtkWidget, opacity: c_double);
26496    pub fn gtk_widget_set_parent(widget: *mut GtkWidget, parent: *mut GtkWidget);
26497    pub fn gtk_widget_set_parent_window(widget: *mut GtkWidget, parent_window: *mut gdk::GdkWindow);
26498    pub fn gtk_widget_set_realized(widget: *mut GtkWidget, realized: gboolean);
26499    pub fn gtk_widget_set_receives_default(widget: *mut GtkWidget, receives_default: gboolean);
26500    pub fn gtk_widget_set_redraw_on_allocate(widget: *mut GtkWidget, redraw_on_allocate: gboolean);
26501    pub fn gtk_widget_set_sensitive(widget: *mut GtkWidget, sensitive: gboolean);
26502    pub fn gtk_widget_set_size_request(widget: *mut GtkWidget, width: c_int, height: c_int);
26503    pub fn gtk_widget_set_state(widget: *mut GtkWidget, state: GtkStateType);
26504    pub fn gtk_widget_set_state_flags(
26505        widget: *mut GtkWidget,
26506        flags: GtkStateFlags,
26507        clear: gboolean,
26508    );
26509    pub fn gtk_widget_set_style(widget: *mut GtkWidget, style: *mut GtkStyle);
26510    pub fn gtk_widget_set_support_multidevice(
26511        widget: *mut GtkWidget,
26512        support_multidevice: gboolean,
26513    );
26514    pub fn gtk_widget_set_tooltip_markup(widget: *mut GtkWidget, markup: *const c_char);
26515    pub fn gtk_widget_set_tooltip_text(widget: *mut GtkWidget, text: *const c_char);
26516    pub fn gtk_widget_set_tooltip_window(widget: *mut GtkWidget, custom_window: *mut GtkWindow);
26517    pub fn gtk_widget_set_valign(widget: *mut GtkWidget, align: GtkAlign);
26518    pub fn gtk_widget_set_vexpand(widget: *mut GtkWidget, expand: gboolean);
26519    pub fn gtk_widget_set_vexpand_set(widget: *mut GtkWidget, set: gboolean);
26520    pub fn gtk_widget_set_visible(widget: *mut GtkWidget, visible: gboolean);
26521    pub fn gtk_widget_set_visual(widget: *mut GtkWidget, visual: *mut gdk::GdkVisual);
26522    pub fn gtk_widget_set_window(widget: *mut GtkWidget, window: *mut gdk::GdkWindow);
26523    pub fn gtk_widget_shape_combine_region(
26524        widget: *mut GtkWidget,
26525        region: *mut cairo::cairo_region_t,
26526    );
26527    pub fn gtk_widget_show(widget: *mut GtkWidget);
26528    pub fn gtk_widget_show_all(widget: *mut GtkWidget);
26529    pub fn gtk_widget_show_now(widget: *mut GtkWidget);
26530    pub fn gtk_widget_size_allocate(widget: *mut GtkWidget, allocation: *mut GtkAllocation);
26531    pub fn gtk_widget_size_allocate_with_baseline(
26532        widget: *mut GtkWidget,
26533        allocation: *mut GtkAllocation,
26534        baseline: c_int,
26535    );
26536    pub fn gtk_widget_size_request(widget: *mut GtkWidget, requisition: *mut GtkRequisition);
26537    pub fn gtk_widget_style_attach(widget: *mut GtkWidget);
26538    pub fn gtk_widget_style_get(widget: *mut GtkWidget, first_property_name: *const c_char, ...);
26539    pub fn gtk_widget_style_get_property(
26540        widget: *mut GtkWidget,
26541        property_name: *const c_char,
26542        value: *mut gobject::GValue,
26543    );
26544    //pub fn gtk_widget_style_get_valist(widget: *mut GtkWidget, first_property_name: *const c_char, var_args: /*Unimplemented*/va_list);
26545    pub fn gtk_widget_thaw_child_notify(widget: *mut GtkWidget);
26546    pub fn gtk_widget_translate_coordinates(
26547        src_widget: *mut GtkWidget,
26548        dest_widget: *mut GtkWidget,
26549        src_x: c_int,
26550        src_y: c_int,
26551        dest_x: *mut c_int,
26552        dest_y: *mut c_int,
26553    ) -> gboolean;
26554    pub fn gtk_widget_trigger_tooltip_query(widget: *mut GtkWidget);
26555    pub fn gtk_widget_unmap(widget: *mut GtkWidget);
26556    pub fn gtk_widget_unparent(widget: *mut GtkWidget);
26557    pub fn gtk_widget_unrealize(widget: *mut GtkWidget);
26558    pub fn gtk_widget_unregister_window(widget: *mut GtkWidget, window: *mut gdk::GdkWindow);
26559    pub fn gtk_widget_unset_state_flags(widget: *mut GtkWidget, flags: GtkStateFlags);
26560
26561    //=========================================================================
26562    // GtkWidgetAccessible
26563    //=========================================================================
26564    pub fn gtk_widget_accessible_get_type() -> GType;
26565
26566    //=========================================================================
26567    // GtkWindow
26568    //=========================================================================
26569    pub fn gtk_window_get_type() -> GType;
26570    pub fn gtk_window_new(type_: GtkWindowType) -> *mut GtkWidget;
26571    pub fn gtk_window_get_default_icon_list() -> *mut glib::GList;
26572    pub fn gtk_window_get_default_icon_name() -> *const c_char;
26573    pub fn gtk_window_list_toplevels() -> *mut glib::GList;
26574    pub fn gtk_window_set_auto_startup_notification(setting: gboolean);
26575    pub fn gtk_window_set_default_icon(icon: *mut gdk_pixbuf::GdkPixbuf);
26576    pub fn gtk_window_set_default_icon_from_file(
26577        filename: *const c_char,
26578        error: *mut *mut glib::GError,
26579    ) -> gboolean;
26580    pub fn gtk_window_set_default_icon_list(list: *mut glib::GList);
26581    pub fn gtk_window_set_default_icon_name(name: *const c_char);
26582    pub fn gtk_window_set_interactive_debugging(enable: gboolean);
26583    pub fn gtk_window_activate_default(window: *mut GtkWindow) -> gboolean;
26584    pub fn gtk_window_activate_focus(window: *mut GtkWindow) -> gboolean;
26585    pub fn gtk_window_activate_key(
26586        window: *mut GtkWindow,
26587        event: *mut gdk::GdkEventKey,
26588    ) -> gboolean;
26589    pub fn gtk_window_add_accel_group(window: *mut GtkWindow, accel_group: *mut GtkAccelGroup);
26590    pub fn gtk_window_add_mnemonic(window: *mut GtkWindow, keyval: c_uint, target: *mut GtkWidget);
26591    pub fn gtk_window_begin_move_drag(
26592        window: *mut GtkWindow,
26593        button: c_int,
26594        root_x: c_int,
26595        root_y: c_int,
26596        timestamp: u32,
26597    );
26598    pub fn gtk_window_begin_resize_drag(
26599        window: *mut GtkWindow,
26600        edge: gdk::GdkWindowEdge,
26601        button: c_int,
26602        root_x: c_int,
26603        root_y: c_int,
26604        timestamp: u32,
26605    );
26606    pub fn gtk_window_close(window: *mut GtkWindow);
26607    pub fn gtk_window_deiconify(window: *mut GtkWindow);
26608    pub fn gtk_window_fullscreen(window: *mut GtkWindow);
26609    pub fn gtk_window_fullscreen_on_monitor(
26610        window: *mut GtkWindow,
26611        screen: *mut gdk::GdkScreen,
26612        monitor: c_int,
26613    );
26614    pub fn gtk_window_get_accept_focus(window: *mut GtkWindow) -> gboolean;
26615    pub fn gtk_window_get_application(window: *mut GtkWindow) -> *mut GtkApplication;
26616    pub fn gtk_window_get_attached_to(window: *mut GtkWindow) -> *mut GtkWidget;
26617    pub fn gtk_window_get_decorated(window: *mut GtkWindow) -> gboolean;
26618    pub fn gtk_window_get_default_size(
26619        window: *mut GtkWindow,
26620        width: *mut c_int,
26621        height: *mut c_int,
26622    );
26623    pub fn gtk_window_get_default_widget(window: *mut GtkWindow) -> *mut GtkWidget;
26624    pub fn gtk_window_get_deletable(window: *mut GtkWindow) -> gboolean;
26625    pub fn gtk_window_get_destroy_with_parent(window: *mut GtkWindow) -> gboolean;
26626    pub fn gtk_window_get_focus(window: *mut GtkWindow) -> *mut GtkWidget;
26627    pub fn gtk_window_get_focus_on_map(window: *mut GtkWindow) -> gboolean;
26628    pub fn gtk_window_get_focus_visible(window: *mut GtkWindow) -> gboolean;
26629    pub fn gtk_window_get_gravity(window: *mut GtkWindow) -> gdk::GdkGravity;
26630    pub fn gtk_window_get_group(window: *mut GtkWindow) -> *mut GtkWindowGroup;
26631    pub fn gtk_window_get_has_resize_grip(window: *mut GtkWindow) -> gboolean;
26632    pub fn gtk_window_get_hide_titlebar_when_maximized(window: *mut GtkWindow) -> gboolean;
26633    pub fn gtk_window_get_icon(window: *mut GtkWindow) -> *mut gdk_pixbuf::GdkPixbuf;
26634    pub fn gtk_window_get_icon_list(window: *mut GtkWindow) -> *mut glib::GList;
26635    pub fn gtk_window_get_icon_name(window: *mut GtkWindow) -> *const c_char;
26636    pub fn gtk_window_get_mnemonic_modifier(window: *mut GtkWindow) -> gdk::GdkModifierType;
26637    pub fn gtk_window_get_mnemonics_visible(window: *mut GtkWindow) -> gboolean;
26638    pub fn gtk_window_get_modal(window: *mut GtkWindow) -> gboolean;
26639    pub fn gtk_window_get_opacity(window: *mut GtkWindow) -> c_double;
26640    pub fn gtk_window_get_position(window: *mut GtkWindow, root_x: *mut c_int, root_y: *mut c_int);
26641    pub fn gtk_window_get_resizable(window: *mut GtkWindow) -> gboolean;
26642    pub fn gtk_window_get_resize_grip_area(
26643        window: *mut GtkWindow,
26644        rect: *mut gdk::GdkRectangle,
26645    ) -> gboolean;
26646    pub fn gtk_window_get_role(window: *mut GtkWindow) -> *const c_char;
26647    pub fn gtk_window_get_screen(window: *mut GtkWindow) -> *mut gdk::GdkScreen;
26648    pub fn gtk_window_get_size(window: *mut GtkWindow, width: *mut c_int, height: *mut c_int);
26649    pub fn gtk_window_get_skip_pager_hint(window: *mut GtkWindow) -> gboolean;
26650    pub fn gtk_window_get_skip_taskbar_hint(window: *mut GtkWindow) -> gboolean;
26651    pub fn gtk_window_get_title(window: *mut GtkWindow) -> *const c_char;
26652    pub fn gtk_window_get_titlebar(window: *mut GtkWindow) -> *mut GtkWidget;
26653    pub fn gtk_window_get_transient_for(window: *mut GtkWindow) -> *mut GtkWindow;
26654    pub fn gtk_window_get_type_hint(window: *mut GtkWindow) -> gdk::GdkWindowTypeHint;
26655    pub fn gtk_window_get_urgency_hint(window: *mut GtkWindow) -> gboolean;
26656    pub fn gtk_window_get_window_type(window: *mut GtkWindow) -> GtkWindowType;
26657    pub fn gtk_window_has_group(window: *mut GtkWindow) -> gboolean;
26658    pub fn gtk_window_has_toplevel_focus(window: *mut GtkWindow) -> gboolean;
26659    pub fn gtk_window_iconify(window: *mut GtkWindow);
26660    pub fn gtk_window_is_active(window: *mut GtkWindow) -> gboolean;
26661    pub fn gtk_window_is_maximized(window: *mut GtkWindow) -> gboolean;
26662    pub fn gtk_window_maximize(window: *mut GtkWindow);
26663    pub fn gtk_window_mnemonic_activate(
26664        window: *mut GtkWindow,
26665        keyval: c_uint,
26666        modifier: gdk::GdkModifierType,
26667    ) -> gboolean;
26668    pub fn gtk_window_move(window: *mut GtkWindow, x: c_int, y: c_int);
26669    pub fn gtk_window_parse_geometry(window: *mut GtkWindow, geometry: *const c_char) -> gboolean;
26670    pub fn gtk_window_present(window: *mut GtkWindow);
26671    pub fn gtk_window_present_with_time(window: *mut GtkWindow, timestamp: u32);
26672    pub fn gtk_window_propagate_key_event(
26673        window: *mut GtkWindow,
26674        event: *mut gdk::GdkEventKey,
26675    ) -> gboolean;
26676    pub fn gtk_window_remove_accel_group(window: *mut GtkWindow, accel_group: *mut GtkAccelGroup);
26677    pub fn gtk_window_remove_mnemonic(
26678        window: *mut GtkWindow,
26679        keyval: c_uint,
26680        target: *mut GtkWidget,
26681    );
26682    pub fn gtk_window_reshow_with_initial_size(window: *mut GtkWindow);
26683    pub fn gtk_window_resize(window: *mut GtkWindow, width: c_int, height: c_int);
26684    pub fn gtk_window_resize_grip_is_visible(window: *mut GtkWindow) -> gboolean;
26685    pub fn gtk_window_resize_to_geometry(window: *mut GtkWindow, width: c_int, height: c_int);
26686    pub fn gtk_window_set_accept_focus(window: *mut GtkWindow, setting: gboolean);
26687    pub fn gtk_window_set_application(window: *mut GtkWindow, application: *mut GtkApplication);
26688    pub fn gtk_window_set_attached_to(window: *mut GtkWindow, attach_widget: *mut GtkWidget);
26689    pub fn gtk_window_set_decorated(window: *mut GtkWindow, setting: gboolean);
26690    pub fn gtk_window_set_default(window: *mut GtkWindow, default_widget: *mut GtkWidget);
26691    pub fn gtk_window_set_default_geometry(window: *mut GtkWindow, width: c_int, height: c_int);
26692    pub fn gtk_window_set_default_size(window: *mut GtkWindow, width: c_int, height: c_int);
26693    pub fn gtk_window_set_deletable(window: *mut GtkWindow, setting: gboolean);
26694    pub fn gtk_window_set_destroy_with_parent(window: *mut GtkWindow, setting: gboolean);
26695    pub fn gtk_window_set_focus(window: *mut GtkWindow, focus: *mut GtkWidget);
26696    pub fn gtk_window_set_focus_on_map(window: *mut GtkWindow, setting: gboolean);
26697    pub fn gtk_window_set_focus_visible(window: *mut GtkWindow, setting: gboolean);
26698    pub fn gtk_window_set_geometry_hints(
26699        window: *mut GtkWindow,
26700        geometry_widget: *mut GtkWidget,
26701        geometry: *mut gdk::GdkGeometry,
26702        geom_mask: gdk::GdkWindowHints,
26703    );
26704    pub fn gtk_window_set_gravity(window: *mut GtkWindow, gravity: gdk::GdkGravity);
26705    pub fn gtk_window_set_has_resize_grip(window: *mut GtkWindow, value: gboolean);
26706    pub fn gtk_window_set_has_user_ref_count(window: *mut GtkWindow, setting: gboolean);
26707    pub fn gtk_window_set_hide_titlebar_when_maximized(window: *mut GtkWindow, setting: gboolean);
26708    pub fn gtk_window_set_icon(window: *mut GtkWindow, icon: *mut gdk_pixbuf::GdkPixbuf);
26709    pub fn gtk_window_set_icon_from_file(
26710        window: *mut GtkWindow,
26711        filename: *const c_char,
26712        error: *mut *mut glib::GError,
26713    ) -> gboolean;
26714    pub fn gtk_window_set_icon_list(window: *mut GtkWindow, list: *mut glib::GList);
26715    pub fn gtk_window_set_icon_name(window: *mut GtkWindow, name: *const c_char);
26716    pub fn gtk_window_set_keep_above(window: *mut GtkWindow, setting: gboolean);
26717    pub fn gtk_window_set_keep_below(window: *mut GtkWindow, setting: gboolean);
26718    pub fn gtk_window_set_mnemonic_modifier(window: *mut GtkWindow, modifier: gdk::GdkModifierType);
26719    pub fn gtk_window_set_mnemonics_visible(window: *mut GtkWindow, setting: gboolean);
26720    pub fn gtk_window_set_modal(window: *mut GtkWindow, modal: gboolean);
26721    pub fn gtk_window_set_opacity(window: *mut GtkWindow, opacity: c_double);
26722    pub fn gtk_window_set_position(window: *mut GtkWindow, position: GtkWindowPosition);
26723    pub fn gtk_window_set_resizable(window: *mut GtkWindow, resizable: gboolean);
26724    pub fn gtk_window_set_role(window: *mut GtkWindow, role: *const c_char);
26725    pub fn gtk_window_set_screen(window: *mut GtkWindow, screen: *mut gdk::GdkScreen);
26726    pub fn gtk_window_set_skip_pager_hint(window: *mut GtkWindow, setting: gboolean);
26727    pub fn gtk_window_set_skip_taskbar_hint(window: *mut GtkWindow, setting: gboolean);
26728    pub fn gtk_window_set_startup_id(window: *mut GtkWindow, startup_id: *const c_char);
26729    pub fn gtk_window_set_title(window: *mut GtkWindow, title: *const c_char);
26730    pub fn gtk_window_set_titlebar(window: *mut GtkWindow, titlebar: *mut GtkWidget);
26731    pub fn gtk_window_set_transient_for(window: *mut GtkWindow, parent: *mut GtkWindow);
26732    pub fn gtk_window_set_type_hint(window: *mut GtkWindow, hint: gdk::GdkWindowTypeHint);
26733    pub fn gtk_window_set_urgency_hint(window: *mut GtkWindow, setting: gboolean);
26734    pub fn gtk_window_set_wmclass(
26735        window: *mut GtkWindow,
26736        wmclass_name: *const c_char,
26737        wmclass_class: *const c_char,
26738    );
26739    pub fn gtk_window_stick(window: *mut GtkWindow);
26740    pub fn gtk_window_unfullscreen(window: *mut GtkWindow);
26741    pub fn gtk_window_unmaximize(window: *mut GtkWindow);
26742    pub fn gtk_window_unstick(window: *mut GtkWindow);
26743
26744    //=========================================================================
26745    // GtkWindowAccessible
26746    //=========================================================================
26747    pub fn gtk_window_accessible_get_type() -> GType;
26748
26749    //=========================================================================
26750    // GtkWindowGroup
26751    //=========================================================================
26752    pub fn gtk_window_group_get_type() -> GType;
26753    pub fn gtk_window_group_new() -> *mut GtkWindowGroup;
26754    pub fn gtk_window_group_add_window(window_group: *mut GtkWindowGroup, window: *mut GtkWindow);
26755    pub fn gtk_window_group_get_current_device_grab(
26756        window_group: *mut GtkWindowGroup,
26757        device: *mut gdk::GdkDevice,
26758    ) -> *mut GtkWidget;
26759    pub fn gtk_window_group_get_current_grab(window_group: *mut GtkWindowGroup) -> *mut GtkWidget;
26760    pub fn gtk_window_group_list_windows(window_group: *mut GtkWindowGroup) -> *mut glib::GList;
26761    pub fn gtk_window_group_remove_window(
26762        window_group: *mut GtkWindowGroup,
26763        window: *mut GtkWindow,
26764    );
26765
26766    //=========================================================================
26767    // GtkActionable
26768    //=========================================================================
26769    pub fn gtk_actionable_get_type() -> GType;
26770    pub fn gtk_actionable_get_action_name(actionable: *mut GtkActionable) -> *const c_char;
26771    pub fn gtk_actionable_get_action_target_value(
26772        actionable: *mut GtkActionable,
26773    ) -> *mut glib::GVariant;
26774    pub fn gtk_actionable_set_action_name(
26775        actionable: *mut GtkActionable,
26776        action_name: *const c_char,
26777    );
26778    pub fn gtk_actionable_set_action_target(
26779        actionable: *mut GtkActionable,
26780        format_string: *const c_char,
26781        ...
26782    );
26783    pub fn gtk_actionable_set_action_target_value(
26784        actionable: *mut GtkActionable,
26785        target_value: *mut glib::GVariant,
26786    );
26787    pub fn gtk_actionable_set_detailed_action_name(
26788        actionable: *mut GtkActionable,
26789        detailed_action_name: *const c_char,
26790    );
26791
26792    //=========================================================================
26793    // GtkActivatable
26794    //=========================================================================
26795    pub fn gtk_activatable_get_type() -> GType;
26796    pub fn gtk_activatable_do_set_related_action(
26797        activatable: *mut GtkActivatable,
26798        action: *mut GtkAction,
26799    );
26800    pub fn gtk_activatable_get_related_action(activatable: *mut GtkActivatable) -> *mut GtkAction;
26801    pub fn gtk_activatable_get_use_action_appearance(activatable: *mut GtkActivatable) -> gboolean;
26802    pub fn gtk_activatable_set_related_action(
26803        activatable: *mut GtkActivatable,
26804        action: *mut GtkAction,
26805    );
26806    pub fn gtk_activatable_set_use_action_appearance(
26807        activatable: *mut GtkActivatable,
26808        use_appearance: gboolean,
26809    );
26810    pub fn gtk_activatable_sync_action_properties(
26811        activatable: *mut GtkActivatable,
26812        action: *mut GtkAction,
26813    );
26814
26815    //=========================================================================
26816    // GtkAppChooser
26817    //=========================================================================
26818    pub fn gtk_app_chooser_get_type() -> GType;
26819    pub fn gtk_app_chooser_get_app_info(self_: *mut GtkAppChooser) -> *mut gio::GAppInfo;
26820    pub fn gtk_app_chooser_get_content_type(self_: *mut GtkAppChooser) -> *mut c_char;
26821    pub fn gtk_app_chooser_refresh(self_: *mut GtkAppChooser);
26822
26823    //=========================================================================
26824    // GtkBuildable
26825    //=========================================================================
26826    pub fn gtk_buildable_get_type() -> GType;
26827    pub fn gtk_buildable_add_child(
26828        buildable: *mut GtkBuildable,
26829        builder: *mut GtkBuilder,
26830        child: *mut gobject::GObject,
26831        type_: *const c_char,
26832    );
26833    pub fn gtk_buildable_construct_child(
26834        buildable: *mut GtkBuildable,
26835        builder: *mut GtkBuilder,
26836        name: *const c_char,
26837    ) -> *mut gobject::GObject;
26838    pub fn gtk_buildable_custom_finished(
26839        buildable: *mut GtkBuildable,
26840        builder: *mut GtkBuilder,
26841        child: *mut gobject::GObject,
26842        tagname: *const c_char,
26843        data: gpointer,
26844    );
26845    pub fn gtk_buildable_custom_tag_end(
26846        buildable: *mut GtkBuildable,
26847        builder: *mut GtkBuilder,
26848        child: *mut gobject::GObject,
26849        tagname: *const c_char,
26850        data: *mut gpointer,
26851    );
26852    pub fn gtk_buildable_custom_tag_start(
26853        buildable: *mut GtkBuildable,
26854        builder: *mut GtkBuilder,
26855        child: *mut gobject::GObject,
26856        tagname: *const c_char,
26857        parser: *mut glib::GMarkupParser,
26858        data: *mut gpointer,
26859    ) -> gboolean;
26860    pub fn gtk_buildable_get_internal_child(
26861        buildable: *mut GtkBuildable,
26862        builder: *mut GtkBuilder,
26863        childname: *const c_char,
26864    ) -> *mut gobject::GObject;
26865    pub fn gtk_buildable_get_name(buildable: *mut GtkBuildable) -> *const c_char;
26866    pub fn gtk_buildable_parser_finished(buildable: *mut GtkBuildable, builder: *mut GtkBuilder);
26867    pub fn gtk_buildable_set_buildable_property(
26868        buildable: *mut GtkBuildable,
26869        builder: *mut GtkBuilder,
26870        name: *const c_char,
26871        value: *const gobject::GValue,
26872    );
26873    pub fn gtk_buildable_set_name(buildable: *mut GtkBuildable, name: *const c_char);
26874
26875    //=========================================================================
26876    // GtkCellAccessibleParent
26877    //=========================================================================
26878    pub fn gtk_cell_accessible_parent_get_type() -> GType;
26879    pub fn gtk_cell_accessible_parent_activate(
26880        parent: *mut GtkCellAccessibleParent,
26881        cell: *mut GtkCellAccessible,
26882    );
26883    pub fn gtk_cell_accessible_parent_edit(
26884        parent: *mut GtkCellAccessibleParent,
26885        cell: *mut GtkCellAccessible,
26886    );
26887    pub fn gtk_cell_accessible_parent_expand_collapse(
26888        parent: *mut GtkCellAccessibleParent,
26889        cell: *mut GtkCellAccessible,
26890    );
26891    pub fn gtk_cell_accessible_parent_get_cell_area(
26892        parent: *mut GtkCellAccessibleParent,
26893        cell: *mut GtkCellAccessible,
26894        cell_rect: *mut gdk::GdkRectangle,
26895    );
26896    pub fn gtk_cell_accessible_parent_get_cell_extents(
26897        parent: *mut GtkCellAccessibleParent,
26898        cell: *mut GtkCellAccessible,
26899        x: *mut c_int,
26900        y: *mut c_int,
26901        width: *mut c_int,
26902        height: *mut c_int,
26903        coord_type: atk::AtkCoordType,
26904    );
26905    pub fn gtk_cell_accessible_parent_get_cell_position(
26906        parent: *mut GtkCellAccessibleParent,
26907        cell: *mut GtkCellAccessible,
26908        row: *mut c_int,
26909        column: *mut c_int,
26910    );
26911    pub fn gtk_cell_accessible_parent_get_child_index(
26912        parent: *mut GtkCellAccessibleParent,
26913        cell: *mut GtkCellAccessible,
26914    ) -> c_int;
26915    pub fn gtk_cell_accessible_parent_get_column_header_cells(
26916        parent: *mut GtkCellAccessibleParent,
26917        cell: *mut GtkCellAccessible,
26918    ) -> *mut glib::GPtrArray;
26919    pub fn gtk_cell_accessible_parent_get_renderer_state(
26920        parent: *mut GtkCellAccessibleParent,
26921        cell: *mut GtkCellAccessible,
26922    ) -> GtkCellRendererState;
26923    pub fn gtk_cell_accessible_parent_get_row_header_cells(
26924        parent: *mut GtkCellAccessibleParent,
26925        cell: *mut GtkCellAccessible,
26926    ) -> *mut glib::GPtrArray;
26927    pub fn gtk_cell_accessible_parent_grab_focus(
26928        parent: *mut GtkCellAccessibleParent,
26929        cell: *mut GtkCellAccessible,
26930    ) -> gboolean;
26931    pub fn gtk_cell_accessible_parent_update_relationset(
26932        parent: *mut GtkCellAccessibleParent,
26933        cell: *mut GtkCellAccessible,
26934        relationset: *mut atk::AtkRelationSet,
26935    );
26936
26937    //=========================================================================
26938    // GtkCellEditable
26939    //=========================================================================
26940    pub fn gtk_cell_editable_get_type() -> GType;
26941    pub fn gtk_cell_editable_editing_done(cell_editable: *mut GtkCellEditable);
26942    pub fn gtk_cell_editable_remove_widget(cell_editable: *mut GtkCellEditable);
26943    pub fn gtk_cell_editable_start_editing(
26944        cell_editable: *mut GtkCellEditable,
26945        event: *mut gdk::GdkEvent,
26946    );
26947
26948    //=========================================================================
26949    // GtkCellLayout
26950    //=========================================================================
26951    pub fn gtk_cell_layout_get_type() -> GType;
26952    pub fn gtk_cell_layout_add_attribute(
26953        cell_layout: *mut GtkCellLayout,
26954        cell: *mut GtkCellRenderer,
26955        attribute: *const c_char,
26956        column: c_int,
26957    );
26958    pub fn gtk_cell_layout_clear(cell_layout: *mut GtkCellLayout);
26959    pub fn gtk_cell_layout_clear_attributes(
26960        cell_layout: *mut GtkCellLayout,
26961        cell: *mut GtkCellRenderer,
26962    );
26963    pub fn gtk_cell_layout_get_area(cell_layout: *mut GtkCellLayout) -> *mut GtkCellArea;
26964    pub fn gtk_cell_layout_get_cells(cell_layout: *mut GtkCellLayout) -> *mut glib::GList;
26965    pub fn gtk_cell_layout_pack_end(
26966        cell_layout: *mut GtkCellLayout,
26967        cell: *mut GtkCellRenderer,
26968        expand: gboolean,
26969    );
26970    pub fn gtk_cell_layout_pack_start(
26971        cell_layout: *mut GtkCellLayout,
26972        cell: *mut GtkCellRenderer,
26973        expand: gboolean,
26974    );
26975    pub fn gtk_cell_layout_reorder(
26976        cell_layout: *mut GtkCellLayout,
26977        cell: *mut GtkCellRenderer,
26978        position: c_int,
26979    );
26980    pub fn gtk_cell_layout_set_attributes(
26981        cell_layout: *mut GtkCellLayout,
26982        cell: *mut GtkCellRenderer,
26983        ...
26984    );
26985    pub fn gtk_cell_layout_set_cell_data_func(
26986        cell_layout: *mut GtkCellLayout,
26987        cell: *mut GtkCellRenderer,
26988        func: GtkCellLayoutDataFunc,
26989        func_data: gpointer,
26990        destroy: glib::GDestroyNotify,
26991    );
26992
26993    //=========================================================================
26994    // GtkColorChooser
26995    //=========================================================================
26996    pub fn gtk_color_chooser_get_type() -> GType;
26997    pub fn gtk_color_chooser_add_palette(
26998        chooser: *mut GtkColorChooser,
26999        orientation: GtkOrientation,
27000        colors_per_line: c_int,
27001        n_colors: c_int,
27002        colors: *mut gdk::GdkRGBA,
27003    );
27004    pub fn gtk_color_chooser_get_rgba(chooser: *mut GtkColorChooser, color: *mut gdk::GdkRGBA);
27005    pub fn gtk_color_chooser_get_use_alpha(chooser: *mut GtkColorChooser) -> gboolean;
27006    pub fn gtk_color_chooser_set_rgba(chooser: *mut GtkColorChooser, color: *const gdk::GdkRGBA);
27007    pub fn gtk_color_chooser_set_use_alpha(chooser: *mut GtkColorChooser, use_alpha: gboolean);
27008
27009    //=========================================================================
27010    // GtkEditable
27011    //=========================================================================
27012    pub fn gtk_editable_get_type() -> GType;
27013    pub fn gtk_editable_copy_clipboard(editable: *mut GtkEditable);
27014    pub fn gtk_editable_cut_clipboard(editable: *mut GtkEditable);
27015    pub fn gtk_editable_delete_selection(editable: *mut GtkEditable);
27016    pub fn gtk_editable_delete_text(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
27017    pub fn gtk_editable_get_chars(
27018        editable: *mut GtkEditable,
27019        start_pos: c_int,
27020        end_pos: c_int,
27021    ) -> *mut c_char;
27022    pub fn gtk_editable_get_editable(editable: *mut GtkEditable) -> gboolean;
27023    pub fn gtk_editable_get_position(editable: *mut GtkEditable) -> c_int;
27024    pub fn gtk_editable_get_selection_bounds(
27025        editable: *mut GtkEditable,
27026        start_pos: *mut c_int,
27027        end_pos: *mut c_int,
27028    ) -> gboolean;
27029    pub fn gtk_editable_insert_text(
27030        editable: *mut GtkEditable,
27031        new_text: *const c_char,
27032        new_text_length: c_int,
27033        position: *mut c_int,
27034    );
27035    pub fn gtk_editable_paste_clipboard(editable: *mut GtkEditable);
27036    pub fn gtk_editable_select_region(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
27037    pub fn gtk_editable_set_editable(editable: *mut GtkEditable, is_editable: gboolean);
27038    pub fn gtk_editable_set_position(editable: *mut GtkEditable, position: c_int);
27039
27040    //=========================================================================
27041    // GtkFileChooser
27042    //=========================================================================
27043    pub fn gtk_file_chooser_get_type() -> GType;
27044    pub fn gtk_file_chooser_add_choice(
27045        chooser: *mut GtkFileChooser,
27046        id: *const c_char,
27047        label: *const c_char,
27048        options: *mut *const c_char,
27049        option_labels: *mut *const c_char,
27050    );
27051    pub fn gtk_file_chooser_add_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
27052    pub fn gtk_file_chooser_add_shortcut_folder(
27053        chooser: *mut GtkFileChooser,
27054        folder: *const c_char,
27055        error: *mut *mut glib::GError,
27056    ) -> gboolean;
27057    pub fn gtk_file_chooser_add_shortcut_folder_uri(
27058        chooser: *mut GtkFileChooser,
27059        uri: *const c_char,
27060        error: *mut *mut glib::GError,
27061    ) -> gboolean;
27062    pub fn gtk_file_chooser_get_action(chooser: *mut GtkFileChooser) -> GtkFileChooserAction;
27063    pub fn gtk_file_chooser_get_choice(
27064        chooser: *mut GtkFileChooser,
27065        id: *const c_char,
27066    ) -> *const c_char;
27067    pub fn gtk_file_chooser_get_create_folders(chooser: *mut GtkFileChooser) -> gboolean;
27068    pub fn gtk_file_chooser_get_current_folder(chooser: *mut GtkFileChooser) -> *mut c_char;
27069    pub fn gtk_file_chooser_get_current_folder_file(
27070        chooser: *mut GtkFileChooser,
27071    ) -> *mut gio::GFile;
27072    pub fn gtk_file_chooser_get_current_folder_uri(chooser: *mut GtkFileChooser) -> *mut c_char;
27073    pub fn gtk_file_chooser_get_current_name(chooser: *mut GtkFileChooser) -> *mut c_char;
27074    pub fn gtk_file_chooser_get_do_overwrite_confirmation(chooser: *mut GtkFileChooser)
27075    -> gboolean;
27076    pub fn gtk_file_chooser_get_extra_widget(chooser: *mut GtkFileChooser) -> *mut GtkWidget;
27077    pub fn gtk_file_chooser_get_file(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
27078    pub fn gtk_file_chooser_get_filename(chooser: *mut GtkFileChooser) -> *mut c_char;
27079    pub fn gtk_file_chooser_get_filenames(chooser: *mut GtkFileChooser) -> *mut glib::GSList;
27080    pub fn gtk_file_chooser_get_files(chooser: *mut GtkFileChooser) -> *mut glib::GSList;
27081    pub fn gtk_file_chooser_get_filter(chooser: *mut GtkFileChooser) -> *mut GtkFileFilter;
27082    pub fn gtk_file_chooser_get_local_only(chooser: *mut GtkFileChooser) -> gboolean;
27083    pub fn gtk_file_chooser_get_preview_file(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
27084    pub fn gtk_file_chooser_get_preview_filename(chooser: *mut GtkFileChooser) -> *mut c_char;
27085    pub fn gtk_file_chooser_get_preview_uri(chooser: *mut GtkFileChooser) -> *mut c_char;
27086    pub fn gtk_file_chooser_get_preview_widget(chooser: *mut GtkFileChooser) -> *mut GtkWidget;
27087    pub fn gtk_file_chooser_get_preview_widget_active(chooser: *mut GtkFileChooser) -> gboolean;
27088    pub fn gtk_file_chooser_get_select_multiple(chooser: *mut GtkFileChooser) -> gboolean;
27089    pub fn gtk_file_chooser_get_show_hidden(chooser: *mut GtkFileChooser) -> gboolean;
27090    pub fn gtk_file_chooser_get_uri(chooser: *mut GtkFileChooser) -> *mut c_char;
27091    pub fn gtk_file_chooser_get_uris(chooser: *mut GtkFileChooser) -> *mut glib::GSList;
27092    pub fn gtk_file_chooser_get_use_preview_label(chooser: *mut GtkFileChooser) -> gboolean;
27093    pub fn gtk_file_chooser_list_filters(chooser: *mut GtkFileChooser) -> *mut glib::GSList;
27094    pub fn gtk_file_chooser_list_shortcut_folder_uris(
27095        chooser: *mut GtkFileChooser,
27096    ) -> *mut glib::GSList;
27097    pub fn gtk_file_chooser_list_shortcut_folders(
27098        chooser: *mut GtkFileChooser,
27099    ) -> *mut glib::GSList;
27100    pub fn gtk_file_chooser_remove_choice(chooser: *mut GtkFileChooser, id: *const c_char);
27101    pub fn gtk_file_chooser_remove_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
27102    pub fn gtk_file_chooser_remove_shortcut_folder(
27103        chooser: *mut GtkFileChooser,
27104        folder: *const c_char,
27105        error: *mut *mut glib::GError,
27106    ) -> gboolean;
27107    pub fn gtk_file_chooser_remove_shortcut_folder_uri(
27108        chooser: *mut GtkFileChooser,
27109        uri: *const c_char,
27110        error: *mut *mut glib::GError,
27111    ) -> gboolean;
27112    pub fn gtk_file_chooser_select_all(chooser: *mut GtkFileChooser);
27113    pub fn gtk_file_chooser_select_file(
27114        chooser: *mut GtkFileChooser,
27115        file: *mut gio::GFile,
27116        error: *mut *mut glib::GError,
27117    ) -> gboolean;
27118    pub fn gtk_file_chooser_select_filename(
27119        chooser: *mut GtkFileChooser,
27120        filename: *const c_char,
27121    ) -> gboolean;
27122    pub fn gtk_file_chooser_select_uri(
27123        chooser: *mut GtkFileChooser,
27124        uri: *const c_char,
27125    ) -> gboolean;
27126    pub fn gtk_file_chooser_set_action(chooser: *mut GtkFileChooser, action: GtkFileChooserAction);
27127    pub fn gtk_file_chooser_set_choice(
27128        chooser: *mut GtkFileChooser,
27129        id: *const c_char,
27130        option: *const c_char,
27131    );
27132    pub fn gtk_file_chooser_set_create_folders(
27133        chooser: *mut GtkFileChooser,
27134        create_folders: gboolean,
27135    );
27136    pub fn gtk_file_chooser_set_current_folder(
27137        chooser: *mut GtkFileChooser,
27138        filename: *const c_char,
27139    ) -> gboolean;
27140    pub fn gtk_file_chooser_set_current_folder_file(
27141        chooser: *mut GtkFileChooser,
27142        file: *mut gio::GFile,
27143        error: *mut *mut glib::GError,
27144    ) -> gboolean;
27145    pub fn gtk_file_chooser_set_current_folder_uri(
27146        chooser: *mut GtkFileChooser,
27147        uri: *const c_char,
27148    ) -> gboolean;
27149    pub fn gtk_file_chooser_set_current_name(chooser: *mut GtkFileChooser, name: *const c_char);
27150    pub fn gtk_file_chooser_set_do_overwrite_confirmation(
27151        chooser: *mut GtkFileChooser,
27152        do_overwrite_confirmation: gboolean,
27153    );
27154    pub fn gtk_file_chooser_set_extra_widget(
27155        chooser: *mut GtkFileChooser,
27156        extra_widget: *mut GtkWidget,
27157    );
27158    pub fn gtk_file_chooser_set_file(
27159        chooser: *mut GtkFileChooser,
27160        file: *mut gio::GFile,
27161        error: *mut *mut glib::GError,
27162    ) -> gboolean;
27163    pub fn gtk_file_chooser_set_filename(
27164        chooser: *mut GtkFileChooser,
27165        filename: *const c_char,
27166    ) -> gboolean;
27167    pub fn gtk_file_chooser_set_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
27168    pub fn gtk_file_chooser_set_local_only(chooser: *mut GtkFileChooser, local_only: gboolean);
27169    pub fn gtk_file_chooser_set_preview_widget(
27170        chooser: *mut GtkFileChooser,
27171        preview_widget: *mut GtkWidget,
27172    );
27173    pub fn gtk_file_chooser_set_preview_widget_active(
27174        chooser: *mut GtkFileChooser,
27175        active: gboolean,
27176    );
27177    pub fn gtk_file_chooser_set_select_multiple(
27178        chooser: *mut GtkFileChooser,
27179        select_multiple: gboolean,
27180    );
27181    pub fn gtk_file_chooser_set_show_hidden(chooser: *mut GtkFileChooser, show_hidden: gboolean);
27182    pub fn gtk_file_chooser_set_uri(chooser: *mut GtkFileChooser, uri: *const c_char) -> gboolean;
27183    pub fn gtk_file_chooser_set_use_preview_label(
27184        chooser: *mut GtkFileChooser,
27185        use_label: gboolean,
27186    );
27187    pub fn gtk_file_chooser_unselect_all(chooser: *mut GtkFileChooser);
27188    pub fn gtk_file_chooser_unselect_file(chooser: *mut GtkFileChooser, file: *mut gio::GFile);
27189    pub fn gtk_file_chooser_unselect_filename(
27190        chooser: *mut GtkFileChooser,
27191        filename: *const c_char,
27192    );
27193    pub fn gtk_file_chooser_unselect_uri(chooser: *mut GtkFileChooser, uri: *const c_char);
27194
27195    //=========================================================================
27196    // GtkFontChooser
27197    //=========================================================================
27198    pub fn gtk_font_chooser_get_type() -> GType;
27199    pub fn gtk_font_chooser_get_font(fontchooser: *mut GtkFontChooser) -> *mut c_char;
27200    pub fn gtk_font_chooser_get_font_desc(
27201        fontchooser: *mut GtkFontChooser,
27202    ) -> *mut pango::PangoFontDescription;
27203    pub fn gtk_font_chooser_get_font_face(
27204        fontchooser: *mut GtkFontChooser,
27205    ) -> *mut pango::PangoFontFace;
27206    pub fn gtk_font_chooser_get_font_family(
27207        fontchooser: *mut GtkFontChooser,
27208    ) -> *mut pango::PangoFontFamily;
27209    #[cfg(feature = "v3_24")]
27210    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
27211    pub fn gtk_font_chooser_get_font_features(fontchooser: *mut GtkFontChooser) -> *mut c_char;
27212    pub fn gtk_font_chooser_get_font_map(
27213        fontchooser: *mut GtkFontChooser,
27214    ) -> *mut pango::PangoFontMap;
27215    pub fn gtk_font_chooser_get_font_size(fontchooser: *mut GtkFontChooser) -> c_int;
27216    #[cfg(feature = "v3_24")]
27217    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
27218    pub fn gtk_font_chooser_get_language(fontchooser: *mut GtkFontChooser) -> *mut c_char;
27219    #[cfg(feature = "v3_24")]
27220    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
27221    pub fn gtk_font_chooser_get_level(fontchooser: *mut GtkFontChooser) -> GtkFontChooserLevel;
27222    pub fn gtk_font_chooser_get_preview_text(fontchooser: *mut GtkFontChooser) -> *mut c_char;
27223    pub fn gtk_font_chooser_get_show_preview_entry(fontchooser: *mut GtkFontChooser) -> gboolean;
27224    pub fn gtk_font_chooser_set_filter_func(
27225        fontchooser: *mut GtkFontChooser,
27226        filter: GtkFontFilterFunc,
27227        user_data: gpointer,
27228        destroy: glib::GDestroyNotify,
27229    );
27230    pub fn gtk_font_chooser_set_font(fontchooser: *mut GtkFontChooser, fontname: *const c_char);
27231    pub fn gtk_font_chooser_set_font_desc(
27232        fontchooser: *mut GtkFontChooser,
27233        font_desc: *const pango::PangoFontDescription,
27234    );
27235    pub fn gtk_font_chooser_set_font_map(
27236        fontchooser: *mut GtkFontChooser,
27237        fontmap: *mut pango::PangoFontMap,
27238    );
27239    #[cfg(feature = "v3_24")]
27240    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
27241    pub fn gtk_font_chooser_set_language(fontchooser: *mut GtkFontChooser, language: *const c_char);
27242    #[cfg(feature = "v3_24")]
27243    #[cfg_attr(docsrs, doc(cfg(feature = "v3_24")))]
27244    pub fn gtk_font_chooser_set_level(fontchooser: *mut GtkFontChooser, level: GtkFontChooserLevel);
27245    pub fn gtk_font_chooser_set_preview_text(fontchooser: *mut GtkFontChooser, text: *const c_char);
27246    pub fn gtk_font_chooser_set_show_preview_entry(
27247        fontchooser: *mut GtkFontChooser,
27248        show_preview_entry: gboolean,
27249    );
27250
27251    //=========================================================================
27252    // GtkOrientable
27253    //=========================================================================
27254    pub fn gtk_orientable_get_type() -> GType;
27255    pub fn gtk_orientable_get_orientation(orientable: *mut GtkOrientable) -> GtkOrientation;
27256    pub fn gtk_orientable_set_orientation(
27257        orientable: *mut GtkOrientable,
27258        orientation: GtkOrientation,
27259    );
27260
27261    //=========================================================================
27262    // GtkPrintOperationPreview
27263    //=========================================================================
27264    pub fn gtk_print_operation_preview_get_type() -> GType;
27265    pub fn gtk_print_operation_preview_end_preview(preview: *mut GtkPrintOperationPreview);
27266    pub fn gtk_print_operation_preview_is_selected(
27267        preview: *mut GtkPrintOperationPreview,
27268        page_nr: c_int,
27269    ) -> gboolean;
27270    pub fn gtk_print_operation_preview_render_page(
27271        preview: *mut GtkPrintOperationPreview,
27272        page_nr: c_int,
27273    );
27274
27275    //=========================================================================
27276    // GtkRecentChooser
27277    //=========================================================================
27278    pub fn gtk_recent_chooser_get_type() -> GType;
27279    pub fn gtk_recent_chooser_add_filter(
27280        chooser: *mut GtkRecentChooser,
27281        filter: *mut GtkRecentFilter,
27282    );
27283    pub fn gtk_recent_chooser_get_current_item(
27284        chooser: *mut GtkRecentChooser,
27285    ) -> *mut GtkRecentInfo;
27286    pub fn gtk_recent_chooser_get_current_uri(chooser: *mut GtkRecentChooser) -> *mut c_char;
27287    pub fn gtk_recent_chooser_get_filter(chooser: *mut GtkRecentChooser) -> *mut GtkRecentFilter;
27288    pub fn gtk_recent_chooser_get_items(chooser: *mut GtkRecentChooser) -> *mut glib::GList;
27289    pub fn gtk_recent_chooser_get_limit(chooser: *mut GtkRecentChooser) -> c_int;
27290    pub fn gtk_recent_chooser_get_local_only(chooser: *mut GtkRecentChooser) -> gboolean;
27291    pub fn gtk_recent_chooser_get_select_multiple(chooser: *mut GtkRecentChooser) -> gboolean;
27292    pub fn gtk_recent_chooser_get_show_icons(chooser: *mut GtkRecentChooser) -> gboolean;
27293    pub fn gtk_recent_chooser_get_show_not_found(chooser: *mut GtkRecentChooser) -> gboolean;
27294    pub fn gtk_recent_chooser_get_show_private(chooser: *mut GtkRecentChooser) -> gboolean;
27295    pub fn gtk_recent_chooser_get_show_tips(chooser: *mut GtkRecentChooser) -> gboolean;
27296    pub fn gtk_recent_chooser_get_sort_type(chooser: *mut GtkRecentChooser) -> GtkRecentSortType;
27297    pub fn gtk_recent_chooser_get_uris(
27298        chooser: *mut GtkRecentChooser,
27299        length: *mut size_t,
27300    ) -> *mut *mut c_char;
27301    pub fn gtk_recent_chooser_list_filters(chooser: *mut GtkRecentChooser) -> *mut glib::GSList;
27302    pub fn gtk_recent_chooser_remove_filter(
27303        chooser: *mut GtkRecentChooser,
27304        filter: *mut GtkRecentFilter,
27305    );
27306    pub fn gtk_recent_chooser_select_all(chooser: *mut GtkRecentChooser);
27307    pub fn gtk_recent_chooser_select_uri(
27308        chooser: *mut GtkRecentChooser,
27309        uri: *const c_char,
27310        error: *mut *mut glib::GError,
27311    ) -> gboolean;
27312    pub fn gtk_recent_chooser_set_current_uri(
27313        chooser: *mut GtkRecentChooser,
27314        uri: *const c_char,
27315        error: *mut *mut glib::GError,
27316    ) -> gboolean;
27317    pub fn gtk_recent_chooser_set_filter(
27318        chooser: *mut GtkRecentChooser,
27319        filter: *mut GtkRecentFilter,
27320    );
27321    pub fn gtk_recent_chooser_set_limit(chooser: *mut GtkRecentChooser, limit: c_int);
27322    pub fn gtk_recent_chooser_set_local_only(chooser: *mut GtkRecentChooser, local_only: gboolean);
27323    pub fn gtk_recent_chooser_set_select_multiple(
27324        chooser: *mut GtkRecentChooser,
27325        select_multiple: gboolean,
27326    );
27327    pub fn gtk_recent_chooser_set_show_icons(chooser: *mut GtkRecentChooser, show_icons: gboolean);
27328    pub fn gtk_recent_chooser_set_show_not_found(
27329        chooser: *mut GtkRecentChooser,
27330        show_not_found: gboolean,
27331    );
27332    pub fn gtk_recent_chooser_set_show_private(
27333        chooser: *mut GtkRecentChooser,
27334        show_private: gboolean,
27335    );
27336    pub fn gtk_recent_chooser_set_show_tips(chooser: *mut GtkRecentChooser, show_tips: gboolean);
27337    pub fn gtk_recent_chooser_set_sort_func(
27338        chooser: *mut GtkRecentChooser,
27339        sort_func: GtkRecentSortFunc,
27340        sort_data: gpointer,
27341        data_destroy: glib::GDestroyNotify,
27342    );
27343    pub fn gtk_recent_chooser_set_sort_type(
27344        chooser: *mut GtkRecentChooser,
27345        sort_type: GtkRecentSortType,
27346    );
27347    pub fn gtk_recent_chooser_unselect_all(chooser: *mut GtkRecentChooser);
27348    pub fn gtk_recent_chooser_unselect_uri(chooser: *mut GtkRecentChooser, uri: *const c_char);
27349
27350    //=========================================================================
27351    // GtkScrollable
27352    //=========================================================================
27353    pub fn gtk_scrollable_get_type() -> GType;
27354    pub fn gtk_scrollable_get_border(
27355        scrollable: *mut GtkScrollable,
27356        border: *mut GtkBorder,
27357    ) -> gboolean;
27358    pub fn gtk_scrollable_get_hadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
27359    pub fn gtk_scrollable_get_hscroll_policy(scrollable: *mut GtkScrollable)
27360    -> GtkScrollablePolicy;
27361    pub fn gtk_scrollable_get_vadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
27362    pub fn gtk_scrollable_get_vscroll_policy(scrollable: *mut GtkScrollable)
27363    -> GtkScrollablePolicy;
27364    pub fn gtk_scrollable_set_hadjustment(
27365        scrollable: *mut GtkScrollable,
27366        hadjustment: *mut GtkAdjustment,
27367    );
27368    pub fn gtk_scrollable_set_hscroll_policy(
27369        scrollable: *mut GtkScrollable,
27370        policy: GtkScrollablePolicy,
27371    );
27372    pub fn gtk_scrollable_set_vadjustment(
27373        scrollable: *mut GtkScrollable,
27374        vadjustment: *mut GtkAdjustment,
27375    );
27376    pub fn gtk_scrollable_set_vscroll_policy(
27377        scrollable: *mut GtkScrollable,
27378        policy: GtkScrollablePolicy,
27379    );
27380
27381    //=========================================================================
27382    // GtkStyleProvider
27383    //=========================================================================
27384    pub fn gtk_style_provider_get_type() -> GType;
27385    pub fn gtk_style_provider_get_icon_factory(
27386        provider: *mut GtkStyleProvider,
27387        path: *mut GtkWidgetPath,
27388    ) -> *mut GtkIconFactory;
27389    pub fn gtk_style_provider_get_style(
27390        provider: *mut GtkStyleProvider,
27391        path: *mut GtkWidgetPath,
27392    ) -> *mut GtkStyleProperties;
27393    pub fn gtk_style_provider_get_style_property(
27394        provider: *mut GtkStyleProvider,
27395        path: *mut GtkWidgetPath,
27396        state: GtkStateFlags,
27397        pspec: *mut gobject::GParamSpec,
27398        value: *mut gobject::GValue,
27399    ) -> gboolean;
27400
27401    //=========================================================================
27402    // GtkToolShell
27403    //=========================================================================
27404    pub fn gtk_tool_shell_get_type() -> GType;
27405    pub fn gtk_tool_shell_get_ellipsize_mode(shell: *mut GtkToolShell)
27406    -> pango::PangoEllipsizeMode;
27407    pub fn gtk_tool_shell_get_icon_size(shell: *mut GtkToolShell) -> GtkIconSize;
27408    pub fn gtk_tool_shell_get_orientation(shell: *mut GtkToolShell) -> GtkOrientation;
27409    pub fn gtk_tool_shell_get_relief_style(shell: *mut GtkToolShell) -> GtkReliefStyle;
27410    pub fn gtk_tool_shell_get_style(shell: *mut GtkToolShell) -> GtkToolbarStyle;
27411    pub fn gtk_tool_shell_get_text_alignment(shell: *mut GtkToolShell) -> c_float;
27412    pub fn gtk_tool_shell_get_text_orientation(shell: *mut GtkToolShell) -> GtkOrientation;
27413    pub fn gtk_tool_shell_get_text_size_group(shell: *mut GtkToolShell) -> *mut GtkSizeGroup;
27414    pub fn gtk_tool_shell_rebuild_menu(shell: *mut GtkToolShell);
27415
27416    //=========================================================================
27417    // GtkTreeDragDest
27418    //=========================================================================
27419    pub fn gtk_tree_drag_dest_get_type() -> GType;
27420    pub fn gtk_tree_drag_dest_drag_data_received(
27421        drag_dest: *mut GtkTreeDragDest,
27422        dest: *mut GtkTreePath,
27423        selection_data: *mut GtkSelectionData,
27424    ) -> gboolean;
27425    pub fn gtk_tree_drag_dest_row_drop_possible(
27426        drag_dest: *mut GtkTreeDragDest,
27427        dest_path: *mut GtkTreePath,
27428        selection_data: *mut GtkSelectionData,
27429    ) -> gboolean;
27430
27431    //=========================================================================
27432    // GtkTreeDragSource
27433    //=========================================================================
27434    pub fn gtk_tree_drag_source_get_type() -> GType;
27435    pub fn gtk_tree_drag_source_drag_data_delete(
27436        drag_source: *mut GtkTreeDragSource,
27437        path: *mut GtkTreePath,
27438    ) -> gboolean;
27439    pub fn gtk_tree_drag_source_drag_data_get(
27440        drag_source: *mut GtkTreeDragSource,
27441        path: *mut GtkTreePath,
27442        selection_data: *mut GtkSelectionData,
27443    ) -> gboolean;
27444    pub fn gtk_tree_drag_source_row_draggable(
27445        drag_source: *mut GtkTreeDragSource,
27446        path: *mut GtkTreePath,
27447    ) -> gboolean;
27448
27449    //=========================================================================
27450    // GtkTreeModel
27451    //=========================================================================
27452    pub fn gtk_tree_model_get_type() -> GType;
27453    pub fn gtk_tree_model_filter_new(
27454        child_model: *mut GtkTreeModel,
27455        root: *mut GtkTreePath,
27456    ) -> *mut GtkTreeModel;
27457    pub fn gtk_tree_model_foreach(
27458        model: *mut GtkTreeModel,
27459        func: GtkTreeModelForeachFunc,
27460        user_data: gpointer,
27461    );
27462    pub fn gtk_tree_model_get(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, ...);
27463    pub fn gtk_tree_model_get_column_type(tree_model: *mut GtkTreeModel, index_: c_int) -> GType;
27464    pub fn gtk_tree_model_get_flags(tree_model: *mut GtkTreeModel) -> GtkTreeModelFlags;
27465    pub fn gtk_tree_model_get_iter(
27466        tree_model: *mut GtkTreeModel,
27467        iter: *mut GtkTreeIter,
27468        path: *mut GtkTreePath,
27469    ) -> gboolean;
27470    pub fn gtk_tree_model_get_iter_first(
27471        tree_model: *mut GtkTreeModel,
27472        iter: *mut GtkTreeIter,
27473    ) -> gboolean;
27474    pub fn gtk_tree_model_get_iter_from_string(
27475        tree_model: *mut GtkTreeModel,
27476        iter: *mut GtkTreeIter,
27477        path_string: *const c_char,
27478    ) -> gboolean;
27479    pub fn gtk_tree_model_get_n_columns(tree_model: *mut GtkTreeModel) -> c_int;
27480    pub fn gtk_tree_model_get_path(
27481        tree_model: *mut GtkTreeModel,
27482        iter: *mut GtkTreeIter,
27483    ) -> *mut GtkTreePath;
27484    pub fn gtk_tree_model_get_string_from_iter(
27485        tree_model: *mut GtkTreeModel,
27486        iter: *mut GtkTreeIter,
27487    ) -> *mut c_char;
27488    //pub fn gtk_tree_model_get_valist(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
27489    pub fn gtk_tree_model_get_value(
27490        tree_model: *mut GtkTreeModel,
27491        iter: *mut GtkTreeIter,
27492        column: c_int,
27493        value: *mut gobject::GValue,
27494    );
27495    pub fn gtk_tree_model_iter_children(
27496        tree_model: *mut GtkTreeModel,
27497        iter: *mut GtkTreeIter,
27498        parent: *mut GtkTreeIter,
27499    ) -> gboolean;
27500    pub fn gtk_tree_model_iter_has_child(
27501        tree_model: *mut GtkTreeModel,
27502        iter: *mut GtkTreeIter,
27503    ) -> gboolean;
27504    pub fn gtk_tree_model_iter_n_children(
27505        tree_model: *mut GtkTreeModel,
27506        iter: *mut GtkTreeIter,
27507    ) -> c_int;
27508    pub fn gtk_tree_model_iter_next(
27509        tree_model: *mut GtkTreeModel,
27510        iter: *mut GtkTreeIter,
27511    ) -> gboolean;
27512    pub fn gtk_tree_model_iter_nth_child(
27513        tree_model: *mut GtkTreeModel,
27514        iter: *mut GtkTreeIter,
27515        parent: *mut GtkTreeIter,
27516        n: c_int,
27517    ) -> gboolean;
27518    pub fn gtk_tree_model_iter_parent(
27519        tree_model: *mut GtkTreeModel,
27520        iter: *mut GtkTreeIter,
27521        child: *mut GtkTreeIter,
27522    ) -> gboolean;
27523    pub fn gtk_tree_model_iter_previous(
27524        tree_model: *mut GtkTreeModel,
27525        iter: *mut GtkTreeIter,
27526    ) -> gboolean;
27527    pub fn gtk_tree_model_ref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
27528    pub fn gtk_tree_model_row_changed(
27529        tree_model: *mut GtkTreeModel,
27530        path: *mut GtkTreePath,
27531        iter: *mut GtkTreeIter,
27532    );
27533    pub fn gtk_tree_model_row_deleted(tree_model: *mut GtkTreeModel, path: *mut GtkTreePath);
27534    pub fn gtk_tree_model_row_has_child_toggled(
27535        tree_model: *mut GtkTreeModel,
27536        path: *mut GtkTreePath,
27537        iter: *mut GtkTreeIter,
27538    );
27539    pub fn gtk_tree_model_row_inserted(
27540        tree_model: *mut GtkTreeModel,
27541        path: *mut GtkTreePath,
27542        iter: *mut GtkTreeIter,
27543    );
27544    pub fn gtk_tree_model_rows_reordered(
27545        tree_model: *mut GtkTreeModel,
27546        path: *mut GtkTreePath,
27547        iter: *mut GtkTreeIter,
27548        new_order: *mut c_int,
27549    );
27550    pub fn gtk_tree_model_rows_reordered_with_length(
27551        tree_model: *mut GtkTreeModel,
27552        path: *mut GtkTreePath,
27553        iter: *mut GtkTreeIter,
27554        new_order: *mut c_int,
27555        length: c_int,
27556    );
27557    pub fn gtk_tree_model_unref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
27558
27559    //=========================================================================
27560    // GtkTreeSortable
27561    //=========================================================================
27562    pub fn gtk_tree_sortable_get_type() -> GType;
27563    pub fn gtk_tree_sortable_get_sort_column_id(
27564        sortable: *mut GtkTreeSortable,
27565        sort_column_id: *mut c_int,
27566        order: *mut GtkSortType,
27567    ) -> gboolean;
27568    pub fn gtk_tree_sortable_has_default_sort_func(sortable: *mut GtkTreeSortable) -> gboolean;
27569    pub fn gtk_tree_sortable_set_default_sort_func(
27570        sortable: *mut GtkTreeSortable,
27571        sort_func: GtkTreeIterCompareFunc,
27572        user_data: gpointer,
27573        destroy: glib::GDestroyNotify,
27574    );
27575    pub fn gtk_tree_sortable_set_sort_column_id(
27576        sortable: *mut GtkTreeSortable,
27577        sort_column_id: c_int,
27578        order: GtkSortType,
27579    );
27580    pub fn gtk_tree_sortable_set_sort_func(
27581        sortable: *mut GtkTreeSortable,
27582        sort_column_id: c_int,
27583        sort_func: GtkTreeIterCompareFunc,
27584        user_data: gpointer,
27585        destroy: glib::GDestroyNotify,
27586    );
27587    pub fn gtk_tree_sortable_sort_column_changed(sortable: *mut GtkTreeSortable);
27588
27589    //=========================================================================
27590    // Other functions
27591    //=========================================================================
27592    pub fn gtk_accel_groups_activate(
27593        object: *mut gobject::GObject,
27594        accel_key: c_uint,
27595        accel_mods: gdk::GdkModifierType,
27596    ) -> gboolean;
27597    pub fn gtk_accel_groups_from_object(object: *mut gobject::GObject) -> *mut glib::GSList;
27598    pub fn gtk_accelerator_get_default_mod_mask() -> gdk::GdkModifierType;
27599    pub fn gtk_accelerator_get_label(
27600        accelerator_key: c_uint,
27601        accelerator_mods: gdk::GdkModifierType,
27602    ) -> *mut c_char;
27603    pub fn gtk_accelerator_get_label_with_keycode(
27604        display: *mut gdk::GdkDisplay,
27605        accelerator_key: c_uint,
27606        keycode: c_uint,
27607        accelerator_mods: gdk::GdkModifierType,
27608    ) -> *mut c_char;
27609    pub fn gtk_accelerator_name(
27610        accelerator_key: c_uint,
27611        accelerator_mods: gdk::GdkModifierType,
27612    ) -> *mut c_char;
27613    pub fn gtk_accelerator_name_with_keycode(
27614        display: *mut gdk::GdkDisplay,
27615        accelerator_key: c_uint,
27616        keycode: c_uint,
27617        accelerator_mods: gdk::GdkModifierType,
27618    ) -> *mut c_char;
27619    pub fn gtk_accelerator_parse(
27620        accelerator: *const c_char,
27621        accelerator_key: *mut c_uint,
27622        accelerator_mods: *mut gdk::GdkModifierType,
27623    );
27624    pub fn gtk_accelerator_parse_with_keycode(
27625        accelerator: *const c_char,
27626        accelerator_key: *mut c_uint,
27627        accelerator_codes: *mut *mut c_uint,
27628        accelerator_mods: *mut gdk::GdkModifierType,
27629    );
27630    pub fn gtk_accelerator_set_default_mod_mask(default_mod_mask: gdk::GdkModifierType);
27631    pub fn gtk_accelerator_valid(keyval: c_uint, modifiers: gdk::GdkModifierType) -> gboolean;
27632    pub fn gtk_alternative_dialog_button_order(screen: *mut gdk::GdkScreen) -> gboolean;
27633    pub fn gtk_bindings_activate(
27634        object: *mut gobject::GObject,
27635        keyval: c_uint,
27636        modifiers: gdk::GdkModifierType,
27637    ) -> gboolean;
27638    pub fn gtk_bindings_activate_event(
27639        object: *mut gobject::GObject,
27640        event: *mut gdk::GdkEventKey,
27641    ) -> gboolean;
27642    pub fn gtk_cairo_should_draw_window(
27643        cr: *mut cairo::cairo_t,
27644        window: *mut gdk::GdkWindow,
27645    ) -> gboolean;
27646    pub fn gtk_cairo_transform_to_window(
27647        cr: *mut cairo::cairo_t,
27648        widget: *mut GtkWidget,
27649        window: *mut gdk::GdkWindow,
27650    );
27651    pub fn gtk_check_version(
27652        required_major: c_uint,
27653        required_minor: c_uint,
27654        required_micro: c_uint,
27655    ) -> *const c_char;
27656    pub fn gtk_device_grab_add(
27657        widget: *mut GtkWidget,
27658        device: *mut gdk::GdkDevice,
27659        block_others: gboolean,
27660    );
27661    pub fn gtk_device_grab_remove(widget: *mut GtkWidget, device: *mut gdk::GdkDevice);
27662    pub fn gtk_disable_setlocale();
27663    pub fn gtk_distribute_natural_allocation(
27664        extra_space: c_int,
27665        n_requested_sizes: c_uint,
27666        sizes: *mut GtkRequestedSize,
27667    ) -> c_int;
27668    pub fn gtk_drag_cancel(context: *mut gdk::GdkDragContext);
27669    pub fn gtk_drag_finish(
27670        context: *mut gdk::GdkDragContext,
27671        success: gboolean,
27672        del: gboolean,
27673        time_: u32,
27674    );
27675    pub fn gtk_drag_get_source_widget(context: *mut gdk::GdkDragContext) -> *mut GtkWidget;
27676    pub fn gtk_drag_set_icon_default(context: *mut gdk::GdkDragContext);
27677    pub fn gtk_drag_set_icon_gicon(
27678        context: *mut gdk::GdkDragContext,
27679        icon: *mut gio::GIcon,
27680        hot_x: c_int,
27681        hot_y: c_int,
27682    );
27683    pub fn gtk_drag_set_icon_name(
27684        context: *mut gdk::GdkDragContext,
27685        icon_name: *const c_char,
27686        hot_x: c_int,
27687        hot_y: c_int,
27688    );
27689    pub fn gtk_drag_set_icon_pixbuf(
27690        context: *mut gdk::GdkDragContext,
27691        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
27692        hot_x: c_int,
27693        hot_y: c_int,
27694    );
27695    pub fn gtk_drag_set_icon_stock(
27696        context: *mut gdk::GdkDragContext,
27697        stock_id: *const c_char,
27698        hot_x: c_int,
27699        hot_y: c_int,
27700    );
27701    pub fn gtk_drag_set_icon_surface(
27702        context: *mut gdk::GdkDragContext,
27703        surface: *mut cairo::cairo_surface_t,
27704    );
27705    pub fn gtk_drag_set_icon_widget(
27706        context: *mut gdk::GdkDragContext,
27707        widget: *mut GtkWidget,
27708        hot_x: c_int,
27709        hot_y: c_int,
27710    );
27711    pub fn gtk_draw_insertion_cursor(
27712        widget: *mut GtkWidget,
27713        cr: *mut cairo::cairo_t,
27714        location: *const gdk::GdkRectangle,
27715        is_primary: gboolean,
27716        direction: GtkTextDirection,
27717        draw_arrow: gboolean,
27718    );
27719    pub fn gtk_events_pending() -> gboolean;
27720    pub fn gtk_false() -> gboolean;
27721    pub fn gtk_get_binary_age() -> c_uint;
27722    pub fn gtk_get_current_event() -> *mut gdk::GdkEvent;
27723    pub fn gtk_get_current_event_device() -> *mut gdk::GdkDevice;
27724    pub fn gtk_get_current_event_state(state: *mut gdk::GdkModifierType) -> gboolean;
27725    pub fn gtk_get_current_event_time() -> u32;
27726    pub fn gtk_get_debug_flags() -> c_uint;
27727    pub fn gtk_get_default_language() -> *mut pango::PangoLanguage;
27728    pub fn gtk_get_event_widget(event: *mut gdk::GdkEvent) -> *mut GtkWidget;
27729    pub fn gtk_get_interface_age() -> c_uint;
27730    pub fn gtk_get_locale_direction() -> GtkTextDirection;
27731    pub fn gtk_get_major_version() -> c_uint;
27732    pub fn gtk_get_micro_version() -> c_uint;
27733    pub fn gtk_get_minor_version() -> c_uint;
27734    pub fn gtk_get_option_group(open_default_display: gboolean) -> *mut glib::GOptionGroup;
27735    pub fn gtk_grab_get_current() -> *mut GtkWidget;
27736    pub fn gtk_init(argc: *mut c_int, argv: *mut *mut *mut c_char);
27737    pub fn gtk_init_check(argc: *mut c_int, argv: *mut *mut *mut c_char) -> gboolean;
27738    pub fn gtk_init_with_args(
27739        argc: *mut c_int,
27740        argv: *mut *mut *mut c_char,
27741        parameter_string: *const c_char,
27742        entries: *const glib::GOptionEntry,
27743        translation_domain: *const c_char,
27744        error: *mut *mut glib::GError,
27745    ) -> gboolean;
27746    pub fn gtk_key_snooper_install(snooper: GtkKeySnoopFunc, func_data: gpointer) -> c_uint;
27747    pub fn gtk_key_snooper_remove(snooper_handler_id: c_uint);
27748    pub fn gtk_main();
27749    pub fn gtk_main_do_event(event: *mut gdk::GdkEvent);
27750    pub fn gtk_main_iteration() -> gboolean;
27751    pub fn gtk_main_iteration_do(blocking: gboolean) -> gboolean;
27752    pub fn gtk_main_level() -> c_uint;
27753    pub fn gtk_main_quit();
27754    pub fn gtk_paint_arrow(
27755        style: *mut GtkStyle,
27756        cr: *mut cairo::cairo_t,
27757        state_type: GtkStateType,
27758        shadow_type: GtkShadowType,
27759        widget: *mut GtkWidget,
27760        detail: *const c_char,
27761        arrow_type: GtkArrowType,
27762        fill: gboolean,
27763        x: c_int,
27764        y: c_int,
27765        width: c_int,
27766        height: c_int,
27767    );
27768    pub fn gtk_paint_box(
27769        style: *mut GtkStyle,
27770        cr: *mut cairo::cairo_t,
27771        state_type: GtkStateType,
27772        shadow_type: GtkShadowType,
27773        widget: *mut GtkWidget,
27774        detail: *const c_char,
27775        x: c_int,
27776        y: c_int,
27777        width: c_int,
27778        height: c_int,
27779    );
27780    pub fn gtk_paint_box_gap(
27781        style: *mut GtkStyle,
27782        cr: *mut cairo::cairo_t,
27783        state_type: GtkStateType,
27784        shadow_type: GtkShadowType,
27785        widget: *mut GtkWidget,
27786        detail: *const c_char,
27787        x: c_int,
27788        y: c_int,
27789        width: c_int,
27790        height: c_int,
27791        gap_side: GtkPositionType,
27792        gap_x: c_int,
27793        gap_width: c_int,
27794    );
27795    pub fn gtk_paint_check(
27796        style: *mut GtkStyle,
27797        cr: *mut cairo::cairo_t,
27798        state_type: GtkStateType,
27799        shadow_type: GtkShadowType,
27800        widget: *mut GtkWidget,
27801        detail: *const c_char,
27802        x: c_int,
27803        y: c_int,
27804        width: c_int,
27805        height: c_int,
27806    );
27807    pub fn gtk_paint_diamond(
27808        style: *mut GtkStyle,
27809        cr: *mut cairo::cairo_t,
27810        state_type: GtkStateType,
27811        shadow_type: GtkShadowType,
27812        widget: *mut GtkWidget,
27813        detail: *const c_char,
27814        x: c_int,
27815        y: c_int,
27816        width: c_int,
27817        height: c_int,
27818    );
27819    pub fn gtk_paint_expander(
27820        style: *mut GtkStyle,
27821        cr: *mut cairo::cairo_t,
27822        state_type: GtkStateType,
27823        widget: *mut GtkWidget,
27824        detail: *const c_char,
27825        x: c_int,
27826        y: c_int,
27827        expander_style: GtkExpanderStyle,
27828    );
27829    pub fn gtk_paint_extension(
27830        style: *mut GtkStyle,
27831        cr: *mut cairo::cairo_t,
27832        state_type: GtkStateType,
27833        shadow_type: GtkShadowType,
27834        widget: *mut GtkWidget,
27835        detail: *const c_char,
27836        x: c_int,
27837        y: c_int,
27838        width: c_int,
27839        height: c_int,
27840        gap_side: GtkPositionType,
27841    );
27842    pub fn gtk_paint_flat_box(
27843        style: *mut GtkStyle,
27844        cr: *mut cairo::cairo_t,
27845        state_type: GtkStateType,
27846        shadow_type: GtkShadowType,
27847        widget: *mut GtkWidget,
27848        detail: *const c_char,
27849        x: c_int,
27850        y: c_int,
27851        width: c_int,
27852        height: c_int,
27853    );
27854    pub fn gtk_paint_focus(
27855        style: *mut GtkStyle,
27856        cr: *mut cairo::cairo_t,
27857        state_type: GtkStateType,
27858        widget: *mut GtkWidget,
27859        detail: *const c_char,
27860        x: c_int,
27861        y: c_int,
27862        width: c_int,
27863        height: c_int,
27864    );
27865    pub fn gtk_paint_handle(
27866        style: *mut GtkStyle,
27867        cr: *mut cairo::cairo_t,
27868        state_type: GtkStateType,
27869        shadow_type: GtkShadowType,
27870        widget: *mut GtkWidget,
27871        detail: *const c_char,
27872        x: c_int,
27873        y: c_int,
27874        width: c_int,
27875        height: c_int,
27876        orientation: GtkOrientation,
27877    );
27878    pub fn gtk_paint_hline(
27879        style: *mut GtkStyle,
27880        cr: *mut cairo::cairo_t,
27881        state_type: GtkStateType,
27882        widget: *mut GtkWidget,
27883        detail: *const c_char,
27884        x1: c_int,
27885        x2: c_int,
27886        y: c_int,
27887    );
27888    pub fn gtk_paint_layout(
27889        style: *mut GtkStyle,
27890        cr: *mut cairo::cairo_t,
27891        state_type: GtkStateType,
27892        use_text: gboolean,
27893        widget: *mut GtkWidget,
27894        detail: *const c_char,
27895        x: c_int,
27896        y: c_int,
27897        layout: *mut pango::PangoLayout,
27898    );
27899    pub fn gtk_paint_option(
27900        style: *mut GtkStyle,
27901        cr: *mut cairo::cairo_t,
27902        state_type: GtkStateType,
27903        shadow_type: GtkShadowType,
27904        widget: *mut GtkWidget,
27905        detail: *const c_char,
27906        x: c_int,
27907        y: c_int,
27908        width: c_int,
27909        height: c_int,
27910    );
27911    pub fn gtk_paint_resize_grip(
27912        style: *mut GtkStyle,
27913        cr: *mut cairo::cairo_t,
27914        state_type: GtkStateType,
27915        widget: *mut GtkWidget,
27916        detail: *const c_char,
27917        edge: gdk::GdkWindowEdge,
27918        x: c_int,
27919        y: c_int,
27920        width: c_int,
27921        height: c_int,
27922    );
27923    pub fn gtk_paint_shadow(
27924        style: *mut GtkStyle,
27925        cr: *mut cairo::cairo_t,
27926        state_type: GtkStateType,
27927        shadow_type: GtkShadowType,
27928        widget: *mut GtkWidget,
27929        detail: *const c_char,
27930        x: c_int,
27931        y: c_int,
27932        width: c_int,
27933        height: c_int,
27934    );
27935    pub fn gtk_paint_shadow_gap(
27936        style: *mut GtkStyle,
27937        cr: *mut cairo::cairo_t,
27938        state_type: GtkStateType,
27939        shadow_type: GtkShadowType,
27940        widget: *mut GtkWidget,
27941        detail: *const c_char,
27942        x: c_int,
27943        y: c_int,
27944        width: c_int,
27945        height: c_int,
27946        gap_side: GtkPositionType,
27947        gap_x: c_int,
27948        gap_width: c_int,
27949    );
27950    pub fn gtk_paint_slider(
27951        style: *mut GtkStyle,
27952        cr: *mut cairo::cairo_t,
27953        state_type: GtkStateType,
27954        shadow_type: GtkShadowType,
27955        widget: *mut GtkWidget,
27956        detail: *const c_char,
27957        x: c_int,
27958        y: c_int,
27959        width: c_int,
27960        height: c_int,
27961        orientation: GtkOrientation,
27962    );
27963    pub fn gtk_paint_spinner(
27964        style: *mut GtkStyle,
27965        cr: *mut cairo::cairo_t,
27966        state_type: GtkStateType,
27967        widget: *mut GtkWidget,
27968        detail: *const c_char,
27969        step: c_uint,
27970        x: c_int,
27971        y: c_int,
27972        width: c_int,
27973        height: c_int,
27974    );
27975    pub fn gtk_paint_tab(
27976        style: *mut GtkStyle,
27977        cr: *mut cairo::cairo_t,
27978        state_type: GtkStateType,
27979        shadow_type: GtkShadowType,
27980        widget: *mut GtkWidget,
27981        detail: *const c_char,
27982        x: c_int,
27983        y: c_int,
27984        width: c_int,
27985        height: c_int,
27986    );
27987    pub fn gtk_paint_vline(
27988        style: *mut GtkStyle,
27989        cr: *mut cairo::cairo_t,
27990        state_type: GtkStateType,
27991        widget: *mut GtkWidget,
27992        detail: *const c_char,
27993        y1_: c_int,
27994        y2_: c_int,
27995        x: c_int,
27996    );
27997    pub fn gtk_parse_args(argc: *mut c_int, argv: *mut *mut *mut c_char) -> gboolean;
27998    pub fn gtk_print_run_page_setup_dialog(
27999        parent: *mut GtkWindow,
28000        page_setup: *mut GtkPageSetup,
28001        settings: *mut GtkPrintSettings,
28002    ) -> *mut GtkPageSetup;
28003    pub fn gtk_print_run_page_setup_dialog_async(
28004        parent: *mut GtkWindow,
28005        page_setup: *mut GtkPageSetup,
28006        settings: *mut GtkPrintSettings,
28007        done_cb: GtkPageSetupDoneFunc,
28008        data: gpointer,
28009    );
28010    pub fn gtk_propagate_event(widget: *mut GtkWidget, event: *mut gdk::GdkEvent);
28011    pub fn gtk_rc_add_default_file(filename: *const c_char);
28012    pub fn gtk_rc_find_module_in_path(module_file: *const c_char) -> *mut c_char;
28013    pub fn gtk_rc_find_pixmap_in_path(
28014        settings: *mut GtkSettings,
28015        scanner: *mut glib::GScanner,
28016        pixmap_file: *const c_char,
28017    ) -> *mut c_char;
28018    pub fn gtk_rc_get_default_files() -> *mut *mut c_char;
28019    pub fn gtk_rc_get_im_module_file() -> *mut c_char;
28020    pub fn gtk_rc_get_im_module_path() -> *mut c_char;
28021    pub fn gtk_rc_get_module_dir() -> *mut c_char;
28022    pub fn gtk_rc_get_style(widget: *mut GtkWidget) -> *mut GtkStyle;
28023    pub fn gtk_rc_get_style_by_paths(
28024        settings: *mut GtkSettings,
28025        widget_path: *const c_char,
28026        class_path: *const c_char,
28027        type_: GType,
28028    ) -> *mut GtkStyle;
28029    pub fn gtk_rc_get_theme_dir() -> *mut c_char;
28030    pub fn gtk_rc_parse(filename: *const c_char);
28031    pub fn gtk_rc_parse_color(scanner: *mut glib::GScanner, color: *mut gdk::GdkColor) -> c_uint;
28032    pub fn gtk_rc_parse_color_full(
28033        scanner: *mut glib::GScanner,
28034        style: *mut GtkRcStyle,
28035        color: *mut gdk::GdkColor,
28036    ) -> c_uint;
28037    pub fn gtk_rc_parse_priority(
28038        scanner: *mut glib::GScanner,
28039        priority: *mut GtkPathPriorityType,
28040    ) -> c_uint;
28041    pub fn gtk_rc_parse_state(scanner: *mut glib::GScanner, state: *mut GtkStateType) -> c_uint;
28042    pub fn gtk_rc_parse_string(rc_string: *const c_char);
28043    pub fn gtk_rc_reparse_all() -> gboolean;
28044    pub fn gtk_rc_reparse_all_for_settings(
28045        settings: *mut GtkSettings,
28046        force_load: gboolean,
28047    ) -> gboolean;
28048    pub fn gtk_rc_reset_styles(settings: *mut GtkSettings);
28049    pub fn gtk_rc_scanner_new() -> *mut glib::GScanner;
28050    pub fn gtk_rc_set_default_files(filenames: *mut *mut c_char);
28051    pub fn gtk_render_activity(
28052        context: *mut GtkStyleContext,
28053        cr: *mut cairo::cairo_t,
28054        x: c_double,
28055        y: c_double,
28056        width: c_double,
28057        height: c_double,
28058    );
28059    pub fn gtk_render_arrow(
28060        context: *mut GtkStyleContext,
28061        cr: *mut cairo::cairo_t,
28062        angle: c_double,
28063        x: c_double,
28064        y: c_double,
28065        size: c_double,
28066    );
28067    pub fn gtk_render_background(
28068        context: *mut GtkStyleContext,
28069        cr: *mut cairo::cairo_t,
28070        x: c_double,
28071        y: c_double,
28072        width: c_double,
28073        height: c_double,
28074    );
28075    pub fn gtk_render_background_get_clip(
28076        context: *mut GtkStyleContext,
28077        x: c_double,
28078        y: c_double,
28079        width: c_double,
28080        height: c_double,
28081        out_clip: *mut gdk::GdkRectangle,
28082    );
28083    pub fn gtk_render_check(
28084        context: *mut GtkStyleContext,
28085        cr: *mut cairo::cairo_t,
28086        x: c_double,
28087        y: c_double,
28088        width: c_double,
28089        height: c_double,
28090    );
28091    pub fn gtk_render_expander(
28092        context: *mut GtkStyleContext,
28093        cr: *mut cairo::cairo_t,
28094        x: c_double,
28095        y: c_double,
28096        width: c_double,
28097        height: c_double,
28098    );
28099    pub fn gtk_render_extension(
28100        context: *mut GtkStyleContext,
28101        cr: *mut cairo::cairo_t,
28102        x: c_double,
28103        y: c_double,
28104        width: c_double,
28105        height: c_double,
28106        gap_side: GtkPositionType,
28107    );
28108    pub fn gtk_render_focus(
28109        context: *mut GtkStyleContext,
28110        cr: *mut cairo::cairo_t,
28111        x: c_double,
28112        y: c_double,
28113        width: c_double,
28114        height: c_double,
28115    );
28116    pub fn gtk_render_frame(
28117        context: *mut GtkStyleContext,
28118        cr: *mut cairo::cairo_t,
28119        x: c_double,
28120        y: c_double,
28121        width: c_double,
28122        height: c_double,
28123    );
28124    pub fn gtk_render_frame_gap(
28125        context: *mut GtkStyleContext,
28126        cr: *mut cairo::cairo_t,
28127        x: c_double,
28128        y: c_double,
28129        width: c_double,
28130        height: c_double,
28131        gap_side: GtkPositionType,
28132        xy0_gap: c_double,
28133        xy1_gap: c_double,
28134    );
28135    pub fn gtk_render_handle(
28136        context: *mut GtkStyleContext,
28137        cr: *mut cairo::cairo_t,
28138        x: c_double,
28139        y: c_double,
28140        width: c_double,
28141        height: c_double,
28142    );
28143    pub fn gtk_render_icon(
28144        context: *mut GtkStyleContext,
28145        cr: *mut cairo::cairo_t,
28146        pixbuf: *mut gdk_pixbuf::GdkPixbuf,
28147        x: c_double,
28148        y: c_double,
28149    );
28150    pub fn gtk_render_icon_pixbuf(
28151        context: *mut GtkStyleContext,
28152        source: *const GtkIconSource,
28153        size: GtkIconSize,
28154    ) -> *mut gdk_pixbuf::GdkPixbuf;
28155    pub fn gtk_render_icon_surface(
28156        context: *mut GtkStyleContext,
28157        cr: *mut cairo::cairo_t,
28158        surface: *mut cairo::cairo_surface_t,
28159        x: c_double,
28160        y: c_double,
28161    );
28162    pub fn gtk_render_insertion_cursor(
28163        context: *mut GtkStyleContext,
28164        cr: *mut cairo::cairo_t,
28165        x: c_double,
28166        y: c_double,
28167        layout: *mut pango::PangoLayout,
28168        index: c_int,
28169        direction: pango::PangoDirection,
28170    );
28171    pub fn gtk_render_layout(
28172        context: *mut GtkStyleContext,
28173        cr: *mut cairo::cairo_t,
28174        x: c_double,
28175        y: c_double,
28176        layout: *mut pango::PangoLayout,
28177    );
28178    pub fn gtk_render_line(
28179        context: *mut GtkStyleContext,
28180        cr: *mut cairo::cairo_t,
28181        x0: c_double,
28182        y0: c_double,
28183        x1: c_double,
28184        y1: c_double,
28185    );
28186    pub fn gtk_render_option(
28187        context: *mut GtkStyleContext,
28188        cr: *mut cairo::cairo_t,
28189        x: c_double,
28190        y: c_double,
28191        width: c_double,
28192        height: c_double,
28193    );
28194    pub fn gtk_render_slider(
28195        context: *mut GtkStyleContext,
28196        cr: *mut cairo::cairo_t,
28197        x: c_double,
28198        y: c_double,
28199        width: c_double,
28200        height: c_double,
28201        orientation: GtkOrientation,
28202    );
28203    pub fn gtk_rgb_to_hsv(
28204        r: c_double,
28205        g: c_double,
28206        b: c_double,
28207        h: *mut c_double,
28208        s: *mut c_double,
28209        v: *mut c_double,
28210    );
28211    pub fn gtk_selection_add_target(
28212        widget: *mut GtkWidget,
28213        selection: gdk::GdkAtom,
28214        target: gdk::GdkAtom,
28215        info: c_uint,
28216    );
28217    pub fn gtk_selection_add_targets(
28218        widget: *mut GtkWidget,
28219        selection: gdk::GdkAtom,
28220        targets: *const GtkTargetEntry,
28221        ntargets: c_uint,
28222    );
28223    pub fn gtk_selection_clear_targets(widget: *mut GtkWidget, selection: gdk::GdkAtom);
28224    pub fn gtk_selection_convert(
28225        widget: *mut GtkWidget,
28226        selection: gdk::GdkAtom,
28227        target: gdk::GdkAtom,
28228        time_: u32,
28229    ) -> gboolean;
28230    pub fn gtk_selection_owner_set(
28231        widget: *mut GtkWidget,
28232        selection: gdk::GdkAtom,
28233        time_: u32,
28234    ) -> gboolean;
28235    pub fn gtk_selection_owner_set_for_display(
28236        display: *mut gdk::GdkDisplay,
28237        widget: *mut GtkWidget,
28238        selection: gdk::GdkAtom,
28239        time_: u32,
28240    ) -> gboolean;
28241    pub fn gtk_selection_remove_all(widget: *mut GtkWidget);
28242    pub fn gtk_set_debug_flags(flags: c_uint);
28243    pub fn gtk_show_about_dialog(parent: *mut GtkWindow, first_property_name: *const c_char, ...);
28244    pub fn gtk_show_uri(
28245        screen: *mut gdk::GdkScreen,
28246        uri: *const c_char,
28247        timestamp: u32,
28248        error: *mut *mut glib::GError,
28249    ) -> gboolean;
28250    pub fn gtk_show_uri_on_window(
28251        parent: *mut GtkWindow,
28252        uri: *const c_char,
28253        timestamp: u32,
28254        error: *mut *mut glib::GError,
28255    ) -> gboolean;
28256    pub fn gtk_stock_add(items: *const GtkStockItem, n_items: c_uint);
28257    pub fn gtk_stock_add_static(items: *const GtkStockItem, n_items: c_uint);
28258    pub fn gtk_stock_list_ids() -> *mut glib::GSList;
28259    pub fn gtk_stock_lookup(stock_id: *const c_char, item: *mut GtkStockItem) -> gboolean;
28260    pub fn gtk_stock_set_translate_func(
28261        domain: *const c_char,
28262        func: GtkTranslateFunc,
28263        data: gpointer,
28264        notify: glib::GDestroyNotify,
28265    );
28266    pub fn gtk_target_table_free(targets: *mut GtkTargetEntry, n_targets: c_int);
28267    pub fn gtk_target_table_new_from_list(
28268        list: *mut GtkTargetList,
28269        n_targets: *mut c_int,
28270    ) -> *mut GtkTargetEntry;
28271    pub fn gtk_targets_include_image(
28272        targets: *mut gdk::GdkAtom,
28273        n_targets: c_int,
28274        writable: gboolean,
28275    ) -> gboolean;
28276    pub fn gtk_targets_include_rich_text(
28277        targets: *mut gdk::GdkAtom,
28278        n_targets: c_int,
28279        buffer: *mut GtkTextBuffer,
28280    ) -> gboolean;
28281    pub fn gtk_targets_include_text(targets: *mut gdk::GdkAtom, n_targets: c_int) -> gboolean;
28282    pub fn gtk_targets_include_uri(targets: *mut gdk::GdkAtom, n_targets: c_int) -> gboolean;
28283    pub fn gtk_test_create_simple_window(
28284        window_title: *const c_char,
28285        dialog_text: *const c_char,
28286    ) -> *mut GtkWidget;
28287    pub fn gtk_test_create_widget(
28288        widget_type: GType,
28289        first_property_name: *const c_char,
28290        ...
28291    ) -> *mut GtkWidget;
28292    pub fn gtk_test_display_button_window(
28293        window_title: *const c_char,
28294        dialog_text: *const c_char,
28295        ...
28296    ) -> *mut GtkWidget;
28297    pub fn gtk_test_find_label(
28298        widget: *mut GtkWidget,
28299        label_pattern: *const c_char,
28300    ) -> *mut GtkWidget;
28301    pub fn gtk_test_find_sibling(base_widget: *mut GtkWidget, widget_type: GType)
28302    -> *mut GtkWidget;
28303    pub fn gtk_test_find_widget(
28304        widget: *mut GtkWidget,
28305        label_pattern: *const c_char,
28306        widget_type: GType,
28307    ) -> *mut GtkWidget;
28308    pub fn gtk_test_init(argcp: *mut c_int, argvp: *mut *mut *mut c_char, ...);
28309    pub fn gtk_test_list_all_types(n_types: *mut c_uint) -> *const GType;
28310    pub fn gtk_test_register_all_types();
28311    pub fn gtk_test_slider_get_value(widget: *mut GtkWidget) -> c_double;
28312    pub fn gtk_test_slider_set_perc(widget: *mut GtkWidget, percentage: c_double);
28313    pub fn gtk_test_spin_button_click(
28314        spinner: *mut GtkSpinButton,
28315        button: c_uint,
28316        upwards: gboolean,
28317    ) -> gboolean;
28318    pub fn gtk_test_text_get(widget: *mut GtkWidget) -> *mut c_char;
28319    pub fn gtk_test_text_set(widget: *mut GtkWidget, string: *const c_char);
28320    pub fn gtk_test_widget_click(
28321        widget: *mut GtkWidget,
28322        button: c_uint,
28323        modifiers: gdk::GdkModifierType,
28324    ) -> gboolean;
28325    pub fn gtk_test_widget_send_key(
28326        widget: *mut GtkWidget,
28327        keyval: c_uint,
28328        modifiers: gdk::GdkModifierType,
28329    ) -> gboolean;
28330    pub fn gtk_test_widget_wait_for_draw(widget: *mut GtkWidget);
28331    pub fn gtk_tree_get_row_drag_data(
28332        selection_data: *mut GtkSelectionData,
28333        tree_model: *mut *mut GtkTreeModel,
28334        path: *mut *mut GtkTreePath,
28335    ) -> gboolean;
28336    pub fn gtk_tree_set_row_drag_data(
28337        selection_data: *mut GtkSelectionData,
28338        tree_model: *mut GtkTreeModel,
28339        path: *mut GtkTreePath,
28340    ) -> gboolean;
28341    pub fn gtk_true() -> gboolean;
28342
28343}