// Package gtk was automatically generated by github.com/bnema/puregotk DO NOT EDIT package gtk import ( "structs" "unsafe" "github.com/ebitengine/purego" "github.com/bnema/puregotk/pkg/core" "github.com/bnema/puregotk/v4/gobject/types" ) // Iterates over the elements of a [struct@Gtk.Bitset]. // // `GtkBitSetIter is an opaque, stack-allocated struct. // // Before a `GtkBitsetIter` can be used, it needs to be initialized with // [func@Gtk.BitsetIter.init_first], [func@Gtk.BitsetIter.init_last] // or [func@Gtk.BitsetIter.init_at]. type BitsetIter struct { _ structs.HostLayout PrivateData [10]uintptr } var xBitsetIterGLibType func() types.GType func BitsetIterGLibType() types.GType { return xBitsetIterGLibType() } func (x *BitsetIter) GoPointer() uintptr { return uintptr(unsafe.Pointer(x)) } var xBitsetIterGetValue func(uintptr) uint // Gets the current value that @iter points to. // // If @iter is not valid and [method@Gtk.BitsetIter.is_valid] // returns %FALSE, this function returns 0. func (x *BitsetIter) GetValue() uint { cret := xBitsetIterGetValue(x.GoPointer()) return cret } var xBitsetIterIsValid func(uintptr) bool // Checks if @iter points to a valid value. func (x *BitsetIter) IsValid() bool { cret := xBitsetIterIsValid(x.GoPointer()) return cret } var xBitsetIterNext func(uintptr, *uint) bool // Moves @iter to the next value in the set. // // If it was already pointing to the last value in the set, // %FALSE is returned and @iter is invalidated. func (x *BitsetIter) Next(ValueVar *uint) bool { cret := xBitsetIterNext(x.GoPointer(), ValueVar) return cret } var xBitsetIterPrevious func(uintptr, *uint) bool // Moves @iter to the previous value in the set. // // If it was already pointing to the first value in the set, // %FALSE is returned and @iter is invalidated. func (x *BitsetIter) Previous(ValueVar *uint) bool { cret := xBitsetIterPrevious(x.GoPointer(), ValueVar) return cret } var xBitsetIterInitAt func(*BitsetIter, *Bitset, uint, *uint) bool // Initializes @iter to point to @target. // // If @target is not found, finds the next value after it. // If no value >= @target exists in @set, this function returns %FALSE. func BitsetIterInitAt(IterVar *BitsetIter, SetVar *Bitset, TargetVar uint, ValueVar *uint) bool { cret := xBitsetIterInitAt(IterVar, SetVar, TargetVar, ValueVar) return cret } var xBitsetIterInitFirst func(*BitsetIter, *Bitset, *uint) bool // Initializes an iterator for @set and points it to the first // value in @set. // // If @set is empty, %FALSE is returned and @value is set to %G_MAXUINT. func BitsetIterInitFirst(IterVar *BitsetIter, SetVar *Bitset, ValueVar *uint) bool { cret := xBitsetIterInitFirst(IterVar, SetVar, ValueVar) return cret } var xBitsetIterInitLast func(*BitsetIter, *Bitset, *uint) bool // Initializes an iterator for @set and points it to the last // value in @set. // // If @set is empty, %FALSE is returned. func BitsetIterInitLast(IterVar *BitsetIter, SetVar *Bitset, ValueVar *uint) bool { cret := xBitsetIterInitLast(IterVar, SetVar, ValueVar) return cret } func init() { core.SetPackageName("GTK", "gtk4") core.SetSharedLibraries("GTK", []string{"libgtk-4.so.1"}) var libs []uintptr for _, libPath := range core.GetPaths("GTK") { lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL) if err != nil { panic(err) } libs = append(libs, lib) } core.PuregoSafeRegister(&xBitsetIterInitAt, libs, "gtk_bitset_iter_init_at") core.PuregoSafeRegister(&xBitsetIterInitFirst, libs, "gtk_bitset_iter_init_first") core.PuregoSafeRegister(&xBitsetIterInitLast, libs, "gtk_bitset_iter_init_last") core.PuregoSafeRegister(&xBitsetIterGLibType, libs, "gtk_bitset_iter_get_type") core.PuregoSafeRegister(&xBitsetIterGetValue, libs, "gtk_bitset_iter_get_value") core.PuregoSafeRegister(&xBitsetIterIsValid, libs, "gtk_bitset_iter_is_valid") core.PuregoSafeRegister(&xBitsetIterNext, libs, "gtk_bitset_iter_next") core.PuregoSafeRegister(&xBitsetIterPrevious, libs, "gtk_bitset_iter_previous") }