v0.2.1 c0399be

gtkcellrenderertoggle.go RawHistoryFolder

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/glib"
11	"github.com/bnema/puregotk/v4/gobject"
12	"github.com/bnema/puregotk/v4/gobject/types"
13)
14
15// Renders a toggle button in a cell
16//
17// `GtkCellRendererToggle` renders a toggle button in a cell. The
18// button is drawn as a radio or a checkbutton, depending on the
19// `GtkCellRendererToggle:radio` property.
20// When activated, it emits the `GtkCellRendererToggle::toggled` signal.
21type CellRendererToggle struct {
22	CellRenderer
23}
24
25var xCellRendererToggleGLibType func() types.GType
26
27func CellRendererToggleGLibType() types.GType {
28	return xCellRendererToggleGLibType()
29}
30
31func CellRendererToggleNewFromInternalPtr(ptr uintptr) *CellRendererToggle {
32	cls := &CellRendererToggle{}
33	cls.Ptr = ptr
34	return cls
35}
36
37var xNewCellRendererToggle func() uintptr
38
39// Creates a new `GtkCellRendererToggle`. Adjust rendering
40// parameters using object properties. Object properties can be set
41// globally (with g_object_set()). Also, with `GtkTreeViewColumn`, you
42// can bind a property to a value in a `GtkTreeModel`. For example, you
43// can bind the “active” property on the cell renderer to a boolean value
44// in the model, thus causing the check button to reflect the state of
45// the model.
46func NewCellRendererToggle() *CellRendererToggle {
47	var cls *CellRendererToggle
48
49	cret := xNewCellRendererToggle()
50
51	if cret == 0 {
52		return nil
53	}
54	gobject.IncreaseRef(cret)
55	cls = &CellRendererToggle{}
56	cls.Ptr = cret
57	return cls
58}
59
60var xCellRendererToggleGetActivatable func(uintptr) bool
61
62// Returns whether the cell renderer is activatable. See
63// gtk_cell_renderer_toggle_set_activatable().
64func (x *CellRendererToggle) GetActivatable() bool {
65
66	cret := xCellRendererToggleGetActivatable(x.GoPointer())
67	return cret
68}
69
70var xCellRendererToggleGetActive func(uintptr) bool
71
72// Returns whether the cell renderer is active. See
73// gtk_cell_renderer_toggle_set_active().
74func (x *CellRendererToggle) GetActive() bool {
75
76	cret := xCellRendererToggleGetActive(x.GoPointer())
77	return cret
78}
79
80var xCellRendererToggleGetRadio func(uintptr) bool
81
82// Returns whether we’re rendering radio toggles rather than checkboxes.
83func (x *CellRendererToggle) GetRadio() bool {
84
85	cret := xCellRendererToggleGetRadio(x.GoPointer())
86	return cret
87}
88
89var xCellRendererToggleSetActivatable func(uintptr, bool)
90
91// Makes the cell renderer activatable.
92func (x *CellRendererToggle) SetActivatable(SettingVar bool) {
93
94	xCellRendererToggleSetActivatable(x.GoPointer(), SettingVar)
95
96}
97
98var xCellRendererToggleSetActive func(uintptr, bool)
99
100// Activates or deactivates a cell renderer.
101func (x *CellRendererToggle) SetActive(SettingVar bool) {
102
103	xCellRendererToggleSetActive(x.GoPointer(), SettingVar)
104
105}
106
107var xCellRendererToggleSetRadio func(uintptr, bool)
108
109// If @radio is %TRUE, the cell renderer renders a radio toggle
110// (i.e. a toggle in a group of mutually-exclusive toggles).
111// If %FALSE, it renders a check toggle (a standalone boolean option).
112// This can be set globally for the cell renderer, or changed just
113// before rendering each cell in the model (for `GtkTreeView`, you set
114// up a per-row setting using `GtkTreeViewColumn` to associate model
115// columns with cell renderer properties).
116func (x *CellRendererToggle) SetRadio(RadioVar bool) {
117
118	xCellRendererToggleSetRadio(x.GoPointer(), RadioVar)
119
120}
121
122func (c *CellRendererToggle) GoPointer() uintptr {
123	if c == nil {
124		return 0
125	}
126	return c.Ptr
127}
128
129func (c *CellRendererToggle) SetGoPointer(ptr uintptr) {
130	c.Ptr = ptr
131}
132
133// SetPropertyActivatable sets the "activatable" property.
134func (x *CellRendererToggle) SetPropertyActivatable(value bool) {
135	var v gobject.Value
136	v.Init(gobject.TypeBooleanVal)
137	v.SetBoolean(value)
138	x.SetProperty("activatable", &v)
139}
140
141// GetPropertyActivatable gets the "activatable" property.
142func (x *CellRendererToggle) GetPropertyActivatable() bool {
143	var v gobject.Value
144	x.GetProperty("activatable", &v)
145	return v.GetBoolean()
146}
147
148// SetPropertyActive sets the "active" property.
149func (x *CellRendererToggle) SetPropertyActive(value bool) {
150	var v gobject.Value
151	v.Init(gobject.TypeBooleanVal)
152	v.SetBoolean(value)
153	x.SetProperty("active", &v)
154}
155
156// GetPropertyActive gets the "active" property.
157func (x *CellRendererToggle) GetPropertyActive() bool {
158	var v gobject.Value
159	x.GetProperty("active", &v)
160	return v.GetBoolean()
161}
162
163// SetPropertyInconsistent sets the "inconsistent" property.
164func (x *CellRendererToggle) SetPropertyInconsistent(value bool) {
165	var v gobject.Value
166	v.Init(gobject.TypeBooleanVal)
167	v.SetBoolean(value)
168	x.SetProperty("inconsistent", &v)
169}
170
171// GetPropertyInconsistent gets the "inconsistent" property.
172func (x *CellRendererToggle) GetPropertyInconsistent() bool {
173	var v gobject.Value
174	x.GetProperty("inconsistent", &v)
175	return v.GetBoolean()
176}
177
178// SetPropertyRadio sets the "radio" property.
179func (x *CellRendererToggle) SetPropertyRadio(value bool) {
180	var v gobject.Value
181	v.Init(gobject.TypeBooleanVal)
182	v.SetBoolean(value)
183	x.SetProperty("radio", &v)
184}
185
186// GetPropertyRadio gets the "radio" property.
187func (x *CellRendererToggle) GetPropertyRadio() bool {
188	var v gobject.Value
189	x.GetProperty("radio", &v)
190	return v.GetBoolean()
191}
192
193// The ::toggled signal is emitted when the cell is toggled.
194//
195// It is the responsibility of the application to update the model
196// with the correct value to store at @path.  Often this is simply the
197// opposite of the value currently stored at @path.
198func (x *CellRendererToggle) ConnectToggled(cb *func(CellRendererToggle, string)) uint {
199	cbPtr := uintptr(unsafe.Pointer(cb))
200	if cbRefPtr, ok := glib.GetCallback(cbPtr); ok {
201		handlerID := gobject.SignalConnect(x.GoPointer(), "toggled", cbRefPtr)
202		glib.SaveHandlerMapping(handlerID, cbPtr)
203		return handlerID
204	}
205
206	fcb := func(clsPtr uintptr, PathVarp uintptr) {
207		fa := CellRendererToggle{}
208		fa.Ptr = clsPtr
209		cbFn := *cb
210
211		cbFn(fa, core.GoString(PathVarp))
212
213	}
214	cbRefPtr := purego.NewCallback(fcb)
215	glib.SaveCallbackWithClosure(cbPtr, cbRefPtr, cb)
216	handlerID := gobject.SignalConnect(x.GoPointer(), "toggled", cbRefPtr)
217	glib.SaveHandlerMapping(handlerID, cbPtr)
218	return handlerID
219}
220
221func init() {
222	core.SetPackageName("GTK", "gtk4")
223	core.SetSharedLibraries("GTK", []string{"libgtk-4.so.1"})
224	var libs []uintptr
225	for _, libPath := range core.GetPaths("GTK") {
226		lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL)
227		if err != nil {
228			panic(err)
229		}
230		libs = append(libs, lib)
231	}
232
233	core.PuregoSafeRegister(&xCellRendererToggleGLibType, libs, "gtk_cell_renderer_toggle_get_type")
234
235	core.PuregoSafeRegister(&xNewCellRendererToggle, libs, "gtk_cell_renderer_toggle_new")
236
237	core.PuregoSafeRegister(&xCellRendererToggleGetActivatable, libs, "gtk_cell_renderer_toggle_get_activatable")
238	core.PuregoSafeRegister(&xCellRendererToggleGetActive, libs, "gtk_cell_renderer_toggle_get_active")
239	core.PuregoSafeRegister(&xCellRendererToggleGetRadio, libs, "gtk_cell_renderer_toggle_get_radio")
240	core.PuregoSafeRegister(&xCellRendererToggleSetActivatable, libs, "gtk_cell_renderer_toggle_set_activatable")
241	core.PuregoSafeRegister(&xCellRendererToggleSetActive, libs, "gtk_cell_renderer_toggle_set_active")
242	core.PuregoSafeRegister(&xCellRendererToggleSetRadio, libs, "gtk_cell_renderer_toggle_set_radio")
243
244}

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 1

Tags 102

↑↓ moveenter openesc close