1[options]
2girs_directories = ["../gir-files"]
3library = "Gtk"
4version = "3.0"
5min_cfg_version = "3.18"
6target_path = "."
7work_mode = "normal"
8generate_safety_asserts = true
9deprecate_by_min_version = true
10single_version_file = true
11
12generate = [
13    "Gtk.AccelFlags",
14    "Gtk.Align",
15    "Gtk.ApplicationInhibitFlags",
16    "Gtk.ArrowType",
17    "Gtk.AssistantPageType",
18    "Gtk.BaselinePosition",
19    "Gtk.Bin",
20    "Gtk.BorderStyle",
21    "Gtk.BuilderError",
22    "Gtk.ButtonBoxStyle",
23    "Gtk.ButtonRole",
24    "Gtk.ButtonsType",
25    "Gtk.CalendarDisplayOptions",
26    "Gtk.CellAreaContext",
27    "Gtk.CellLayout",
28    "Gtk.CellRendererAccelMode",
29    "Gtk.CellRendererMode",
30    "Gtk.CellRendererState",
31    "Gtk.CornerType",
32    "Gtk.CssProvider",
33    "Gtk.CssProviderError",
34    "Gtk.CssSection",
35    "Gtk.CssSectionType",
36    "Gtk.DeleteType",
37    "Gtk.DestDefaults",
38    "Gtk.DialogFlags",
39    "Gtk.DirectionType",
40    "Gtk.DragResult",
41    "Gtk.EntryIconPosition",
42    "Gtk.EventController",
43    "Gtk.EventSequenceState",
44    "Gtk.FileChooserAction",
45    "Gtk.FileChooserConfirmation",
46    "Gtk.FileChooserError",
47    "Gtk.FileFilter",
48    "Gtk.FileFilterFlags",
49    "Gtk.GestureSingle",
50    "Gtk.IconInfo",
51    "Gtk.IconLookupFlags",
52    "Gtk.IconSize",
53    "Gtk.IconThemeError",
54    "Gtk.IconViewDropPosition",
55    "Gtk.ImageType",
56    "Gtk.InputPurpose",
57    "Gtk.JunctionSides",
58    "Gtk.Justification",
59    "Gtk.LevelBarMode",
60    "Gtk.License",
61    "Gtk.MenuDirectionType",
62    "Gtk.MessageType",
63    "Gtk.Misc",
64    "Gtk.MovementStep",
65    "Gtk.NotebookTab",
66    "Gtk.NumberUpLayout",
67    "Gtk.Orientable",
68    "Gtk.Orientation",
69    "Gtk.PackDirection",
70    "Gtk.PackType",
71    "Gtk.PageOrientation",
72    "Gtk.PageSet",
73    "Gtk.PanDirection",
74    "Gtk.PlacesOpenFlags",
75    "Gtk.PolicyType",
76    "Gtk.PopoverConstraint",
77    "Gtk.PositionType",
78    "Gtk.PrintDuplex",
79    "Gtk.PrintError",
80    "Gtk.PrintOperationAction",
81    "Gtk.PrintOperationPreview",
82    "Gtk.PrintOperationResult",
83    "Gtk.PrintPages",
84    "Gtk.PrintQuality",
85    "Gtk.PrintStatus",
86    "Gtk.PropagationPhase",
87    "Gtk.RecentChooser",
88    "Gtk.RecentChooserError",
89    "Gtk.RecentFilter",
90    "Gtk.RecentFilterFlags",
91    "Gtk.RecentInfo",
92    "Gtk.RecentManagerError",
93    "Gtk.RecentSortType",
94    "Gtk.RegionFlags",
95    "Gtk.ReliefStyle",
96    "Gtk.ResizeMode",
97    "Gtk.RevealerTransitionType",
98    "Gtk.Scrollable",
99    "Gtk.ScrollablePolicy",
100    "Gtk.ScrollStep",
101    "Gtk.ScrollType",
102    "Gtk.SelectionMode",
103    "Gtk.SensitivityType",
104    "Gtk.ShadowType",
105    "Gtk.SizeGroupMode",
106    "Gtk.SizeRequestMode",
107    "Gtk.SortType",
108    "Gtk.SpinButtonUpdatePolicy",
109    "Gtk.SpinType",
110    "Gtk.StackTransitionType",
111    "Gtk.StateFlags",
112    "Gtk.StyleProperties",
113    "Gtk.StyleProvider",
114    "Gtk.TargetFlags",
115    "Gtk.TextAttributes",
116    "Gtk.TextChildAnchor",
117    "Gtk.TextDirection",
118    "Gtk.TextExtendSelection",
119    "Gtk.TextSearchFlags",
120    "Gtk.TextTagTable",
121    "Gtk.TextViewLayer",
122    "Gtk.TextWindowType",
123    "Gtk.ToolbarStyle",
124    "Gtk.ToolPaletteDragTargets",
125    "Gtk.ToolShell",
126    "Gtk.Tooltip",
127    "Gtk.TreeDragDest",
128    "Gtk.TreeDragSource",
129    "Gtk.TreeModelFlags",
130    "Gtk.TreeViewColumnSizing",
131    "Gtk.TreeViewDropPosition",
132    "Gtk.TreeViewGridLines",
133    "Gtk.Unit",
134    "Gtk.WidgetHelpType",
135    "Gtk.WidgetPath",
136    "Gtk.WindowGroup",
137    "Gtk.WindowPosition",
138    "Gtk.WindowType",
139    "Gtk.WrapMode",
140]
141
142ignore = [
143    "Gtk.Activatable",
144    #deprecated since 3.14
145    "Gtk.Alignment",
146    #deprecated since 3.14
147    "Gtk.Arrow",
148    #deprecated since 3.10
149    "Gtk.IconFactory",
150    #deprecated since 3.10
151    "Gtk.IconSet",
152    #deprecated since 3.10
153    "Gtk.IconSource",
154    #deprecated since 3.10
155    "Gtk.ImageMenuItem",
156    #deprecated since 3.10
157    "Gtk.IMPreeditStyle",
158    #deprecated since 3.10
159    "Gtk.IMStatusStyle",
160    #deprecated since 3.14
161    "Gtk.StateType",
162    #deprecated since 3.14
163    "Gtk.StatusIcon",
164    #deprecated since 3.8
165    "Gtk.SymbolicColor",
166]
167
168manual = [
169    "Atk.Object",
170    "cairo.Context",
171    "cairo.FontOptions",
172    "cairo.RectangleInt",
173    "cairo.Region",
174    "cairo.Surface",
175    "Gdk.AnchorHints",
176    "Gdk.Atom",
177    "Gdk.AxisUse",
178    "Gdk.Device",
179    "Gdk.DeviceTool",
180    "Gdk.Display",
181    "Gdk.DragAction",
182    "Gdk.DragContext",
183    "Gdk.DragProtocol",
184    "Gdk.Event",
185    "Gdk.EventButton",
186    "Gdk.EventConfigure",
187    "Gdk.EventCrossing",
188    "Gdk.EventExpose",
189    "Gdk.EventFocus",
190    "Gdk.EventGrabBroken",
191    "Gdk.EventKey",
192    "Gdk.EventMask",
193    "Gdk.EventMotion",
194    "Gdk.EventProperty",
195    "Gdk.EventProximity",
196    "Gdk.EventScroll",
197    "Gdk.EventSelection",
198    "Gdk.EventSequence",
199    "Gdk.EventVisibility",
200    "Gdk.EventWindowState",
201    "Gdk.FrameClock",
202    "Gdk.Geometry",
203    "Gdk.GLContext",
204    "Gdk.Gravity",
205    "Gdk.ModifierIntent",
206    "Gdk.ModifierType",
207    "Gdk.Monitor",
208    "Gdk.Rectangle",
209    "Gdk.RGBA",
210    "Gdk.Screen",
211    "Gdk.Visual",
212    "Gdk.Window",
213    "Gdk.WindowEdge",
214    "Gdk.WindowHints",
215    "Gdk.WindowTypeHint",
216    "GdkPixbuf.Pixbuf",
217    "GdkPixbuf.PixbufAnimation",
218    "Gio.ActionGroup",
219    "Gio.ActionMap",
220    "Gio.AppInfo",
221    "Gio.Application",
222    "Gio.ApplicationFlags",
223    "Gio.Cancellable",
224    "Gio.File",
225    "Gio.Icon",
226    "Gio.ListModel",
227    "Gio.Menu",
228    "Gio.MenuModel",
229    "Gio.MountOperation",
230    "Gio.Permission",
231    "GLib.Error",
232    "GLib.KeyFile",
233    "GLib.Quark",
234    "GLib.Variant",
235    "GLib.VariantType",
236    "GObject.Closure",
237    "GObject.Object",
238    "GObject.Value",
239    "Gtk.Allocation",
240    "Gtk.AppChooser",
241    "Gtk.Border",
242    "Gtk.PadActionEntry",
243    "Gtk.PageRange",
244    "Gtk.RecentData",
245    "Gtk.Requisition",
246    "Gtk.ResponseType",
247    "Gtk.TargetEntry",
248    "Pango.Alignment",
249    "Pango.AttrList",
250    "Pango.Context",
251    "Pango.Direction",
252    "Pango.EllipsizeMode",
253    "Pango.FontDescription",
254    "Pango.FontFace",
255    "Pango.FontFamily",
256    "Pango.FontMap",
257    "Pango.Language",
258    "Pango.Layout",
259    "Pango.Stretch",
260    "Pango.Style",
261    "Pango.TabArray",
262    "Pango.Underline",
263    "Pango.Variant",
264    "Pango.WrapMode",
265    "xlib.Window",
266]
267
268[[object]]
269name = "GObject.ParamSpec"
270status = "manual"
271final_type = true
272
273[[object]]
274name = "Gtk.*"
275status = "generate"
276    [[object.function]]
277    pattern = ".+"
278        [[object.function.parameter]]
279        name = "cr"
280        const = true
281        [[object.function.parameter]]
282        name = "surface"
283        const = true
284    [[object.function]]
285    pattern = "tree_[gs]et_row_drag_data"
286        [[object.function.parameter]]
287        name = "selection_data"
288        const = true
289    [[object.function]]
290    name = "selection_add_targets"
291    #array as pointer
292    ignore = true
293    [[object.function]]
294    name = "target_table_free"
295    #array as pointer
296    ignore = true
297    [[object.function]]
298    name = "target_table_new_from_list"
299    #array as pointer
300    ignore = true
301    [[object.function]]
302    name = "init"
303    #manual
304    ignore = true
305    [[object.function]]
306    name = "main_quit"
307    #manual
308    ignore = true
309    [[object.function]]
310    pattern = "get_(major|minor|micro)_version"
311    assertion = "skip"
312    [[object.function]]
313    pattern = "get_(binary|interface)_age"
314    assertion = "skip"
315    [[object.function]]
316    name = "check_version"
317    assertion = "skip"
318    [[object.function]]
319    pattern = "drag_.+"
320    #manual trait
321    ignore = true
322    [[object.function]]
323    name = "disable_setlocale"
324    assertion = "not-initialized"
325
326[[object]]
327name = "Gtk.AboutDialog"
328status = "generate"
329generate_builder = true
330    [[object.function]]
331    name = "set_website_label"
332        [[object.function.parameter]]
333        name = "website_label"
334        # Passing `NULL` here seems to influence the rendering code
335        nullable = true
336    [[object.signal]]
337    name = "activate-link"
338    inhibit = true
339
340[[object]]
341name = "Gtk.AccelGroup"
342status = "generate"
343manual_traits = ["AccelGroupExtManual"]
344    [[object.function]]
345    name = "query"
346    # It's not a part of public API
347    # See https://mail.gnome.org/archives/commits-list/2012-May/msg07052.html
348    ignore = true
349    [[object.function]]
350    name = "connect"
351    # More convenient implementation
352    manual = true
353    [[object.function]]
354    name = "connect_by_path"
355    # More convenient implementation
356    manual = true
357
358[[object]]
359name = "Gtk.AccelLabel"
360status = "generate"
361generate_builder = true
362
363[[object]]
364name = "Gtk.Actionable"
365status = "generate"
366    [[object.property]]
367    name = "action-target"
368    #has get/set function
369    generate = ["notify"]
370
371[[object]]
372name = "Gtk.ActionBar"
373status = "generate"
374generate_builder = true
375    [[object.child_prop]]
376    name = "pack-type"
377    type = "Gtk.PackType"
378    [[object.child_prop]]
379    name = "position"
380    type = "gint"
381
382[[object]]
383name = "Gtk.Adjustment"
384status = "generate"
385generate_builder = true
386
387[[object]]
388name = "Gtk.AppChooserButton"
389status = "generate"
390generate_builder = true
391
392[[object]]
393name = "Gtk.AppChooserDialog"
394status = "generate"
395generate_builder = true
396    [[object.function]]
397    name = "get_widget"
398        [object.function.return]
399        nullable = false
400
401[[object]]
402name = "Gtk.AppChooserWidget"
403status = "generate"
404generate_builder = true
405
406[[object]]
407name = "Gtk.Application"
408status = "generate"
409generate_builder = true
410builder_postprocess = "Application::register_startup_hook(&ret);"
411trait_name = "GtkApplicationExt"
412manual_traits = ["gio::ApplicationExtManual"]
413    [[object.function]]
414    name = "new"
415    ignore = true
416
417[[object]]
418name = "Gtk.ApplicationWindow"
419status = "generate"
420generate_builder = true
421    [[object.function]]
422    name = "new"
423    ignore = true
424
425[[object]]
426name = "Gtk.AspectFrame"
427status = "generate"
428generate_builder = true
429
430[[object]]
431name = "Gtk.Assistant"
432status = "generate"
433generate_builder = true
434    [[object.child_prop]]
435    name = "complete"
436    type = "gboolean"
437    [[object.child_prop]]
438    name = "has-padding"
439    type = "gboolean"
440    [[object.child_prop]]
441    name = "page-type"
442    type = "Gtk.AssistantPageType"
443    [[object.child_prop]]
444    name = "title"
445    type = "utf8"
446    [[object.function]]
447    name = "get_page_has_padding"
448    rename = "page_has_padding"
449    [[object.function]]
450    name = "get_page_complete"
451    rename = "page_is_complete"
452
453[[object]]
454name = "Gtk.Box"
455status = "generate"
456generate_builder = true
457    [[object.child_prop]]
458    name = "expand"
459    type = "gboolean"
460    doc_hidden = true
461    [[object.child_prop]]
462    name = "fill"
463    type = "gboolean"
464    doc_hidden = true
465    [[object.child_prop]]
466    name = "pack-type"
467    type = "Gtk.PackType"
468    doc_hidden = true
469    [[object.child_prop]]
470    name = "padding"
471    type = "guint"
472    doc_hidden = true
473    [[object.child_prop]]
474    name = "position"
475    type = "gint"
476    [[object.function]]
477    name = "get_child_non_homogeneous"
478    rename = "child_is_non_homogeneous"
479    [[object.function]]
480    name = "get_child_secondary"
481    rename = "child_is_secondary"
482
483[[object]]
484name = "Gtk.Buildable"
485status = "generate"
486manual_traits = ["BuildableExtManual"]
487    [[object.function]]
488    pattern = "[gs]et_name"
489    ignore = true
490    doc_trait_name = "BuildableExtManual"
491
492[[object]]
493name = "Gtk.Builder"
494status = "generate"
495manual_traits = ["BuilderExtManual"]
496    [[object.function]]
497    pattern = ".+_from_file"
498    #path
499    ignore = true
500    doc_trait_name = "BuilderExtManual"
501    [[object.function]]
502    name = "connect_signals_full"
503    # Connect object and swapped signal not supported
504    manual = true
505    [[object.function]]
506    name = "get_object"
507    #downcast
508    ignore = true
509    doc_trait_name = "BuilderExtManual"
510
511[[object]]
512name = "Gtk.Button"
513status = "generate"
514generate_builder = true
515
516[[object]]
517name = "Gtk.ButtonBox"
518status = "generate"
519generate_builder = true
520    [[object.function]]
521    name = "get_child_non_homogeneous"
522    rename = "child_is_non_homogeneous"
523    [[object.function]]
524    name = "get_child_secondary"
525    rename = "child_is_secondary"
526
527[[object]]
528name = "Gtk.Calendar"
529status = "generate"
530generate_builder = true
531    [[object.function]]
532    name = "get_day_is_marked"
533    rename = "day_is_marked"
534
535[[object]]
536name = "Gtk.CellArea"
537status = "generate"
538    [[object.function]]
539    name = "render"
540        [[object.function.parameter]]
541        name = "cr"
542        # cairo::Context is reference-counted
543        const = true
544    [[object.function]]
545    name = "apply_attributes"
546        [[object.function.parameter]]
547        name = "iter"
548        const = true
549    [[object.function]]
550    name = "activate_cell"
551        [[object.function.parameter]]
552        name = "event"
553        const = true
554    [[object.function]]
555    name = "event"
556        [[object.function.parameter]]
557        name = "event"
558        const = true
559    [[object.signal]]
560    name = "add-editable"
561        [[object.signal.parameter]]
562        name = "path"
563        transformation = "treepath"
564    [[object.signal]]
565    name = "apply-attributes"
566        [[object.signal.parameter]]
567        name = "iter"
568        transformation = "borrow"
569    [[object.signal]]
570    name = "focus-changed"
571        [[object.signal.parameter]]
572        name = "path"
573        transformation = "treepath"
574
575[[object]]
576name = "Gtk.CellAreaBox"
577status = "generate"
578generate_builder = true
579
580[[object]]
581name = "Gtk.CellEditable"
582status = "generate"
583    [[object.function]]
584    name = "start_editing"
585        [[object.function.parameter]]
586        name = "event"
587        const = true
588
589[[object]]
590name = "Gtk.CellRenderer"
591status = "generate"
592generate_builder = true
593    [[object.function]]
594    name = "render"
595        [[object.function.parameter]]
596        name = "cr"
597        # cairo::Context is reference-counted
598        const = true
599    [[object.function]]
600    name = "activate"
601        [[object.function.parameter]]
602        name = "event"
603        const = true
604    [[object.function]]
605    name = "start_editing"
606        [[object.function.parameter]]
607        name = "event"
608        const = true
609    [[object.signal]]
610    name = "editing-started"
611        [[object.signal.parameter]]
612        name = "path"
613        transformation = "treepath"
614
615[[object]]
616name = "Gtk.CellRendererAccel"
617status = "generate"
618generate_builder = true
619    [[object.signal]]
620    name = "accel-cleared"
621        [[object.signal.parameter]]
622        name = "path_string"
623        transformation = "treepath"
624        new_name = "path"
625    [[object.signal]]
626    name = "accel-edited"
627        [[object.signal.parameter]]
628        name = "path_string"
629        transformation = "treepath"
630        new_name = "path"
631
632[[object]]
633name = "Gtk.CellRendererCombo"
634status = "generate"
635generate_builder = true
636    [[object.signal]]
637    name = "changed"
638        [[object.signal.parameter]]
639        name = "new_iter"
640        transformation = "borrow"
641        [[object.signal.parameter]]
642        name = "path_string"
643        transformation = "treepath"
644        new_name = "path"
645
646[[object]]
647name = "Gtk.CellRendererPixbuf"
648status = "generate"
649generate_builder = true
650manual_traits = ["CellRendererPixbufExtManual"]
651    [[object.property]]
652    name = "surface"
653    [[object.property]]
654    name = "stock-size"
655    #value ImageSize
656    generate = ["notify"]
657    doc_trait_name = "CellRendererPixbufExtManual"
658
659[[object]]
660name = "Gtk.CellRendererProgress"
661status = "generate"
662generate_builder = true
663
664[[object]]
665name = "Gtk.CellRendererSpin"
666status = "generate"
667generate_builder = true
668
669[[object]]
670name = "Gtk.CellRendererSpinner"
671status = "generate"
672generate_builder = true
673
674[[object]]
675name = "Gtk.CellRendererText"
676status = "generate"
677generate_builder = true
678    [[object.signal]]
679    name = "edited"
680        [[object.signal.parameter]]
681        name = "path"
682        transformation = "treepath"
683
684[[object]]
685name = "Gtk.CellRendererToggle"
686status = "generate"
687generate_builder = true
688    [[object.signal]]
689    name = "toggled"
690        [[object.signal.parameter]]
691        name = "path"
692        transformation = "treepath"
693
694[[object]]
695name = "Gtk.CellView"
696status = "generate"
697generate_builder = true
698    [[object.function]]
699    name = "set_displayed_row"
700    [[object.function.parameter]]
701        name = "path"
702        nullable = false
703
704[[object]]
705name = "Gtk.CheckButton"
706status = "generate"
707generate_builder = true
708
709[[object]]
710name = "Gtk.CheckMenuItem"
711status = "generate"
712generate_builder = true
713
714[[object]]
715name = "Gtk.Clipboard"
716status = "generate"
717    [[object.function]]
718    name = "get"
719        [object.function.return]
720        nullable = false
721    [[object.function]]
722    name = "get_for_display"
723        [object.function.return]
724        nullable = false
725    [[object.function]]
726    name = "set_can_store"
727    #array with size
728    ignore = true
729    [[object.function]]
730    name = "request_targets"
731    #array with size
732    ignore = true
733    [[object.function]]
734    name = "request_uris"
735    #array with size
736    ignore = true
737    [[object.function]]
738    name = "set_with_data"
739    #array with size
740    ignore = true
741    [[object.function]]
742    name = "set_with_owner"
743    #array with size
744    ignore = true
745
746[[object]]
747name = "Gtk.ColorButton"
748status = "generate"
749generate_builder = true
750manual_traits = ["ColorButtonExtManual"]
751    [[object.function]]
752    name = "new_with_color"
753    #totally
754    doc_trait_name = "ColorButtonExtManual"
755    [[object.function]]
756    name = "get_color"
757    manual = true
758    doc_trait_name = "ColorButtonExtManual"
759    [[object.function]]
760    name = "set_color"
761    manual = true
762    doc_trait_name = "ColorButtonExtManual"
763
764[[object]]
765name = "Gtk.ColorChooser"
766status = "generate"
767manual_traits = ["ColorChooserExtManual"]
768    [[object.function]]
769    name = "add_palette"
770    #array with size
771    manual = true
772    doc_trait_name = "ColorChooserExtManual"
773
774[[object]]
775name = "Gtk.ColorChooserDialog"
776status = "generate"
777generate_builder = true
778
779[[object]]
780name = "Gtk.ColorChooserWidget"
781status = "generate"
782generate_builder = true
783
784[[object]]
785name = "Gtk.ComboBox"
786status = "generate"
787generate_builder = true
788manual_traits = ["ComboBoxExtManual"]
789    [[object.function]]
790    name = "set_active_iter"
791        [[object.function.parameter]]
792        name = "iter"
793        const = true
794    [[object.function]]
795    name = "set_active"
796    manual = true
797    doc_trait_name = "ComboBoxExtManual"
798    [[object.function]]
799    name = "get_active"
800    manual = true
801    doc_trait_name = "ComboBoxExtManual"
802    [[object.property]]
803    name = "active"
804    #manual Option
805    generate = ["notify"]
806
807[[object]]
808name = "Gtk.ComboBoxText"
809status = "generate"
810generate_builder = true
811
812[[object]]
813name = "Gtk.Container"
814status = "generate"
815    [[object.function]]
816    pattern = "child_[gs]et_property"
817    ignore = true
818    [[object.function]]
819    name = "propagate_draw"
820        [[object.function.parameter]]
821        name = "cr"
822        # cairo::Context is reference-counted
823        const = true
824
825[[object]]
826name = "Gtk.Dialog"
827status = "generate"
828generate_builder = true
829manual_traits = ["DialogExtManual"]
830    [[object.function]]
831    name = "add_button"
832        [object.function.return]
833        nullable = false
834    [[object.function]]
835    name = "get_action_area"
836        [object.function.return]
837        nullable = false
838    [[object.function]]
839    name = "get_content_area"
840        [object.function.return]
841        nullable = false
842    [[object.function]]
843    name = "run"
844        [object.function.return]
845        type = "Gtk.ResponseType"
846    [[object.function]]
847    name = "get_response_for_widget"
848        [object.function.return]
849        type = "Gtk.ResponseType"
850
851[[object]]
852name = "Gtk.DrawingArea"
853status = "generate"
854generate_builder = true
855
856[[object]]
857name = "Gtk.Editable"
858status = "generate"
859manual_traits = ["EditableSignals"]
860    [[object.signal]]
861    pattern = ".+"
862    ignore = true #out #manual
863    doc_trait_name = "EditableSignals"
864
865[[object]]
866name = "Gtk.Entry"
867status = "generate"
868generate_builder = true
869manual_traits = ["EntryExtManual"]
870    [[object.function]]
871    name = "get_buffer"
872        [object.function.return]
873        nullable = false
874    [[object.function]]
875    name = "get_icon_activatable"
876    rename = "icon_is_activatable"
877    [[object.function]]
878    name = "get_icon_sensitive"
879    rename = "icon_is_sensitive"
880    [[object.function]]
881    name = "get_invisible_char"
882    manual = true
883    doc_trait_name = "EntryExtManual"
884    [[object.function]]
885    name = "get_text"
886        [object.function.return]
887        nullable = false
888    [[object.function]]
889    name = "set_invisible_char"
890        [[object.function.parameter]]
891        name = "ch"
892        nullable = true
893    [[object.function]]
894    name = "set_placeholder_text"
895        [[object.function.parameter]]
896        name = "text"
897        nullable = true
898    [[object.function]]
899    name = "im_context_filter_keypress"
900        [[object.function.parameter]]
901        name = "event"
902        const = true
903    [[object.function]]
904    name = "set_tabs"
905        [[object.function.parameter]]
906        name = "tabs"
907        const = true
908
909[[object]]
910name = "Gtk.EntryBuffer"
911status = "manual"
912generate_builder = true
913
914[[object]]
915name = "Gtk.EntryCompletion"
916status = "generate"
917generate_builder = true
918manual_traits = ["EntryCompletionExtManual"]
919    [[object.signal]]
920    name = "insert-prefix"
921    inhibit = true
922    [[object.signal]]
923    name = "match-selected"
924    inhibit = true
925    [[object.signal]]
926    name = "cursor-on-match"
927    inhibit = true
928    [[object.function]]
929    name = "get_entry"
930    manual = true
931    doc_trait_name = "EntryCompletionExtManual"
932
933[[object]]
934name = "Gtk.EventBox"
935status = "generate"
936generate_builder = true
937
938[[object]]
939name = "Gtk.EventControllerKey"
940status = "generate"
941version = "3.24"
942
943[[object]]
944name = "Gtk.EventControllerMotion"
945status = "generate"
946version = "3.24"
947
948[[object]]
949name = "Gtk.EventControllerScroll"
950status = "generate"
951version = "3.24"
952
953[[object]]
954name = "Gtk.EventControllerScrollFlags"
955status = "generate"
956version = "3.24"
957
958[[object]]
959name = "Gtk.Expander"
960status = "generate"
961generate_builder = true
962    [[object.function]]
963    name = "new"
964        [[object.function.parameter]]
965        name = "label"
966        nullable = true
967    [[object.function]]
968    name = "new_with_mnemonic"
969        [[object.function.parameter]]
970        name = "label"
971        nullable = false
972
973[[object]]
974name = "Gtk.FileChooser"
975status = "generate"
976    [[object.function]]
977    name = "add_choice"
978    ignore = true  #strange type of options and option_labels
979
980[[object]]
981name = "Gtk.FileChooserButton"
982status = "generate"
983generate_builder = true
984
985[[object]]
986name = "Gtk.FileChooserDialog"
987status = "generate"
988generate_builder = true
989
990[[object]]
991name = "Gtk.FileChooserNative"
992status = "generate"
993generate_builder = true
994
995[[object]]
996name = "Gtk.FileChooserWidget"
997status = "generate"
998generate_builder = true
999
1000[[object]]
1001name = "Gtk.Fixed"
1002status = "generate"
1003generate_builder = true
1004manual_traits = ["FixedExtManual"]
1005
1006[[object]]
1007name = "Gtk.FlowBox"
1008status = "generate"
1009generate_builder = true
1010manual_traits = ["FlowBoxExtManual"]
1011    [[object.function]]
1012    name = "bind_model"
1013        [[object.function.parameter]]
1014        name = "create_widget_func"
1015        # we add a manual unbind() function instead
1016        nullable = false
1017
1018[[object]]
1019name = "Gtk.FlowBoxChild"
1020status = "generate"
1021generate_builder = true
1022
1023[[object]]
1024name = "Gtk.FontButton"
1025status = "generate"
1026generate_builder = true
1027
1028[[object]]
1029name = "Gtk.FontChooser"
1030status = "generate"
1031    [[object.property]]
1032    name = "level"
1033    version = "3.24"
1034    [[object.property]]
1035    name = "font-features"
1036    version = "3.24"
1037    [[object.property]]
1038    name = "language"
1039    version = "3.24"
1040
1041[[object]]
1042name = "Gtk.FontChooserDialog"
1043status = "generate"
1044generate_builder = true
1045
1046[[object]]
1047name = "Gtk.FontChooserLevel"
1048status = "generate"
1049version = "3.24"
1050
1051[[object]]
1052name = "Gtk.FontChooserWidget"
1053status = "generate"
1054generate_builder = true
1055
1056[[object]]
1057name = "Gtk.Frame"
1058status = "generate"
1059generate_builder = true
1060
1061[[object]]
1062name = "Gtk.Gesture"
1063status = "generate"
1064    [[object.function]]
1065    pattern = ".+"
1066        [[object.function.parameter]]
1067        name = "sequence"
1068        const = true
1069    [[object.function]]
1070    name = "group"
1071    # Precise the purpose and avoid clash with `get_group`.
1072    rename = "group_with"
1073
1074    [[object.signal]]
1075    name = "begin"
1076        [[object.signal.parameter]]
1077        name = "sequence"
1078        nullable = true
1079    [[object.signal]]
1080    name = "end"
1081        [[object.signal.parameter]]
1082        name = "sequence"
1083        nullable = true
1084    [[object.signal]]
1085    name = "update"
1086        [[object.signal.parameter]]
1087        name = "sequence"
1088        nullable = true
1089    [[object.signal]]
1090    name = "cancel"
1091        [[object.signal.parameter]]
1092        name = "sequence"
1093        nullable = true
1094    [[object.signal]]
1095    name = "sequence-state-changed"
1096        [[object.signal.parameter]]
1097        name = "sequence"
1098        nullable = true
1099
1100[[object]]
1101name = "Gtk.GestureDrag"
1102status = "generate"
1103generate_builder = true
1104
1105[[object]]
1106name = "Gtk.GestureLongPress"
1107status = "generate"
1108generate_builder = true
1109
1110[[object]]
1111name = "Gtk.GestureMultiPress"
1112status = "generate"
1113generate_builder = true
1114
1115[[object]]
1116name = "Gtk.GesturePan"
1117status = "generate"
1118generate_builder = true
1119
1120[[object]]
1121name = "Gtk.GestureRotate"
1122status = "generate"
1123generate_builder = true
1124
1125[[object]]
1126name = "Gtk.GestureStylus"
1127status = "generate"
1128version = "3.24"
1129manual_traits = ["GestureStylusExtManual"]
1130    [[object.function]]
1131    name = "get_axes"
1132    manual = true
1133
1134[[object]]
1135name = "Gtk.GestureSwipe"
1136status = "generate"
1137generate_builder = true
1138
1139[[object]]
1140name = "Gtk.GestureZoom"
1141status = "generate"
1142generate_builder = true
1143
1144[[object]]
1145name = "Gtk.GLArea"
1146status = "generate"
1147generate_builder = true
1148module_name = "gl_area"
1149    [[object.signal]]
1150    pattern = "render"
1151    inhibit = true
1152    [[object.signal]]
1153    name = "create-context"
1154        [object.signal.return]
1155        nullable = true
1156
1157[[object]]
1158name = "Gtk.Grid"
1159status = "generate"
1160generate_builder = true
1161child_name = "cell"
1162    [[object.child_prop]]
1163    name = "height"
1164    type = "gint"
1165    [[object.child_prop]]
1166    name = "width"
1167    type = "gint"
1168    [[object.child_prop]]
1169    name = "left-attach"
1170    type = "gint"
1171    [[object.child_prop]]
1172    name = "top-attach"
1173    type = "gint"
1174
1175[[object]]
1176name = "Gtk.HeaderBar"
1177status = "generate"
1178generate_builder = true
1179    [[object.child_prop]]
1180    name = "pack-type"
1181    type = "Gtk.PackType"
1182    [[object.child_prop]]
1183    name = "position"
1184    type = "gint"
1185
1186[[object]]
1187name = "Gtk.IconTheme"
1188status = "generate"
1189    [[object.function]]
1190    name = "set_search_path"
1191    ignore = true
1192    [[object.function]]
1193    name = "choose_icon"
1194    ignore = true
1195    [[object.function]]
1196    name = "choose_icon_for_scale"
1197    ignore = true
1198    [[object.function]]
1199    name = "get_icon_sizes"
1200    #array
1201    ignore = true
1202    [[object.function]]
1203    name = "get_search_path"
1204    #array
1205    ignore = true
1206
1207[[object]]
1208name = "Gtk.IconView"
1209status = "generate"
1210generate_builder = true
1211    [[object.function]]
1212    name = "enable_model_drag_dest"
1213    #array with size
1214    ignore = true
1215    [[object.function]]
1216    name = "enable_model_drag_source"
1217    #array with size
1218    ignore = true
1219    [[object.function]]
1220    pattern = ".+"
1221        [[object.function.parameter]]
1222        name = "path"
1223        const = true
1224
1225[[object]]
1226name = "Gtk.Image"
1227status = "generate"
1228generate_builder = false # "icon-size" field should be gint
1229manual_traits = ["ImageExtManual"]
1230    [[object.function]]
1231    name = "new_from_surface"
1232        [[object.function.parameter]]
1233        name = "surface"
1234        # cairo::Surface is reference-counted
1235        const = true
1236    [[object.function]]
1237    name = "set_from_surface"
1238        [[object.function.parameter]]
1239        name = "surface"
1240        # cairo::Surface is reference-counted
1241        const = true
1242    [[object.function]]
1243    name = "get_icon_name"
1244    #can return NULL string
1245    ignore = true
1246    [[object.property]]
1247    name = "icon-size"
1248    ignore = true # Has to call conversions to int
1249    [[object.property]]
1250    name = "surface"
1251    [[object.property]]
1252    name = "icon-set"
1253    #value IconSet
1254    ignore = true
1255    [[object.function]]
1256    name = "get_stock"
1257    # wrong out parameter mutability and deprecated anyway
1258    ignore = true
1259
1260[[object]]
1261name = "Gtk.IMContext"
1262status = "generate"
1263    [[object.function]]
1264    name = "filter_keypress"
1265        [[object.function.parameter]]
1266        name = "event"
1267        const = true
1268
1269[[object]]
1270name = "Gtk.IMContextSimple"
1271status = "generate"
1272generate_builder = true
1273manual_traits = ["IMContextSimpleExtManual"]
1274    [[object.function]]
1275    name = "add_compose_file"
1276    manual = true
1277    doc_trait_name = "IMContextSimpleExtManual"
1278    [[object.function]]
1279    name = "add_table"
1280    ignore = true # We don't understand API
1281
1282[[object]]
1283name = "Gtk.IMMulticontext"
1284status = "generate"
1285generate_builder = true
1286
1287[[object]]
1288name = "Gtk.InfoBar"
1289status = "generate"
1290generate_builder = true
1291    [[object.property]]
1292    name = "revealed"
1293    version = "3.22.29"
1294    [[object.function]]
1295    name = "get_content_area"
1296        [object.function.return]
1297        nullable = false
1298    [[object.function]]
1299    name = "get_action_area"
1300
1301[[object]]
1302name = "Gtk.InputHints"
1303status = "generate"
1304    [[object.member]]
1305    name = "emoji"
1306    version = "3.22.20"
1307    [[object.member]]
1308    name = "no_emoji"
1309    version = "3.22.20"
1310
1311[[object]]
1312name = "Gtk.Invisible"
1313status = "generate"
1314generate_builder = true
1315manual_traits = ["InvisibleExtManual"]
1316    [[object.function]]
1317    name = "get_screen"
1318    manual = true
1319    doc_trait_name = "InvisibleExtManual"
1320
1321[[object]]
1322name = "Gtk.Label"
1323status = "generate"
1324generate_builder = true
1325    [[object.function]]
1326    name = "new_with_mnemonic"
1327        [[object.function.parameter]]
1328        name = "str"
1329        nullable = false
1330    [[object.function]]
1331    name = "get_label"
1332        [object.function.return]
1333        nullable = false
1334    [[object.function]]
1335    name = "get_text"
1336        [object.function.return]
1337        nullable = false
1338    [[object.signal]]
1339    name = "activate-link"
1340    inhibit = true
1341
1342[[object]]
1343name = "Gtk.Layout"
1344status = "generate"
1345generate_builder = true
1346    [[object.child_prop]]
1347    name = "x"
1348    type = "gint"
1349    [[object.child_prop]]
1350    name = "y"
1351    type = "gint"
1352
1353[[object]]
1354name = "Gtk.LevelBar"
1355status = "generate"
1356generate_builder = true
1357
1358[[object]]
1359name = "Gtk.LinkButton"
1360status = "generate"
1361generate_builder = true
1362    [[object.function]]
1363    name = "new_with_label"
1364        [[object.function.parameter]]
1365        name = "label"
1366        nullable = false
1367    [[object.signal]]
1368    name = "activate-link"
1369    inhibit = true
1370
1371[[object]]
1372name = "Gtk.ListBox"
1373status = "generate"
1374generate_builder = true
1375manual_traits = ["ListBoxExtManual"]
1376    [[object.function]]
1377    name = "bind_model"
1378        [[object.function.parameter]]
1379        name = "create_widget_func"
1380        # we add a manual unbind() function instead
1381        nullable = false
1382
1383[[object]]
1384name = "Gtk.ListBoxRow"
1385status = "generate"
1386generate_builder = true
1387
1388[[object]]
1389name = "Gtk.ListStore"
1390status = "generate"
1391trait_name = "GtkListStoreExt"
1392manual_traits = ["GtkListStoreExtManual"]
1393    [[object.function]]
1394    pattern = ".+"
1395        [[object.function.parameter]]
1396        name = "iter"
1397        const = true
1398        [[object.function.parameter]]
1399        name = "sibling"
1400        const = true
1401        [[object.function.parameter]]
1402        name = "position"
1403        const = true
1404    [[object.function]]
1405    name = "swap"
1406        [[object.function.parameter]]
1407        name = "a"
1408        const = true
1409        [[object.function.parameter]]
1410        name = "b"
1411        const = true
1412    [[object.function]]
1413    name = "reorder"
1414    manual = true
1415    doc_trait_name = "GtkListStoreExtManual"
1416    [[object.function]]
1417    name = "set_value"
1418    manual = true
1419    doc_trait_name = "GtkListStoreExtManual"
1420
1421[[object]]
1422name = "Gtk.LockButton"
1423status = "generate"
1424generate_builder = true
1425
1426[[object]]
1427name = "Gtk.Menu"
1428status = "generate"
1429generate_builder = true
1430child_type = "Gtk.MenuItem"
1431child_name = "item"
1432trait_name = "GtkMenuExt"
1433manual_traits = ["GtkMenuExtManual"]
1434    [[object.child_prop]]
1435    name = "bottom-attach"
1436    type = "gint"
1437    [[object.child_prop]]
1438    name = "left-attach"
1439    type = "gint"
1440    [[object.child_prop]]
1441    name = "right-attach"
1442    type = "gint"
1443    [[object.child_prop]]
1444    name = "top-attach"
1445    type = "gint"
1446    [[object.function]]
1447    name = "place_on_monitor"
1448    version = "3.22"
1449
1450[[object]]
1451name = "Gtk.MenuBar"
1452status = "generate"
1453generate_builder = true
1454
1455[[object]]
1456name = "Gtk.MenuButton"
1457status = "generate"
1458generate_builder = true
1459
1460[[object]]
1461name = "Gtk.MenuItem"
1462status = "generate"
1463generate_builder = true
1464trait_name = "GtkMenuItemExt"
1465    [[object.function]]
1466    name = "activate"
1467    ignore = true
1468
1469[[object]]
1470name = "Gtk.MenuShell"
1471status = "generate"
1472    [[object.signal]]
1473    name = "move-selected"
1474    inhibit = true
1475
1476[[object]]
1477name = "Gtk.MenuToolButton"
1478status = "generate"
1479generate_builder = true
1480
1481[[object]]
1482name = "Gtk.MessageDialog"
1483status = "generate"
1484generate_builder = true
1485    [[object.function]]
1486    name = "get_message_area"
1487        [object.function.return]
1488        nullable = false
1489
1490[[object]]
1491name = "Gtk.ModelButton"
1492status = "generate"
1493generate_builder = true
1494
1495[[object]]
1496name = "Gtk.MountOperation"
1497status = "generate"
1498generate_builder = true
1499
1500[[object]]
1501name = "Gtk.NativeDialog"
1502status = "generate"
1503manual_traits = ["NativeDialogExtManual"]
1504    [[object.function]]
1505    name = "run"
1506        [object.function.return]
1507        type = "Gtk.ResponseType"
1508
1509[[object]]
1510name = "Gtk.Notebook"
1511status = "generate"
1512generate_builder = true
1513manual_traits = ["NotebookExtManual"]
1514    # The following functions need integer type adjustments
1515    [[object.function]]
1516    name = "append_page"
1517    manual = true
1518    doc_trait_name = "NotebookExtManual"
1519    [[object.function]]
1520    name = "append_page_menu"
1521    manual = true
1522    doc_trait_name = "NotebookExtManual"
1523    [[object.function]]
1524    name = "get_current_page"
1525    manual = true
1526    doc_trait_name = "NotebookExtManual"
1527    [[object.function]]
1528    name = "get_n_pages"
1529    manual = true
1530    doc_trait_name = "NotebookExtManual"
1531    [[object.function]]
1532    name = "get_nth_page"
1533    manual = true
1534    doc_trait_name = "NotebookExtManual"
1535    [[object.function]]
1536    name = "get_tab_detachable"
1537    rename = "tab_is_detachable"
1538    [[object.function]]
1539    name = "get_tab_reorderable"
1540    rename = "tab_is_reorderable"
1541    [[object.function]]
1542    name = "insert_page"
1543    manual = true
1544    doc_trait_name = "NotebookExtManual"
1545    [[object.function]]
1546    name = "insert_page_menu"
1547    manual = true
1548    doc_trait_name = "NotebookExtManual"
1549    [[object.function]]
1550    name = "page_num"
1551    manual = true
1552    doc_trait_name = "NotebookExtManual"
1553    [[object.function]]
1554    name = "prepend_page"
1555    manual = true
1556    doc_trait_name = "NotebookExtManual"
1557    [[object.function]]
1558    name = "prepend_page_menu"
1559    manual = true
1560    doc_trait_name = "NotebookExtManual"
1561    [[object.function]]
1562    name = "remove_page"
1563    manual = true
1564    doc_trait_name = "NotebookExtManual"
1565    [[object.function]]
1566    name = "reorder_child"
1567    manual = true
1568    doc_trait_name = "NotebookExtManual"
1569    [[object.function]]
1570    name = "set_current_page"
1571    manual = true
1572    doc_trait_name = "NotebookExtManual"
1573    [[object.child_prop]]
1574    name = "detachable"
1575    type = "gboolean"
1576    doc_hidden=true
1577    [[object.child_prop]]
1578    name = "menu-label"
1579    type = "utf8"
1580    doc_hidden=true
1581    [[object.child_prop]]
1582    name = "position"
1583    type = "gint"
1584    doc_hidden=true
1585    [[object.child_prop]]
1586    name = "reorderable"
1587    type = "gboolean"
1588    doc_hidden=true
1589    [[object.child_prop]]
1590    name = "tab-expand"
1591    rename_getter = "tab_expands"
1592    type = "gboolean"
1593    doc_hidden=true
1594    [[object.child_prop]]
1595    name = "tab-fill"
1596    rename_getter = "tab_fills"
1597    type = "gboolean"
1598    doc_hidden=true
1599    [[object.child_prop]]
1600    name = "tab-label"
1601    type = "utf8"
1602    doc_hidden=true
1603
1604[[object]]
1605name = "Gtk.OffscreenWindow"
1606status = "generate"
1607generate_builder = true
1608
1609[[object]]
1610name = "Gtk.Overlay"
1611status = "generate"
1612generate_builder = true
1613manual_traits = ["OverlaySignals"]
1614    [[object.child_prop]]
1615    name = "index"
1616    type = "gint"
1617
1618#[[object]]
1619#name = "Gtk.PadActionEntry" <- Missing memory management functions
1620#status = "generate"
1621#version = "3.22"
1622
1623[[object]]
1624name = "Gtk.PadActionType"
1625status = "generate"
1626version = "3.22"
1627
1628[[object]]
1629name = "Gtk.PadController"
1630status = "generate"
1631generate_builder = true
1632version = "3.22"
1633    [[object.function]]
1634    name = "set_action_entries"
1635    manual = true
1636
1637[[object]]
1638name = "Gtk.PageSetup"
1639status = "generate"
1640    [[object.function]]
1641    name = "get_paper_size"
1642        [object.function.return]
1643        nullable = false
1644    [[object.function]]
1645    pattern = "set_paper_size.*"
1646        [[object.function.parameter]]
1647        name = "size"
1648        const = true
1649
1650[[object]]
1651name = "Gtk.Paned"
1652status = "generate"
1653generate_builder = true
1654    [[object.child_prop]]
1655    name = "resize"
1656    type = "gboolean"
1657    [[object.child_prop]]
1658    name = "shrink"
1659    type = "gboolean"
1660
1661[[object]]
1662name = "Gtk.PaperSize"
1663status = "generate"
1664    [[object.function]]
1665    pattern = "(get|is)_.*"
1666        [[object.function.parameter]]
1667        name = "size"
1668        const = true
1669    [[object.function]]
1670    name = "is_equal"
1671        [[object.function.parameter]]
1672        name = "size1"
1673        const = true
1674        [[object.function.parameter]]
1675        name = "size2"
1676        const = true
1677
1678[[object]]
1679name = "Gtk.PlacesSidebar"
1680status = "generate"
1681generate_builder = true
1682    [[object.signal]]
1683    name = "drag-action-requested"
1684    #[gio::File]
1685    ignore = true
1686    [[object.signal]]
1687    name = "drag-perform-drop"
1688    #[gio::File]
1689    ignore = true
1690    [[object.property]]
1691    name = "show-starred-location"
1692    version = "3.22.26"
1693
1694[[object]]
1695name = "Gtk.Plug"
1696status = "generate"
1697generate_builder = true
1698cfg_condition = "gdk_backend = \"x11\""
1699
1700[[object]]
1701name = "Gtk.Popover"
1702status = "generate"
1703generate_builder = true
1704
1705[[object]]
1706name = "Gtk.PopoverMenu"
1707status = "generate"
1708generate_builder = true
1709    [[object.child_prop]]
1710    name = "position"
1711    type = "gint"
1712    [[object.child_prop]]
1713    name = "submenu"
1714    type = "utf8"
1715
1716[[object]]
1717name = "Gtk.PrintContext"
1718status = "generate"
1719    [[object.function]]
1720    name = "set_cairo_context"
1721        [[object.function.parameter]]
1722        name = "cr"
1723        # cairo::Context is reference-counted
1724        const = true
1725
1726[[object]]
1727name = "Gtk.PrintOperation"
1728status = "generate"
1729generate_builder = true
1730
1731[[object]]
1732name = "Gtk.PrintSettings"
1733status = "generate"
1734    [[object.function]]
1735    name = "get_bool"
1736    # Retrieves the bool value of a setting
1737    rename = "bool"
1738    [[object.function]]
1739    name = "get_paper_size"
1740        [object.function.return]
1741        nullable = false
1742    [[object.function]]
1743    name = "set_page_ranges"
1744    manual = true
1745    [[object.function]]
1746    name = "set_paper_size"
1747        [[object.function.parameter]]
1748        name = "paper_size"
1749        const = true
1750
1751[[object]]
1752name = "Gtk.ProgressBar"
1753status = "generate"
1754generate_builder = true
1755
1756[[object]]
1757name = "Gtk.RadioButton"
1758status = "generate"
1759generate_builder = true
1760    [[object.function]]
1761    pattern = ".+_from_widget"
1762        [[object.function.parameter]]
1763        name = "radio_group_member"
1764        nullable = false
1765    [[object.function]]
1766    name = "new"
1767    manual = true
1768    [[object.function]]
1769    name = "new_with_label"
1770    manual = true
1771    [[object.function]]
1772    name = "new_with_mnemonic"
1773    manual = true
1774    [[object.function]]
1775    name = "set_group"
1776    ignore = true
1777    [[object.property]]
1778    name = "group"
1779    ignore = true
1780
1781[[object]]
1782name = "Gtk.RadioMenuItem"
1783status = "generate"
1784generate_builder = true
1785    [[object.function]]
1786    pattern = ".+_from_widget"
1787        [[object.function.parameter]]
1788        name = "group"
1789        nullable = false
1790    [[object.function]]
1791    name = "new"
1792    manual = true
1793    [[object.function]]
1794    name = "new_with_label"
1795    manual = true
1796    [[object.function]]
1797    name = "new_with_mnemonic"
1798    manual = true
1799    [[object.function]]
1800    name = "set_group"
1801    ignore = true
1802    [[object.property]]
1803    name = "group"
1804    ignore = true
1805
1806[[object]]
1807name = "Gtk.RadioToolButton"
1808status = "generate"
1809generate_builder = true
1810    [[object.function]]
1811    pattern = ".+_from_widget"
1812        [[object.function.parameter]]
1813        name = "group"
1814        nullable = false
1815    [[object.function]]
1816    name = "new"
1817    manual = true
1818    [[object.function]]
1819    name = "new_from_stock"
1820    manual = true
1821    [[object.function]]
1822    name = "set_group"
1823    ignore = true
1824    [[object.property]]
1825    name = "group"
1826    ignore = true
1827
1828[[object]]
1829name = "Gtk.Range"
1830status = "generate"
1831    [[object.function]]
1832    name = "get_adjustment"
1833        [object.function.return]
1834        nullable = false
1835    [[object.signal]]
1836    name = "change-value"
1837    inhibit = true
1838
1839[[object]]
1840name = "Gtk.RecentChooserDialog"
1841status = "generate"
1842generate_builder = true
1843
1844[[object]]
1845name = "Gtk.RecentChooserMenu"
1846status = "generate"
1847generate_builder = true
1848
1849[[object]]
1850name = "Gtk.RecentChooserWidget"
1851status = "generate"
1852generate_builder = true
1853
1854[[object]]
1855name = "Gtk.RecentManager"
1856status = "generate"
1857generate_builder = true
1858
1859[[object]]
1860name = "Gtk.Revealer"
1861status = "generate"
1862generate_builder = true
1863
1864[[object]]
1865name = "Gtk.Scale"
1866status = "generate"
1867generate_builder = true
1868
1869[[object]]
1870name = "Gtk.ScaleButton"
1871status = "generate"
1872generate_builder = true
1873    [[object.function]]
1874    name = "get_adjustment"
1875        [object.function.return]
1876        nullable = false
1877
1878[[object]]
1879name = "Gtk.Scrollbar"
1880status = "generate"
1881generate_builder = true
1882
1883[[object]]
1884name = "Gtk.ScrolledWindow"
1885status = "generate"
1886generate_builder = true
1887    [[object.function]]
1888    name = "get_hadjustment"
1889        [object.function.return]
1890        nullable = false
1891    [[object.function]]
1892    name = "get_vadjustment"
1893        [object.function.return]
1894        nullable = false
1895
1896[[object]]
1897name = "Gtk.SearchBar"
1898status = "generate"
1899generate_builder = true
1900    [[object.function]]
1901    name = "handle_event"
1902        [[object.function.parameter]]
1903        name = "event"
1904        const = true
1905
1906[[object]]
1907name = "Gtk.SearchEntry"
1908status = "generate"
1909generate_builder = true
1910    [[object.function]]
1911    name = "handle_event"
1912        [[object.function.parameter]]
1913        name = "event"
1914        const = true
1915
1916[[object]]
1917name = "Gtk.SelectionData"
1918status = "generate"
1919    [[object.function]]
1920    name = "get_data_type"
1921        [object.function.return]
1922        nullable = false
1923    [[object.function]]
1924    name = "get_selection"
1925        [object.function.return]
1926        nullable = false
1927    [[object.function]]
1928    name = "get_target"
1929        [object.function.return]
1930        nullable = false
1931    [[object.function]]
1932    name = "set_pixbuf"
1933        [[object.function.parameter]]
1934        name = "selection_data"
1935        const = true
1936    [[object.function]]
1937    name = "set_text"
1938        [[object.function.parameter]]
1939        name = "selection_data"
1940        const = true
1941    [[object.function]]
1942    name = "set"
1943        [[object.function.parameter]]
1944        name = "selection_data"
1945        const = true
1946    [[object.function]]
1947    name = "set_uris"
1948        [[object.function.parameter]]
1949        name = "selection_data"
1950        const = true
1951    [[object.function]]
1952    name = "get_data"
1953    #array without length
1954    manual = true
1955    [[object.function]]
1956    name = "get_data_with_length"
1957    ignore = true
1958
1959[[object]]
1960name = "Gtk.Separator"
1961status = "generate"
1962generate_builder = true
1963
1964[[object]]
1965name = "Gtk.SeparatorMenuItem"
1966status = "generate"
1967generate_builder = true
1968
1969[[object]]
1970name = "Gtk.SeparatorToolItem"
1971status = "generate"
1972generate_builder = true
1973
1974[[object]]
1975name = "Gtk.Settings"
1976status = "generate"
1977    [[object.function]]
1978    pattern = "install_property.*"
1979    #deprecated in 3.16
1980    ignore = true
1981    [[object.property]]
1982    name = "gtk-cursor-aspect-ratio"
1983    version = "3.24"
1984
1985[[object]]
1986name = "Gtk.ShortcutLabel"
1987status = "generate"
1988generate_builder = true
1989version = "3.22"
1990
1991[[object]]
1992name = "Gtk.ShortcutsGroup"
1993status = "generate"
1994generate_builder = true
1995version = "3.20"
1996
1997[[object]]
1998name = "Gtk.ShortcutsSection"
1999status = "generate"
2000generate_builder = true
2001version = "3.20"
2002
2003[[object]]
2004name = "Gtk.ShortcutsShortcut"
2005status = "generate"
2006generate_builder = true
2007version = "3.20"
2008
2009[[object]]
2010name = "Gtk.ShortcutsWindow"
2011status = "generate"
2012generate_builder = true
2013version = "3.20"
2014
2015[[object]]
2016name = "Gtk.ShortcutType"
2017status = "generate"
2018version = "3.20"
2019
2020[[object]]
2021name = "Gtk.SizeGroup"
2022status = "generate"
2023generate_builder = true
2024
2025[[object]]
2026name = "Gtk.Socket"
2027status = "generate"
2028generate_builder = true
2029cfg_condition = "gdk_backend = \"x11\""
2030trait_name = "GtkSocketExt"
2031
2032[[object]]
2033name = "Gtk.SpinButton"
2034status = "generate"
2035generate_builder = true
2036manual_traits = ["SpinButtonSignals"]
2037    [[object.function]]
2038    name = "get_adjustment"
2039        [object.function.return]
2040        nullable = false
2041    [[object.signal]]
2042    pattern = ".+" #manual #out #not_standard_return
2043    ignore = true
2044
2045[[object]]
2046name = "Gtk.Spinner"
2047status = "generate"
2048generate_builder = true
2049
2050[[object]]
2051name = "Gtk.Stack"
2052status = "generate"
2053generate_builder = true
2054    [[object.child_prop]]
2055    name = "icon-name"
2056    type = "utf8"
2057    [[object.child_prop]]
2058    name = "name"
2059    type = "utf8"
2060    [[object.child_prop]]
2061    name = "needs-attention"
2062    type = "gboolean"
2063    [[object.child_prop]]
2064    name = "position"
2065    type = "gint"
2066    [[object.child_prop]]
2067    name = "title"
2068    type = "utf8"
2069    [[object.function]]
2070    name = "get_interpolate_size"
2071    rename = "interpolates_size"
2072
2073[[object]]
2074name = "Gtk.StackSidebar"
2075status = "generate"
2076generate_builder = true
2077
2078[[object]]
2079name = "Gtk.StackSwitcher"
2080status = "generate"
2081generate_builder = false # "icon-size" property needs to be int internally
2082manual_traits = ["StackSwitcherExtManual"]
2083    [[object.property]]
2084    name = "icon-size"
2085    ignore = true # "icon-size" needs conversion between IconSize and integer
2086
2087[[object]]
2088name = "Gtk.Statusbar"
2089status = "generate"
2090generate_builder = true
2091
2092[[object]]
2093name = "Gtk.StyleContext"
2094status = "generate"
2095generate_builder = true
2096manual_traits = ["StyleContextExtManual"]
2097    [[object.function]]
2098    name = "get_property"
2099    rename = "style_property_for_state" # avoid collision with ObjectExt::property
2100
2101[[object]]
2102name = "Gtk.StyleContextPrintFlags"
2103status = "generate"
2104version = "3.20"
2105
2106[[object]]
2107name = "Gtk.Switch"
2108status = "generate"
2109generate_builder = true
2110manual_traits = ["SwitchExtManual"]
2111    [[object.signal]]
2112    name = "state-set"
2113    inhibit = true
2114
2115[[object]]
2116name = "Gtk.TargetList"
2117status = "generate"
2118    [[object.function]]
2119    name = "add_table"
2120    #array with size
2121    ignore = true
2122    [[object.function]]
2123    name = "new"
2124    #array with size
2125    manual = true
2126
2127[[object]]
2128name = "Gtk.TextBuffer"
2129status = "generate"
2130generate_builder = true
2131manual_traits = ["TextBufferExtManual"]
2132    [[object.function]]
2133    name = "get_insert"
2134    # Avoid clash with the `insert` operation.
2135    # This one retrieves the insert mark.
2136    bypass_auto_rename = true
2137    [[object.function]]
2138    name = "register_deserialize_tagset"
2139        [object.function.return]
2140        nullable = false
2141    [[object.function]]
2142    name = "register_serialize_tagset"
2143        [object.function.return]
2144        nullable = false
2145    [[object.function]]
2146    name = "paste_clipboard"
2147        [[object.function.parameter]]
2148        name = "override_location"
2149        const = true
2150    [[object.function]]
2151    name = "register_serialize_format"
2152    # actually returns an array of bytes, not a single byte
2153    ignore = true
2154    [[object.signal]]
2155    name = "apply-tag"
2156    # needs mutable TextIters
2157    ignore = true
2158    doc_trait_name = "TextBufferExtManual"
2159    [[object.signal]]
2160    name = "delete-range"
2161    # needs mutable TextIters
2162    ignore = true
2163    doc_trait_name = "TextBufferExtManual"
2164    [[object.signal]]
2165    name = "insert-child-anchor"
2166    # needs mutable TextIters
2167    ignore = true
2168    doc_trait_name = "TextBufferExtManual"
2169    [[object.signal]]
2170    name = "insert-pixbuf"
2171    # needs mutable TextIters
2172    ignore = true
2173    doc_trait_name = "TextBufferExtManual"
2174    [[object.signal]]
2175    name = "insert-text"
2176    # needs mutable TextIters
2177    ignore = true
2178    doc_trait_name = "TextBufferExtManual"
2179    [[object.signal]]
2180    name = "remove-tag"
2181    # needs mutable TextIters
2182    ignore = true
2183    doc_trait_name = "TextBufferExtManual"
2184
2185[[object]]
2186name = "Gtk.TextIter"
2187status = "generate"
2188init_function_expression = "|_ptr| ()"
2189clear_function_expression = "|_ptr| ()"
2190
2191    [[object.function]]
2192    name = "get_attributes"
2193    manual = true
2194    [[object.function]]
2195    name = "get_char"
2196    manual = true
2197
2198[[object]]
2199name = "Gtk.TextMark"
2200status = "generate"
2201generate_builder = true
2202
2203[[object]]
2204name = "Gtk.TextTag"
2205status = "generate"
2206generate_builder = true
2207    [[object.function]]
2208    name = "event"
2209        [[object.function.parameter]]
2210        name = "event"
2211        const = true
2212    [[object.signal]]
2213    name = "event"
2214    inhibit = true
2215
2216[[object]]
2217name = "Gtk.TextView"
2218status = "generate"
2219generate_builder = true
2220    [[object.function]]
2221    name = "get_default_attributes"
2222        [object.function.return]
2223        nullable = false
2224    [[object.function]]
2225    name = "im_context_filter_keypress"
2226        [[object.function.parameter]]
2227        name = "event"
2228        const = true
2229    [[object.function]]
2230    name = "set_tabs"
2231        [[object.function.parameter]]
2232        name = "tabs"
2233        const = true
2234    [[object.signal]]
2235    name = "extend-selection"
2236    inhibit = true
2237    [[object.signal]]
2238    name = "insert-emoji"
2239    #actually Since 3.22.27
2240    version = "3.22.26"
2241
2242[[object]]
2243name = "Gtk.ToggleButton"
2244status = "generate"
2245generate_builder = true
2246
2247[[object]]
2248name = "Gtk.ToggleToolButton"
2249status = "generate"
2250generate_builder = true
2251
2252[[object]]
2253name = "Gtk.Toolbar"
2254status = "generate"
2255generate_builder = true
2256child_name = "item"
2257    [[object.signal]]
2258    name = "popup-context-menu"
2259    inhibit = true
2260    [[object.child_prop]]
2261    name = "expand"
2262    type = "gboolean"
2263    [[object.child_prop]]
2264    name = "homogeneous"
2265    type = "gboolean"
2266
2267[[object]]
2268name = "Gtk.ToolButton"
2269status = "generate"
2270generate_builder = true
2271
2272[[object]]
2273name = "Gtk.ToolItem"
2274status = "generate"
2275generate_builder = true
2276    [[object.signal]]
2277    name = "create-menu-proxy"
2278    inhibit = true
2279
2280[[object]]
2281name = "Gtk.ToolItemGroup"
2282status = "generate"
2283generate_builder = true
2284child_type = "Gtk.ToolItem"
2285child_name = "item"
2286    [[object.child_prop]]
2287    name = "expand"
2288    type = "gboolean"
2289    [[object.child_prop]]
2290    name = "fill"
2291    type = "gboolean"
2292    [[object.child_prop]]
2293    name = "homogeneous"
2294    type = "gboolean"
2295    [[object.child_prop]]
2296    name = "new-row"
2297    type = "gboolean"
2298
2299[[object]]
2300name = "Gtk.ToolPalette"
2301status = "generate"
2302generate_builder = true
2303
2304[[object]]
2305name = "Gtk.TreeIter"
2306status = "generate"
2307init_function_expression = "|_ptr| ()"
2308clear_function_expression = "|_ptr| ()"
2309
2310[[object]]
2311name = "Gtk.TreeModel"
2312status = "generate"
2313    [[object.function]]
2314    pattern = ".+"
2315        [[object.function.parameter]]
2316        name = "path"
2317        const = true
2318        [[object.function.parameter]]
2319        name = "iter"
2320        const = true
2321    [[object.function]]
2322    name = "filter_new"
2323    # Replaced by TreeModelFilter::new
2324    ignore = true
2325    [[object.function]]
2326    name = " sort_new_with_model"
2327    # Replaced by TreeModelSort::new
2328    ignore = true
2329    [[object.function]]
2330    name = "iter_children"
2331        [[object.function.parameter]]
2332        name = "parent"
2333        const = true
2334    [[object.function]]
2335    name = "iter_nth_child"
2336        [[object.function.parameter]]
2337        name = "parent"
2338        const = true
2339    [[object.function]]
2340    name = "iter_parent"
2341        [[object.function.parameter]]
2342        name = "child"
2343        const = true
2344    [[object.function]]
2345    name = 'ref_node'
2346    ignore = true
2347    [[object.function]]
2348    name = "rows_reordered"
2349    ignore = true
2350    [[object.function]]
2351    name = 'unref_node'
2352    ignore = true
2353
2354[[object]]
2355name = "Gtk.TreeModelFilter"
2356status = "generate"
2357    [[object.function]]
2358    name = "convert_child_path_to_path"
2359        [[object.function.parameter]]
2360        name = "child_path"
2361        const = true
2362    [[object.function]]
2363    name = "convert_path_to_child_path"
2364        [[object.function.parameter]]
2365        name = "filter_path"
2366        const = true
2367    [[object.function]]
2368    name = "convert_iter_to_child_iter"
2369        [[object.function.parameter]]
2370        name = "filter_iter"
2371        const = true
2372    [[object.function]]
2373    name = "convert_child_iter_to_iter"
2374        [[object.function.parameter]]
2375        name = "child_iter"
2376        const = true
2377    [[object.property]]
2378    name = "virtual-root"
2379    #value recordboxed
2380    ignore = true
2381
2382[[object]]
2383name = "Gtk.TreeModelSort"
2384status = "generate"
2385    [[object.function]]
2386    name = "convert_child_path_to_path"
2387        [[object.function.parameter]]
2388        name = "child_path"
2389        const = true
2390    [[object.function]]
2391    name = "convert_path_to_child_path"
2392        [[object.function.parameter]]
2393        name = "sorted_path"
2394        const = true
2395    [[object.function]]
2396    name = "convert_iter_to_child_iter"
2397        [[object.function.parameter]]
2398        name = "sorted_iter"
2399        const = true
2400    [[object.function]]
2401    name = "convert_child_iter_to_iter"
2402        [[object.function.parameter]]
2403        name = "child_iter"
2404        const = true
2405    [[object.function]]
2406    name = "iter_is_valid"
2407    # Bypass auto-rename so as to avoid automatic is prefixing
2408    bypass_auto_rename = true
2409        [[object.function.parameter]]
2410        name = "iter"
2411        const = true
2412    [[object.function]]
2413    name = "get_model"
2414        [object.function.return]
2415        nullable = false
2416    [[object.function]]
2417    name = "new_with_model"
2418    rename = "new"
2419
2420[[object]]
2421name = "Gtk.TreePath"
2422status = "generate"
2423    [[object.function]]
2424    name = "get_depth"
2425        [[object.function.parameter]]
2426        name = "path"
2427        const = true
2428    [[object.function]]
2429    name = "is_ancestor"
2430        [[object.function.parameter]]
2431        name = "path"
2432        const = true
2433        [[object.function.parameter]]
2434        name = "descendant"
2435        const = true
2436    [[object.function]]
2437    name = "is_descendant"
2438        [[object.function.parameter]]
2439        name = "path"
2440        const = true
2441        [[object.function.parameter]]
2442        name = "ancestor"
2443        const = true
2444    [[object.function]]
2445    name = "get_indices"
2446    manual = true
2447    [[object.function]]
2448    name = "to_string"
2449        [[object.function.parameter]]
2450        name = "path"
2451        const = true
2452
2453[[object]]
2454name = "Gtk.TreeRowReference"
2455status = "generate"
2456    [[object.function]]
2457    name = "new"
2458        [[object.function.parameter]]
2459        name = "path"
2460        const = true
2461        [object.function.return]
2462        nullable = true
2463    [[object.function]]
2464    name = "new_proxy"
2465        [[object.function.parameter]]
2466        name = "path"
2467        const = true
2468        [object.function.return]
2469        nullable = true
2470    [[object.function]]
2471    name = "get_model"
2472        [[object.function.parameter]]
2473        name = "reference"
2474        const = true
2475        [object.function.return]
2476        nullable = false
2477    [[object.function]]
2478    name = "get_path"
2479        [[object.function.parameter]]
2480        name = "reference"
2481        const = true
2482    [[object.function]]
2483    name = "valid"
2484        [[object.function.parameter]]
2485        name = "reference"
2486        const = true
2487    [[object.function]]
2488    name = "inserted"
2489        [[object.function.parameter]]
2490        name = "path"
2491        const = true
2492    [[object.function]]
2493    name = "deleted"
2494        [[object.function.parameter]]
2495        name = "path"
2496        const = true
2497
2498[[object]]
2499name = "Gtk.TreeSelection"
2500status = "generate"
2501    [[object.function]]
2502    pattern = ".+"
2503        [[object.function.parameter]]
2504        name = "iter"
2505        const = true
2506        [[object.function.parameter]]
2507        name = "path"
2508        const = true
2509    [[object.function]]
2510    pattern = "(un)?select_range"
2511        [[object.function.parameter]]
2512        name = "start_path"
2513        const = true
2514        [[object.function.parameter]]
2515        name = "end_path"
2516        const = true
2517
2518[[object]]
2519name = "Gtk.TreeSortable"
2520status = "generate"
2521manual_traits = ["TreeSortableExtManual"]
2522    [[object.function]]
2523    pattern = "[gs]et_sort_column_id"
2524    manual = true
2525    doc_trait_name = "TreeSortableExtManual"
2526    [[object.function]]
2527    pattern = "set_sort_func"
2528    # return type u32 -> Ordering
2529    manual = true
2530    doc_trait_name = "TreeSortableExtManual"
2531    [[object.function]]
2532    pattern = "set_default_sort_func"
2533    # return type u32 -> Ordering
2534    manual = true
2535    doc_trait_name = "TreeSortableExtManual"
2536
2537[[object]]
2538name = "Gtk.TreeStore"
2539status = "generate"
2540manual_traits = ["TreeStoreExtManual"]
2541    [[object.function]]
2542    pattern = ".+"
2543        [[object.function.parameter]]
2544        name = "iter"
2545        const = true
2546        [[object.function.parameter]]
2547        name = "parent"
2548        const = true
2549        [[object.function.parameter]]
2550        name = "sibling"
2551        const = true
2552    [[object.function]]
2553    name = "is_ancestor"
2554        [[object.function.parameter]]
2555        name = "descendant"
2556        const = true
2557    [[object.function]]
2558    name = "move_after"
2559        [[object.function.parameter]]
2560        name = "position"
2561        const = true
2562    [[object.function]]
2563    name = "move_before"
2564        [[object.function.parameter]]
2565        name = "position"
2566        const = true
2567    [[object.function]]
2568    name = "reorder"
2569    manual = true
2570    doc_trait_name = "TreeStoreExtManual"
2571    [[object.function]]
2572    name = "set_value"
2573    manual = true
2574    doc_trait_name = "TreeStoreExtManual"
2575    [[object.function]]
2576    name = "swap"
2577        [[object.function.parameter]]
2578        name = "a"
2579        const = true
2580        [[object.function.parameter]]
2581        name = "b"
2582        const = true
2583
2584[[object]]
2585name = "Gtk.TreeView"
2586status = "generate"
2587generate_builder = true
2588    [[object.function]]
2589    name = "enable_model_drag_dest"
2590    #array with size
2591    ignore = true
2592    [[object.function]]
2593    name = "enable_model_drag_source"
2594    #array with size
2595    ignore = true
2596    [[object.function]]
2597    pattern = ".+"
2598        [[object.function.parameter]]
2599        name = "path"
2600        const = true
2601    [[object.function]]
2602    name = "get_selection"
2603        [object.function.return]
2604        nullable = false
2605    [[object.function]]
2606    name = "get_hover_expand"
2607    rename = "hover_expands"
2608    [[object.signal]]
2609    pattern = ".+"
2610        [[object.signal.parameter]]
2611        name = "iter"
2612        transformation = "borrow"
2613        [[object.signal.parameter]]
2614        name = "path"
2615        transformation = "borrow"
2616    [[object.signal]]
2617    pattern = "test-.+"
2618    inhibit = true
2619
2620[[object]]
2621name = "Gtk.TreeViewColumn"
2622status = "generate"
2623generate_builder = true
2624    [[object.function]]
2625    name = "cell_set_cell_data"
2626        [[object.function.parameter]]
2627        name = "iter"
2628        const = true
2629
2630[[object]]
2631name = "Gtk.Viewport"
2632status = "generate"
2633generate_builder = true
2634
2635[[object]]
2636name = "Gtk.VolumeButton"
2637status = "generate"
2638generate_builder = true
2639
2640[[object]]
2641name = "Gtk.Widget"
2642status = "generate"
2643manual_traits = ["WidgetExtManual"]
2644    [[object.function]]
2645    name = "drag_dest_set"
2646    #array with size
2647    manual = true
2648    doc_trait_name = "WidgetExtManual"
2649    [[object.function]]
2650    name = "drag_source_set"
2651    #array with size
2652    manual = true
2653    doc_trait_name = "WidgetExtManual"
2654    [[object.function]]
2655    name = "enable_model_drag_source"
2656    #array with size
2657    ignore = true
2658    [[object.function]]
2659    name = "draw"
2660        [[object.function.parameter]]
2661        name = "cr"
2662        # cairo::Context is reference-counted
2663        const = true
2664    [[object.function]]
2665    name = "get_clipboard"
2666        [object.function.return]
2667        nullable = false
2668    [[object.function]]
2669    name = "get_device_enabled"
2670    rename = "device_is_enabled"
2671    [[object.function]]
2672    name = "intersect"
2673    manual = true
2674    doc_trait_name = "WidgetExtManual"
2675    [[object.function]]
2676    name = "override_font"
2677        [[object.function.parameter]]
2678        name = "font_desc"
2679        nullable = false
2680    [[object.function]]
2681    pattern = ".+"
2682        [[object.function.parameter]]
2683        name = "event"
2684        const = true
2685    [[object.function]]
2686    name = "get_path"
2687        [object.function.return]
2688        nullable = false
2689    [[object.function]]
2690    name = "add_tick_callback"
2691    manual = true
2692    doc_trait_name = "WidgetExtManual"
2693    [[object.function]]
2694    name = "remove_tick_callback"
2695    ignore = true
2696    [[object.function]]
2697    name = "add_events"
2698    manual = true
2699    doc_trait_name = "WidgetExtManual"
2700    [[object.function]]
2701    name = "get_events"
2702    manual = true
2703    doc_trait_name = "WidgetExtManual"
2704    [[object.function]]
2705    name = "set_events"
2706    manual = true
2707    doc_trait_name = "WidgetExtManual"
2708    [[object.function]]
2709    name = "get_sensitive"
2710    # Avoid clash with `is_sensitive`. Differences:
2711    # - `get_sensitive`: returns the widget `sensitive` property.
2712    # - `is_sensitive`: returns whether the widget’s is effectively sensitivity.
2713    #   meaning that the widget and all its parents are `sensitive`.
2714    bypass_auto_rename = true
2715    [[object.function]]
2716    name = "get_visible"
2717    # Avoid clash with `is_visible`. Differences:
2718    # - `get_visible`: returns the widget `visible` property.
2719    # - `is_visible`: returns whether the widget’s is effectively visibility.
2720    #   meaning that the widget and all its parents are `visible`.
2721    bypass_auto_rename = true
2722    [[object.function]]
2723    name = "get_hexpand"
2724    rename = "hexpands"
2725    [[object.function]]
2726    name = "get_style_context"
2727        [object.function.return]
2728        nullable = false
2729    [[object.function]]
2730    name = "get_vexpand"
2731    rename = "vexpands"
2732    [[object.function]]
2733    name = "size_allocate"
2734        [[object.function.parameter]]
2735        name = "allocation"
2736        const = true
2737    [[object.function]]
2738    name = "hide_on_delete"
2739    # return Inhibit instead of bool
2740    manual = true
2741    doc_trait_name = "WidgetExtManual"
2742    [[object.signal]]
2743    name = "button-press-event"
2744    inhibit = true
2745    [[object.signal]]
2746    name = "button-release-event"
2747    inhibit = true
2748    [[object.signal]]
2749    name = "delete-event"
2750    inhibit = true
2751    [[object.signal]]
2752    name = "destroy-event"
2753    inhibit = true
2754    [[object.signal]]
2755    name = "drag-data-get"
2756        [[object.signal.parameter]]
2757        name = "data"
2758        transformation = "borrow"
2759    [[object.signal]]
2760    name = "drag-failed"
2761    inhibit = true
2762    [[object.signal]]
2763    name = "draw"
2764    inhibit = true
2765    [[object.signal]]
2766    name = "enter-notify-event"
2767    inhibit = true
2768    [[object.signal]]
2769    name = "event"
2770    inhibit = true
2771    [[object.signal]]
2772    name = "focus"
2773    inhibit = true
2774    [[object.signal]]
2775    name = "focus-in-event"
2776    inhibit = true
2777    [[object.signal]]
2778    name = "focus-out-event"
2779    inhibit = true
2780    [[object.signal]]
2781    name = "grab-broken-event"
2782    inhibit = true
2783    [[object.signal]]
2784    name = "key-press-event"
2785    inhibit = true
2786    [[object.signal]]
2787    name = "key-release-event"
2788    inhibit = true
2789    [[object.signal]]
2790    name = "keynav-failed"
2791    inhibit = true
2792    [[object.signal]]
2793    name = "leave-notify-event"
2794    inhibit = true
2795    [[object.signal]]
2796    name = "map-event"
2797    inhibit = true
2798    ignore = true #manual EventAny
2799    doc_trait_name = "WidgetExtManual"
2800    [[object.signal]]
2801    name = "mnemonic-activate"
2802    inhibit = true
2803    [[object.signal]]
2804    name = "motion-notify-event"
2805    inhibit = true
2806    [[object.signal]]
2807    name = "property-notify-event"
2808    inhibit = true
2809    [[object.signal]]
2810    name = "proximity-in-event"
2811    inhibit = true
2812    [[object.signal]]
2813    name = "proximity-out-event"
2814    inhibit = true
2815    [[object.signal]]
2816    name = "scroll-event"
2817    inhibit = true
2818    [[object.signal]]
2819    name = "selection-clear-event"
2820    inhibit = true
2821    [[object.signal]]
2822    name = "selection-notify-event"
2823    inhibit = true
2824    [[object.signal]]
2825    name = "selection-request-event"
2826    inhibit = true
2827    [[object.signal]]
2828    name = "touch-event"
2829    inhibit = true
2830    [[object.signal]]
2831    name = "unmap-event"
2832    inhibit = true
2833    ignore = true #manual EventAny
2834    doc_trait_name = "WidgetExtManual"
2835    [[object.signal]]
2836    name = "visibility-notify-event"
2837    inhibit = true
2838    [[object.signal]]
2839    name = "window-state-event"
2840    inhibit = true
2841    [[object.property]]
2842    name = "style"
2843    #deprecated
2844    ignore = true
2845    [[object.property]]
2846    name = "events"
2847    generate = ["notify"]
2848    [[object.function]]
2849    name = "input_shape_combine_region"
2850        [[object.function.parameter]]
2851        name = "region"
2852        const = true
2853    [[object.function]]
2854    name = "shape_combine_region"
2855        [[object.function.parameter]]
2856        name = "region"
2857        const = true
2858    [[object.function]]
2859    name = "set_name"
2860    rename = "set_widget_name"
2861    [[object.function]]
2862    name = "get_name"
2863    rename = "widget_name"
2864        [object.function.return]
2865        nullable = false
2866    [[object.function]]
2867    name = "destroy"
2868    # needs to be marked as unsafe
2869    manual = true
2870    [[object.function]]
2871    name = "create_pango_context"
2872        [object.function.return]
2873        nullable = false
2874    [[object.function]]
2875    name = "create_pango_layout"
2876        [object.function.return]
2877        nullable = false
2878    [[object.function]]
2879    name = "get_display"
2880        [object.function.return]
2881        nullable = false
2882    [[object.function]]
2883    name = "get_pango_context"
2884        [object.function.return]
2885        nullable = false
2886
2887[[object]]
2888name = "Gtk.Window"
2889status = "generate"
2890generate_builder = true
2891trait_name = "GtkWindowExt"
2892manual_traits = ["GtkWindowExtManual"]
2893    [[object.function]]
2894    name = "activate_key"
2895        [[object.function.parameter]]
2896        name = "event"
2897        const = true
2898    [[object.function]]
2899    name = "propagate_key_event"
2900        [[object.function.parameter]]
2901        name = "event"
2902        const = true
2903    [[object.function]]
2904    name = "set_geometry_hints"
2905        [[object.function.parameter]]
2906        name = "geometry"
2907        const = true
2908    [[object.signal]] # workaround for https://github.com/gtk-rs/gtk/issues/985
2909    name = "set-focus"
2910        [[object.signal.parameter]]
2911        name = "object"
2912        nullable = true
2913