callback

package
v1.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 15, 2026 License: GPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	AlertDialogClosed = func(widget adw.Dialog) {
		CallbackHandler[any](widget.Object, "closed", widget)
	}
	AlertDialogCloseAttempt = func(widget adw.Dialog) {
		CallbackHandler[any](widget.Object, "close-attempt", widget)
	}
	AlertDialogResponse = func(widget adw.AlertDialog, response string) {
		response = cutil.ParseNullTerminatedString(response)
		CallbackHandler[string](widget.Object, "response", widget, response)
	}
)
View Source
var (
	AdjustmentValueChangedCallback = func(adj gtk.Adjustment) {
		CallbackHandler[any](adj.Object, "value-changed", adj)
	}
	AdjustmentChangedCallback = func(adj gtk.Adjustment) {
		CallbackHandler[any](adj.Object, "changed", adj)
	}

	DragSourcePrepare = func(dragSource gtk.DragSource, x float64, y float64) gdk.ContentProvider {
		results := CallbackHandler[gdk.ContentProvider](dragSource.Object, "prepare", dragSource, x, y)
		if len(results) > 0 {
			for _, result := range results {
				if result.GoPointer() > 0 {
					return result
				}
			}
		}
		panic("DragSource did not have a valid content provider")
	}
	DragSourceDragBegin = func(dragSource gtk.DragSource, dragPtr uintptr) {
		drag := gdk.DragNewFromInternalPtr(dragPtr)
		CallbackHandler[any](dragSource.Object, "drag-begin", dragSource, *drag)
	}
	DragSourceDragCancel = func(dragSource gtk.DragSource, dragPtr uintptr, reason gdk.DragCancelReason) bool {
		drag := gdk.DragNewFromInternalPtr(dragPtr)
		results := CallbackHandler[bool](dragSource.Object, "drag-cancel", dragSource, *drag, reason)
		if len(results) > 0 {
			for _, result := range results {
				if result {
					return true
				}
			}
		}
		return false
	}

	DropTargetAsyncAccept = func(dropTarget gtk.DropTargetAsync, dropPtr uintptr) bool {
		drop := gdk.DropNewFromInternalPtr(dropPtr)
		results := CallbackHandler[bool](dropTarget.Object, "accept", dropTarget, *drop)
		if len(results) > 0 {
			for _, result := range results {
				if result {
					return result
				}
			}
		}
		return false
	}
	DropTargetAsyncDragMotion = func(dropTarget gtk.DropTargetAsync, dropPtr uintptr, x, y float64) gdk.DragAction {
		drop := gdk.DropNewFromInternalPtr(dropPtr)
		results := CallbackHandler[gdk.DragAction](dropTarget.Object, "drag-motion", dropTarget, *drop, x, y)
		if len(results) > 0 {
			for _, result := range results {
				if result != gdk.ActionNoneValue {
					return result
				}
			}
		}
		return gdk.ActionNoneValue
	}
	DropTargetAsyncDrop = func(dropTarget gtk.DropTargetAsync, dropPtr uintptr, x, y float64) bool {
		drop := gdk.DropNewFromInternalPtr(dropPtr)
		results := CallbackHandler[bool](dropTarget.Object, "drop", dropTarget, *drop, x, y)
		if len(results) > 0 {
			for _, result := range results {
				if result {
					return result
				}
			}
		}
		return false
	}
)
View Source
var (
	SearchEntryActivateCallback = func(widget gtk.SearchEntry) {
		CallbackHandler[any](widget.Object, "activate", widget)
	}
	SearchChangedCallback = func(widget gtk.SearchEntry) {
		CallbackHandler[any](widget.Object, "search-changed", widget)
	}
)
View Source
var (
	DestroyCallback = func(widget gtk.Widget) {
		CallbackHandler[any](widget.Object, "destroy", widget)
	}
	MapCallback = func(widget gtk.Widget) {
		CallbackHandler[any](widget.Object, "map", widget)
	}
	RealizedCallback = func(widget gtk.Widget) {
		CallbackHandler[any](widget.Object, "realize", widget)
	}
	UnmapCallback = func(widget gtk.Widget) {
		CallbackHandler[any](widget.Object, "unmap", widget)
	}
	UnrealizedCallback = func(widget gtk.Widget) {
		CallbackHandler[any](widget.Object, "unrealize", widget)
	}
)
View Source
var (
	ActionRowActivated = func(widget adw.ActionRow) {
		CallbackHandler[any](widget.Object, "activated", widget)
	}
)
View Source
var (
	ButtonClickedCallback = func(widget gtk.Button) {
		CallbackHandler[any](widget.Object, "clicked", widget)
	}
)
View Source
var (
	RangeChangeValueCallback = func(widget gtk.Range, scrollType gtk.ScrollType, value float64) bool {
		results := CallbackHandler[bool](widget.Object, "change-value", widget, scrollType, value)
		if len(results) > 0 {
			for _, result := range results {
				if result {
					return true
				}
			}
		}
		return false
	}
)
View Source
var (
	ScrolledWindowEdgeReachedCallback = func(widget gtk.ScrolledWindow, positionType gtk.PositionType) {
		CallbackHandler[any](widget.Object, "edge-reached", widget, positionType)
	}
)

Functions

func CallbackHandler

func CallbackHandler[T any](object gobject.Object, signal string, args ...any) []T

func DeleteCallback added in v1.2.0

func DeleteCallback(object gobject.Object, signal string, callbackId int)

func DeleteCallbacks

func DeleteCallbacks(objectPtr uintptr)

func HandleCallback

func HandleCallback(object gobject.Object, signal string, callback any) int

func HasCallback added in v1.2.0

func HasCallback(object gobject.Object, signal string) bool

func OnMainThread

func OnMainThread(callback MainThreadCallback, params uintptr) uint

func OnMainThreadOnce

func OnMainThreadOnce(cb func(u uintptr), param uintptr) uint

func OnMainThreadOncePure added in v1.3.0

func OnMainThreadOncePure(cb func()) uint

func SetLogLifecycle

func SetLogLifecycle(enabled bool)

Types

type IntPool

type IntPool struct {
	// contains filtered or unexported fields
}

IntPool manages a pool of integers that can be checked out and returned

func NewIntPool

func NewIntPool() *IntPool

func (*IntPool) Get

func (p *IntPool) Get() int

func (*IntPool) Return

func (p *IntPool) Return(id int)

type MainThreadCallback

type MainThreadCallback func(u uintptr) bool

type MainThreadCallbackEntry

type MainThreadCallbackEntry struct {
	Callback MainThreadCallback
	Param    uintptr
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL