1// Package gtk was automatically generated by github.com/bnema/puregotk DO NOT EDIT
2package gtk
3
4import (
5 "unsafe"
6
7 "github.com/ebitengine/purego"
8
9 "github.com/bnema/puregotk/pkg/core"
10 "github.com/bnema/puregotk/v4/gdk"
11 "github.com/bnema/puregotk/v4/glib"
12 "github.com/bnema/puregotk/v4/gobject"
13 "github.com/bnema/puregotk/v4/gobject/types"
14)
15
16// A function used by gtk_icon_view_selected_foreach() to map all
17// selected rows.
18//
19// It will be called on every selected row in the view.
20type IconViewForeachFunc func(uintptr, *TreePath, uintptr)
21
22// An enum for determining where a dropped item goes.
23type IconViewDropPosition int
24
25var xIconViewDropPositionGLibType func() types.GType
26
27func IconViewDropPositionGLibType() types.GType {
28 return xIconViewDropPositionGLibType()
29}
30
31const (
32
33 // no drop possible
34 IconViewNoDropValue IconViewDropPosition = 0
35 // dropped item replaces the item
36 IconViewDropIntoValue IconViewDropPosition = 1
37 // dropped item is inserted to the left
38 IconViewDropLeftValue IconViewDropPosition = 2
39 // dropped item is inserted to the right
40 IconViewDropRightValue IconViewDropPosition = 3
41 // dropped item is inserted above
42 IconViewDropAboveValue IconViewDropPosition = 4
43 // dropped item is inserted below
44 IconViewDropBelowValue IconViewDropPosition = 5
45)
46
47// `GtkIconView` is a widget which displays data in a grid of icons.
48//
49// <picture>
50//
51// <source srcset="icon-view-dark.png" media="(prefers-color-scheme: dark)">
52// <img alt="An example GtkIconView" src="icon-view.png">
53//
54// </picture>
55//
56// `GtkIconView` provides an alternative view on a `GtkTreeModel`.
57// It displays the model as a grid of icons with labels. Like
58// [class@Gtk.TreeView], it allows to select one or multiple items
59// (depending on the selection mode, see [method@Gtk.IconView.set_selection_mode]).
60// In addition to selection with the arrow keys, `GtkIconView` supports
61// rubberband selection, which is controlled by dragging the pointer.
62//
63// Note that if the tree model is backed by an actual tree store (as
64// opposed to a flat list where the mapping to icons is obvious),
65// `GtkIconView` will only display the first level of the tree and
66// ignore the tree’s branches.
67//
68// ## CSS nodes
69//
70// ```
71// iconview.view
72// ╰── [rubberband]
73// ```
74//
75// `GtkIconView` has a single CSS node with name iconview and style class .view.
76// For rubberband selection, a subnode with name rubberband is used.
77type IconView struct {
78 Widget
79}
80
81var xIconViewGLibType func() types.GType
82
83func IconViewGLibType() types.GType {
84 return xIconViewGLibType()
85}
86
87func IconViewNewFromInternalPtr(ptr uintptr) *IconView {
88 cls := &IconView{}
89 cls.Ptr = ptr
90 return cls
91}
92
93var xNewIconView func() uintptr
94
95// Creates a new `GtkIconView` widget
96func NewIconView() *IconView {
97 var cls *IconView
98
99 cret := xNewIconView()
100
101 if cret == 0 {
102 return nil
103 }
104 gobject.IncreaseRef(cret)
105 cls = &IconView{}
106 cls.Ptr = cret
107 return cls
108}
109
110var xNewIconViewWithArea func(uintptr) uintptr
111
112// Creates a new `GtkIconView` widget using the
113// specified @area to layout cells inside the icons.
114func NewIconViewWithArea(AreaVar *CellArea) *IconView {
115 var cls *IconView
116
117 cret := xNewIconViewWithArea(AreaVar.GoPointer())
118
119 if cret == 0 {
120 return nil
121 }
122 gobject.IncreaseRef(cret)
123 cls = &IconView{}
124 cls.Ptr = cret
125 return cls
126}
127
128var xNewIconViewWithModel func(uintptr) uintptr
129
130// Creates a new `GtkIconView` widget with the model @model.
131func NewIconViewWithModel(ModelVar TreeModel) *IconView {
132 var cls *IconView
133
134 cret := xNewIconViewWithModel(ModelVar.GoPointer())
135
136 if cret == 0 {
137 return nil
138 }
139 gobject.IncreaseRef(cret)
140 cls = &IconView{}
141 cls.Ptr = cret
142 return cls
143}
144
145var xIconViewCreateDragIcon func(uintptr, *TreePath) uintptr
146
147// Creates a `GdkPaintable` representation of the item at @path.
148// This image is used for a drag icon.
149func (x *IconView) CreateDragIcon(PathVar *TreePath) *gdk.PaintableBase {
150 var cls *gdk.PaintableBase
151
152 cret := xIconViewCreateDragIcon(x.GoPointer(), PathVar)
153
154 if cret == 0 {
155 return nil
156 }
157 cls = &gdk.PaintableBase{}
158 cls.Ptr = cret
159 return cls
160}
161
162var xIconViewEnableModelDragDest func(uintptr, *gdk.ContentFormats, gdk.DragAction)
163
164// Turns @icon_view into a drop destination for automatic DND. Calling this
165// method sets `GtkIconView`:reorderable to %FALSE.
166func (x *IconView) EnableModelDragDest(FormatsVar *gdk.ContentFormats, ActionsVar gdk.DragAction) {
167
168 xIconViewEnableModelDragDest(x.GoPointer(), FormatsVar, ActionsVar)
169
170}
171
172var xIconViewEnableModelDragSource func(uintptr, gdk.ModifierType, *gdk.ContentFormats, gdk.DragAction)
173
174// Turns @icon_view into a drag source for automatic DND. Calling this
175// method sets `GtkIconView`:reorderable to %FALSE.
176func (x *IconView) EnableModelDragSource(StartButtonMaskVar gdk.ModifierType, FormatsVar *gdk.ContentFormats, ActionsVar gdk.DragAction) {
177
178 xIconViewEnableModelDragSource(x.GoPointer(), StartButtonMaskVar, FormatsVar, ActionsVar)
179
180}
181
182var xIconViewGetActivateOnSingleClick func(uintptr) bool
183
184// Gets the setting set by gtk_icon_view_set_activate_on_single_click().
185func (x *IconView) GetActivateOnSingleClick() bool {
186
187 cret := xIconViewGetActivateOnSingleClick(x.GoPointer())
188 return cret
189}
190
191var xIconViewGetCellRect func(uintptr, *TreePath, uintptr, *gdk.Rectangle) bool
192
193// Fills the bounding rectangle in widget coordinates for the cell specified by
194// @path and @cell. If @cell is %NULL the main cell area is used.
195//
196// This function is only valid if @icon_view is realized.
197func (x *IconView) GetCellRect(PathVar *TreePath, CellVar *CellRenderer, RectVar *gdk.Rectangle) bool {
198
199 cret := xIconViewGetCellRect(x.GoPointer(), PathVar, CellVar.GoPointer(), RectVar)
200 return cret
201}
202
203var xIconViewGetColumnSpacing func(uintptr) int
204
205// Returns the value of the ::column-spacing property.
206func (x *IconView) GetColumnSpacing() int {
207
208 cret := xIconViewGetColumnSpacing(x.GoPointer())
209 return cret
210}
211
212var xIconViewGetColumns func(uintptr) int
213
214// Returns the value of the ::columns property.
215func (x *IconView) GetColumns() int {
216
217 cret := xIconViewGetColumns(x.GoPointer())
218 return cret
219}
220
221var xIconViewGetCursor func(uintptr, **TreePath, **CellRenderer) bool
222
223// Fills in @path and @cell with the current cursor path and cell.
224// If the cursor isn’t currently set, then *@path will be %NULL.
225// If no cell currently has focus, then *@cell will be %NULL.
226//
227// The returned `GtkTreePath` must be freed with gtk_tree_path_free().
228func (x *IconView) GetCursor(PathVar **TreePath, CellVar **CellRenderer) bool {
229
230 cret := xIconViewGetCursor(x.GoPointer(), PathVar, CellVar)
231 return cret
232}
233
234var xIconViewGetDestItemAtPos func(uintptr, int, int, **TreePath, *IconViewDropPosition) bool
235
236// Determines the destination item for a given position.
237func (x *IconView) GetDestItemAtPos(DragXVar int, DragYVar int, PathVar **TreePath, PosVar *IconViewDropPosition) bool {
238
239 cret := xIconViewGetDestItemAtPos(x.GoPointer(), DragXVar, DragYVar, PathVar, PosVar)
240 return cret
241}
242
243var xIconViewGetDragDestItem func(uintptr, **TreePath, *IconViewDropPosition)
244
245// Gets information about the item that is highlighted for feedback.
246func (x *IconView) GetDragDestItem(PathVar **TreePath, PosVar *IconViewDropPosition) {
247
248 xIconViewGetDragDestItem(x.GoPointer(), PathVar, PosVar)
249
250}
251
252var xIconViewGetItemAtPos func(uintptr, int, int, **TreePath, **CellRenderer) bool
253
254// Gets the path and cell for the icon at the given position.
255func (x *IconView) GetItemAtPos(XVar int, YVar int, PathVar **TreePath, CellVar **CellRenderer) bool {
256
257 cret := xIconViewGetItemAtPos(x.GoPointer(), XVar, YVar, PathVar, CellVar)
258 return cret
259}
260
261var xIconViewGetItemColumn func(uintptr, *TreePath) int
262
263// Gets the column in which the item @path is currently
264// displayed. Column numbers start at 0.
265func (x *IconView) GetItemColumn(PathVar *TreePath) int {
266
267 cret := xIconViewGetItemColumn(x.GoPointer(), PathVar)
268 return cret
269}
270
271var xIconViewGetItemOrientation func(uintptr) Orientation
272
273// Returns the value of the ::item-orientation property which determines
274// whether the labels are drawn beside the icons instead of below.
275func (x *IconView) GetItemOrientation() Orientation {
276
277 cret := xIconViewGetItemOrientation(x.GoPointer())
278 return cret
279}
280
281var xIconViewGetItemPadding func(uintptr) int
282
283// Returns the value of the ::item-padding property.
284func (x *IconView) GetItemPadding() int {
285
286 cret := xIconViewGetItemPadding(x.GoPointer())
287 return cret
288}
289
290var xIconViewGetItemRow func(uintptr, *TreePath) int
291
292// Gets the row in which the item @path is currently
293// displayed. Row numbers start at 0.
294func (x *IconView) GetItemRow(PathVar *TreePath) int {
295
296 cret := xIconViewGetItemRow(x.GoPointer(), PathVar)
297 return cret
298}
299
300var xIconViewGetItemWidth func(uintptr) int
301
302// Returns the value of the ::item-width property.
303func (x *IconView) GetItemWidth() int {
304
305 cret := xIconViewGetItemWidth(x.GoPointer())
306 return cret
307}
308
309var xIconViewGetMargin func(uintptr) int
310
311// Returns the value of the ::margin property.
312func (x *IconView) GetMargin() int {
313
314 cret := xIconViewGetMargin(x.GoPointer())
315 return cret
316}
317
318var xIconViewGetMarkupColumn func(uintptr) int
319
320// Returns the column with markup text for @icon_view.
321func (x *IconView) GetMarkupColumn() int {
322
323 cret := xIconViewGetMarkupColumn(x.GoPointer())
324 return cret
325}
326
327var xIconViewGetModel func(uintptr) uintptr
328
329// Returns the model the `GtkIconView` is based on. Returns %NULL if the
330// model is unset.
331func (x *IconView) GetModel() *TreeModelBase {
332 var cls *TreeModelBase
333
334 cret := xIconViewGetModel(x.GoPointer())
335
336 if cret == 0 {
337 return nil
338 }
339 gobject.IncreaseRef(cret)
340 cls = &TreeModelBase{}
341 cls.Ptr = cret
342 return cls
343}
344
345var xIconViewGetPathAtPos func(uintptr, int, int) *TreePath
346
347// Gets the path for the icon at the given position.
348func (x *IconView) GetPathAtPos(XVar int, YVar int) *TreePath {
349
350 cret := xIconViewGetPathAtPos(x.GoPointer(), XVar, YVar)
351 return cret
352}
353
354var xIconViewGetPixbufColumn func(uintptr) int
355
356// Returns the column with pixbufs for @icon_view.
357func (x *IconView) GetPixbufColumn() int {
358
359 cret := xIconViewGetPixbufColumn(x.GoPointer())
360 return cret
361}
362
363var xIconViewGetReorderable func(uintptr) bool
364
365// Retrieves whether the user can reorder the list via drag-and-drop.
366// See gtk_icon_view_set_reorderable().
367func (x *IconView) GetReorderable() bool {
368
369 cret := xIconViewGetReorderable(x.GoPointer())
370 return cret
371}
372
373var xIconViewGetRowSpacing func(uintptr) int
374
375// Returns the value of the ::row-spacing property.
376func (x *IconView) GetRowSpacing() int {
377
378 cret := xIconViewGetRowSpacing(x.GoPointer())
379 return cret
380}
381
382var xIconViewGetSelectedItems func(uintptr) *glib.List
383
384// Creates a list of paths of all selected items. Additionally, if you are
385// planning on modifying the model after calling this function, you may
386// want to convert the returned list into a list of `GtkTreeRowReferences`.
387// To do this, you can use gtk_tree_row_reference_new().
388//
389// To free the return value, use `g_list_free_full`:
390//
391// ```c
392// GtkWidget *icon_view = gtk_icon_view_new ();
393// // Use icon_view
394//
395// GList *list = gtk_icon_view_get_selected_items (GTK_ICON_VIEW (icon_view));
396//
397// // use list
398//
399// g_list_free_full (list, (GDestroyNotify) gtk_tree_path_free);
400// ```
401func (x *IconView) GetSelectedItems() *glib.List {
402
403 cret := xIconViewGetSelectedItems(x.GoPointer())
404 return cret
405}
406
407var xIconViewGetSelectionMode func(uintptr) SelectionMode
408
409// Gets the selection mode of the @icon_view.
410func (x *IconView) GetSelectionMode() SelectionMode {
411
412 cret := xIconViewGetSelectionMode(x.GoPointer())
413 return cret
414}
415
416var xIconViewGetSpacing func(uintptr) int
417
418// Returns the value of the ::spacing property.
419func (x *IconView) GetSpacing() int {
420
421 cret := xIconViewGetSpacing(x.GoPointer())
422 return cret
423}
424
425var xIconViewGetTextColumn func(uintptr) int
426
427// Returns the column with text for @icon_view.
428func (x *IconView) GetTextColumn() int {
429
430 cret := xIconViewGetTextColumn(x.GoPointer())
431 return cret
432}
433
434var xIconViewGetTooltipColumn func(uintptr) int
435
436// Returns the column of @icon_view’s model which is being used for
437// displaying tooltips on @icon_view’s rows.
438func (x *IconView) GetTooltipColumn() int {
439
440 cret := xIconViewGetTooltipColumn(x.GoPointer())
441 return cret
442}
443
444var xIconViewGetTooltipContext func(uintptr, int, int, bool, **TreeModel, **TreePath, *TreeIter) bool
445
446// This function is supposed to be used in a `GtkWidget::query-tooltip`
447// signal handler for `GtkIconView`. The @x, @y and @keyboard_tip values
448// which are received in the signal handler, should be passed to this
449// function without modification.
450//
451// The return value indicates whether there is an icon view item at the given
452// coordinates (%TRUE) or not (%FALSE) for mouse tooltips. For keyboard
453// tooltips the item returned will be the cursor item. When %TRUE, then any of
454// @model, @path and @iter which have been provided will be set to point to
455// that row and the corresponding model.
456func (x *IconView) GetTooltipContext(XVar int, YVar int, KeyboardTipVar bool, ModelVar **TreeModel, PathVar **TreePath, IterVar *TreeIter) bool {
457
458 cret := xIconViewGetTooltipContext(x.GoPointer(), XVar, YVar, KeyboardTipVar, ModelVar, PathVar, IterVar)
459 return cret
460}
461
462var xIconViewGetVisibleRange func(uintptr, **TreePath, **TreePath) bool
463
464// Sets @start_path and @end_path to be the first and last visible path.
465// Note that there may be invisible paths in between.
466//
467// Both paths should be freed with gtk_tree_path_free() after use.
468func (x *IconView) GetVisibleRange(StartPathVar **TreePath, EndPathVar **TreePath) bool {
469
470 cret := xIconViewGetVisibleRange(x.GoPointer(), StartPathVar, EndPathVar)
471 return cret
472}
473
474var xIconViewItemActivated func(uintptr, *TreePath)
475
476// Activates the item determined by @path.
477func (x *IconView) ItemActivated(PathVar *TreePath) {
478
479 xIconViewItemActivated(x.GoPointer(), PathVar)
480
481}
482
483var xIconViewPathIsSelected func(uintptr, *TreePath) bool
484
485// Returns %TRUE if the icon pointed to by @path is currently
486// selected. If @path does not point to a valid location, %FALSE is returned.
487func (x *IconView) PathIsSelected(PathVar *TreePath) bool {
488
489 cret := xIconViewPathIsSelected(x.GoPointer(), PathVar)
490 return cret
491}
492
493var xIconViewScrollToPath func(uintptr, *TreePath, bool, float32, float32)
494
495// Moves the alignments of @icon_view to the position specified by @path.
496// @row_align determines where the row is placed, and @col_align determines
497// where @column is placed. Both are expected to be between 0.0 and 1.0.
498// 0.0 means left/top alignment, 1.0 means right/bottom alignment, 0.5 means
499// center.
500//
501// If @use_align is %FALSE, then the alignment arguments are ignored, and the
502// tree does the minimum amount of work to scroll the item onto the screen.
503// This means that the item will be scrolled to the edge closest to its current
504// position. If the item is currently visible on the screen, nothing is done.
505//
506// This function only works if the model is set, and @path is a valid row on
507// the model. If the model changes before the @icon_view is realized, the
508// centered path will be modified to reflect this change.
509func (x *IconView) ScrollToPath(PathVar *TreePath, UseAlignVar bool, RowAlignVar float32, ColAlignVar float32) {
510
511 xIconViewScrollToPath(x.GoPointer(), PathVar, UseAlignVar, RowAlignVar, ColAlignVar)
512
513}
514
515var xIconViewSelectAll func(uintptr)
516
517// Selects all the icons. @icon_view must has its selection mode set
518// to %GTK_SELECTION_MULTIPLE.
519func (x *IconView) SelectAll() {
520
521 xIconViewSelectAll(x.GoPointer())
522
523}
524
525var xIconViewSelectPath func(uintptr, *TreePath)
526
527// Selects the row at @path.
528func (x *IconView) SelectPath(PathVar *TreePath) {
529
530 xIconViewSelectPath(x.GoPointer(), PathVar)
531
532}
533
534var xIconViewSelectedForeach func(uintptr, uintptr, uintptr)
535
536// Calls a function for each selected icon. Note that the model or
537// selection cannot be modified from within this function.
538func (x *IconView) SelectedForeach(FuncVar *IconViewForeachFunc, DataVar uintptr) {
539
540 var FuncVarRef uintptr
541 if FuncVar != nil {
542 FuncVarPtr := uintptr(unsafe.Pointer(FuncVar))
543 if cbRefPtr, ok := glib.GetCallback(FuncVarPtr); ok {
544 FuncVarRef = cbRefPtr
545 } else {
546 fcb := func(arg0 uintptr, arg1 *TreePath, arg2 uintptr) {
547 cbFn := *FuncVar
548 cbFn(arg0, arg1, arg2)
549 }
550 FuncVarRef = purego.NewCallback(fcb)
551 glib.SaveCallbackWithClosure(FuncVarPtr, FuncVarRef, FuncVar)
552 }
553 }
554
555 xIconViewSelectedForeach(x.GoPointer(), FuncVarRef, DataVar)
556
557}
558
559var xIconViewSetActivateOnSingleClick func(uintptr, bool)
560
561// Causes the `GtkIconView`::item-activated signal to be emitted on
562// a single click instead of a double click.
563func (x *IconView) SetActivateOnSingleClick(SingleVar bool) {
564
565 xIconViewSetActivateOnSingleClick(x.GoPointer(), SingleVar)
566
567}
568
569var xIconViewSetColumnSpacing func(uintptr, int)
570
571// Sets the ::column-spacing property which specifies the space
572// which is inserted between the columns of the icon view.
573func (x *IconView) SetColumnSpacing(ColumnSpacingVar int) {
574
575 xIconViewSetColumnSpacing(x.GoPointer(), ColumnSpacingVar)
576
577}
578
579var xIconViewSetColumns func(uintptr, int)
580
581// Sets the ::columns property which determines in how
582// many columns the icons are arranged. If @columns is
583// -1, the number of columns will be chosen automatically
584// to fill the available area.
585func (x *IconView) SetColumns(ColumnsVar int) {
586
587 xIconViewSetColumns(x.GoPointer(), ColumnsVar)
588
589}
590
591var xIconViewSetCursor func(uintptr, *TreePath, uintptr, bool)
592
593// Sets the current keyboard focus to be at @path, and selects it. This is
594// useful when you want to focus the user’s attention on a particular item.
595// If @cell is not %NULL, then focus is given to the cell specified by
596// it. Additionally, if @start_editing is %TRUE, then editing should be
597// started in the specified cell.
598//
599// This function is often followed by `gtk_widget_grab_focus
600// (icon_view)` in order to give keyboard focus to the widget.
601// Please note that editing can only happen when the widget is realized.
602func (x *IconView) SetCursor(PathVar *TreePath, CellVar *CellRenderer, StartEditingVar bool) {
603
604 xIconViewSetCursor(x.GoPointer(), PathVar, CellVar.GoPointer(), StartEditingVar)
605
606}
607
608var xIconViewSetDragDestItem func(uintptr, *TreePath, IconViewDropPosition)
609
610// Sets the item that is highlighted for feedback.
611func (x *IconView) SetDragDestItem(PathVar *TreePath, PosVar IconViewDropPosition) {
612
613 xIconViewSetDragDestItem(x.GoPointer(), PathVar, PosVar)
614
615}
616
617var xIconViewSetItemOrientation func(uintptr, Orientation)
618
619// Sets the ::item-orientation property which determines whether the labels
620// are drawn beside the icons instead of below.
621func (x *IconView) SetItemOrientation(OrientationVar Orientation) {
622
623 xIconViewSetItemOrientation(x.GoPointer(), OrientationVar)
624
625}
626
627var xIconViewSetItemPadding func(uintptr, int)
628
629// Sets the `GtkIconView`:item-padding property which specifies the padding
630// around each of the icon view’s items.
631func (x *IconView) SetItemPadding(ItemPaddingVar int) {
632
633 xIconViewSetItemPadding(x.GoPointer(), ItemPaddingVar)
634
635}
636
637var xIconViewSetItemWidth func(uintptr, int)
638
639// Sets the ::item-width property which specifies the width
640// to use for each item. If it is set to -1, the icon view will
641// automatically determine a suitable item size.
642func (x *IconView) SetItemWidth(ItemWidthVar int) {
643
644 xIconViewSetItemWidth(x.GoPointer(), ItemWidthVar)
645
646}
647
648var xIconViewSetMargin func(uintptr, int)
649
650// Sets the ::margin property which specifies the space
651// which is inserted at the top, bottom, left and right
652// of the icon view.
653func (x *IconView) SetMargin(MarginVar int) {
654
655 xIconViewSetMargin(x.GoPointer(), MarginVar)
656
657}
658
659var xIconViewSetMarkupColumn func(uintptr, int)
660
661// Sets the column with markup information for @icon_view to be
662// @column. The markup column must be of type `G_TYPE_STRING`.
663// If the markup column is set to something, it overrides
664// the text column set by gtk_icon_view_set_text_column().
665func (x *IconView) SetMarkupColumn(ColumnVar int) {
666
667 xIconViewSetMarkupColumn(x.GoPointer(), ColumnVar)
668
669}
670
671var xIconViewSetModel func(uintptr, uintptr)
672
673// Sets the model for a `GtkIconView`.
674// If the @icon_view already has a model set, it will remove
675// it before setting the new model. If @model is %NULL, then
676// it will unset the old model.
677func (x *IconView) SetModel(ModelVar TreeModel) {
678
679 xIconViewSetModel(x.GoPointer(), ModelVar.GoPointer())
680
681}
682
683var xIconViewSetPixbufColumn func(uintptr, int)
684
685// Sets the column with pixbufs for @icon_view to be @column. The pixbuf
686// column must be of type `GDK_TYPE_PIXBUF`
687func (x *IconView) SetPixbufColumn(ColumnVar int) {
688
689 xIconViewSetPixbufColumn(x.GoPointer(), ColumnVar)
690
691}
692
693var xIconViewSetReorderable func(uintptr, bool)
694
695// This function is a convenience function to allow you to reorder models that
696// support the `GtkTreeDragSourceIface` and the `GtkTreeDragDestIface`. Both
697// `GtkTreeStore` and `GtkListStore` support these. If @reorderable is %TRUE, then
698// the user can reorder the model by dragging and dropping rows. The
699// developer can listen to these changes by connecting to the model's
700// row_inserted and row_deleted signals. The reordering is implemented by setting up
701// the icon view as a drag source and destination. Therefore, drag and
702// drop can not be used in a reorderable view for any other purpose.
703//
704// This function does not give you any degree of control over the order -- any
705// reordering is allowed. If more control is needed, you should probably
706// handle drag and drop manually.
707func (x *IconView) SetReorderable(ReorderableVar bool) {
708
709 xIconViewSetReorderable(x.GoPointer(), ReorderableVar)
710
711}
712
713var xIconViewSetRowSpacing func(uintptr, int)
714
715// Sets the ::row-spacing property which specifies the space
716// which is inserted between the rows of the icon view.
717func (x *IconView) SetRowSpacing(RowSpacingVar int) {
718
719 xIconViewSetRowSpacing(x.GoPointer(), RowSpacingVar)
720
721}
722
723var xIconViewSetSelectionMode func(uintptr, SelectionMode)
724
725// Sets the selection mode of the @icon_view.
726func (x *IconView) SetSelectionMode(ModeVar SelectionMode) {
727
728 xIconViewSetSelectionMode(x.GoPointer(), ModeVar)
729
730}
731
732var xIconViewSetSpacing func(uintptr, int)
733
734// Sets the ::spacing property which specifies the space
735// which is inserted between the cells (i.e. the icon and
736// the text) of an item.
737func (x *IconView) SetSpacing(SpacingVar int) {
738
739 xIconViewSetSpacing(x.GoPointer(), SpacingVar)
740
741}
742
743var xIconViewSetTextColumn func(uintptr, int)
744
745// Sets the column with text for @icon_view to be @column. The text
746// column must be of type `G_TYPE_STRING`.
747func (x *IconView) SetTextColumn(ColumnVar int) {
748
749 xIconViewSetTextColumn(x.GoPointer(), ColumnVar)
750
751}
752
753var xIconViewSetTooltipCell func(uintptr, uintptr, *TreePath, uintptr)
754
755// Sets the tip area of @tooltip to the area which @cell occupies in
756// the item pointed to by @path. See also gtk_tooltip_set_tip_area().
757//
758// See also gtk_icon_view_set_tooltip_column() for a simpler alternative.
759func (x *IconView) SetTooltipCell(TooltipVar *Tooltip, PathVar *TreePath, CellVar *CellRenderer) {
760
761 xIconViewSetTooltipCell(x.GoPointer(), TooltipVar.GoPointer(), PathVar, CellVar.GoPointer())
762
763}
764
765var xIconViewSetTooltipColumn func(uintptr, int)
766
767// If you only plan to have simple (text-only) tooltips on full items, you
768// can use this function to have `GtkIconView` handle these automatically
769// for you. @column should be set to the column in @icon_view’s model
770// containing the tooltip texts, or -1 to disable this feature.
771//
772// When enabled, `GtkWidget:has-tooltip` will be set to %TRUE and
773// @icon_view will connect a `GtkWidget::query-tooltip` signal handler.
774//
775// Note that the signal handler sets the text with gtk_tooltip_set_markup(),
776// so &, <, etc have to be escaped in the text.
777func (x *IconView) SetTooltipColumn(ColumnVar int) {
778
779 xIconViewSetTooltipColumn(x.GoPointer(), ColumnVar)
780
781}
782
783var xIconViewSetTooltipItem func(uintptr, uintptr, *TreePath)
784
785// Sets the tip area of @tooltip to be the area covered by the item at @path.
786// See also gtk_icon_view_set_tooltip_column() for a simpler alternative.
787// See also gtk_tooltip_set_tip_area().
788func (x *IconView) SetTooltipItem(TooltipVar *Tooltip, PathVar *TreePath) {
789
790 xIconViewSetTooltipItem(x.GoPointer(), TooltipVar.GoPointer(), PathVar)
791
792}
793
794var xIconViewUnselectAll func(uintptr)
795
796// Unselects all the icons.
797func (x *IconView) UnselectAll() {
798
799 xIconViewUnselectAll(x.GoPointer())
800
801}
802
803var xIconViewUnselectPath func(uintptr, *TreePath)
804
805// Unselects the row at @path.
806func (x *IconView) UnselectPath(PathVar *TreePath) {
807
808 xIconViewUnselectPath(x.GoPointer(), PathVar)
809
810}
811
812var xIconViewUnsetModelDragDest func(uintptr)
813
814// Undoes the effect of gtk_icon_view_enable_model_drag_dest(). Calling this
815// method sets `GtkIconView`:reorderable to %FALSE.
816func (x *IconView) UnsetModelDragDest() {
817
818 xIconViewUnsetModelDragDest(x.GoPointer())
819
820}
821
822var xIconViewUnsetModelDragSource func(uintptr)
823
824// Undoes the effect of gtk_icon_view_enable_model_drag_source(). Calling this
825// method sets `GtkIconView`:reorderable to %FALSE.
826func (x *IconView) UnsetModelDragSource() {
827
828 xIconViewUnsetModelDragSource(x.GoPointer())
829
830}
831
832func (c *IconView) GoPointer() uintptr {
833 if c == nil {
834 return 0
835 }
836 return c.Ptr
837}
838
839func (c *IconView) SetGoPointer(ptr uintptr) {
840 c.Ptr = ptr
841}
842
843// SetPropertyActivateOnSingleClick sets the "activate-on-single-click" property.
844// The activate-on-single-click property specifies whether the "item-activated" signal
845// will be emitted after a single click.
846func (x *IconView) SetPropertyActivateOnSingleClick(value bool) {
847 var v gobject.Value
848 v.Init(gobject.TypeBooleanVal)
849 v.SetBoolean(value)
850 x.SetProperty("activate-on-single-click", &v)
851}
852
853// GetPropertyActivateOnSingleClick gets the "activate-on-single-click" property.
854// The activate-on-single-click property specifies whether the "item-activated" signal
855// will be emitted after a single click.
856func (x *IconView) GetPropertyActivateOnSingleClick() bool {
857 var v gobject.Value
858 x.GetProperty("activate-on-single-click", &v)
859 return v.GetBoolean()
860}
861
862// SetPropertyColumnSpacing sets the "column-spacing" property.
863// The column-spacing property specifies the space which is inserted between
864// the columns of the icon view.
865func (x *IconView) SetPropertyColumnSpacing(value int) {
866 var v gobject.Value
867 v.Init(gobject.TypeIntVal)
868 v.SetInt(value)
869 x.SetProperty("column-spacing", &v)
870}
871
872// GetPropertyColumnSpacing gets the "column-spacing" property.
873// The column-spacing property specifies the space which is inserted between
874// the columns of the icon view.
875func (x *IconView) GetPropertyColumnSpacing() int {
876 var v gobject.Value
877 x.GetProperty("column-spacing", &v)
878 return v.GetInt()
879}
880
881// SetPropertyColumns sets the "columns" property.
882// The columns property contains the number of the columns in which the
883// items should be displayed. If it is -1, the number of columns will
884// be chosen automatically to fill the available area.
885func (x *IconView) SetPropertyColumns(value int) {
886 var v gobject.Value
887 v.Init(gobject.TypeIntVal)
888 v.SetInt(value)
889 x.SetProperty("columns", &v)
890}
891
892// GetPropertyColumns gets the "columns" property.
893// The columns property contains the number of the columns in which the
894// items should be displayed. If it is -1, the number of columns will
895// be chosen automatically to fill the available area.
896func (x *IconView) GetPropertyColumns() int {
897 var v gobject.Value
898 x.GetProperty("columns", &v)
899 return v.GetInt()
900}
901
902// SetPropertyItemPadding sets the "item-padding" property.
903// The item-padding property specifies the padding around each
904// of the icon view's item.
905func (x *IconView) SetPropertyItemPadding(value int) {
906 var v gobject.Value
907 v.Init(gobject.TypeIntVal)
908 v.SetInt(value)
909 x.SetProperty("item-padding", &v)
910}
911
912// GetPropertyItemPadding gets the "item-padding" property.
913// The item-padding property specifies the padding around each
914// of the icon view's item.
915func (x *IconView) GetPropertyItemPadding() int {
916 var v gobject.Value
917 x.GetProperty("item-padding", &v)
918 return v.GetInt()
919}
920
921// SetPropertyItemWidth sets the "item-width" property.
922// The item-width property specifies the width to use for each item.
923// If it is set to -1, the icon view will automatically determine a
924// suitable item size.
925func (x *IconView) SetPropertyItemWidth(value int) {
926 var v gobject.Value
927 v.Init(gobject.TypeIntVal)
928 v.SetInt(value)
929 x.SetProperty("item-width", &v)
930}
931
932// GetPropertyItemWidth gets the "item-width" property.
933// The item-width property specifies the width to use for each item.
934// If it is set to -1, the icon view will automatically determine a
935// suitable item size.
936func (x *IconView) GetPropertyItemWidth() int {
937 var v gobject.Value
938 x.GetProperty("item-width", &v)
939 return v.GetInt()
940}
941
942// SetPropertyMargin sets the "margin" property.
943// The margin property specifies the space which is inserted
944// at the edges of the icon view.
945func (x *IconView) SetPropertyMargin(value int) {
946 var v gobject.Value
947 v.Init(gobject.TypeIntVal)
948 v.SetInt(value)
949 x.SetProperty("margin", &v)
950}
951
952// GetPropertyMargin gets the "margin" property.
953// The margin property specifies the space which is inserted
954// at the edges of the icon view.
955func (x *IconView) GetPropertyMargin() int {
956 var v gobject.Value
957 x.GetProperty("margin", &v)
958 return v.GetInt()
959}
960
961// SetPropertyMarkupColumn sets the "markup-column" property.
962// The ::markup-column property contains the number of the model column
963// containing markup information to be displayed. The markup column must be
964// of type `G_TYPE_STRING`. If this property and the :text-column property
965// are both set to column numbers, it overrides the text column.
966// If both are set to -1, no texts are displayed.
967func (x *IconView) SetPropertyMarkupColumn(value int) {
968 var v gobject.Value
969 v.Init(gobject.TypeIntVal)
970 v.SetInt(value)
971 x.SetProperty("markup-column", &v)
972}
973
974// GetPropertyMarkupColumn gets the "markup-column" property.
975// The ::markup-column property contains the number of the model column
976// containing markup information to be displayed. The markup column must be
977// of type `G_TYPE_STRING`. If this property and the :text-column property
978// are both set to column numbers, it overrides the text column.
979// If both are set to -1, no texts are displayed.
980func (x *IconView) GetPropertyMarkupColumn() int {
981 var v gobject.Value
982 x.GetProperty("markup-column", &v)
983 return v.GetInt()
984}
985
986// SetPropertyPixbufColumn sets the "pixbuf-column" property.
987// The ::pixbuf-column property contains the number of the model column
988// containing the pixbufs which are displayed. The pixbuf column must be
989// of type `GDK_TYPE_PIXBUF`. Setting this property to -1 turns off the
990// display of pixbufs.
991func (x *IconView) SetPropertyPixbufColumn(value int) {
992 var v gobject.Value
993 v.Init(gobject.TypeIntVal)
994 v.SetInt(value)
995 x.SetProperty("pixbuf-column", &v)
996}
997
998// GetPropertyPixbufColumn gets the "pixbuf-column" property.
999// The ::pixbuf-column property contains the number of the model column
1000// containing the pixbufs which are displayed. The pixbuf column must be
1001// of type `GDK_TYPE_PIXBUF`. Setting this property to -1 turns off the
1002// display of pixbufs.
1003func (x *IconView) GetPropertyPixbufColumn() int {
1004 var v gobject.Value
1005 x.GetProperty("pixbuf-column", &v)
1006 return v.GetInt()
1007}
1008
1009// SetPropertyReorderable sets the "reorderable" property.
1010// The reorderable property specifies if the items can be reordered
1011// by DND.
1012func (x *IconView) SetPropertyReorderable(value bool) {
1013 var v gobject.Value
1014 v.Init(gobject.TypeBooleanVal)
1015 v.SetBoolean(value)
1016 x.SetProperty("reorderable", &v)
1017}
1018
1019// GetPropertyReorderable gets the "reorderable" property.
1020// The reorderable property specifies if the items can be reordered
1021// by DND.
1022func (x *IconView) GetPropertyReorderable() bool {
1023 var v gobject.Value
1024 x.GetProperty("reorderable", &v)
1025 return v.GetBoolean()
1026}
1027
1028// SetPropertyRowSpacing sets the "row-spacing" property.
1029// The row-spacing property specifies the space which is inserted between
1030// the rows of the icon view.
1031func (x *IconView) SetPropertyRowSpacing(value int) {
1032 var v gobject.Value
1033 v.Init(gobject.TypeIntVal)
1034 v.SetInt(value)
1035 x.SetProperty("row-spacing", &v)
1036}
1037
1038// GetPropertyRowSpacing gets the "row-spacing" property.
1039// The row-spacing property specifies the space which is inserted between
1040// the rows of the icon view.
1041func (x *IconView) GetPropertyRowSpacing() int {
1042 var v gobject.Value
1043 x.GetProperty("row-spacing", &v)
1044 return v.GetInt()
1045}
1046
1047// SetPropertySpacing sets the "spacing" property.
1048// The spacing property specifies the space which is inserted between
1049// the cells (i.e. the icon and the text) of an item.
1050func (x *IconView) SetPropertySpacing(value int) {
1051 var v gobject.Value
1052 v.Init(gobject.TypeIntVal)
1053 v.SetInt(value)
1054 x.SetProperty("spacing", &v)
1055}
1056
1057// GetPropertySpacing gets the "spacing" property.
1058// The spacing property specifies the space which is inserted between
1059// the cells (i.e. the icon and the text) of an item.
1060func (x *IconView) GetPropertySpacing() int {
1061 var v gobject.Value
1062 x.GetProperty("spacing", &v)
1063 return v.GetInt()
1064}
1065
1066// SetPropertyTextColumn sets the "text-column" property.
1067// The ::text-column property contains the number of the model column
1068// containing the texts which are displayed. The text column must be
1069// of type `G_TYPE_STRING`. If this property and the :markup-column
1070// property are both set to -1, no texts are displayed.
1071func (x *IconView) SetPropertyTextColumn(value int) {
1072 var v gobject.Value
1073 v.Init(gobject.TypeIntVal)
1074 v.SetInt(value)
1075 x.SetProperty("text-column", &v)
1076}
1077
1078// GetPropertyTextColumn gets the "text-column" property.
1079// The ::text-column property contains the number of the model column
1080// containing the texts which are displayed. The text column must be
1081// of type `G_TYPE_STRING`. If this property and the :markup-column
1082// property are both set to -1, no texts are displayed.
1083func (x *IconView) GetPropertyTextColumn() int {
1084 var v gobject.Value
1085 x.GetProperty("text-column", &v)
1086 return v.GetInt()
1087}
1088
1089// SetPropertyTooltipColumn sets the "tooltip-column" property.
1090// The column of the icon view model which is being used for displaying
1091// tooltips on it's rows.
1092func (x *IconView) SetPropertyTooltipColumn(value int) {
1093 var v gobject.Value
1094 v.Init(gobject.TypeIntVal)
1095 v.SetInt(value)
1096 x.SetProperty("tooltip-column", &v)
1097}
1098
1099// GetPropertyTooltipColumn gets the "tooltip-column" property.
1100// The column of the icon view model which is being used for displaying
1101// tooltips on it's rows.
1102func (x *IconView) GetPropertyTooltipColumn() int {
1103 var v gobject.Value
1104 x.GetProperty("tooltip-column", &v)
1105 return v.GetInt()
1106}
1107
1108// A [keybinding signal][class@Gtk.SignalAction]
1109// which gets emitted when the user activates the currently
1110// focused item.
1111//
1112// Applications should not connect to it, but may emit it with
1113// g_signal_emit_by_name() if they need to control activation
1114// programmatically.
1115//
1116// The default bindings for this signal are Space, Return and Enter.
1117func (x *IconView) ConnectActivateCursorItem(cb *func(IconView) bool) uint {
1118 cbPtr := uintptr(unsafe.Pointer(cb))
1119 if cbRefPtr, ok := glib.GetCallback(cbPtr); ok {
1120 handlerID := gobject.SignalConnect(x.GoPointer(), "activate-cursor-item", cbRefPtr)
1121 glib.SaveHandlerMapping(handlerID, cbPtr)
1122 return handlerID
1123 }
1124
1125 fcb := func(clsPtr uintptr) bool {
1126 fa := IconView{}
1127 fa.Ptr = clsPtr
1128 cbFn := *cb
1129
1130 return cbFn(fa)
1131
1132 }
1133 cbRefPtr := purego.NewCallback(fcb)
1134 glib.SaveCallbackWithClosure(cbPtr, cbRefPtr, cb)
1135 handlerID := gobject.SignalConnect(x.GoPointer(), "activate-cursor-item", cbRefPtr)
1136 glib.SaveHandlerMapping(handlerID, cbPtr)
1137 return handlerID
1138}
1139
1140// The ::item-activated signal is emitted when the method
1141// gtk_icon_view_item_activated() is called, when the user double
1142// clicks an item with the "activate-on-single-click" property set
1143// to %FALSE, or when the user single clicks an item when the
1144// "activate-on-single-click" property set to %TRUE. It is also
1145// emitted when a non-editable item is selected and one of the keys:
1146// Space, Return or Enter is pressed.
1147func (x *IconView) ConnectItemActivated(cb *func(IconView, uintptr)) uint {
1148 cbPtr := uintptr(unsafe.Pointer(cb))
1149 if cbRefPtr, ok := glib.GetCallback(cbPtr); ok {
1150 handlerID := gobject.SignalConnect(x.GoPointer(), "item-activated", cbRefPtr)
1151 glib.SaveHandlerMapping(handlerID, cbPtr)
1152 return handlerID
1153 }
1154
1155 fcb := func(clsPtr uintptr, PathVarp uintptr) {
1156 fa := IconView{}
1157 fa.Ptr = clsPtr
1158 cbFn := *cb
1159
1160 cbFn(fa, PathVarp)
1161
1162 }
1163 cbRefPtr := purego.NewCallback(fcb)
1164 glib.SaveCallbackWithClosure(cbPtr, cbRefPtr, cb)
1165 handlerID := gobject.SignalConnect(x.GoPointer(), "item-activated", cbRefPtr)
1166 glib.SaveHandlerMapping(handlerID, cbPtr)
1167 return handlerID
1168}
1169
1170// The ::move-cursor signal is a
1171// [keybinding signal][class@Gtk.SignalAction]
1172// which gets emitted when the user initiates a cursor movement.
1173//
1174// Applications should not connect to it, but may emit it with
1175// g_signal_emit_by_name() if they need to control the cursor
1176// programmatically.
1177//
1178// The default bindings for this signal include
1179// - Arrow keys which move by individual steps
1180// - Home/End keys which move to the first/last item
1181// - PageUp/PageDown which move by "pages"
1182// All of these will extend the selection when combined with
1183// the Shift modifier.
1184func (x *IconView) ConnectMoveCursor(cb *func(IconView, MovementStep, int, bool, bool) bool) uint {
1185 cbPtr := uintptr(unsafe.Pointer(cb))
1186 if cbRefPtr, ok := glib.GetCallback(cbPtr); ok {
1187 handlerID := gobject.SignalConnect(x.GoPointer(), "move-cursor", cbRefPtr)
1188 glib.SaveHandlerMapping(handlerID, cbPtr)
1189 return handlerID
1190 }
1191
1192 fcb := func(clsPtr uintptr, StepVarp MovementStep, CountVarp int, ExtendVarp bool, ModifyVarp bool) bool {
1193 fa := IconView{}
1194 fa.Ptr = clsPtr
1195 cbFn := *cb
1196
1197 return cbFn(fa, StepVarp, CountVarp, ExtendVarp, ModifyVarp)
1198
1199 }
1200 cbRefPtr := purego.NewCallback(fcb)
1201 glib.SaveCallbackWithClosure(cbPtr, cbRefPtr, cb)
1202 handlerID := gobject.SignalConnect(x.GoPointer(), "move-cursor", cbRefPtr)
1203 glib.SaveHandlerMapping(handlerID, cbPtr)
1204 return handlerID
1205}
1206
1207// A [keybinding signal][class@Gtk.SignalAction]
1208// which gets emitted when the user selects all items.
1209//
1210// Applications should not connect to it, but may emit it with
1211// g_signal_emit_by_name() if they need to control selection
1212// programmatically.
1213//
1214// The default binding for this signal is Ctrl-a.
1215func (x *IconView) ConnectSelectAll(cb *func(IconView)) uint {
1216 cbPtr := uintptr(unsafe.Pointer(cb))
1217 if cbRefPtr, ok := glib.GetCallback(cbPtr); ok {
1218 handlerID := gobject.SignalConnect(x.GoPointer(), "select-all", cbRefPtr)
1219 glib.SaveHandlerMapping(handlerID, cbPtr)
1220 return handlerID
1221 }
1222
1223 fcb := func(clsPtr uintptr) {
1224 fa := IconView{}
1225 fa.Ptr = clsPtr
1226 cbFn := *cb
1227
1228 cbFn(fa)
1229
1230 }
1231 cbRefPtr := purego.NewCallback(fcb)
1232 glib.SaveCallbackWithClosure(cbPtr, cbRefPtr, cb)
1233 handlerID := gobject.SignalConnect(x.GoPointer(), "select-all", cbRefPtr)
1234 glib.SaveHandlerMapping(handlerID, cbPtr)
1235 return handlerID
1236}
1237
1238// A [keybinding signal][class@Gtk.SignalAction]
1239// which gets emitted when the user selects the item that is currently
1240// focused.
1241//
1242// Applications should not connect to it, but may emit it with
1243// g_signal_emit_by_name() if they need to control selection
1244// programmatically.
1245//
1246// There is no default binding for this signal.
1247func (x *IconView) ConnectSelectCursorItem(cb *func(IconView)) uint {
1248 cbPtr := uintptr(unsafe.Pointer(cb))
1249 if cbRefPtr, ok := glib.GetCallback(cbPtr); ok {
1250 handlerID := gobject.SignalConnect(x.GoPointer(), "select-cursor-item", cbRefPtr)
1251 glib.SaveHandlerMapping(handlerID, cbPtr)
1252 return handlerID
1253 }
1254
1255 fcb := func(clsPtr uintptr) {
1256 fa := IconView{}
1257 fa.Ptr = clsPtr
1258 cbFn := *cb
1259
1260 cbFn(fa)
1261
1262 }
1263 cbRefPtr := purego.NewCallback(fcb)
1264 glib.SaveCallbackWithClosure(cbPtr, cbRefPtr, cb)
1265 handlerID := gobject.SignalConnect(x.GoPointer(), "select-cursor-item", cbRefPtr)
1266 glib.SaveHandlerMapping(handlerID, cbPtr)
1267 return handlerID
1268}
1269
1270// The ::selection-changed signal is emitted when the selection
1271// (i.e. the set of selected items) changes.
1272func (x *IconView) ConnectSelectionChanged(cb *func(IconView)) uint {
1273 cbPtr := uintptr(unsafe.Pointer(cb))
1274 if cbRefPtr, ok := glib.GetCallback(cbPtr); ok {
1275 handlerID := gobject.SignalConnect(x.GoPointer(), "selection-changed", cbRefPtr)
1276 glib.SaveHandlerMapping(handlerID, cbPtr)
1277 return handlerID
1278 }
1279
1280 fcb := func(clsPtr uintptr) {
1281 fa := IconView{}
1282 fa.Ptr = clsPtr
1283 cbFn := *cb
1284
1285 cbFn(fa)
1286
1287 }
1288 cbRefPtr := purego.NewCallback(fcb)
1289 glib.SaveCallbackWithClosure(cbPtr, cbRefPtr, cb)
1290 handlerID := gobject.SignalConnect(x.GoPointer(), "selection-changed", cbRefPtr)
1291 glib.SaveHandlerMapping(handlerID, cbPtr)
1292 return handlerID
1293}
1294
1295// A [keybinding signal][class@Gtk.SignalAction]
1296// which gets emitted when the user toggles whether the currently
1297// focused item is selected or not. The exact effect of this
1298// depend on the selection mode.
1299//
1300// Applications should not connect to it, but may emit it with
1301// g_signal_emit_by_name() if they need to control selection
1302// programmatically.
1303//
1304// There is no default binding for this signal is Ctrl-Space.
1305func (x *IconView) ConnectToggleCursorItem(cb *func(IconView)) uint {
1306 cbPtr := uintptr(unsafe.Pointer(cb))
1307 if cbRefPtr, ok := glib.GetCallback(cbPtr); ok {
1308 handlerID := gobject.SignalConnect(x.GoPointer(), "toggle-cursor-item", cbRefPtr)
1309 glib.SaveHandlerMapping(handlerID, cbPtr)
1310 return handlerID
1311 }
1312
1313 fcb := func(clsPtr uintptr) {
1314 fa := IconView{}
1315 fa.Ptr = clsPtr
1316 cbFn := *cb
1317
1318 cbFn(fa)
1319
1320 }
1321 cbRefPtr := purego.NewCallback(fcb)
1322 glib.SaveCallbackWithClosure(cbPtr, cbRefPtr, cb)
1323 handlerID := gobject.SignalConnect(x.GoPointer(), "toggle-cursor-item", cbRefPtr)
1324 glib.SaveHandlerMapping(handlerID, cbPtr)
1325 return handlerID
1326}
1327
1328// A [keybinding signal][class@Gtk.SignalAction]
1329// which gets emitted when the user unselects all items.
1330//
1331// Applications should not connect to it, but may emit it with
1332// g_signal_emit_by_name() if they need to control selection
1333// programmatically.
1334//
1335// The default binding for this signal is Ctrl-Shift-a.
1336func (x *IconView) ConnectUnselectAll(cb *func(IconView)) uint {
1337 cbPtr := uintptr(unsafe.Pointer(cb))
1338 if cbRefPtr, ok := glib.GetCallback(cbPtr); ok {
1339 handlerID := gobject.SignalConnect(x.GoPointer(), "unselect-all", cbRefPtr)
1340 glib.SaveHandlerMapping(handlerID, cbPtr)
1341 return handlerID
1342 }
1343
1344 fcb := func(clsPtr uintptr) {
1345 fa := IconView{}
1346 fa.Ptr = clsPtr
1347 cbFn := *cb
1348
1349 cbFn(fa)
1350
1351 }
1352 cbRefPtr := purego.NewCallback(fcb)
1353 glib.SaveCallbackWithClosure(cbPtr, cbRefPtr, cb)
1354 handlerID := gobject.SignalConnect(x.GoPointer(), "unselect-all", cbRefPtr)
1355 glib.SaveHandlerMapping(handlerID, cbPtr)
1356 return handlerID
1357}
1358
1359// Requests the user's screen reader to announce the given message.
1360//
1361// This kind of notification is useful for messages that
1362// either have only a visual representation or that are not
1363// exposed visually at all, e.g. a notification about a
1364// successful operation.
1365//
1366// Also, by using this API, you can ensure that the message
1367// does not interrupts the user's current screen reader output.
1368func (x *IconView) Announce(MessageVar string, PriorityVar AccessibleAnnouncementPriority) {
1369
1370 XGtkAccessibleAnnounce(x.GoPointer(), MessageVar, PriorityVar)
1371
1372}
1373
1374// Retrieves the accessible parent for an accessible object.
1375//
1376// This function returns `NULL` for top level widgets.
1377func (x *IconView) GetAccessibleParent() *AccessibleBase {
1378 var cls *AccessibleBase
1379
1380 cret := XGtkAccessibleGetAccessibleParent(x.GoPointer())
1381
1382 if cret == 0 {
1383 return nil
1384 }
1385 cls = &AccessibleBase{}
1386 cls.Ptr = cret
1387 return cls
1388}
1389
1390// Retrieves the accessible role of an accessible object.
1391func (x *IconView) GetAccessibleRole() AccessibleRole {
1392
1393 cret := XGtkAccessibleGetAccessibleRole(x.GoPointer())
1394 return cret
1395}
1396
1397// Retrieves the implementation for the given accessible object.
1398func (x *IconView) GetAtContext() *ATContext {
1399 var cls *ATContext
1400
1401 cret := XGtkAccessibleGetAtContext(x.GoPointer())
1402
1403 if cret == 0 {
1404 return nil
1405 }
1406 cls = &ATContext{}
1407 cls.Ptr = cret
1408 return cls
1409}
1410
1411// Queries the coordinates and dimensions of this accessible
1412//
1413// This functionality can be overridden by `GtkAccessible`
1414// implementations, e.g. to get the bounds from an ignored
1415// child widget.
1416func (x *IconView) GetBounds(XVar *int, YVar *int, WidthVar *int, HeightVar *int) bool {
1417
1418 cret := XGtkAccessibleGetBounds(x.GoPointer(), XVar, YVar, WidthVar, HeightVar)
1419 return cret
1420}
1421
1422// Retrieves the first accessible child of an accessible object.
1423func (x *IconView) GetFirstAccessibleChild() *AccessibleBase {
1424 var cls *AccessibleBase
1425
1426 cret := XGtkAccessibleGetFirstAccessibleChild(x.GoPointer())
1427
1428 if cret == 0 {
1429 return nil
1430 }
1431 cls = &AccessibleBase{}
1432 cls.Ptr = cret
1433 return cls
1434}
1435
1436// Retrieves the next accessible sibling of an accessible object
1437func (x *IconView) GetNextAccessibleSibling() *AccessibleBase {
1438 var cls *AccessibleBase
1439
1440 cret := XGtkAccessibleGetNextAccessibleSibling(x.GoPointer())
1441
1442 if cret == 0 {
1443 return nil
1444 }
1445 cls = &AccessibleBase{}
1446 cls.Ptr = cret
1447 return cls
1448}
1449
1450// Queries a platform state, such as focus.
1451//
1452// This functionality can be overridden by `GtkAccessible`
1453// implementations, e.g. to get platform state from an ignored
1454// child widget, as is the case for `GtkText` wrappers.
1455func (x *IconView) GetPlatformState(StateVar AccessiblePlatformState) bool {
1456
1457 cret := XGtkAccessibleGetPlatformState(x.GoPointer(), StateVar)
1458 return cret
1459}
1460
1461// Resets the accessible property to its default value.
1462func (x *IconView) ResetProperty(PropertyVar AccessibleProperty) {
1463
1464 XGtkAccessibleResetProperty(x.GoPointer(), PropertyVar)
1465
1466}
1467
1468// Resets the accessible relation to its default value.
1469func (x *IconView) ResetRelation(RelationVar AccessibleRelation) {
1470
1471 XGtkAccessibleResetRelation(x.GoPointer(), RelationVar)
1472
1473}
1474
1475// Resets the accessible state to its default value.
1476func (x *IconView) ResetState(StateVar AccessibleState) {
1477
1478 XGtkAccessibleResetState(x.GoPointer(), StateVar)
1479
1480}
1481
1482// Sets the parent and sibling of an accessible object.
1483//
1484// This function is meant to be used by accessible implementations that are
1485// not part of the widget hierarchy, and but act as a logical bridge between
1486// widgets. For instance, if a widget creates an object that holds metadata
1487// for each child, and you want that object to implement the `GtkAccessible`
1488// interface, you will use this function to ensure that the parent of each
1489// child widget is the metadata object, and the parent of each metadata
1490// object is the container widget.
1491func (x *IconView) SetAccessibleParent(ParentVar Accessible, NextSiblingVar Accessible) {
1492
1493 XGtkAccessibleSetAccessibleParent(x.GoPointer(), ParentVar.GoPointer(), NextSiblingVar.GoPointer())
1494
1495}
1496
1497// Updates the next accessible sibling.
1498//
1499// That might be useful when a new child of a custom accessible
1500// is created, and it needs to be linked to a previous child.
1501func (x *IconView) UpdateNextAccessibleSibling(NewSiblingVar Accessible) {
1502
1503 XGtkAccessibleUpdateNextAccessibleSibling(x.GoPointer(), NewSiblingVar.GoPointer())
1504
1505}
1506
1507// Informs ATs that the platform state has changed.
1508//
1509// This function should be used by `GtkAccessible` implementations that
1510// have a platform state but are not widgets. Widgets handle platform
1511// states automatically.
1512func (x *IconView) UpdatePlatformState(StateVar AccessiblePlatformState) {
1513
1514 XGtkAccessibleUpdatePlatformState(x.GoPointer(), StateVar)
1515
1516}
1517
1518// Updates a list of accessible properties.
1519//
1520// See the [enum@Gtk.AccessibleProperty] documentation for the
1521// value types of accessible properties.
1522//
1523// This function should be called by `GtkWidget` types whenever
1524// an accessible property change must be communicated to assistive
1525// technologies.
1526//
1527// Example:
1528// ```c
1529// value = gtk_adjustment_get_value (adjustment);
1530// gtk_accessible_update_property (GTK_ACCESSIBLE (spin_button),
1531//
1532// GTK_ACCESSIBLE_PROPERTY_VALUE_NOW, value,
1533// -1);
1534//
1535// ```
1536func (x *IconView) UpdateProperty(FirstPropertyVar AccessibleProperty, varArgs ...interface{}) {
1537
1538 XGtkAccessibleUpdateProperty(x.GoPointer(), FirstPropertyVar, varArgs...)
1539
1540}
1541
1542// Updates an array of accessible properties.
1543//
1544// This function should be called by `GtkWidget` types whenever an accessible
1545// property change must be communicated to assistive technologies.
1546//
1547// This function is meant to be used by language bindings.
1548func (x *IconView) UpdatePropertyValue(NPropertiesVar int, PropertiesVar []AccessibleProperty, ValuesVar []gobject.Value) {
1549
1550 XGtkAccessibleUpdatePropertyValue(x.GoPointer(), NPropertiesVar, PropertiesVar, ValuesVar)
1551
1552}
1553
1554// Updates a list of accessible relations.
1555//
1556// This function should be called by `GtkWidget` types whenever an accessible
1557// relation change must be communicated to assistive technologies.
1558//
1559// If the [enum@Gtk.AccessibleRelation] requires a list of references,
1560// you should pass each reference individually, followed by `NULL`, e.g.
1561//
1562// ```c
1563// gtk_accessible_update_relation (accessible,
1564//
1565// GTK_ACCESSIBLE_RELATION_CONTROLS,
1566// ref1, NULL,
1567// GTK_ACCESSIBLE_RELATION_LABELLED_BY,
1568// ref1, ref2, ref3, NULL,
1569// -1);
1570//
1571// ```
1572func (x *IconView) UpdateRelation(FirstRelationVar AccessibleRelation, varArgs ...interface{}) {
1573
1574 XGtkAccessibleUpdateRelation(x.GoPointer(), FirstRelationVar, varArgs...)
1575
1576}
1577
1578// Updates an array of accessible relations.
1579//
1580// This function should be called by `GtkWidget` types whenever an accessible
1581// relation change must be communicated to assistive technologies.
1582//
1583// This function is meant to be used by language bindings.
1584func (x *IconView) UpdateRelationValue(NRelationsVar int, RelationsVar []AccessibleRelation, ValuesVar []gobject.Value) {
1585
1586 XGtkAccessibleUpdateRelationValue(x.GoPointer(), NRelationsVar, RelationsVar, ValuesVar)
1587
1588}
1589
1590// Updates a list of accessible states.
1591//
1592// See the [enum@Gtk.AccessibleState] documentation for the
1593// value types of accessible states.
1594//
1595// This function should be called by `GtkWidget` types whenever
1596// an accessible state change must be communicated to assistive
1597// technologies.
1598//
1599// Example:
1600//
1601// ```c
1602// value = GTK_ACCESSIBLE_TRISTATE_MIXED;
1603// gtk_accessible_update_state (GTK_ACCESSIBLE (check_button),
1604//
1605// GTK_ACCESSIBLE_STATE_CHECKED, value,
1606// -1);
1607//
1608// ```
1609func (x *IconView) UpdateState(FirstStateVar AccessibleState, varArgs ...interface{}) {
1610
1611 XGtkAccessibleUpdateState(x.GoPointer(), FirstStateVar, varArgs...)
1612
1613}
1614
1615// Updates an array of accessible states.
1616//
1617// This function should be called by `GtkWidget` types whenever an accessible
1618// state change must be communicated to assistive technologies.
1619//
1620// This function is meant to be used by language bindings.
1621func (x *IconView) UpdateStateValue(NStatesVar int, StatesVar []AccessibleState, ValuesVar []gobject.Value) {
1622
1623 XGtkAccessibleUpdateStateValue(x.GoPointer(), NStatesVar, StatesVar, ValuesVar)
1624
1625}
1626
1627// Gets the ID of the @buildable object.
1628//
1629// `GtkBuilder` sets the name based on the ID attribute
1630// of the `<object>` tag used to construct the @buildable.
1631func (x *IconView) GetBuildableId() string {
1632
1633 cret := XGtkBuildableGetBuildableId(x.GoPointer())
1634 return cret
1635}
1636
1637// Adds an attribute mapping to the list in @cell_layout.
1638//
1639// The @column is the column of the model to get a value from, and the
1640// @attribute is the property on @cell to be set from that value. So for
1641// example if column 2 of the model contains strings, you could have the
1642// “text” attribute of a `GtkCellRendererText` get its values from column 2.
1643// In this context "attribute" and "property" are used interchangeably.
1644func (x *IconView) AddAttribute(CellVar *CellRenderer, AttributeVar string, ColumnVar int) {
1645
1646 XGtkCellLayoutAddAttribute(x.GoPointer(), CellVar.GoPointer(), AttributeVar, ColumnVar)
1647
1648}
1649
1650// Unsets all the mappings on all renderers on @cell_layout and
1651// removes all renderers from @cell_layout.
1652func (x *IconView) Clear() {
1653
1654 XGtkCellLayoutClear(x.GoPointer())
1655
1656}
1657
1658// Clears all existing attributes previously set with
1659// gtk_cell_layout_set_attributes().
1660func (x *IconView) ClearAttributes(CellVar *CellRenderer) {
1661
1662 XGtkCellLayoutClearAttributes(x.GoPointer(), CellVar.GoPointer())
1663
1664}
1665
1666// Returns the underlying `GtkCellArea` which might be @cell_layout
1667// if called on a `GtkCellArea` or might be %NULL if no `GtkCellArea`
1668// is used by @cell_layout.
1669func (x *IconView) GetArea() *CellArea {
1670 var cls *CellArea
1671
1672 cret := XGtkCellLayoutGetArea(x.GoPointer())
1673
1674 if cret == 0 {
1675 return nil
1676 }
1677 gobject.IncreaseRef(cret)
1678 cls = &CellArea{}
1679 cls.Ptr = cret
1680 return cls
1681}
1682
1683// Returns the cell renderers which have been added to @cell_layout.
1684func (x *IconView) GetCells() *glib.List {
1685
1686 cret := XGtkCellLayoutGetCells(x.GoPointer())
1687 return cret
1688}
1689
1690// Adds the @cell to the end of @cell_layout. If @expand is %FALSE, then the
1691// @cell is allocated no more space than it needs. Any unused space is
1692// divided evenly between cells for which @expand is %TRUE.
1693//
1694// Note that reusing the same cell renderer is not supported.
1695func (x *IconView) PackEnd(CellVar *CellRenderer, ExpandVar bool) {
1696
1697 XGtkCellLayoutPackEnd(x.GoPointer(), CellVar.GoPointer(), ExpandVar)
1698
1699}
1700
1701// Packs the @cell into the beginning of @cell_layout. If @expand is %FALSE,
1702// then the @cell is allocated no more space than it needs. Any unused space
1703// is divided evenly between cells for which @expand is %TRUE.
1704//
1705// Note that reusing the same cell renderer is not supported.
1706func (x *IconView) PackStart(CellVar *CellRenderer, ExpandVar bool) {
1707
1708 XGtkCellLayoutPackStart(x.GoPointer(), CellVar.GoPointer(), ExpandVar)
1709
1710}
1711
1712// Re-inserts @cell at @position.
1713//
1714// Note that @cell has already to be packed into @cell_layout
1715// for this to function properly.
1716func (x *IconView) Reorder(CellVar *CellRenderer, PositionVar int) {
1717
1718 XGtkCellLayoutReorder(x.GoPointer(), CellVar.GoPointer(), PositionVar)
1719
1720}
1721
1722// Sets the attributes in the parameter list as the attributes
1723// of @cell_layout.
1724//
1725// See [method@Gtk.CellLayout.add_attribute] for more details.
1726//
1727// The attributes should be in attribute/column order, as in
1728// gtk_cell_layout_add_attribute(). All existing attributes are
1729// removed, and replaced with the new attributes.
1730func (x *IconView) SetAttributes(CellVar *CellRenderer, varArgs ...interface{}) {
1731
1732 XGtkCellLayoutSetAttributes(x.GoPointer(), CellVar.GoPointer(), varArgs...)
1733
1734}
1735
1736// Sets the `GtkCellLayout`DataFunc to use for @cell_layout.
1737//
1738// This function is used instead of the standard attributes mapping
1739// for setting the column value, and should set the value of @cell_layout’s
1740// cell renderer(s) as appropriate.
1741//
1742// @func may be %NULL to remove a previously set function.
1743func (x *IconView) SetCellDataFunc(CellVar *CellRenderer, FuncVar *CellLayoutDataFunc, FuncDataVar uintptr, DestroyVar *glib.DestroyNotify) {
1744
1745 XGtkCellLayoutSetCellDataFunc(x.GoPointer(), CellVar.GoPointer(), glib.NewCallbackNullable(FuncVar), FuncDataVar, glib.NewCallback(DestroyVar))
1746
1747}
1748
1749// Returns the size of a non-scrolling border around the
1750// outside of the scrollable.
1751//
1752// An example for this would be treeview headers. GTK can use
1753// this information to display overlaid graphics, like the
1754// overshoot indication, at the right position.
1755func (x *IconView) GetBorder(BorderVar *Border) bool {
1756
1757 cret := XGtkScrollableGetBorder(x.GoPointer(), BorderVar)
1758 return cret
1759}
1760
1761// Retrieves the `GtkAdjustment` used for horizontal scrolling.
1762func (x *IconView) GetHadjustment() *Adjustment {
1763 var cls *Adjustment
1764
1765 cret := XGtkScrollableGetHadjustment(x.GoPointer())
1766
1767 if cret == 0 {
1768 return nil
1769 }
1770 gobject.IncreaseRef(cret)
1771 cls = &Adjustment{}
1772 cls.Ptr = cret
1773 return cls
1774}
1775
1776// Gets the horizontal `GtkScrollablePolicy`.
1777func (x *IconView) GetHscrollPolicy() ScrollablePolicy {
1778
1779 cret := XGtkScrollableGetHscrollPolicy(x.GoPointer())
1780 return cret
1781}
1782
1783// Retrieves the `GtkAdjustment` used for vertical scrolling.
1784func (x *IconView) GetVadjustment() *Adjustment {
1785 var cls *Adjustment
1786
1787 cret := XGtkScrollableGetVadjustment(x.GoPointer())
1788
1789 if cret == 0 {
1790 return nil
1791 }
1792 gobject.IncreaseRef(cret)
1793 cls = &Adjustment{}
1794 cls.Ptr = cret
1795 return cls
1796}
1797
1798// Gets the vertical `GtkScrollablePolicy`.
1799func (x *IconView) GetVscrollPolicy() ScrollablePolicy {
1800
1801 cret := XGtkScrollableGetVscrollPolicy(x.GoPointer())
1802 return cret
1803}
1804
1805// Sets the horizontal adjustment of the `GtkScrollable`.
1806func (x *IconView) SetHadjustment(HadjustmentVar *Adjustment) {
1807
1808 XGtkScrollableSetHadjustment(x.GoPointer(), HadjustmentVar.GoPointer())
1809
1810}
1811
1812// Sets the `GtkScrollablePolicy`.
1813//
1814// The policy determines whether horizontal scrolling should start
1815// below the minimum width or below the natural width.
1816func (x *IconView) SetHscrollPolicy(PolicyVar ScrollablePolicy) {
1817
1818 XGtkScrollableSetHscrollPolicy(x.GoPointer(), PolicyVar)
1819
1820}
1821
1822// Sets the vertical adjustment of the `GtkScrollable`.
1823func (x *IconView) SetVadjustment(VadjustmentVar *Adjustment) {
1824
1825 XGtkScrollableSetVadjustment(x.GoPointer(), VadjustmentVar.GoPointer())
1826
1827}
1828
1829// Sets the `GtkScrollablePolicy`.
1830//
1831// The policy determines whether vertical scrolling should start
1832// below the minimum height or below the natural height.
1833func (x *IconView) SetVscrollPolicy(PolicyVar ScrollablePolicy) {
1834
1835 XGtkScrollableSetVscrollPolicy(x.GoPointer(), PolicyVar)
1836
1837}
1838
1839func init() {
1840 core.SetPackageName("GTK", "gtk4")
1841 core.SetSharedLibraries("GTK", []string{"libgtk-4.so.1"})
1842 var libs []uintptr
1843 for _, libPath := range core.GetPaths("GTK") {
1844 lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL)
1845 if err != nil {
1846 panic(err)
1847 }
1848 libs = append(libs, lib)
1849 }
1850
1851 core.PuregoSafeRegister(&xIconViewDropPositionGLibType, libs, "gtk_icon_view_drop_position_get_type")
1852
1853 core.PuregoSafeRegister(&xIconViewGLibType, libs, "gtk_icon_view_get_type")
1854
1855 core.PuregoSafeRegister(&xNewIconView, libs, "gtk_icon_view_new")
1856 core.PuregoSafeRegister(&xNewIconViewWithArea, libs, "gtk_icon_view_new_with_area")
1857 core.PuregoSafeRegister(&xNewIconViewWithModel, libs, "gtk_icon_view_new_with_model")
1858
1859 core.PuregoSafeRegister(&xIconViewCreateDragIcon, libs, "gtk_icon_view_create_drag_icon")
1860 core.PuregoSafeRegister(&xIconViewEnableModelDragDest, libs, "gtk_icon_view_enable_model_drag_dest")
1861 core.PuregoSafeRegister(&xIconViewEnableModelDragSource, libs, "gtk_icon_view_enable_model_drag_source")
1862 core.PuregoSafeRegister(&xIconViewGetActivateOnSingleClick, libs, "gtk_icon_view_get_activate_on_single_click")
1863 core.PuregoSafeRegister(&xIconViewGetCellRect, libs, "gtk_icon_view_get_cell_rect")
1864 core.PuregoSafeRegister(&xIconViewGetColumnSpacing, libs, "gtk_icon_view_get_column_spacing")
1865 core.PuregoSafeRegister(&xIconViewGetColumns, libs, "gtk_icon_view_get_columns")
1866 core.PuregoSafeRegister(&xIconViewGetCursor, libs, "gtk_icon_view_get_cursor")
1867 core.PuregoSafeRegister(&xIconViewGetDestItemAtPos, libs, "gtk_icon_view_get_dest_item_at_pos")
1868 core.PuregoSafeRegister(&xIconViewGetDragDestItem, libs, "gtk_icon_view_get_drag_dest_item")
1869 core.PuregoSafeRegister(&xIconViewGetItemAtPos, libs, "gtk_icon_view_get_item_at_pos")
1870 core.PuregoSafeRegister(&xIconViewGetItemColumn, libs, "gtk_icon_view_get_item_column")
1871 core.PuregoSafeRegister(&xIconViewGetItemOrientation, libs, "gtk_icon_view_get_item_orientation")
1872 core.PuregoSafeRegister(&xIconViewGetItemPadding, libs, "gtk_icon_view_get_item_padding")
1873 core.PuregoSafeRegister(&xIconViewGetItemRow, libs, "gtk_icon_view_get_item_row")
1874 core.PuregoSafeRegister(&xIconViewGetItemWidth, libs, "gtk_icon_view_get_item_width")
1875 core.PuregoSafeRegister(&xIconViewGetMargin, libs, "gtk_icon_view_get_margin")
1876 core.PuregoSafeRegister(&xIconViewGetMarkupColumn, libs, "gtk_icon_view_get_markup_column")
1877 core.PuregoSafeRegister(&xIconViewGetModel, libs, "gtk_icon_view_get_model")
1878 core.PuregoSafeRegister(&xIconViewGetPathAtPos, libs, "gtk_icon_view_get_path_at_pos")
1879 core.PuregoSafeRegister(&xIconViewGetPixbufColumn, libs, "gtk_icon_view_get_pixbuf_column")
1880 core.PuregoSafeRegister(&xIconViewGetReorderable, libs, "gtk_icon_view_get_reorderable")
1881 core.PuregoSafeRegister(&xIconViewGetRowSpacing, libs, "gtk_icon_view_get_row_spacing")
1882 core.PuregoSafeRegister(&xIconViewGetSelectedItems, libs, "gtk_icon_view_get_selected_items")
1883 core.PuregoSafeRegister(&xIconViewGetSelectionMode, libs, "gtk_icon_view_get_selection_mode")
1884 core.PuregoSafeRegister(&xIconViewGetSpacing, libs, "gtk_icon_view_get_spacing")
1885 core.PuregoSafeRegister(&xIconViewGetTextColumn, libs, "gtk_icon_view_get_text_column")
1886 core.PuregoSafeRegister(&xIconViewGetTooltipColumn, libs, "gtk_icon_view_get_tooltip_column")
1887 core.PuregoSafeRegister(&xIconViewGetTooltipContext, libs, "gtk_icon_view_get_tooltip_context")
1888 core.PuregoSafeRegister(&xIconViewGetVisibleRange, libs, "gtk_icon_view_get_visible_range")
1889 core.PuregoSafeRegister(&xIconViewItemActivated, libs, "gtk_icon_view_item_activated")
1890 core.PuregoSafeRegister(&xIconViewPathIsSelected, libs, "gtk_icon_view_path_is_selected")
1891 core.PuregoSafeRegister(&xIconViewScrollToPath, libs, "gtk_icon_view_scroll_to_path")
1892 core.PuregoSafeRegister(&xIconViewSelectAll, libs, "gtk_icon_view_select_all")
1893 core.PuregoSafeRegister(&xIconViewSelectPath, libs, "gtk_icon_view_select_path")
1894 core.PuregoSafeRegister(&xIconViewSelectedForeach, libs, "gtk_icon_view_selected_foreach")
1895 core.PuregoSafeRegister(&xIconViewSetActivateOnSingleClick, libs, "gtk_icon_view_set_activate_on_single_click")
1896 core.PuregoSafeRegister(&xIconViewSetColumnSpacing, libs, "gtk_icon_view_set_column_spacing")
1897 core.PuregoSafeRegister(&xIconViewSetColumns, libs, "gtk_icon_view_set_columns")
1898 core.PuregoSafeRegister(&xIconViewSetCursor, libs, "gtk_icon_view_set_cursor")
1899 core.PuregoSafeRegister(&xIconViewSetDragDestItem, libs, "gtk_icon_view_set_drag_dest_item")
1900 core.PuregoSafeRegister(&xIconViewSetItemOrientation, libs, "gtk_icon_view_set_item_orientation")
1901 core.PuregoSafeRegister(&xIconViewSetItemPadding, libs, "gtk_icon_view_set_item_padding")
1902 core.PuregoSafeRegister(&xIconViewSetItemWidth, libs, "gtk_icon_view_set_item_width")
1903 core.PuregoSafeRegister(&xIconViewSetMargin, libs, "gtk_icon_view_set_margin")
1904 core.PuregoSafeRegister(&xIconViewSetMarkupColumn, libs, "gtk_icon_view_set_markup_column")
1905 core.PuregoSafeRegister(&xIconViewSetModel, libs, "gtk_icon_view_set_model")
1906 core.PuregoSafeRegister(&xIconViewSetPixbufColumn, libs, "gtk_icon_view_set_pixbuf_column")
1907 core.PuregoSafeRegister(&xIconViewSetReorderable, libs, "gtk_icon_view_set_reorderable")
1908 core.PuregoSafeRegister(&xIconViewSetRowSpacing, libs, "gtk_icon_view_set_row_spacing")
1909 core.PuregoSafeRegister(&xIconViewSetSelectionMode, libs, "gtk_icon_view_set_selection_mode")
1910 core.PuregoSafeRegister(&xIconViewSetSpacing, libs, "gtk_icon_view_set_spacing")
1911 core.PuregoSafeRegister(&xIconViewSetTextColumn, libs, "gtk_icon_view_set_text_column")
1912 core.PuregoSafeRegister(&xIconViewSetTooltipCell, libs, "gtk_icon_view_set_tooltip_cell")
1913 core.PuregoSafeRegister(&xIconViewSetTooltipColumn, libs, "gtk_icon_view_set_tooltip_column")
1914 core.PuregoSafeRegister(&xIconViewSetTooltipItem, libs, "gtk_icon_view_set_tooltip_item")
1915 core.PuregoSafeRegister(&xIconViewUnselectAll, libs, "gtk_icon_view_unselect_all")
1916 core.PuregoSafeRegister(&xIconViewUnselectPath, libs, "gtk_icon_view_unselect_path")
1917 core.PuregoSafeRegister(&xIconViewUnsetModelDragDest, libs, "gtk_icon_view_unset_model_drag_dest")
1918 core.PuregoSafeRegister(&xIconViewUnsetModelDragSource, libs, "gtk_icon_view_unset_model_drag_source")
1919
1920}