// Package gtk was automatically generated by github.com/bnema/puregotk DO NOT EDIT package gtk import ( "github.com/ebitengine/purego" "github.com/bnema/puregotk/pkg/core" "github.com/bnema/puregotk/v4/gobject" "github.com/bnema/puregotk/v4/gobject/types" ) // Renders a spin button in a cell // // `GtkCellRendererSpin` renders text in a cell like `GtkCellRendererText` from // which it is derived. But while `GtkCellRendererText` offers a simple entry to // edit the text, `GtkCellRendererSpin` offers a `GtkSpinButton` widget. Of course, // that means that the text has to be parseable as a floating point number. // // The range of the spinbutton is taken from the adjustment property of the // cell renderer, which can be set explicitly or mapped to a column in the // tree model, like all properties of cell renders. `GtkCellRendererSpin` // also has properties for the `GtkCellRendererSpin:climb-rate` and the number // of `GtkCellRendererSpin:digits` to display. Other `GtkSpinButton` properties // can be set in a handler for the `GtkCellRenderer::editing-started` signal. type CellRendererSpin struct { CellRendererText } var xCellRendererSpinGLibType func() types.GType func CellRendererSpinGLibType() types.GType { return xCellRendererSpinGLibType() } func CellRendererSpinNewFromInternalPtr(ptr uintptr) *CellRendererSpin { cls := &CellRendererSpin{} cls.Ptr = ptr return cls } var xNewCellRendererSpin func() uintptr // Creates a new `GtkCellRendererSpin`. func NewCellRendererSpin() *CellRendererSpin { var cls *CellRendererSpin cret := xNewCellRendererSpin() if cret == 0 { return nil } gobject.IncreaseRef(cret) cls = &CellRendererSpin{} cls.Ptr = cret return cls } func (c *CellRendererSpin) GoPointer() uintptr { if c == nil { return 0 } return c.Ptr } func (c *CellRendererSpin) SetGoPointer(ptr uintptr) { c.Ptr = ptr } // SetPropertyClimbRate sets the "climb-rate" property. // The acceleration rate when you hold down a button. func (x *CellRendererSpin) SetPropertyClimbRate(value float64) { var v gobject.Value v.Init(gobject.TypeDoubleVal) v.SetDouble(value) x.SetProperty("climb-rate", &v) } // GetPropertyClimbRate gets the "climb-rate" property. // The acceleration rate when you hold down a button. func (x *CellRendererSpin) GetPropertyClimbRate() float64 { var v gobject.Value x.GetProperty("climb-rate", &v) return v.GetDouble() } // SetPropertyDigits sets the "digits" property. // The number of decimal places to display. func (x *CellRendererSpin) SetPropertyDigits(value uint) { var v gobject.Value v.Init(gobject.TypeUintVal) v.SetUint(value) x.SetProperty("digits", &v) } // GetPropertyDigits gets the "digits" property. // The number of decimal places to display. func (x *CellRendererSpin) GetPropertyDigits() uint { var v gobject.Value x.GetProperty("digits", &v) return v.GetUint() } 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(&xCellRendererSpinGLibType, libs, "gtk_cell_renderer_spin_get_type") core.PuregoSafeRegister(&xNewCellRendererSpin, libs, "gtk_cell_renderer_spin_new") }