v0.2.1 c0399be

gtksettings.go RawHistoryFolder

1// Package gtk was automatically generated by github.com/bnema/puregotk DO NOT EDIT
2package gtk
3
4import (
5	"github.com/ebitengine/purego"
6
7	"github.com/bnema/puregotk/pkg/core"
8	"github.com/bnema/puregotk/v4/gdk"
9	"github.com/bnema/puregotk/v4/gobject"
10	"github.com/bnema/puregotk/v4/gobject/types"
11)
12
13// Provides a mechanism to share global settings between applications.
14//
15// On the X window system, this sharing is realized by an
16// [XSettings](http://www.freedesktop.org/wiki/Specifications/xsettings-spec)
17// manager that is usually part of the desktop environment, along with
18// utilities that let the user change these settings.
19//
20// On Wayland, the settings are obtained either via a settings portal,
21// or by reading desktop settings from [class@Gio.Settings].
22//
23// On macOS, the settings are obtained from `NSUserDefaults`.
24//
25// In the absence of these sharing mechanisms, GTK reads default values for
26// settings from `settings.ini` files in `/etc/gtk-4.0`, `$XDG_CONFIG_DIRS/gtk-4.0`
27// and `$XDG_CONFIG_HOME/gtk-4.0`. These files must be valid key files (see
28// `GKeyFile`), and have a section called Settings. Themes can also provide
29// default values for settings by installing a `settings.ini` file
30// next to their `gtk.css` file.
31//
32// Applications can override system-wide settings by setting the property
33// of the `GtkSettings` object with g_object_set(). This should be restricted
34// to special cases though; `GtkSettings` are not meant as an application
35// configuration facility.
36//
37// There is one `GtkSettings` instance per display. It can be obtained with
38// [func@Gtk.Settings.get_for_display], but in many cases, it is more
39// convenient to use [method@Gtk.Widget.get_settings].
40type Settings struct {
41	gobject.Object
42}
43
44var xSettingsGLibType func() types.GType
45
46func SettingsGLibType() types.GType {
47	return xSettingsGLibType()
48}
49
50func SettingsNewFromInternalPtr(ptr uintptr) *Settings {
51	cls := &Settings{}
52	cls.Ptr = ptr
53	return cls
54}
55
56var xSettingsResetProperty func(uintptr, string)
57
58// Undoes the effect of calling g_object_set() to install an
59// application-specific value for a setting.
60//
61// After this call, the setting will again follow the session-wide
62// value for this setting.
63func (x *Settings) ResetProperty(NameVar string) {
64
65	xSettingsResetProperty(x.GoPointer(), NameVar)
66
67}
68
69func (c *Settings) GoPointer() uintptr {
70	if c == nil {
71		return 0
72	}
73	return c.Ptr
74}
75
76func (c *Settings) SetGoPointer(ptr uintptr) {
77	c.Ptr = ptr
78}
79
80// SetPropertyGtkAlternativeButtonOrder sets the "gtk-alternative-button-order" property.
81// Whether buttons in dialogs should use the alternative button order.
82func (x *Settings) SetPropertyGtkAlternativeButtonOrder(value bool) {
83	var v gobject.Value
84	v.Init(gobject.TypeBooleanVal)
85	v.SetBoolean(value)
86	x.SetProperty("gtk-alternative-button-order", &v)
87}
88
89// GetPropertyGtkAlternativeButtonOrder gets the "gtk-alternative-button-order" property.
90// Whether buttons in dialogs should use the alternative button order.
91func (x *Settings) GetPropertyGtkAlternativeButtonOrder() bool {
92	var v gobject.Value
93	x.GetProperty("gtk-alternative-button-order", &v)
94	return v.GetBoolean()
95}
96
97// SetPropertyGtkAlternativeSortArrows sets the "gtk-alternative-sort-arrows" property.
98// Controls the direction of the sort indicators in sorted list and tree
99// views.
100//
101// By default an arrow pointing down means the column is sorted
102// in ascending order. When set to %TRUE, this order will be inverted.
103func (x *Settings) SetPropertyGtkAlternativeSortArrows(value bool) {
104	var v gobject.Value
105	v.Init(gobject.TypeBooleanVal)
106	v.SetBoolean(value)
107	x.SetProperty("gtk-alternative-sort-arrows", &v)
108}
109
110// GetPropertyGtkAlternativeSortArrows gets the "gtk-alternative-sort-arrows" property.
111// Controls the direction of the sort indicators in sorted list and tree
112// views.
113//
114// By default an arrow pointing down means the column is sorted
115// in ascending order. When set to %TRUE, this order will be inverted.
116func (x *Settings) GetPropertyGtkAlternativeSortArrows() bool {
117	var v gobject.Value
118	x.GetProperty("gtk-alternative-sort-arrows", &v)
119	return v.GetBoolean()
120}
121
122// SetPropertyGtkApplicationPreferDarkTheme sets the "gtk-application-prefer-dark-theme" property.
123// Whether the application prefers to use a dark theme.
124//
125// If a GTK theme includes a dark variant, it will be used
126// instead of the configured theme.
127//
128// Some applications benefit from minimizing the amount of light
129// pollution that interferes with the content. Good candidates for
130// dark themes are photo and video editors that make the actual
131// content get all the attention and minimize the distraction of
132// the chrome.
133//
134// Dark themes should not be used for documents, where large spaces
135// are white/light and the dark chrome creates too much contrast
136// (web browser, text editor...).
137func (x *Settings) SetPropertyGtkApplicationPreferDarkTheme(value bool) {
138	var v gobject.Value
139	v.Init(gobject.TypeBooleanVal)
140	v.SetBoolean(value)
141	x.SetProperty("gtk-application-prefer-dark-theme", &v)
142}
143
144// GetPropertyGtkApplicationPreferDarkTheme gets the "gtk-application-prefer-dark-theme" property.
145// Whether the application prefers to use a dark theme.
146//
147// If a GTK theme includes a dark variant, it will be used
148// instead of the configured theme.
149//
150// Some applications benefit from minimizing the amount of light
151// pollution that interferes with the content. Good candidates for
152// dark themes are photo and video editors that make the actual
153// content get all the attention and minimize the distraction of
154// the chrome.
155//
156// Dark themes should not be used for documents, where large spaces
157// are white/light and the dark chrome creates too much contrast
158// (web browser, text editor...).
159func (x *Settings) GetPropertyGtkApplicationPreferDarkTheme() bool {
160	var v gobject.Value
161	x.GetProperty("gtk-application-prefer-dark-theme", &v)
162	return v.GetBoolean()
163}
164
165// SetPropertyGtkCursorAspectRatio sets the "gtk-cursor-aspect-ratio" property.
166// The aspect ratio of the text caret.
167func (x *Settings) SetPropertyGtkCursorAspectRatio(value float64) {
168	var v gobject.Value
169	v.Init(gobject.TypeDoubleVal)
170	v.SetDouble(value)
171	x.SetProperty("gtk-cursor-aspect-ratio", &v)
172}
173
174// GetPropertyGtkCursorAspectRatio gets the "gtk-cursor-aspect-ratio" property.
175// The aspect ratio of the text caret.
176func (x *Settings) GetPropertyGtkCursorAspectRatio() float64 {
177	var v gobject.Value
178	x.GetProperty("gtk-cursor-aspect-ratio", &v)
179	return v.GetDouble()
180}
181
182// SetPropertyGtkCursorBlink sets the "gtk-cursor-blink" property.
183// Whether the cursor should blink.
184//
185// Also see the [property@Gtk.Settings:gtk-cursor-blink-timeout] setting,
186// which allows more flexible control over cursor blinking.
187func (x *Settings) SetPropertyGtkCursorBlink(value bool) {
188	var v gobject.Value
189	v.Init(gobject.TypeBooleanVal)
190	v.SetBoolean(value)
191	x.SetProperty("gtk-cursor-blink", &v)
192}
193
194// GetPropertyGtkCursorBlink gets the "gtk-cursor-blink" property.
195// Whether the cursor should blink.
196//
197// Also see the [property@Gtk.Settings:gtk-cursor-blink-timeout] setting,
198// which allows more flexible control over cursor blinking.
199func (x *Settings) GetPropertyGtkCursorBlink() bool {
200	var v gobject.Value
201	x.GetProperty("gtk-cursor-blink", &v)
202	return v.GetBoolean()
203}
204
205// SetPropertyGtkCursorBlinkTime sets the "gtk-cursor-blink-time" property.
206// Length of the cursor blink cycle, in milliseconds.
207func (x *Settings) SetPropertyGtkCursorBlinkTime(value int) {
208	var v gobject.Value
209	v.Init(gobject.TypeIntVal)
210	v.SetInt(value)
211	x.SetProperty("gtk-cursor-blink-time", &v)
212}
213
214// GetPropertyGtkCursorBlinkTime gets the "gtk-cursor-blink-time" property.
215// Length of the cursor blink cycle, in milliseconds.
216func (x *Settings) GetPropertyGtkCursorBlinkTime() int {
217	var v gobject.Value
218	x.GetProperty("gtk-cursor-blink-time", &v)
219	return v.GetInt()
220}
221
222// SetPropertyGtkCursorBlinkTimeout sets the "gtk-cursor-blink-timeout" property.
223// Time after which the cursor stops blinking, in seconds.
224//
225// The timer is reset after each user interaction.
226//
227// Setting this to zero has the same effect as setting
228// [property@Gtk.Settings:gtk-cursor-blink] to %FALSE.
229func (x *Settings) SetPropertyGtkCursorBlinkTimeout(value int) {
230	var v gobject.Value
231	v.Init(gobject.TypeIntVal)
232	v.SetInt(value)
233	x.SetProperty("gtk-cursor-blink-timeout", &v)
234}
235
236// GetPropertyGtkCursorBlinkTimeout gets the "gtk-cursor-blink-timeout" property.
237// Time after which the cursor stops blinking, in seconds.
238//
239// The timer is reset after each user interaction.
240//
241// Setting this to zero has the same effect as setting
242// [property@Gtk.Settings:gtk-cursor-blink] to %FALSE.
243func (x *Settings) GetPropertyGtkCursorBlinkTimeout() int {
244	var v gobject.Value
245	x.GetProperty("gtk-cursor-blink-timeout", &v)
246	return v.GetInt()
247}
248
249// SetPropertyGtkCursorThemeName sets the "gtk-cursor-theme-name" property.
250// Name of the cursor theme to use.
251//
252// Use %NULL to use the default theme.
253func (x *Settings) SetPropertyGtkCursorThemeName(value string) {
254	var v gobject.Value
255	v.Init(gobject.TypeStringVal)
256	v.SetString(&value)
257	x.SetProperty("gtk-cursor-theme-name", &v)
258}
259
260// GetPropertyGtkCursorThemeName gets the "gtk-cursor-theme-name" property.
261// Name of the cursor theme to use.
262//
263// Use %NULL to use the default theme.
264func (x *Settings) GetPropertyGtkCursorThemeName() string {
265	var v gobject.Value
266	x.GetProperty("gtk-cursor-theme-name", &v)
267	return v.GetString()
268}
269
270// SetPropertyGtkCursorThemeSize sets the "gtk-cursor-theme-size" property.
271// The size to use for cursors.
272//
273// 0 means to use the default size.
274func (x *Settings) SetPropertyGtkCursorThemeSize(value int) {
275	var v gobject.Value
276	v.Init(gobject.TypeIntVal)
277	v.SetInt(value)
278	x.SetProperty("gtk-cursor-theme-size", &v)
279}
280
281// GetPropertyGtkCursorThemeSize gets the "gtk-cursor-theme-size" property.
282// The size to use for cursors.
283//
284// 0 means to use the default size.
285func (x *Settings) GetPropertyGtkCursorThemeSize() int {
286	var v gobject.Value
287	x.GetProperty("gtk-cursor-theme-size", &v)
288	return v.GetInt()
289}
290
291// SetPropertyGtkDecorationLayout sets the "gtk-decoration-layout" property.
292// Determines which buttons should be put in the
293// titlebar of client-side decorated windows, and whether they
294// should be placed on the left or right.
295//
296// The format of the string is button names, separated by commas.
297// A colon separates the buttons that should appear on the left
298// from those on the right. Recognized button names are minimize,
299// maximize, close, icon (the window icon) and menu (a menu button
300// for the fallback app menu).
301//
302// For example, "menu:minimize,maximize,close" specifies a menu
303// on the left, and minimize, maximize and close buttons on the right.
304//
305// Note that buttons will only be shown when they are meaningful.
306// E.g. a menu button only appears when the desktop shell does not
307// show the app menu, and a close button only appears on a window
308// that can be closed.
309//
310// Also note that the setting can be overridden with the
311// [property@Gtk.HeaderBar:decoration-layout] property.
312func (x *Settings) SetPropertyGtkDecorationLayout(value string) {
313	var v gobject.Value
314	v.Init(gobject.TypeStringVal)
315	v.SetString(&value)
316	x.SetProperty("gtk-decoration-layout", &v)
317}
318
319// GetPropertyGtkDecorationLayout gets the "gtk-decoration-layout" property.
320// Determines which buttons should be put in the
321// titlebar of client-side decorated windows, and whether they
322// should be placed on the left or right.
323//
324// The format of the string is button names, separated by commas.
325// A colon separates the buttons that should appear on the left
326// from those on the right. Recognized button names are minimize,
327// maximize, close, icon (the window icon) and menu (a menu button
328// for the fallback app menu).
329//
330// For example, "menu:minimize,maximize,close" specifies a menu
331// on the left, and minimize, maximize and close buttons on the right.
332//
333// Note that buttons will only be shown when they are meaningful.
334// E.g. a menu button only appears when the desktop shell does not
335// show the app menu, and a close button only appears on a window
336// that can be closed.
337//
338// Also note that the setting can be overridden with the
339// [property@Gtk.HeaderBar:decoration-layout] property.
340func (x *Settings) GetPropertyGtkDecorationLayout() string {
341	var v gobject.Value
342	x.GetProperty("gtk-decoration-layout", &v)
343	return v.GetString()
344}
345
346// SetPropertyGtkDialogsUseHeader sets the "gtk-dialogs-use-header" property.
347// Whether builtin GTK dialogs such as the file chooser, the
348// color chooser or the font chooser will use a header bar at
349// the top to show action widgets, or an action area at the bottom.
350//
351// This setting does not affect custom dialogs using `GtkDialog`
352// directly, or message dialogs.
353func (x *Settings) SetPropertyGtkDialogsUseHeader(value bool) {
354	var v gobject.Value
355	v.Init(gobject.TypeBooleanVal)
356	v.SetBoolean(value)
357	x.SetProperty("gtk-dialogs-use-header", &v)
358}
359
360// GetPropertyGtkDialogsUseHeader gets the "gtk-dialogs-use-header" property.
361// Whether builtin GTK dialogs such as the file chooser, the
362// color chooser or the font chooser will use a header bar at
363// the top to show action widgets, or an action area at the bottom.
364//
365// This setting does not affect custom dialogs using `GtkDialog`
366// directly, or message dialogs.
367func (x *Settings) GetPropertyGtkDialogsUseHeader() bool {
368	var v gobject.Value
369	x.GetProperty("gtk-dialogs-use-header", &v)
370	return v.GetBoolean()
371}
372
373// SetPropertyGtkDndDragThreshold sets the "gtk-dnd-drag-threshold" property.
374// The number of pixels the cursor can move before dragging.
375func (x *Settings) SetPropertyGtkDndDragThreshold(value int) {
376	var v gobject.Value
377	v.Init(gobject.TypeIntVal)
378	v.SetInt(value)
379	x.SetProperty("gtk-dnd-drag-threshold", &v)
380}
381
382// GetPropertyGtkDndDragThreshold gets the "gtk-dnd-drag-threshold" property.
383// The number of pixels the cursor can move before dragging.
384func (x *Settings) GetPropertyGtkDndDragThreshold() int {
385	var v gobject.Value
386	x.GetProperty("gtk-dnd-drag-threshold", &v)
387	return v.GetInt()
388}
389
390// SetPropertyGtkDoubleClickDistance sets the "gtk-double-click-distance" property.
391// The maximum distance allowed between two clicks for them to be considered
392// a double click, in pixels.
393func (x *Settings) SetPropertyGtkDoubleClickDistance(value int) {
394	var v gobject.Value
395	v.Init(gobject.TypeIntVal)
396	v.SetInt(value)
397	x.SetProperty("gtk-double-click-distance", &v)
398}
399
400// GetPropertyGtkDoubleClickDistance gets the "gtk-double-click-distance" property.
401// The maximum distance allowed between two clicks for them to be considered
402// a double click, in pixels.
403func (x *Settings) GetPropertyGtkDoubleClickDistance() int {
404	var v gobject.Value
405	x.GetProperty("gtk-double-click-distance", &v)
406	return v.GetInt()
407}
408
409// SetPropertyGtkDoubleClickTime sets the "gtk-double-click-time" property.
410// The maximum time to allow between two clicks for them to be considered
411// a double click, in milliseconds.
412func (x *Settings) SetPropertyGtkDoubleClickTime(value int) {
413	var v gobject.Value
414	v.Init(gobject.TypeIntVal)
415	v.SetInt(value)
416	x.SetProperty("gtk-double-click-time", &v)
417}
418
419// GetPropertyGtkDoubleClickTime gets the "gtk-double-click-time" property.
420// The maximum time to allow between two clicks for them to be considered
421// a double click, in milliseconds.
422func (x *Settings) GetPropertyGtkDoubleClickTime() int {
423	var v gobject.Value
424	x.GetProperty("gtk-double-click-time", &v)
425	return v.GetInt()
426}
427
428// SetPropertyGtkEnableAccels sets the "gtk-enable-accels" property.
429// Whether menu items should have visible accelerators which can be
430// activated.
431func (x *Settings) SetPropertyGtkEnableAccels(value bool) {
432	var v gobject.Value
433	v.Init(gobject.TypeBooleanVal)
434	v.SetBoolean(value)
435	x.SetProperty("gtk-enable-accels", &v)
436}
437
438// GetPropertyGtkEnableAccels gets the "gtk-enable-accels" property.
439// Whether menu items should have visible accelerators which can be
440// activated.
441func (x *Settings) GetPropertyGtkEnableAccels() bool {
442	var v gobject.Value
443	x.GetProperty("gtk-enable-accels", &v)
444	return v.GetBoolean()
445}
446
447// SetPropertyGtkEnableAnimations sets the "gtk-enable-animations" property.
448// Whether to enable toolkit-wide animations.
449func (x *Settings) SetPropertyGtkEnableAnimations(value bool) {
450	var v gobject.Value
451	v.Init(gobject.TypeBooleanVal)
452	v.SetBoolean(value)
453	x.SetProperty("gtk-enable-animations", &v)
454}
455
456// GetPropertyGtkEnableAnimations gets the "gtk-enable-animations" property.
457// Whether to enable toolkit-wide animations.
458func (x *Settings) GetPropertyGtkEnableAnimations() bool {
459	var v gobject.Value
460	x.GetProperty("gtk-enable-animations", &v)
461	return v.GetBoolean()
462}
463
464// SetPropertyGtkEnableEventSounds sets the "gtk-enable-event-sounds" property.
465// Whether to play any event sounds at all.
466//
467// See the [Sound Theme Specifications](http://www.freedesktop.org/wiki/Specifications/sound-theme-spec)
468// for more information on event sounds and sound themes.
469//
470// GTK itself does not support event sounds, you have to use a loadable
471// module like the one that comes with libcanberra.
472func (x *Settings) SetPropertyGtkEnableEventSounds(value bool) {
473	var v gobject.Value
474	v.Init(gobject.TypeBooleanVal)
475	v.SetBoolean(value)
476	x.SetProperty("gtk-enable-event-sounds", &v)
477}
478
479// GetPropertyGtkEnableEventSounds gets the "gtk-enable-event-sounds" property.
480// Whether to play any event sounds at all.
481//
482// See the [Sound Theme Specifications](http://www.freedesktop.org/wiki/Specifications/sound-theme-spec)
483// for more information on event sounds and sound themes.
484//
485// GTK itself does not support event sounds, you have to use a loadable
486// module like the one that comes with libcanberra.
487func (x *Settings) GetPropertyGtkEnableEventSounds() bool {
488	var v gobject.Value
489	x.GetProperty("gtk-enable-event-sounds", &v)
490	return v.GetBoolean()
491}
492
493// SetPropertyGtkEnableInputFeedbackSounds sets the "gtk-enable-input-feedback-sounds" property.
494// Whether to play event sounds as feedback to user input.
495//
496// See the [Sound Theme Specifications](http://www.freedesktop.org/wiki/Specifications/sound-theme-spec)
497// for more information on event sounds and sound themes.
498//
499// GTK itself does not support event sounds, you have to use a loadable
500// module like the one that comes with libcanberra.
501func (x *Settings) SetPropertyGtkEnableInputFeedbackSounds(value bool) {
502	var v gobject.Value
503	v.Init(gobject.TypeBooleanVal)
504	v.SetBoolean(value)
505	x.SetProperty("gtk-enable-input-feedback-sounds", &v)
506}
507
508// GetPropertyGtkEnableInputFeedbackSounds gets the "gtk-enable-input-feedback-sounds" property.
509// Whether to play event sounds as feedback to user input.
510//
511// See the [Sound Theme Specifications](http://www.freedesktop.org/wiki/Specifications/sound-theme-spec)
512// for more information on event sounds and sound themes.
513//
514// GTK itself does not support event sounds, you have to use a loadable
515// module like the one that comes with libcanberra.
516func (x *Settings) GetPropertyGtkEnableInputFeedbackSounds() bool {
517	var v gobject.Value
518	x.GetProperty("gtk-enable-input-feedback-sounds", &v)
519	return v.GetBoolean()
520}
521
522// SetPropertyGtkEnablePrimaryPaste sets the "gtk-enable-primary-paste" property.
523// Whether a middle click on a mouse should paste the
524// 'PRIMARY' clipboard content at the cursor location.
525func (x *Settings) SetPropertyGtkEnablePrimaryPaste(value bool) {
526	var v gobject.Value
527	v.Init(gobject.TypeBooleanVal)
528	v.SetBoolean(value)
529	x.SetProperty("gtk-enable-primary-paste", &v)
530}
531
532// GetPropertyGtkEnablePrimaryPaste gets the "gtk-enable-primary-paste" property.
533// Whether a middle click on a mouse should paste the
534// 'PRIMARY' clipboard content at the cursor location.
535func (x *Settings) GetPropertyGtkEnablePrimaryPaste() bool {
536	var v gobject.Value
537	x.GetProperty("gtk-enable-primary-paste", &v)
538	return v.GetBoolean()
539}
540
541// SetPropertyGtkEntryPasswordHintTimeout sets the "gtk-entry-password-hint-timeout" property.
542// How long to show the last input character in hidden
543// entries.
544//
545// This value is in milliseconds. 0 disables showing the
546// last char. 600 is a good value for enabling it.
547func (x *Settings) SetPropertyGtkEntryPasswordHintTimeout(value uint) {
548	var v gobject.Value
549	v.Init(gobject.TypeUintVal)
550	v.SetUint(value)
551	x.SetProperty("gtk-entry-password-hint-timeout", &v)
552}
553
554// GetPropertyGtkEntryPasswordHintTimeout gets the "gtk-entry-password-hint-timeout" property.
555// How long to show the last input character in hidden
556// entries.
557//
558// This value is in milliseconds. 0 disables showing the
559// last char. 600 is a good value for enabling it.
560func (x *Settings) GetPropertyGtkEntryPasswordHintTimeout() uint {
561	var v gobject.Value
562	x.GetProperty("gtk-entry-password-hint-timeout", &v)
563	return v.GetUint()
564}
565
566// SetPropertyGtkEntrySelectOnFocus sets the "gtk-entry-select-on-focus" property.
567// Whether to select the contents of an entry when it is focused.
568func (x *Settings) SetPropertyGtkEntrySelectOnFocus(value bool) {
569	var v gobject.Value
570	v.Init(gobject.TypeBooleanVal)
571	v.SetBoolean(value)
572	x.SetProperty("gtk-entry-select-on-focus", &v)
573}
574
575// GetPropertyGtkEntrySelectOnFocus gets the "gtk-entry-select-on-focus" property.
576// Whether to select the contents of an entry when it is focused.
577func (x *Settings) GetPropertyGtkEntrySelectOnFocus() bool {
578	var v gobject.Value
579	x.GetProperty("gtk-entry-select-on-focus", &v)
580	return v.GetBoolean()
581}
582
583// SetPropertyGtkErrorBell sets the "gtk-error-bell" property.
584// When %TRUE, keyboard navigation and other input-related errors
585// will cause a beep.
586//
587// Since the error bell is implemented using gdk_surface_beep(), the
588// windowing system may offer ways to configure the error bell in many
589// ways, such as flashing the window or similar visual effects.
590func (x *Settings) SetPropertyGtkErrorBell(value bool) {
591	var v gobject.Value
592	v.Init(gobject.TypeBooleanVal)
593	v.SetBoolean(value)
594	x.SetProperty("gtk-error-bell", &v)
595}
596
597// GetPropertyGtkErrorBell gets the "gtk-error-bell" property.
598// When %TRUE, keyboard navigation and other input-related errors
599// will cause a beep.
600//
601// Since the error bell is implemented using gdk_surface_beep(), the
602// windowing system may offer ways to configure the error bell in many
603// ways, such as flashing the window or similar visual effects.
604func (x *Settings) GetPropertyGtkErrorBell() bool {
605	var v gobject.Value
606	x.GetProperty("gtk-error-bell", &v)
607	return v.GetBoolean()
608}
609
610// SetPropertyGtkFontName sets the "gtk-font-name" property.
611// The default font to use.
612//
613// GTK uses the family name and size from this string.
614func (x *Settings) SetPropertyGtkFontName(value string) {
615	var v gobject.Value
616	v.Init(gobject.TypeStringVal)
617	v.SetString(&value)
618	x.SetProperty("gtk-font-name", &v)
619}
620
621// GetPropertyGtkFontName gets the "gtk-font-name" property.
622// The default font to use.
623//
624// GTK uses the family name and size from this string.
625func (x *Settings) GetPropertyGtkFontName() string {
626	var v gobject.Value
627	x.GetProperty("gtk-font-name", &v)
628	return v.GetString()
629}
630
631// SetPropertyGtkFontconfigTimestamp sets the "gtk-fontconfig-timestamp" property.
632// Timestamp of the current fontconfig configuration.
633func (x *Settings) SetPropertyGtkFontconfigTimestamp(value uint) {
634	var v gobject.Value
635	v.Init(gobject.TypeUintVal)
636	v.SetUint(value)
637	x.SetProperty("gtk-fontconfig-timestamp", &v)
638}
639
640// GetPropertyGtkFontconfigTimestamp gets the "gtk-fontconfig-timestamp" property.
641// Timestamp of the current fontconfig configuration.
642func (x *Settings) GetPropertyGtkFontconfigTimestamp() uint {
643	var v gobject.Value
644	x.GetProperty("gtk-fontconfig-timestamp", &v)
645	return v.GetUint()
646}
647
648// SetPropertyGtkHintFontMetrics sets the "gtk-hint-font-metrics" property.
649// Whether hinting should be applied to font metrics.
650//
651// Note that this also turns off subpixel positioning of glyphs,
652// since it conflicts with metrics hinting.
653func (x *Settings) SetPropertyGtkHintFontMetrics(value bool) {
654	var v gobject.Value
655	v.Init(gobject.TypeBooleanVal)
656	v.SetBoolean(value)
657	x.SetProperty("gtk-hint-font-metrics", &v)
658}
659
660// GetPropertyGtkHintFontMetrics gets the "gtk-hint-font-metrics" property.
661// Whether hinting should be applied to font metrics.
662//
663// Note that this also turns off subpixel positioning of glyphs,
664// since it conflicts with metrics hinting.
665func (x *Settings) GetPropertyGtkHintFontMetrics() bool {
666	var v gobject.Value
667	x.GetProperty("gtk-hint-font-metrics", &v)
668	return v.GetBoolean()
669}
670
671// SetPropertyGtkIconThemeName sets the "gtk-icon-theme-name" property.
672// Name of the icon theme to use.
673//
674// See [class@Gtk.IconTheme] for details about how
675// GTK handles icon themes.
676func (x *Settings) SetPropertyGtkIconThemeName(value string) {
677	var v gobject.Value
678	v.Init(gobject.TypeStringVal)
679	v.SetString(&value)
680	x.SetProperty("gtk-icon-theme-name", &v)
681}
682
683// GetPropertyGtkIconThemeName gets the "gtk-icon-theme-name" property.
684// Name of the icon theme to use.
685//
686// See [class@Gtk.IconTheme] for details about how
687// GTK handles icon themes.
688func (x *Settings) GetPropertyGtkIconThemeName() string {
689	var v gobject.Value
690	x.GetProperty("gtk-icon-theme-name", &v)
691	return v.GetString()
692}
693
694// SetPropertyGtkImModule sets the "gtk-im-module" property.
695// Which IM (input method) module should be used by default.
696//
697// This is the input method that will be used if the user has not
698// explicitly chosen another input method from the IM context menu.
699// This also can be a colon-separated list of input methods, which GTK
700// will try in turn until it finds one available on the system.
701//
702// See [class@Gtk.IMContext].
703func (x *Settings) SetPropertyGtkImModule(value string) {
704	var v gobject.Value
705	v.Init(gobject.TypeStringVal)
706	v.SetString(&value)
707	x.SetProperty("gtk-im-module", &v)
708}
709
710// GetPropertyGtkImModule gets the "gtk-im-module" property.
711// Which IM (input method) module should be used by default.
712//
713// This is the input method that will be used if the user has not
714// explicitly chosen another input method from the IM context menu.
715// This also can be a colon-separated list of input methods, which GTK
716// will try in turn until it finds one available on the system.
717//
718// See [class@Gtk.IMContext].
719func (x *Settings) GetPropertyGtkImModule() string {
720	var v gobject.Value
721	x.GetProperty("gtk-im-module", &v)
722	return v.GetString()
723}
724
725// SetPropertyGtkKeynavUseCaret sets the "gtk-keynav-use-caret" property.
726// Whether GTK should make sure that text can be navigated with
727// a caret, even if it is not editable.
728//
729// This is useful when using a screen reader.
730func (x *Settings) SetPropertyGtkKeynavUseCaret(value bool) {
731	var v gobject.Value
732	v.Init(gobject.TypeBooleanVal)
733	v.SetBoolean(value)
734	x.SetProperty("gtk-keynav-use-caret", &v)
735}
736
737// GetPropertyGtkKeynavUseCaret gets the "gtk-keynav-use-caret" property.
738// Whether GTK should make sure that text can be navigated with
739// a caret, even if it is not editable.
740//
741// This is useful when using a screen reader.
742func (x *Settings) GetPropertyGtkKeynavUseCaret() bool {
743	var v gobject.Value
744	x.GetProperty("gtk-keynav-use-caret", &v)
745	return v.GetBoolean()
746}
747
748// SetPropertyGtkLabelSelectOnFocus sets the "gtk-label-select-on-focus" property.
749// Whether to select the contents of a selectable
750// label when it is focused.
751func (x *Settings) SetPropertyGtkLabelSelectOnFocus(value bool) {
752	var v gobject.Value
753	v.Init(gobject.TypeBooleanVal)
754	v.SetBoolean(value)
755	x.SetProperty("gtk-label-select-on-focus", &v)
756}
757
758// GetPropertyGtkLabelSelectOnFocus gets the "gtk-label-select-on-focus" property.
759// Whether to select the contents of a selectable
760// label when it is focused.
761func (x *Settings) GetPropertyGtkLabelSelectOnFocus() bool {
762	var v gobject.Value
763	x.GetProperty("gtk-label-select-on-focus", &v)
764	return v.GetBoolean()
765}
766
767// SetPropertyGtkLongPressTime sets the "gtk-long-press-time" property.
768// The time for a button or touch press to be considered a “long press”.
769//
770// See [class@Gtk.GestureLongPress].
771func (x *Settings) SetPropertyGtkLongPressTime(value uint) {
772	var v gobject.Value
773	v.Init(gobject.TypeUintVal)
774	v.SetUint(value)
775	x.SetProperty("gtk-long-press-time", &v)
776}
777
778// GetPropertyGtkLongPressTime gets the "gtk-long-press-time" property.
779// The time for a button or touch press to be considered a “long press”.
780//
781// See [class@Gtk.GestureLongPress].
782func (x *Settings) GetPropertyGtkLongPressTime() uint {
783	var v gobject.Value
784	x.GetProperty("gtk-long-press-time", &v)
785	return v.GetUint()
786}
787
788// SetPropertyGtkOverlayScrolling sets the "gtk-overlay-scrolling" property.
789// Whether scrolled windows may use overlaid scrolling indicators.
790//
791// If this is set to %FALSE, scrolled windows will have permanent
792// scrollbars.
793func (x *Settings) SetPropertyGtkOverlayScrolling(value bool) {
794	var v gobject.Value
795	v.Init(gobject.TypeBooleanVal)
796	v.SetBoolean(value)
797	x.SetProperty("gtk-overlay-scrolling", &v)
798}
799
800// GetPropertyGtkOverlayScrolling gets the "gtk-overlay-scrolling" property.
801// Whether scrolled windows may use overlaid scrolling indicators.
802//
803// If this is set to %FALSE, scrolled windows will have permanent
804// scrollbars.
805func (x *Settings) GetPropertyGtkOverlayScrolling() bool {
806	var v gobject.Value
807	x.GetProperty("gtk-overlay-scrolling", &v)
808	return v.GetBoolean()
809}
810
811// SetPropertyGtkPrimaryButtonWarpsSlider sets the "gtk-primary-button-warps-slider" property.
812// If the value of this setting is %TRUE, clicking the primary button in a
813// `GtkRange` trough will move the slider, and hence set the range’s value, to
814// the point that you clicked.
815//
816// If it is %FALSE, a primary click will cause the slider/value to move
817// by the range’s page-size towards the point clicked.
818//
819// Whichever action you choose for the primary button, the other action will
820// be available by holding Shift and primary-clicking, or clicking the middle
821// mouse button.
822func (x *Settings) SetPropertyGtkPrimaryButtonWarpsSlider(value bool) {
823	var v gobject.Value
824	v.Init(gobject.TypeBooleanVal)
825	v.SetBoolean(value)
826	x.SetProperty("gtk-primary-button-warps-slider", &v)
827}
828
829// GetPropertyGtkPrimaryButtonWarpsSlider gets the "gtk-primary-button-warps-slider" property.
830// If the value of this setting is %TRUE, clicking the primary button in a
831// `GtkRange` trough will move the slider, and hence set the range’s value, to
832// the point that you clicked.
833//
834// If it is %FALSE, a primary click will cause the slider/value to move
835// by the range’s page-size towards the point clicked.
836//
837// Whichever action you choose for the primary button, the other action will
838// be available by holding Shift and primary-clicking, or clicking the middle
839// mouse button.
840func (x *Settings) GetPropertyGtkPrimaryButtonWarpsSlider() bool {
841	var v gobject.Value
842	x.GetProperty("gtk-primary-button-warps-slider", &v)
843	return v.GetBoolean()
844}
845
846// SetPropertyGtkPrintBackends sets the "gtk-print-backends" property.
847// A comma-separated list of print backends to use in the print
848// dialog.
849//
850// Available print backends depend on the GTK installation,
851// and may include "file", "cups", "lpr" or "papi".
852func (x *Settings) SetPropertyGtkPrintBackends(value string) {
853	var v gobject.Value
854	v.Init(gobject.TypeStringVal)
855	v.SetString(&value)
856	x.SetProperty("gtk-print-backends", &v)
857}
858
859// GetPropertyGtkPrintBackends gets the "gtk-print-backends" property.
860// A comma-separated list of print backends to use in the print
861// dialog.
862//
863// Available print backends depend on the GTK installation,
864// and may include "file", "cups", "lpr" or "papi".
865func (x *Settings) GetPropertyGtkPrintBackends() string {
866	var v gobject.Value
867	x.GetProperty("gtk-print-backends", &v)
868	return v.GetString()
869}
870
871// SetPropertyGtkPrintPreviewCommand sets the "gtk-print-preview-command" property.
872// A command to run for displaying the print preview.
873//
874// The command should contain a `%f` placeholder, which will get
875// replaced by the path to the pdf file. The command may also
876// contain a `%s` placeholder, which will get replaced by the
877// path to a file containing the print settings in the format
878// produced by [method@Gtk.PrintSettings.to_file].
879//
880// The preview application is responsible for removing the pdf
881// file and the print settings file when it is done.
882func (x *Settings) SetPropertyGtkPrintPreviewCommand(value string) {
883	var v gobject.Value
884	v.Init(gobject.TypeStringVal)
885	v.SetString(&value)
886	x.SetProperty("gtk-print-preview-command", &v)
887}
888
889// GetPropertyGtkPrintPreviewCommand gets the "gtk-print-preview-command" property.
890// A command to run for displaying the print preview.
891//
892// The command should contain a `%f` placeholder, which will get
893// replaced by the path to the pdf file. The command may also
894// contain a `%s` placeholder, which will get replaced by the
895// path to a file containing the print settings in the format
896// produced by [method@Gtk.PrintSettings.to_file].
897//
898// The preview application is responsible for removing the pdf
899// file and the print settings file when it is done.
900func (x *Settings) GetPropertyGtkPrintPreviewCommand() string {
901	var v gobject.Value
902	x.GetProperty("gtk-print-preview-command", &v)
903	return v.GetString()
904}
905
906// SetPropertyGtkRecentFilesEnabled sets the "gtk-recent-files-enabled" property.
907// Whether GTK should keep track of items inside the recently used
908// resources list.
909//
910// If set to %FALSE, the list will always be empty.
911func (x *Settings) SetPropertyGtkRecentFilesEnabled(value bool) {
912	var v gobject.Value
913	v.Init(gobject.TypeBooleanVal)
914	v.SetBoolean(value)
915	x.SetProperty("gtk-recent-files-enabled", &v)
916}
917
918// GetPropertyGtkRecentFilesEnabled gets the "gtk-recent-files-enabled" property.
919// Whether GTK should keep track of items inside the recently used
920// resources list.
921//
922// If set to %FALSE, the list will always be empty.
923func (x *Settings) GetPropertyGtkRecentFilesEnabled() bool {
924	var v gobject.Value
925	x.GetProperty("gtk-recent-files-enabled", &v)
926	return v.GetBoolean()
927}
928
929// SetPropertyGtkRecentFilesMaxAge sets the "gtk-recent-files-max-age" property.
930// The maximum age, in days, of the items inside the recently used
931// resources list.
932//
933// Items older than this setting will be excised from the list.
934// If set to 0, the list will always be empty; if set to -1, no
935// item will be removed.
936func (x *Settings) SetPropertyGtkRecentFilesMaxAge(value int) {
937	var v gobject.Value
938	v.Init(gobject.TypeIntVal)
939	v.SetInt(value)
940	x.SetProperty("gtk-recent-files-max-age", &v)
941}
942
943// GetPropertyGtkRecentFilesMaxAge gets the "gtk-recent-files-max-age" property.
944// The maximum age, in days, of the items inside the recently used
945// resources list.
946//
947// Items older than this setting will be excised from the list.
948// If set to 0, the list will always be empty; if set to -1, no
949// item will be removed.
950func (x *Settings) GetPropertyGtkRecentFilesMaxAge() int {
951	var v gobject.Value
952	x.GetProperty("gtk-recent-files-max-age", &v)
953	return v.GetInt()
954}
955
956// SetPropertyGtkShellShowsAppMenu sets the "gtk-shell-shows-app-menu" property.
957// Set to %TRUE if the desktop environment is displaying
958// the app menu, %FALSE if the app should display it itself.
959func (x *Settings) SetPropertyGtkShellShowsAppMenu(value bool) {
960	var v gobject.Value
961	v.Init(gobject.TypeBooleanVal)
962	v.SetBoolean(value)
963	x.SetProperty("gtk-shell-shows-app-menu", &v)
964}
965
966// GetPropertyGtkShellShowsAppMenu gets the "gtk-shell-shows-app-menu" property.
967// Set to %TRUE if the desktop environment is displaying
968// the app menu, %FALSE if the app should display it itself.
969func (x *Settings) GetPropertyGtkShellShowsAppMenu() bool {
970	var v gobject.Value
971	x.GetProperty("gtk-shell-shows-app-menu", &v)
972	return v.GetBoolean()
973}
974
975// SetPropertyGtkShellShowsDesktop sets the "gtk-shell-shows-desktop" property.
976// Set to %TRUE if the desktop environment is displaying
977// the desktop folder, %FALSE if not.
978func (x *Settings) SetPropertyGtkShellShowsDesktop(value bool) {
979	var v gobject.Value
980	v.Init(gobject.TypeBooleanVal)
981	v.SetBoolean(value)
982	x.SetProperty("gtk-shell-shows-desktop", &v)
983}
984
985// GetPropertyGtkShellShowsDesktop gets the "gtk-shell-shows-desktop" property.
986// Set to %TRUE if the desktop environment is displaying
987// the desktop folder, %FALSE if not.
988func (x *Settings) GetPropertyGtkShellShowsDesktop() bool {
989	var v gobject.Value
990	x.GetProperty("gtk-shell-shows-desktop", &v)
991	return v.GetBoolean()
992}
993
994// SetPropertyGtkShellShowsMenubar sets the "gtk-shell-shows-menubar" property.
995// Set to %TRUE if the desktop environment is displaying
996// the menubar, %FALSE if the app should display it itself.
997func (x *Settings) SetPropertyGtkShellShowsMenubar(value bool) {
998	var v gobject.Value
999	v.Init(gobject.TypeBooleanVal)
1000	v.SetBoolean(value)
1001	x.SetProperty("gtk-shell-shows-menubar", &v)
1002}
1003
1004// GetPropertyGtkShellShowsMenubar gets the "gtk-shell-shows-menubar" property.
1005// Set to %TRUE if the desktop environment is displaying
1006// the menubar, %FALSE if the app should display it itself.
1007func (x *Settings) GetPropertyGtkShellShowsMenubar() bool {
1008	var v gobject.Value
1009	x.GetProperty("gtk-shell-shows-menubar", &v)
1010	return v.GetBoolean()
1011}
1012
1013// SetPropertyGtkShowStatusShapes sets the "gtk-show-status-shapes" property.
1014// When %TRUE, widgets like switches include shapes to indicate their on/off state.
1015func (x *Settings) SetPropertyGtkShowStatusShapes(value bool) {
1016	var v gobject.Value
1017	v.Init(gobject.TypeBooleanVal)
1018	v.SetBoolean(value)
1019	x.SetProperty("gtk-show-status-shapes", &v)
1020}
1021
1022// GetPropertyGtkShowStatusShapes gets the "gtk-show-status-shapes" property.
1023// When %TRUE, widgets like switches include shapes to indicate their on/off state.
1024func (x *Settings) GetPropertyGtkShowStatusShapes() bool {
1025	var v gobject.Value
1026	x.GetProperty("gtk-show-status-shapes", &v)
1027	return v.GetBoolean()
1028}
1029
1030// SetPropertyGtkSoundThemeName sets the "gtk-sound-theme-name" property.
1031// The XDG sound theme to use for event sounds.
1032//
1033// See the [Sound Theme Specifications](http://www.freedesktop.org/wiki/Specifications/sound-theme-spec)
1034// for more information on event sounds and sound themes.
1035//
1036// GTK itself does not support event sounds, you have to use
1037// a loadable module like the one that comes with libcanberra.
1038func (x *Settings) SetPropertyGtkSoundThemeName(value string) {
1039	var v gobject.Value
1040	v.Init(gobject.TypeStringVal)
1041	v.SetString(&value)
1042	x.SetProperty("gtk-sound-theme-name", &v)
1043}
1044
1045// GetPropertyGtkSoundThemeName gets the "gtk-sound-theme-name" property.
1046// The XDG sound theme to use for event sounds.
1047//
1048// See the [Sound Theme Specifications](http://www.freedesktop.org/wiki/Specifications/sound-theme-spec)
1049// for more information on event sounds and sound themes.
1050//
1051// GTK itself does not support event sounds, you have to use
1052// a loadable module like the one that comes with libcanberra.
1053func (x *Settings) GetPropertyGtkSoundThemeName() string {
1054	var v gobject.Value
1055	x.GetProperty("gtk-sound-theme-name", &v)
1056	return v.GetString()
1057}
1058
1059// SetPropertyGtkSplitCursor sets the "gtk-split-cursor" property.
1060// Whether two cursors should be displayed for mixed left-to-right and
1061// right-to-left text.
1062func (x *Settings) SetPropertyGtkSplitCursor(value bool) {
1063	var v gobject.Value
1064	v.Init(gobject.TypeBooleanVal)
1065	v.SetBoolean(value)
1066	x.SetProperty("gtk-split-cursor", &v)
1067}
1068
1069// GetPropertyGtkSplitCursor gets the "gtk-split-cursor" property.
1070// Whether two cursors should be displayed for mixed left-to-right and
1071// right-to-left text.
1072func (x *Settings) GetPropertyGtkSplitCursor() bool {
1073	var v gobject.Value
1074	x.GetProperty("gtk-split-cursor", &v)
1075	return v.GetBoolean()
1076}
1077
1078// SetPropertyGtkThemeName sets the "gtk-theme-name" property.
1079// Name of the theme to load.
1080//
1081// See [class@Gtk.CssProvider] for details about how
1082// GTK finds the CSS stylesheet for a theme.
1083func (x *Settings) SetPropertyGtkThemeName(value string) {
1084	var v gobject.Value
1085	v.Init(gobject.TypeStringVal)
1086	v.SetString(&value)
1087	x.SetProperty("gtk-theme-name", &v)
1088}
1089
1090// GetPropertyGtkThemeName gets the "gtk-theme-name" property.
1091// Name of the theme to load.
1092//
1093// See [class@Gtk.CssProvider] for details about how
1094// GTK finds the CSS stylesheet for a theme.
1095func (x *Settings) GetPropertyGtkThemeName() string {
1096	var v gobject.Value
1097	x.GetProperty("gtk-theme-name", &v)
1098	return v.GetString()
1099}
1100
1101// SetPropertyGtkTitlebarDoubleClick sets the "gtk-titlebar-double-click" property.
1102// Determines the action to take when a double-click
1103// occurs on the titlebar of client-side decorated windows.
1104//
1105// Recognized actions are minimize, toggle-maximize, menu, lower
1106// or none.
1107func (x *Settings) SetPropertyGtkTitlebarDoubleClick(value string) {
1108	var v gobject.Value
1109	v.Init(gobject.TypeStringVal)
1110	v.SetString(&value)
1111	x.SetProperty("gtk-titlebar-double-click", &v)
1112}
1113
1114// GetPropertyGtkTitlebarDoubleClick gets the "gtk-titlebar-double-click" property.
1115// Determines the action to take when a double-click
1116// occurs on the titlebar of client-side decorated windows.
1117//
1118// Recognized actions are minimize, toggle-maximize, menu, lower
1119// or none.
1120func (x *Settings) GetPropertyGtkTitlebarDoubleClick() string {
1121	var v gobject.Value
1122	x.GetProperty("gtk-titlebar-double-click", &v)
1123	return v.GetString()
1124}
1125
1126// SetPropertyGtkTitlebarMiddleClick sets the "gtk-titlebar-middle-click" property.
1127// Determines the action to take when a middle-click
1128// occurs on the titlebar of client-side decorated windows.
1129//
1130// Recognized actions are minimize, toggle-maximize, menu, lower
1131// or none.
1132func (x *Settings) SetPropertyGtkTitlebarMiddleClick(value string) {
1133	var v gobject.Value
1134	v.Init(gobject.TypeStringVal)
1135	v.SetString(&value)
1136	x.SetProperty("gtk-titlebar-middle-click", &v)
1137}
1138
1139// GetPropertyGtkTitlebarMiddleClick gets the "gtk-titlebar-middle-click" property.
1140// Determines the action to take when a middle-click
1141// occurs on the titlebar of client-side decorated windows.
1142//
1143// Recognized actions are minimize, toggle-maximize, menu, lower
1144// or none.
1145func (x *Settings) GetPropertyGtkTitlebarMiddleClick() string {
1146	var v gobject.Value
1147	x.GetProperty("gtk-titlebar-middle-click", &v)
1148	return v.GetString()
1149}
1150
1151// SetPropertyGtkTitlebarRightClick sets the "gtk-titlebar-right-click" property.
1152// Determines the action to take when a right-click
1153// occurs on the titlebar of client-side decorated windows.
1154//
1155// Recognized actions are minimize, toggle-maximize, menu, lower
1156// or none.
1157func (x *Settings) SetPropertyGtkTitlebarRightClick(value string) {
1158	var v gobject.Value
1159	v.Init(gobject.TypeStringVal)
1160	v.SetString(&value)
1161	x.SetProperty("gtk-titlebar-right-click", &v)
1162}
1163
1164// GetPropertyGtkTitlebarRightClick gets the "gtk-titlebar-right-click" property.
1165// Determines the action to take when a right-click
1166// occurs on the titlebar of client-side decorated windows.
1167//
1168// Recognized actions are minimize, toggle-maximize, menu, lower
1169// or none.
1170func (x *Settings) GetPropertyGtkTitlebarRightClick() string {
1171	var v gobject.Value
1172	x.GetProperty("gtk-titlebar-right-click", &v)
1173	return v.GetString()
1174}
1175
1176// SetPropertyGtkXftAntialias sets the "gtk-xft-antialias" property.
1177// Whether to antialias fonts.
1178//
1179// The values are 0 for no, 1 for yes, or -1 for the system default.
1180func (x *Settings) SetPropertyGtkXftAntialias(value int) {
1181	var v gobject.Value
1182	v.Init(gobject.TypeIntVal)
1183	v.SetInt(value)
1184	x.SetProperty("gtk-xft-antialias", &v)
1185}
1186
1187// GetPropertyGtkXftAntialias gets the "gtk-xft-antialias" property.
1188// Whether to antialias fonts.
1189//
1190// The values are 0 for no, 1 for yes, or -1 for the system default.
1191func (x *Settings) GetPropertyGtkXftAntialias() int {
1192	var v gobject.Value
1193	x.GetProperty("gtk-xft-antialias", &v)
1194	return v.GetInt()
1195}
1196
1197// SetPropertyGtkXftDpi sets the "gtk-xft-dpi" property.
1198// The font resolution, in 1024 * dots/inch.
1199//
1200// -1 to use the default value.
1201func (x *Settings) SetPropertyGtkXftDpi(value int) {
1202	var v gobject.Value
1203	v.Init(gobject.TypeIntVal)
1204	v.SetInt(value)
1205	x.SetProperty("gtk-xft-dpi", &v)
1206}
1207
1208// GetPropertyGtkXftDpi gets the "gtk-xft-dpi" property.
1209// The font resolution, in 1024 * dots/inch.
1210//
1211// -1 to use the default value.
1212func (x *Settings) GetPropertyGtkXftDpi() int {
1213	var v gobject.Value
1214	x.GetProperty("gtk-xft-dpi", &v)
1215	return v.GetInt()
1216}
1217
1218// SetPropertyGtkXftHinting sets the "gtk-xft-hinting" property.
1219// Whether to enable font hinting.
1220//
1221// The values are 0 for no, 1 for yes, or -1 for the system default.
1222func (x *Settings) SetPropertyGtkXftHinting(value int) {
1223	var v gobject.Value
1224	v.Init(gobject.TypeIntVal)
1225	v.SetInt(value)
1226	x.SetProperty("gtk-xft-hinting", &v)
1227}
1228
1229// GetPropertyGtkXftHinting gets the "gtk-xft-hinting" property.
1230// Whether to enable font hinting.
1231//
1232// The values are 0 for no, 1 for yes, or -1 for the system default.
1233func (x *Settings) GetPropertyGtkXftHinting() int {
1234	var v gobject.Value
1235	x.GetProperty("gtk-xft-hinting", &v)
1236	return v.GetInt()
1237}
1238
1239// SetPropertyGtkXftHintstyle sets the "gtk-xft-hintstyle" property.
1240// What degree of font hinting to use.
1241//
1242// The possible vaues are hintnone, hintslight,
1243// hintmedium, hintfull.
1244func (x *Settings) SetPropertyGtkXftHintstyle(value string) {
1245	var v gobject.Value
1246	v.Init(gobject.TypeStringVal)
1247	v.SetString(&value)
1248	x.SetProperty("gtk-xft-hintstyle", &v)
1249}
1250
1251// GetPropertyGtkXftHintstyle gets the "gtk-xft-hintstyle" property.
1252// What degree of font hinting to use.
1253//
1254// The possible vaues are hintnone, hintslight,
1255// hintmedium, hintfull.
1256func (x *Settings) GetPropertyGtkXftHintstyle() string {
1257	var v gobject.Value
1258	x.GetProperty("gtk-xft-hintstyle", &v)
1259	return v.GetString()
1260}
1261
1262// SetPropertyGtkXftRgba sets the "gtk-xft-rgba" property.
1263// The type of subpixel antialiasing to use.
1264//
1265// The possible values are none, rgb, bgr, vrgb, vbgr.
1266//
1267// Note that GSK does not support subpixel antialiasing, and this
1268// setting has no effect on font rendering in GTK.
1269func (x *Settings) SetPropertyGtkXftRgba(value string) {
1270	var v gobject.Value
1271	v.Init(gobject.TypeStringVal)
1272	v.SetString(&value)
1273	x.SetProperty("gtk-xft-rgba", &v)
1274}
1275
1276// GetPropertyGtkXftRgba gets the "gtk-xft-rgba" property.
1277// The type of subpixel antialiasing to use.
1278//
1279// The possible values are none, rgb, bgr, vrgb, vbgr.
1280//
1281// Note that GSK does not support subpixel antialiasing, and this
1282// setting has no effect on font rendering in GTK.
1283func (x *Settings) GetPropertyGtkXftRgba() string {
1284	var v gobject.Value
1285	x.GetProperty("gtk-xft-rgba", &v)
1286	return v.GetString()
1287}
1288
1289var xSettingsGetDefault func() uintptr
1290
1291// Gets the `GtkSettings` object for the default display, creating
1292// it if necessary.
1293//
1294// See [func@Gtk.Settings.get_for_display].
1295func SettingsGetDefault() *Settings {
1296	var cls *Settings
1297
1298	cret := xSettingsGetDefault()
1299
1300	if cret == 0 {
1301		return nil
1302	}
1303	gobject.IncreaseRef(cret)
1304	cls = &Settings{}
1305	cls.Ptr = cret
1306	return cls
1307}
1308
1309var xSettingsGetForDisplay func(uintptr) uintptr
1310
1311// Gets the `GtkSettings` object for @display, creating it if necessary.
1312func SettingsGetForDisplay(DisplayVar *gdk.Display) *Settings {
1313	var cls *Settings
1314
1315	cret := xSettingsGetForDisplay(DisplayVar.GoPointer())
1316
1317	if cret == 0 {
1318		return nil
1319	}
1320	gobject.IncreaseRef(cret)
1321	cls = &Settings{}
1322	cls.Ptr = cret
1323	return cls
1324}
1325
1326func init() {
1327	core.SetPackageName("GTK", "gtk4")
1328	core.SetSharedLibraries("GTK", []string{"libgtk-4.so.1"})
1329	var libs []uintptr
1330	for _, libPath := range core.GetPaths("GTK") {
1331		lib, err := purego.Dlopen(libPath, purego.RTLD_NOW|purego.RTLD_GLOBAL)
1332		if err != nil {
1333			panic(err)
1334		}
1335		libs = append(libs, lib)
1336	}
1337
1338	core.PuregoSafeRegister(&xSettingsGLibType, libs, "gtk_settings_get_type")
1339
1340	core.PuregoSafeRegister(&xSettingsResetProperty, libs, "gtk_settings_reset_property")
1341
1342	core.PuregoSafeRegister(&xSettingsGetDefault, libs, "gtk_settings_get_default")
1343	core.PuregoSafeRegister(&xSettingsGetForDisplay, libs, "gtk_settings_get_for_display")
1344
1345}

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