{- |
Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License    : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)

GtkSettings provide a mechanism to share global settings between
applications.

On the X window system, this sharing is realized by an
<http://www.freedesktop.org/wiki/Specifications/xsettings-spec XSettings>
manager that is usually part of the desktop environment, along with
utilities that let the user change these settings. In the absence of
an Xsettings manager, GTK+ reads default values for settings from
@settings.ini@ files in
@\/etc\/gtk-3.0@, @$XDG_CONFIG_DIRS\/gtk-3.0@
and @$XDG_CONFIG_HOME\/gtk-3.0@.
These files must be valid key files (see 'GI.GLib.Structs.KeyFile.KeyFile'), and have
a section called Settings. Themes can also provide default values
for settings by installing a @settings.ini@ file
next to their @gtk.css@ file.

Applications can override system-wide settings by setting the property
of the GtkSettings object with @/g_object_set()/@. This should be restricted
to special cases though; GtkSettings are not meant as an application
configuration facility. When doing so, you need to be aware that settings
that are specific to individual widgets may not be available before the
widget type has been realized at least once. The following example
demonstrates a way to do this:

=== /C code/
>
>  gtk_init (&argc, &argv);
>
>  // make sure the type is realized
>  g_type_class_unref (g_type_class_ref (GTK_TYPE_IMAGE_MENU_ITEM));
>
>  g_object_set (gtk_settings_get_default (), "gtk-enable-animations", FALSE, NULL);


There is one GtkSettings instance per screen. It can be obtained with
'GI.Gtk.Objects.Settings.settingsGetForScreen', but in many cases, it is more convenient
to use 'GI.Gtk.Objects.Widget.widgetGetSettings'. 'GI.Gtk.Objects.Settings.settingsGetDefault' returns the
GtkSettings instance for the default screen.
-}

#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
       && !defined(__HADDOCK_VERSION__))

module GI.Gtk.Objects.Settings
    (

-- * Exported types
    Settings(..)                            ,
    IsSettings                              ,
    toSettings                              ,
    noSettings                              ,


 -- * Methods
-- ** getDefault #method:getDefault#

    settingsGetDefault                      ,


-- ** getForScreen #method:getForScreen#

    settingsGetForScreen                    ,


-- ** installProperty #method:installProperty#

    settingsInstallProperty                 ,


-- ** installPropertyParser #method:installPropertyParser#

    settingsInstallPropertyParser           ,


-- ** resetProperty #method:resetProperty#

#if ENABLE_OVERLOADING
    SettingsResetPropertyMethodInfo         ,
#endif
    settingsResetProperty                   ,


-- ** setDoubleProperty #method:setDoubleProperty#

#if ENABLE_OVERLOADING
    SettingsSetDoublePropertyMethodInfo     ,
#endif
    settingsSetDoubleProperty               ,


-- ** setLongProperty #method:setLongProperty#

#if ENABLE_OVERLOADING
    SettingsSetLongPropertyMethodInfo       ,
#endif
    settingsSetLongProperty                 ,


-- ** setPropertyValue #method:setPropertyValue#

#if ENABLE_OVERLOADING
    SettingsSetPropertyValueMethodInfo      ,
#endif
    settingsSetPropertyValue                ,


-- ** setStringProperty #method:setStringProperty#

#if ENABLE_OVERLOADING
    SettingsSetStringPropertyMethodInfo     ,
#endif
    settingsSetStringProperty               ,




 -- * Properties
-- ** colorHash #attr:colorHash#

#if ENABLE_OVERLOADING
    SettingsColorHashPropertyInfo           ,
#endif
#if ENABLE_OVERLOADING
    settingsColorHash                       ,
#endif


-- ** gtkAlternativeButtonOrder #attr:gtkAlternativeButtonOrder#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkAlternativeButtonOrderPropertyInfo,
#endif
    constructSettingsGtkAlternativeButtonOrder,
    getSettingsGtkAlternativeButtonOrder    ,
    setSettingsGtkAlternativeButtonOrder    ,
#if ENABLE_OVERLOADING
    settingsGtkAlternativeButtonOrder       ,
#endif


-- ** gtkAlternativeSortArrows #attr:gtkAlternativeSortArrows#
{- | Controls the direction of the sort indicators in sorted list and tree
views. By default an arrow pointing down means the column is sorted
in ascending order. When set to 'True', this order will be inverted.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkAlternativeSortArrowsPropertyInfo,
#endif
    constructSettingsGtkAlternativeSortArrows,
    getSettingsGtkAlternativeSortArrows     ,
    setSettingsGtkAlternativeSortArrows     ,
#if ENABLE_OVERLOADING
    settingsGtkAlternativeSortArrows        ,
#endif


-- ** gtkApplicationPreferDarkTheme #attr:gtkApplicationPreferDarkTheme#
{- | Whether the application prefers to use a dark theme. If a GTK+ theme
includes a dark variant, it will be used instead of the configured
theme.

Some applications benefit from minimizing the amount of light pollution that
interferes with the content. Good candidates for dark themes are photo and
video editors that make the actual content get all the attention and minimize
the distraction of the chrome.

Dark themes should not be used for documents, where large spaces are white\/light
and the dark chrome creates too much contrast (web browser, text editor...).

/Since: 3.0/
-}
#if ENABLE_OVERLOADING
    SettingsGtkApplicationPreferDarkThemePropertyInfo,
#endif
    constructSettingsGtkApplicationPreferDarkTheme,
    getSettingsGtkApplicationPreferDarkTheme,
    setSettingsGtkApplicationPreferDarkTheme,
#if ENABLE_OVERLOADING
    settingsGtkApplicationPreferDarkTheme   ,
#endif


-- ** gtkAutoMnemonics #attr:gtkAutoMnemonics#
{- | Whether mnemonics should be automatically shown and hidden when the user
presses the mnemonic activator.

/Since: 2.20/
-}
#if ENABLE_OVERLOADING
    SettingsGtkAutoMnemonicsPropertyInfo    ,
#endif
    constructSettingsGtkAutoMnemonics       ,
    getSettingsGtkAutoMnemonics             ,
    setSettingsGtkAutoMnemonics             ,
#if ENABLE_OVERLOADING
    settingsGtkAutoMnemonics                ,
#endif


-- ** gtkButtonImages #attr:gtkButtonImages#
{- | Whether images should be shown on buttons

/Since: 2.4/
-}
#if ENABLE_OVERLOADING
    SettingsGtkButtonImagesPropertyInfo     ,
#endif
    constructSettingsGtkButtonImages        ,
    getSettingsGtkButtonImages              ,
    setSettingsGtkButtonImages              ,
#if ENABLE_OVERLOADING
    settingsGtkButtonImages                 ,
#endif


-- ** gtkCanChangeAccels #attr:gtkCanChangeAccels#
{- | Whether menu accelerators can be changed by pressing a key over the menu item.
-}
#if ENABLE_OVERLOADING
    SettingsGtkCanChangeAccelsPropertyInfo  ,
#endif
    constructSettingsGtkCanChangeAccels     ,
    getSettingsGtkCanChangeAccels           ,
    setSettingsGtkCanChangeAccels           ,
#if ENABLE_OVERLOADING
    settingsGtkCanChangeAccels              ,
#endif


-- ** gtkColorPalette #attr:gtkColorPalette#
{- | Palette to use in the deprecated color selector.
-}
#if ENABLE_OVERLOADING
    SettingsGtkColorPalettePropertyInfo     ,
#endif
    clearSettingsGtkColorPalette            ,
    constructSettingsGtkColorPalette        ,
    getSettingsGtkColorPalette              ,
    setSettingsGtkColorPalette              ,
#if ENABLE_OVERLOADING
    settingsGtkColorPalette                 ,
#endif


-- ** gtkColorScheme #attr:gtkColorScheme#
{- | A palette of named colors for use in themes. The format of the string is
>
>name1: color1
>name2: color2
>...

Color names must be acceptable as identifiers in the
[gtkrc][gtk3-Resource-Files] syntax, and
color specifications must be in the format accepted by
'GI.Gdk.Functions.colorParse'.

Note that due to the way the color tables from different sources are
merged, color specifications will be converted to hexadecimal form
when getting this property.

Starting with GTK+ 2.12, the entries can alternatively be separated
by \';\' instead of newlines:
>
>name1: color1; name2: color2; ...


/Since: 2.10/
-}
#if ENABLE_OVERLOADING
    SettingsGtkColorSchemePropertyInfo      ,
#endif
    clearSettingsGtkColorScheme             ,
    constructSettingsGtkColorScheme         ,
    getSettingsGtkColorScheme               ,
    setSettingsGtkColorScheme               ,
#if ENABLE_OVERLOADING
    settingsGtkColorScheme                  ,
#endif


-- ** gtkCursorBlink #attr:gtkCursorBlink#
{- | Whether the cursor should blink.

Also see the 'GI.Gtk.Objects.Settings.Settings':@/gtk-cursor-blink-timeout/@ setting,
which allows more flexible control over cursor blinking.
-}
#if ENABLE_OVERLOADING
    SettingsGtkCursorBlinkPropertyInfo      ,
#endif
    constructSettingsGtkCursorBlink         ,
    getSettingsGtkCursorBlink               ,
    setSettingsGtkCursorBlink               ,
#if ENABLE_OVERLOADING
    settingsGtkCursorBlink                  ,
#endif


-- ** gtkCursorBlinkTime #attr:gtkCursorBlinkTime#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkCursorBlinkTimePropertyInfo  ,
#endif
    constructSettingsGtkCursorBlinkTime     ,
    getSettingsGtkCursorBlinkTime           ,
    setSettingsGtkCursorBlinkTime           ,
#if ENABLE_OVERLOADING
    settingsGtkCursorBlinkTime              ,
#endif


-- ** gtkCursorBlinkTimeout #attr:gtkCursorBlinkTimeout#
{- | Time after which the cursor stops blinking, in seconds.
The timer is reset after each user interaction.

Setting this to zero has the same effect as setting
'GI.Gtk.Objects.Settings.Settings':@/gtk-cursor-blink/@ to 'False'.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkCursorBlinkTimeoutPropertyInfo,
#endif
    constructSettingsGtkCursorBlinkTimeout  ,
    getSettingsGtkCursorBlinkTimeout        ,
    setSettingsGtkCursorBlinkTimeout        ,
#if ENABLE_OVERLOADING
    settingsGtkCursorBlinkTimeout           ,
#endif


-- ** gtkCursorThemeName #attr:gtkCursorThemeName#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkCursorThemeNamePropertyInfo  ,
#endif
    clearSettingsGtkCursorThemeName         ,
    constructSettingsGtkCursorThemeName     ,
    getSettingsGtkCursorThemeName           ,
    setSettingsGtkCursorThemeName           ,
#if ENABLE_OVERLOADING
    settingsGtkCursorThemeName              ,
#endif


-- ** gtkCursorThemeSize #attr:gtkCursorThemeSize#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkCursorThemeSizePropertyInfo  ,
#endif
    constructSettingsGtkCursorThemeSize     ,
    getSettingsGtkCursorThemeSize           ,
    setSettingsGtkCursorThemeSize           ,
#if ENABLE_OVERLOADING
    settingsGtkCursorThemeSize              ,
#endif


-- ** gtkDecorationLayout #attr:gtkDecorationLayout#
{- | This setting determines which buttons should be put in the
titlebar of client-side decorated windows, and whether they
should be placed at the left of right.

The format of the string is button names, separated by commas.
A colon separates the buttons that should appear on the left
from those on the right. Recognized button names are minimize,
maximize, close, icon (the window icon) and menu (a menu button
for the fallback app menu).

For example, \"menu:minimize,maximize,close\" specifies a menu
on the left, and minimize, maximize and close buttons on the right.

Note that buttons will only be shown when they are meaningful.
E.g. a menu button only appears when the desktop shell does not
show the app menu, and a close button only appears on a window
that can be closed.

Also note that the setting can be overridden with the
'GI.Gtk.Objects.HeaderBar.HeaderBar':@/decoration-layout/@ property.

/Since: 3.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkDecorationLayoutPropertyInfo ,
#endif
    clearSettingsGtkDecorationLayout        ,
    constructSettingsGtkDecorationLayout    ,
    getSettingsGtkDecorationLayout          ,
    setSettingsGtkDecorationLayout          ,
#if ENABLE_OVERLOADING
    settingsGtkDecorationLayout             ,
#endif


-- ** gtkDialogsUseHeader #attr:gtkDialogsUseHeader#
{- | Whether builtin GTK+ dialogs such as the file chooser, the
color chooser or the font chooser will use a header bar at
the top to show action widgets, or an action area at the bottom.

This setting does not affect custom dialogs using GtkDialog
directly, or message dialogs.

/Since: 3.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkDialogsUseHeaderPropertyInfo ,
#endif
    constructSettingsGtkDialogsUseHeader    ,
    getSettingsGtkDialogsUseHeader          ,
    setSettingsGtkDialogsUseHeader          ,
#if ENABLE_OVERLOADING
    settingsGtkDialogsUseHeader             ,
#endif


-- ** gtkDndDragThreshold #attr:gtkDndDragThreshold#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkDndDragThresholdPropertyInfo ,
#endif
    constructSettingsGtkDndDragThreshold    ,
    getSettingsGtkDndDragThreshold          ,
    setSettingsGtkDndDragThreshold          ,
#if ENABLE_OVERLOADING
    settingsGtkDndDragThreshold             ,
#endif


-- ** gtkDoubleClickDistance #attr:gtkDoubleClickDistance#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkDoubleClickDistancePropertyInfo,
#endif
    constructSettingsGtkDoubleClickDistance ,
    getSettingsGtkDoubleClickDistance       ,
    setSettingsGtkDoubleClickDistance       ,
#if ENABLE_OVERLOADING
    settingsGtkDoubleClickDistance          ,
#endif


-- ** gtkDoubleClickTime #attr:gtkDoubleClickTime#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkDoubleClickTimePropertyInfo  ,
#endif
    constructSettingsGtkDoubleClickTime     ,
    getSettingsGtkDoubleClickTime           ,
    setSettingsGtkDoubleClickTime           ,
#if ENABLE_OVERLOADING
    settingsGtkDoubleClickTime              ,
#endif


-- ** gtkEnableAccels #attr:gtkEnableAccels#
{- | Whether menu items should have visible accelerators which can be
activated.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkEnableAccelsPropertyInfo     ,
#endif
    constructSettingsGtkEnableAccels        ,
    getSettingsGtkEnableAccels              ,
    setSettingsGtkEnableAccels              ,
#if ENABLE_OVERLOADING
    settingsGtkEnableAccels                 ,
#endif


-- ** gtkEnableAnimations #attr:gtkEnableAnimations#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkEnableAnimationsPropertyInfo ,
#endif
    constructSettingsGtkEnableAnimations    ,
    getSettingsGtkEnableAnimations          ,
    setSettingsGtkEnableAnimations          ,
#if ENABLE_OVERLOADING
    settingsGtkEnableAnimations             ,
#endif


-- ** gtkEnableEventSounds #attr:gtkEnableEventSounds#
{- | Whether to play any event sounds at all.

See the <http://www.freedesktop.org/wiki/Specifications/sound-theme-spec Sound Theme Specifications>
for more information on event sounds and sound themes.

GTK+ itself does not support event sounds, you have to use a loadable
module like the one that comes with libcanberra.

/Since: 2.14/
-}
#if ENABLE_OVERLOADING
    SettingsGtkEnableEventSoundsPropertyInfo,
#endif
    constructSettingsGtkEnableEventSounds   ,
    getSettingsGtkEnableEventSounds         ,
    setSettingsGtkEnableEventSounds         ,
#if ENABLE_OVERLOADING
    settingsGtkEnableEventSounds            ,
#endif


-- ** gtkEnableInputFeedbackSounds #attr:gtkEnableInputFeedbackSounds#
{- | Whether to play event sounds as feedback to user input.

See the <http://www.freedesktop.org/wiki/Specifications/sound-theme-spec Sound Theme Specifications>
for more information on event sounds and sound themes.

GTK+ itself does not support event sounds, you have to use a loadable
module like the one that comes with libcanberra.

/Since: 2.14/
-}
#if ENABLE_OVERLOADING
    SettingsGtkEnableInputFeedbackSoundsPropertyInfo,
#endif
    constructSettingsGtkEnableInputFeedbackSounds,
    getSettingsGtkEnableInputFeedbackSounds ,
    setSettingsGtkEnableInputFeedbackSounds ,
#if ENABLE_OVERLOADING
    settingsGtkEnableInputFeedbackSounds    ,
#endif


-- ** gtkEnableMnemonics #attr:gtkEnableMnemonics#
{- | Whether labels and menu items should have visible mnemonics which
can be activated.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkEnableMnemonicsPropertyInfo  ,
#endif
    constructSettingsGtkEnableMnemonics     ,
    getSettingsGtkEnableMnemonics           ,
    setSettingsGtkEnableMnemonics           ,
#if ENABLE_OVERLOADING
    settingsGtkEnableMnemonics              ,
#endif


-- ** gtkEnablePrimaryPaste #attr:gtkEnablePrimaryPaste#
{- | Whether a middle click on a mouse should paste the
\'PRIMARY\' clipboard content at the cursor location.

/Since: 3.4/
-}
#if ENABLE_OVERLOADING
    SettingsGtkEnablePrimaryPastePropertyInfo,
#endif
    constructSettingsGtkEnablePrimaryPaste  ,
    getSettingsGtkEnablePrimaryPaste        ,
    setSettingsGtkEnablePrimaryPaste        ,
#if ENABLE_OVERLOADING
    settingsGtkEnablePrimaryPaste           ,
#endif


-- ** gtkEnableTooltips #attr:gtkEnableTooltips#
{- | Whether tooltips should be shown on widgets.

/Since: 2.14/
-}
#if ENABLE_OVERLOADING
    SettingsGtkEnableTooltipsPropertyInfo   ,
#endif
    constructSettingsGtkEnableTooltips      ,
    getSettingsGtkEnableTooltips            ,
    setSettingsGtkEnableTooltips            ,
#if ENABLE_OVERLOADING
    settingsGtkEnableTooltips               ,
#endif


-- ** gtkEntryPasswordHintTimeout #attr:gtkEntryPasswordHintTimeout#
{- | How long to show the last input character in hidden
entries. This value is in milliseconds. 0 disables showing the
last char. 600 is a good value for enabling it.

/Since: 2.10/
-}
#if ENABLE_OVERLOADING
    SettingsGtkEntryPasswordHintTimeoutPropertyInfo,
#endif
    constructSettingsGtkEntryPasswordHintTimeout,
    getSettingsGtkEntryPasswordHintTimeout  ,
    setSettingsGtkEntryPasswordHintTimeout  ,
#if ENABLE_OVERLOADING
    settingsGtkEntryPasswordHintTimeout     ,
#endif


-- ** gtkEntrySelectOnFocus #attr:gtkEntrySelectOnFocus#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkEntrySelectOnFocusPropertyInfo,
#endif
    constructSettingsGtkEntrySelectOnFocus  ,
    getSettingsGtkEntrySelectOnFocus        ,
    setSettingsGtkEntrySelectOnFocus        ,
#if ENABLE_OVERLOADING
    settingsGtkEntrySelectOnFocus           ,
#endif


-- ** gtkErrorBell #attr:gtkErrorBell#
{- | When 'True', keyboard navigation and other input-related errors
will cause a beep. Since the error bell is implemented using
'GI.Gdk.Objects.Window.windowBeep', the windowing system may offer ways to
configure the error bell in many ways, such as flashing the
window or similar visual effects.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkErrorBellPropertyInfo        ,
#endif
    constructSettingsGtkErrorBell           ,
    getSettingsGtkErrorBell                 ,
    setSettingsGtkErrorBell                 ,
#if ENABLE_OVERLOADING
    settingsGtkErrorBell                    ,
#endif


-- ** gtkFallbackIconTheme #attr:gtkFallbackIconTheme#
{- | Name of a icon theme to fall back to.
-}
#if ENABLE_OVERLOADING
    SettingsGtkFallbackIconThemePropertyInfo,
#endif
    clearSettingsGtkFallbackIconTheme       ,
    constructSettingsGtkFallbackIconTheme   ,
    getSettingsGtkFallbackIconTheme         ,
    setSettingsGtkFallbackIconTheme         ,
#if ENABLE_OVERLOADING
    settingsGtkFallbackIconTheme            ,
#endif


-- ** gtkFileChooserBackend #attr:gtkFileChooserBackend#
{- | Name of the GtkFileChooser backend to use by default.
-}
#if ENABLE_OVERLOADING
    SettingsGtkFileChooserBackendPropertyInfo,
#endif
    clearSettingsGtkFileChooserBackend      ,
    constructSettingsGtkFileChooserBackend  ,
    getSettingsGtkFileChooserBackend        ,
    setSettingsGtkFileChooserBackend        ,
#if ENABLE_OVERLOADING
    settingsGtkFileChooserBackend           ,
#endif


-- ** gtkFontName #attr:gtkFontName#
{- | The default font to use. GTK+ uses the family name and size from this string.
-}
#if ENABLE_OVERLOADING
    SettingsGtkFontNamePropertyInfo         ,
#endif
    clearSettingsGtkFontName                ,
    constructSettingsGtkFontName            ,
    getSettingsGtkFontName                  ,
    setSettingsGtkFontName                  ,
#if ENABLE_OVERLOADING
    settingsGtkFontName                     ,
#endif


-- ** gtkFontconfigTimestamp #attr:gtkFontconfigTimestamp#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkFontconfigTimestampPropertyInfo,
#endif
    constructSettingsGtkFontconfigTimestamp ,
    getSettingsGtkFontconfigTimestamp       ,
    setSettingsGtkFontconfigTimestamp       ,
#if ENABLE_OVERLOADING
    settingsGtkFontconfigTimestamp          ,
#endif


-- ** gtkIconSizes #attr:gtkIconSizes#
{- | A list of icon sizes. The list is separated by colons, and
item has the form:

@size-name@ = @width@ , @height@

E.g. \"gtk-menu=16,16:gtk-button=20,20:gtk-dialog=48,48\".
GTK+ itself use the following named icon sizes: gtk-menu,
gtk-button, gtk-small-toolbar, gtk-large-toolbar, gtk-dnd,
gtk-dialog. Applications can register their own named icon
sizes with 'GI.Gtk.Functions.iconSizeRegister'.
-}
#if ENABLE_OVERLOADING
    SettingsGtkIconSizesPropertyInfo        ,
#endif
    clearSettingsGtkIconSizes               ,
    constructSettingsGtkIconSizes           ,
    getSettingsGtkIconSizes                 ,
    setSettingsGtkIconSizes                 ,
#if ENABLE_OVERLOADING
    settingsGtkIconSizes                    ,
#endif


-- ** gtkIconThemeName #attr:gtkIconThemeName#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkIconThemeNamePropertyInfo    ,
#endif
    clearSettingsGtkIconThemeName           ,
    constructSettingsGtkIconThemeName       ,
    getSettingsGtkIconThemeName             ,
    setSettingsGtkIconThemeName             ,
#if ENABLE_OVERLOADING
    settingsGtkIconThemeName                ,
#endif


-- ** gtkImModule #attr:gtkImModule#
{- | Which IM (input method) module should be used by default. This is the
input method that will be used if the user has not explicitly chosen
another input method from the IM context menu.
This also can be a colon-separated list of input methods, which GTK+
will try in turn until it finds one available on the system.

See 'GI.Gtk.Objects.IMContext.IMContext'.
-}
#if ENABLE_OVERLOADING
    SettingsGtkImModulePropertyInfo         ,
#endif
    clearSettingsGtkImModule                ,
    constructSettingsGtkImModule            ,
    getSettingsGtkImModule                  ,
    setSettingsGtkImModule                  ,
#if ENABLE_OVERLOADING
    settingsGtkImModule                     ,
#endif


-- ** gtkImPreeditStyle #attr:gtkImPreeditStyle#
{- | How to draw the input method preedit string.
-}
#if ENABLE_OVERLOADING
    SettingsGtkImPreeditStylePropertyInfo   ,
#endif
    constructSettingsGtkImPreeditStyle      ,
    getSettingsGtkImPreeditStyle            ,
    setSettingsGtkImPreeditStyle            ,
#if ENABLE_OVERLOADING
    settingsGtkImPreeditStyle               ,
#endif


-- ** gtkImStatusStyle #attr:gtkImStatusStyle#
{- | How to draw the input method statusbar.
-}
#if ENABLE_OVERLOADING
    SettingsGtkImStatusStylePropertyInfo    ,
#endif
    constructSettingsGtkImStatusStyle       ,
    getSettingsGtkImStatusStyle             ,
    setSettingsGtkImStatusStyle             ,
#if ENABLE_OVERLOADING
    settingsGtkImStatusStyle                ,
#endif


-- ** gtkKeyThemeName #attr:gtkKeyThemeName#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkKeyThemeNamePropertyInfo     ,
#endif
    clearSettingsGtkKeyThemeName            ,
    constructSettingsGtkKeyThemeName        ,
    getSettingsGtkKeyThemeName              ,
    setSettingsGtkKeyThemeName              ,
#if ENABLE_OVERLOADING
    settingsGtkKeyThemeName                 ,
#endif


-- ** gtkKeynavCursorOnly #attr:gtkKeynavCursorOnly#
{- | When 'True', keyboard navigation should be able to reach all widgets
by using the cursor keys only. Tab, Shift etc. keys can\'t be expected
to be present on the used input device.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkKeynavCursorOnlyPropertyInfo ,
#endif
    constructSettingsGtkKeynavCursorOnly    ,
    getSettingsGtkKeynavCursorOnly          ,
    setSettingsGtkKeynavCursorOnly          ,
#if ENABLE_OVERLOADING
    settingsGtkKeynavCursorOnly             ,
#endif


-- ** gtkKeynavUseCaret #attr:gtkKeynavUseCaret#
{- | Whether GTK+ should make sure that text can be navigated with
a caret, even if it is not editable. This is useful when using
a screen reader.

/Since: 3.20/
-}
#if ENABLE_OVERLOADING
    SettingsGtkKeynavUseCaretPropertyInfo   ,
#endif
    constructSettingsGtkKeynavUseCaret      ,
    getSettingsGtkKeynavUseCaret            ,
    setSettingsGtkKeynavUseCaret            ,
#if ENABLE_OVERLOADING
    settingsGtkKeynavUseCaret               ,
#endif


-- ** gtkKeynavWrapAround #attr:gtkKeynavWrapAround#
{- | When 'True', some widgets will wrap around when doing keyboard
navigation, such as menus, menubars and notebooks.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkKeynavWrapAroundPropertyInfo ,
#endif
    constructSettingsGtkKeynavWrapAround    ,
    getSettingsGtkKeynavWrapAround          ,
    setSettingsGtkKeynavWrapAround          ,
#if ENABLE_OVERLOADING
    settingsGtkKeynavWrapAround             ,
#endif


-- ** gtkLabelSelectOnFocus #attr:gtkLabelSelectOnFocus#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkLabelSelectOnFocusPropertyInfo,
#endif
    constructSettingsGtkLabelSelectOnFocus  ,
    getSettingsGtkLabelSelectOnFocus        ,
    setSettingsGtkLabelSelectOnFocus        ,
#if ENABLE_OVERLOADING
    settingsGtkLabelSelectOnFocus           ,
#endif


-- ** gtkLongPressTime #attr:gtkLongPressTime#
{- | The time for a button or touch press to be considered a \"long press\".

/Since: 3.14/
-}
#if ENABLE_OVERLOADING
    SettingsGtkLongPressTimePropertyInfo    ,
#endif
    constructSettingsGtkLongPressTime       ,
    getSettingsGtkLongPressTime             ,
    setSettingsGtkLongPressTime             ,
#if ENABLE_OVERLOADING
    settingsGtkLongPressTime                ,
#endif


-- ** gtkMenuBarAccel #attr:gtkMenuBarAccel#
{- | Keybinding to activate the menu bar.
-}
#if ENABLE_OVERLOADING
    SettingsGtkMenuBarAccelPropertyInfo     ,
#endif
    clearSettingsGtkMenuBarAccel            ,
    constructSettingsGtkMenuBarAccel        ,
    getSettingsGtkMenuBarAccel              ,
    setSettingsGtkMenuBarAccel              ,
#if ENABLE_OVERLOADING
    settingsGtkMenuBarAccel                 ,
#endif


-- ** gtkMenuBarPopupDelay #attr:gtkMenuBarPopupDelay#
{- | Delay before the submenus of a menu bar appear.
-}
#if ENABLE_OVERLOADING
    SettingsGtkMenuBarPopupDelayPropertyInfo,
#endif
    constructSettingsGtkMenuBarPopupDelay   ,
    getSettingsGtkMenuBarPopupDelay         ,
    setSettingsGtkMenuBarPopupDelay         ,
#if ENABLE_OVERLOADING
    settingsGtkMenuBarPopupDelay            ,
#endif


-- ** gtkMenuImages #attr:gtkMenuImages#
{- | Whether images should be shown in menu items
-}
#if ENABLE_OVERLOADING
    SettingsGtkMenuImagesPropertyInfo       ,
#endif
    constructSettingsGtkMenuImages          ,
    getSettingsGtkMenuImages                ,
    setSettingsGtkMenuImages                ,
#if ENABLE_OVERLOADING
    settingsGtkMenuImages                   ,
#endif


-- ** gtkMenuPopdownDelay #attr:gtkMenuPopdownDelay#
{- | The time before hiding a submenu when the pointer is moving towards the submenu.
-}
#if ENABLE_OVERLOADING
    SettingsGtkMenuPopdownDelayPropertyInfo ,
#endif
    constructSettingsGtkMenuPopdownDelay    ,
    getSettingsGtkMenuPopdownDelay          ,
    setSettingsGtkMenuPopdownDelay          ,
#if ENABLE_OVERLOADING
    settingsGtkMenuPopdownDelay             ,
#endif


-- ** gtkMenuPopupDelay #attr:gtkMenuPopupDelay#
{- | Minimum time the pointer must stay over a menu item before the submenu appear.
-}
#if ENABLE_OVERLOADING
    SettingsGtkMenuPopupDelayPropertyInfo   ,
#endif
    constructSettingsGtkMenuPopupDelay      ,
    getSettingsGtkMenuPopupDelay            ,
    setSettingsGtkMenuPopupDelay            ,
#if ENABLE_OVERLOADING
    settingsGtkMenuPopupDelay               ,
#endif


-- ** gtkModules #attr:gtkModules#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkModulesPropertyInfo          ,
#endif
    clearSettingsGtkModules                 ,
    constructSettingsGtkModules             ,
    getSettingsGtkModules                   ,
    setSettingsGtkModules                   ,
#if ENABLE_OVERLOADING
    settingsGtkModules                      ,
#endif


-- ** gtkPrimaryButtonWarpsSlider #attr:gtkPrimaryButtonWarpsSlider#
{- | If the value of this setting is 'True', clicking the primary button in a
'GI.Gtk.Objects.Range.Range' trough will move the slider, and hence set the range’s value, to
the point that you clicked. If it is 'False', a primary click will cause the
slider\/value to move by the range’s page-size towards the point clicked.

Whichever action you choose for the primary button, the other action will
be available by holding Shift and primary-clicking, or (since GTK+ 3.22.25)
clicking the middle mouse button.

/Since: 3.6/
-}
#if ENABLE_OVERLOADING
    SettingsGtkPrimaryButtonWarpsSliderPropertyInfo,
#endif
    constructSettingsGtkPrimaryButtonWarpsSlider,
    getSettingsGtkPrimaryButtonWarpsSlider  ,
    setSettingsGtkPrimaryButtonWarpsSlider  ,
#if ENABLE_OVERLOADING
    settingsGtkPrimaryButtonWarpsSlider     ,
#endif


-- ** gtkPrintBackends #attr:gtkPrintBackends#
{- | A comma-separated list of print backends to use in the print
dialog. Available print backends depend on the GTK+ installation,
and may include \"file\", \"cups\", \"lpr\" or \"papi\".

/Since: 2.10/
-}
#if ENABLE_OVERLOADING
    SettingsGtkPrintBackendsPropertyInfo    ,
#endif
    clearSettingsGtkPrintBackends           ,
    constructSettingsGtkPrintBackends       ,
    getSettingsGtkPrintBackends             ,
    setSettingsGtkPrintBackends             ,
#if ENABLE_OVERLOADING
    settingsGtkPrintBackends                ,
#endif


-- ** gtkPrintPreviewCommand #attr:gtkPrintPreviewCommand#
{- | A command to run for displaying the print preview. The command
should contain a @%f@ placeholder, which will get replaced by
the path to the pdf file. The command may also contain a @%s@
placeholder, which will get replaced by the path to a file
containing the print settings in the format produced by
'GI.Gtk.Objects.PrintSettings.printSettingsToFile'.

The preview application is responsible for removing the pdf file
and the print settings file when it is done.

/Since: 2.10/
-}
#if ENABLE_OVERLOADING
    SettingsGtkPrintPreviewCommandPropertyInfo,
#endif
    clearSettingsGtkPrintPreviewCommand     ,
    constructSettingsGtkPrintPreviewCommand ,
    getSettingsGtkPrintPreviewCommand       ,
    setSettingsGtkPrintPreviewCommand       ,
#if ENABLE_OVERLOADING
    settingsGtkPrintPreviewCommand          ,
#endif


-- ** gtkRecentFilesEnabled #attr:gtkRecentFilesEnabled#
{- | Whether GTK+ should keep track of items inside the recently used
resources list. If set to 'False', the list will always be empty.

/Since: 3.8/
-}
#if ENABLE_OVERLOADING
    SettingsGtkRecentFilesEnabledPropertyInfo,
#endif
    constructSettingsGtkRecentFilesEnabled  ,
    getSettingsGtkRecentFilesEnabled        ,
    setSettingsGtkRecentFilesEnabled        ,
#if ENABLE_OVERLOADING
    settingsGtkRecentFilesEnabled           ,
#endif


-- ** gtkRecentFilesLimit #attr:gtkRecentFilesLimit#
{- | The number of recently used files that should be displayed by default by
'GI.Gtk.Interfaces.RecentChooser.RecentChooser' implementations and by the 'GI.Gtk.Interfaces.FileChooser.FileChooser'. A value of
-1 means every recently used file stored.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkRecentFilesLimitPropertyInfo ,
#endif
    constructSettingsGtkRecentFilesLimit    ,
    getSettingsGtkRecentFilesLimit          ,
    setSettingsGtkRecentFilesLimit          ,
#if ENABLE_OVERLOADING
    settingsGtkRecentFilesLimit             ,
#endif


-- ** gtkRecentFilesMaxAge #attr:gtkRecentFilesMaxAge#
{- | The maximum age, in days, of the items inside the recently used
resources list. Items older than this setting will be excised
from the list. If set to 0, the list will always be empty; if
set to -1, no item will be removed.

/Since: 2.14/
-}
#if ENABLE_OVERLOADING
    SettingsGtkRecentFilesMaxAgePropertyInfo,
#endif
    constructSettingsGtkRecentFilesMaxAge   ,
    getSettingsGtkRecentFilesMaxAge         ,
    setSettingsGtkRecentFilesMaxAge         ,
#if ENABLE_OVERLOADING
    settingsGtkRecentFilesMaxAge            ,
#endif


-- ** gtkScrolledWindowPlacement #attr:gtkScrolledWindowPlacement#
{- | Where the contents of scrolled windows are located with respect to the
scrollbars, if not overridden by the scrolled window\'s own placement.

/Since: 2.10/
-}
#if ENABLE_OVERLOADING
    SettingsGtkScrolledWindowPlacementPropertyInfo,
#endif
    constructSettingsGtkScrolledWindowPlacement,
    getSettingsGtkScrolledWindowPlacement   ,
    setSettingsGtkScrolledWindowPlacement   ,
#if ENABLE_OVERLOADING
    settingsGtkScrolledWindowPlacement      ,
#endif


-- ** gtkShellShowsAppMenu #attr:gtkShellShowsAppMenu#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkShellShowsAppMenuPropertyInfo,
#endif
    constructSettingsGtkShellShowsAppMenu   ,
    getSettingsGtkShellShowsAppMenu         ,
    setSettingsGtkShellShowsAppMenu         ,
#if ENABLE_OVERLOADING
    settingsGtkShellShowsAppMenu            ,
#endif


-- ** gtkShellShowsDesktop #attr:gtkShellShowsDesktop#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkShellShowsDesktopPropertyInfo,
#endif
    constructSettingsGtkShellShowsDesktop   ,
    getSettingsGtkShellShowsDesktop         ,
    setSettingsGtkShellShowsDesktop         ,
#if ENABLE_OVERLOADING
    settingsGtkShellShowsDesktop            ,
#endif


-- ** gtkShellShowsMenubar #attr:gtkShellShowsMenubar#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkShellShowsMenubarPropertyInfo,
#endif
    constructSettingsGtkShellShowsMenubar   ,
    getSettingsGtkShellShowsMenubar         ,
    setSettingsGtkShellShowsMenubar         ,
#if ENABLE_OVERLOADING
    settingsGtkShellShowsMenubar            ,
#endif


-- ** gtkShowInputMethodMenu #attr:gtkShowInputMethodMenu#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkShowInputMethodMenuPropertyInfo,
#endif
    constructSettingsGtkShowInputMethodMenu ,
    getSettingsGtkShowInputMethodMenu       ,
    setSettingsGtkShowInputMethodMenu       ,
#if ENABLE_OVERLOADING
    settingsGtkShowInputMethodMenu          ,
#endif


-- ** gtkShowUnicodeMenu #attr:gtkShowUnicodeMenu#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkShowUnicodeMenuPropertyInfo  ,
#endif
    constructSettingsGtkShowUnicodeMenu     ,
    getSettingsGtkShowUnicodeMenu           ,
    setSettingsGtkShowUnicodeMenu           ,
#if ENABLE_OVERLOADING
    settingsGtkShowUnicodeMenu              ,
#endif


-- ** gtkSoundThemeName #attr:gtkSoundThemeName#
{- | The XDG sound theme to use for event sounds.

See the <http://www.freedesktop.org/wiki/Specifications/sound-theme-spec Sound Theme Specifications>
for more information on event sounds and sound themes.

GTK+ itself does not support event sounds, you have to use a loadable
module like the one that comes with libcanberra.

/Since: 2.14/
-}
#if ENABLE_OVERLOADING
    SettingsGtkSoundThemeNamePropertyInfo   ,
#endif
    clearSettingsGtkSoundThemeName          ,
    constructSettingsGtkSoundThemeName      ,
    getSettingsGtkSoundThemeName            ,
    setSettingsGtkSoundThemeName            ,
#if ENABLE_OVERLOADING
    settingsGtkSoundThemeName               ,
#endif


-- ** gtkSplitCursor #attr:gtkSplitCursor#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkSplitCursorPropertyInfo      ,
#endif
    constructSettingsGtkSplitCursor         ,
    getSettingsGtkSplitCursor               ,
    setSettingsGtkSplitCursor               ,
#if ENABLE_OVERLOADING
    settingsGtkSplitCursor                  ,
#endif


-- ** gtkThemeName #attr:gtkThemeName#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkThemeNamePropertyInfo        ,
#endif
    clearSettingsGtkThemeName               ,
    constructSettingsGtkThemeName           ,
    getSettingsGtkThemeName                 ,
    setSettingsGtkThemeName                 ,
#if ENABLE_OVERLOADING
    settingsGtkThemeName                    ,
#endif


-- ** gtkTimeoutExpand #attr:gtkTimeoutExpand#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkTimeoutExpandPropertyInfo    ,
#endif
    constructSettingsGtkTimeoutExpand       ,
    getSettingsGtkTimeoutExpand             ,
    setSettingsGtkTimeoutExpand             ,
#if ENABLE_OVERLOADING
    settingsGtkTimeoutExpand                ,
#endif


-- ** gtkTimeoutInitial #attr:gtkTimeoutInitial#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkTimeoutInitialPropertyInfo   ,
#endif
    constructSettingsGtkTimeoutInitial      ,
    getSettingsGtkTimeoutInitial            ,
    setSettingsGtkTimeoutInitial            ,
#if ENABLE_OVERLOADING
    settingsGtkTimeoutInitial               ,
#endif


-- ** gtkTimeoutRepeat #attr:gtkTimeoutRepeat#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkTimeoutRepeatPropertyInfo    ,
#endif
    constructSettingsGtkTimeoutRepeat       ,
    getSettingsGtkTimeoutRepeat             ,
    setSettingsGtkTimeoutRepeat             ,
#if ENABLE_OVERLOADING
    settingsGtkTimeoutRepeat                ,
#endif


-- ** gtkTitlebarDoubleClick #attr:gtkTitlebarDoubleClick#
{- | This setting determines the action to take when a double-click
occurs on the titlebar of client-side decorated windows.

Recognized actions are minimize, toggle-maximize, menu, lower
or none.

/Since: 3.14/
-}
#if ENABLE_OVERLOADING
    SettingsGtkTitlebarDoubleClickPropertyInfo,
#endif
    clearSettingsGtkTitlebarDoubleClick     ,
    constructSettingsGtkTitlebarDoubleClick ,
    getSettingsGtkTitlebarDoubleClick       ,
    setSettingsGtkTitlebarDoubleClick       ,
#if ENABLE_OVERLOADING
    settingsGtkTitlebarDoubleClick          ,
#endif


-- ** gtkTitlebarMiddleClick #attr:gtkTitlebarMiddleClick#
{- | This setting determines the action to take when a middle-click
occurs on the titlebar of client-side decorated windows.

Recognized actions are minimize, toggle-maximize, menu, lower
or none.

/Since: 3.14/
-}
#if ENABLE_OVERLOADING
    SettingsGtkTitlebarMiddleClickPropertyInfo,
#endif
    clearSettingsGtkTitlebarMiddleClick     ,
    constructSettingsGtkTitlebarMiddleClick ,
    getSettingsGtkTitlebarMiddleClick       ,
    setSettingsGtkTitlebarMiddleClick       ,
#if ENABLE_OVERLOADING
    settingsGtkTitlebarMiddleClick          ,
#endif


-- ** gtkTitlebarRightClick #attr:gtkTitlebarRightClick#
{- | This setting determines the action to take when a right-click
occurs on the titlebar of client-side decorated windows.

Recognized actions are minimize, toggle-maximize, menu, lower
or none.

/Since: 3.14/
-}
#if ENABLE_OVERLOADING
    SettingsGtkTitlebarRightClickPropertyInfo,
#endif
    clearSettingsGtkTitlebarRightClick      ,
    constructSettingsGtkTitlebarRightClick  ,
    getSettingsGtkTitlebarRightClick        ,
    setSettingsGtkTitlebarRightClick        ,
#if ENABLE_OVERLOADING
    settingsGtkTitlebarRightClick           ,
#endif


-- ** gtkToolbarIconSize #attr:gtkToolbarIconSize#
{- | The size of icons in default toolbars.
-}
#if ENABLE_OVERLOADING
    SettingsGtkToolbarIconSizePropertyInfo  ,
#endif
    constructSettingsGtkToolbarIconSize     ,
    getSettingsGtkToolbarIconSize           ,
    setSettingsGtkToolbarIconSize           ,
#if ENABLE_OVERLOADING
    settingsGtkToolbarIconSize              ,
#endif


-- ** gtkToolbarStyle #attr:gtkToolbarStyle#
{- | The size of icons in default toolbars.
-}
#if ENABLE_OVERLOADING
    SettingsGtkToolbarStylePropertyInfo     ,
#endif
    constructSettingsGtkToolbarStyle        ,
    getSettingsGtkToolbarStyle              ,
    setSettingsGtkToolbarStyle              ,
#if ENABLE_OVERLOADING
    settingsGtkToolbarStyle                 ,
#endif


-- ** gtkTooltipBrowseModeTimeout #attr:gtkTooltipBrowseModeTimeout#
{- | Amount of time, in milliseconds, after which the browse mode
will be disabled.

See 'GI.Gtk.Objects.Settings.Settings':@/gtk-tooltip-browse-timeout/@ for more information
about browse mode.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkTooltipBrowseModeTimeoutPropertyInfo,
#endif
    constructSettingsGtkTooltipBrowseModeTimeout,
    getSettingsGtkTooltipBrowseModeTimeout  ,
    setSettingsGtkTooltipBrowseModeTimeout  ,
#if ENABLE_OVERLOADING
    settingsGtkTooltipBrowseModeTimeout     ,
#endif


-- ** gtkTooltipBrowseTimeout #attr:gtkTooltipBrowseTimeout#
{- | Controls the time after which tooltips will appear when
browse mode is enabled, in milliseconds.

Browse mode is enabled when the mouse pointer moves off an object
where a tooltip was currently being displayed. If the mouse pointer
hits another object before the browse mode timeout expires (see
'GI.Gtk.Objects.Settings.Settings':@/gtk-tooltip-browse-mode-timeout/@), it will take the
amount of milliseconds specified by this setting to popup the tooltip
for the new object.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkTooltipBrowseTimeoutPropertyInfo,
#endif
    constructSettingsGtkTooltipBrowseTimeout,
    getSettingsGtkTooltipBrowseTimeout      ,
    setSettingsGtkTooltipBrowseTimeout      ,
#if ENABLE_OVERLOADING
    settingsGtkTooltipBrowseTimeout         ,
#endif


-- ** gtkTooltipTimeout #attr:gtkTooltipTimeout#
{- | Time, in milliseconds, after which a tooltip could appear if the
cursor is hovering on top of a widget.

/Since: 2.12/
-}
#if ENABLE_OVERLOADING
    SettingsGtkTooltipTimeoutPropertyInfo   ,
#endif
    constructSettingsGtkTooltipTimeout      ,
    getSettingsGtkTooltipTimeout            ,
    setSettingsGtkTooltipTimeout            ,
#if ENABLE_OVERLOADING
    settingsGtkTooltipTimeout               ,
#endif


-- ** gtkTouchscreenMode #attr:gtkTouchscreenMode#
{- | When 'True', there are no motion notify events delivered on this screen,
and widgets can\'t use the pointer hovering them for any essential
functionality.

/Since: 2.10/
-}
#if ENABLE_OVERLOADING
    SettingsGtkTouchscreenModePropertyInfo  ,
#endif
    constructSettingsGtkTouchscreenMode     ,
    getSettingsGtkTouchscreenMode           ,
    setSettingsGtkTouchscreenMode           ,
#if ENABLE_OVERLOADING
    settingsGtkTouchscreenMode              ,
#endif


-- ** gtkVisibleFocus #attr:gtkVisibleFocus#
{- | Whether \'focus rectangles\' should be always visible, never visible,
or hidden until the user starts to use the keyboard.

/Since: 3.2/
-}
#if ENABLE_OVERLOADING
    SettingsGtkVisibleFocusPropertyInfo     ,
#endif
    constructSettingsGtkVisibleFocus        ,
    getSettingsGtkVisibleFocus              ,
    setSettingsGtkVisibleFocus              ,
#if ENABLE_OVERLOADING
    settingsGtkVisibleFocus                 ,
#endif


-- ** gtkXftAntialias #attr:gtkXftAntialias#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkXftAntialiasPropertyInfo     ,
#endif
    constructSettingsGtkXftAntialias        ,
    getSettingsGtkXftAntialias              ,
    setSettingsGtkXftAntialias              ,
#if ENABLE_OVERLOADING
    settingsGtkXftAntialias                 ,
#endif


-- ** gtkXftDpi #attr:gtkXftDpi#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkXftDpiPropertyInfo           ,
#endif
    constructSettingsGtkXftDpi              ,
    getSettingsGtkXftDpi                    ,
    setSettingsGtkXftDpi                    ,
#if ENABLE_OVERLOADING
    settingsGtkXftDpi                       ,
#endif


-- ** gtkXftHinting #attr:gtkXftHinting#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkXftHintingPropertyInfo       ,
#endif
    constructSettingsGtkXftHinting          ,
    getSettingsGtkXftHinting                ,
    setSettingsGtkXftHinting                ,
#if ENABLE_OVERLOADING
    settingsGtkXftHinting                   ,
#endif


-- ** gtkXftHintstyle #attr:gtkXftHintstyle#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkXftHintstylePropertyInfo     ,
#endif
    clearSettingsGtkXftHintstyle            ,
    constructSettingsGtkXftHintstyle        ,
    getSettingsGtkXftHintstyle              ,
    setSettingsGtkXftHintstyle              ,
#if ENABLE_OVERLOADING
    settingsGtkXftHintstyle                 ,
#endif


-- ** gtkXftRgba #attr:gtkXftRgba#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    SettingsGtkXftRgbaPropertyInfo          ,
#endif
    clearSettingsGtkXftRgba                 ,
    constructSettingsGtkXftRgba             ,
    getSettingsGtkXftRgba                   ,
    setSettingsGtkXftRgba                   ,
#if ENABLE_OVERLOADING
    settingsGtkXftRgba                      ,
#endif




    ) where

import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P

import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP

import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gdk.Objects.Screen as Gdk.Screen
import qualified GI.Gtk.Callbacks as Gtk.Callbacks
import {-# SOURCE #-} qualified GI.Gtk.Enums as Gtk.Enums
import {-# SOURCE #-} qualified GI.Gtk.Interfaces.StyleProvider as Gtk.StyleProvider
import {-# SOURCE #-} qualified GI.Gtk.Structs.SettingsValue as Gtk.SettingsValue

-- | Memory-managed wrapper type.
newtype Settings = Settings (ManagedPtr Settings)
foreign import ccall "gtk_settings_get_type"
    c_gtk_settings_get_type :: IO GType

instance GObject Settings where
    gobjectType _ = c_gtk_settings_get_type


-- | Type class for types which can be safely cast to `Settings`, for instance with `toSettings`.
class GObject o => IsSettings o
#if MIN_VERSION_base(4,9,0)
instance {-# OVERLAPPABLE #-} (GObject a, O.UnknownAncestorError Settings a) =>
    IsSettings a
#endif
instance IsSettings Settings
instance GObject.Object.IsObject Settings
instance Gtk.StyleProvider.IsStyleProvider Settings

-- | Cast to `Settings`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toSettings :: (MonadIO m, IsSettings o) => o -> m Settings
toSettings = liftIO . unsafeCastTo Settings

-- | A convenience alias for `Nothing` :: `Maybe` `Settings`.
noSettings :: Maybe Settings
noSettings = Nothing

#if ENABLE_OVERLOADING
type family ResolveSettingsMethod (t :: Symbol) (o :: *) :: * where
    ResolveSettingsMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveSettingsMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveSettingsMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveSettingsMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveSettingsMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveSettingsMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveSettingsMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveSettingsMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveSettingsMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveSettingsMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveSettingsMethod "resetProperty" o = SettingsResetPropertyMethodInfo
    ResolveSettingsMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveSettingsMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveSettingsMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveSettingsMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveSettingsMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveSettingsMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveSettingsMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveSettingsMethod "getIconFactory" o = Gtk.StyleProvider.StyleProviderGetIconFactoryMethodInfo
    ResolveSettingsMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveSettingsMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveSettingsMethod "getStyle" o = Gtk.StyleProvider.StyleProviderGetStyleMethodInfo
    ResolveSettingsMethod "getStyleProperty" o = Gtk.StyleProvider.StyleProviderGetStylePropertyMethodInfo
    ResolveSettingsMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveSettingsMethod "setDoubleProperty" o = SettingsSetDoublePropertyMethodInfo
    ResolveSettingsMethod "setLongProperty" o = SettingsSetLongPropertyMethodInfo
    ResolveSettingsMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveSettingsMethod "setPropertyValue" o = SettingsSetPropertyValueMethodInfo
    ResolveSettingsMethod "setStringProperty" o = SettingsSetStringPropertyMethodInfo
    ResolveSettingsMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveSettingsMethod t Settings, O.MethodInfo info Settings p) => O.IsLabelProxy t (Settings -> p) where
    fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)

#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveSettingsMethod t Settings, O.MethodInfo info Settings p) => O.IsLabel t (Settings -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif

#endif

-- XXX Generation of property "color-hash" of object "Settings" failed: Not implemented: "Property SettingsColorHash has unsupported transfer type TransferContainer"
#if ENABLE_OVERLOADING
-- XXX Placeholder
data SettingsColorHashPropertyInfo
instance AttrInfo SettingsColorHashPropertyInfo where
    type AttrAllowedOps SettingsColorHashPropertyInfo = '[]
    type AttrSetTypeConstraint SettingsColorHashPropertyInfo = (~) ()
    type AttrBaseTypeConstraint SettingsColorHashPropertyInfo = (~) ()
    type AttrGetType SettingsColorHashPropertyInfo = ()
    type AttrLabel SettingsColorHashPropertyInfo = ""
    type AttrOrigin SettingsColorHashPropertyInfo = Settings
    attrGet = undefined
    attrSet = undefined
    attrConstruct = undefined
    attrClear = undefined
#endif

-- VVV Prop "gtk-alternative-button-order"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-alternative-button-order@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkAlternativeButtonOrder
@
-}
getSettingsGtkAlternativeButtonOrder :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkAlternativeButtonOrder obj = liftIO $ getObjectPropertyBool obj "gtk-alternative-button-order"

{- |
Set the value of the “@gtk-alternative-button-order@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkAlternativeButtonOrder 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkAlternativeButtonOrder :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkAlternativeButtonOrder obj val = liftIO $ setObjectPropertyBool obj "gtk-alternative-button-order" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-alternative-button-order@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkAlternativeButtonOrder :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkAlternativeButtonOrder val = constructObjectPropertyBool "gtk-alternative-button-order" val

#if ENABLE_OVERLOADING
data SettingsGtkAlternativeButtonOrderPropertyInfo
instance AttrInfo SettingsGtkAlternativeButtonOrderPropertyInfo where
    type AttrAllowedOps SettingsGtkAlternativeButtonOrderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkAlternativeButtonOrderPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkAlternativeButtonOrderPropertyInfo = IsSettings
    type AttrGetType SettingsGtkAlternativeButtonOrderPropertyInfo = Bool
    type AttrLabel SettingsGtkAlternativeButtonOrderPropertyInfo = "gtk-alternative-button-order"
    type AttrOrigin SettingsGtkAlternativeButtonOrderPropertyInfo = Settings
    attrGet _ = getSettingsGtkAlternativeButtonOrder
    attrSet _ = setSettingsGtkAlternativeButtonOrder
    attrConstruct _ = constructSettingsGtkAlternativeButtonOrder
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-alternative-sort-arrows"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-alternative-sort-arrows@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkAlternativeSortArrows
@
-}
getSettingsGtkAlternativeSortArrows :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkAlternativeSortArrows obj = liftIO $ getObjectPropertyBool obj "gtk-alternative-sort-arrows"

{- |
Set the value of the “@gtk-alternative-sort-arrows@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkAlternativeSortArrows 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkAlternativeSortArrows :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkAlternativeSortArrows obj val = liftIO $ setObjectPropertyBool obj "gtk-alternative-sort-arrows" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-alternative-sort-arrows@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkAlternativeSortArrows :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkAlternativeSortArrows val = constructObjectPropertyBool "gtk-alternative-sort-arrows" val

#if ENABLE_OVERLOADING
data SettingsGtkAlternativeSortArrowsPropertyInfo
instance AttrInfo SettingsGtkAlternativeSortArrowsPropertyInfo where
    type AttrAllowedOps SettingsGtkAlternativeSortArrowsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkAlternativeSortArrowsPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkAlternativeSortArrowsPropertyInfo = IsSettings
    type AttrGetType SettingsGtkAlternativeSortArrowsPropertyInfo = Bool
    type AttrLabel SettingsGtkAlternativeSortArrowsPropertyInfo = "gtk-alternative-sort-arrows"
    type AttrOrigin SettingsGtkAlternativeSortArrowsPropertyInfo = Settings
    attrGet _ = getSettingsGtkAlternativeSortArrows
    attrSet _ = setSettingsGtkAlternativeSortArrows
    attrConstruct _ = constructSettingsGtkAlternativeSortArrows
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-application-prefer-dark-theme"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-application-prefer-dark-theme@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkApplicationPreferDarkTheme
@
-}
getSettingsGtkApplicationPreferDarkTheme :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkApplicationPreferDarkTheme obj = liftIO $ getObjectPropertyBool obj "gtk-application-prefer-dark-theme"

{- |
Set the value of the “@gtk-application-prefer-dark-theme@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkApplicationPreferDarkTheme 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkApplicationPreferDarkTheme :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkApplicationPreferDarkTheme obj val = liftIO $ setObjectPropertyBool obj "gtk-application-prefer-dark-theme" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-application-prefer-dark-theme@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkApplicationPreferDarkTheme :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkApplicationPreferDarkTheme val = constructObjectPropertyBool "gtk-application-prefer-dark-theme" val

#if ENABLE_OVERLOADING
data SettingsGtkApplicationPreferDarkThemePropertyInfo
instance AttrInfo SettingsGtkApplicationPreferDarkThemePropertyInfo where
    type AttrAllowedOps SettingsGtkApplicationPreferDarkThemePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkApplicationPreferDarkThemePropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkApplicationPreferDarkThemePropertyInfo = IsSettings
    type AttrGetType SettingsGtkApplicationPreferDarkThemePropertyInfo = Bool
    type AttrLabel SettingsGtkApplicationPreferDarkThemePropertyInfo = "gtk-application-prefer-dark-theme"
    type AttrOrigin SettingsGtkApplicationPreferDarkThemePropertyInfo = Settings
    attrGet _ = getSettingsGtkApplicationPreferDarkTheme
    attrSet _ = setSettingsGtkApplicationPreferDarkTheme
    attrConstruct _ = constructSettingsGtkApplicationPreferDarkTheme
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-auto-mnemonics"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-auto-mnemonics@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkAutoMnemonics
@
-}
getSettingsGtkAutoMnemonics :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkAutoMnemonics obj = liftIO $ getObjectPropertyBool obj "gtk-auto-mnemonics"

{- |
Set the value of the “@gtk-auto-mnemonics@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkAutoMnemonics 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkAutoMnemonics :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkAutoMnemonics obj val = liftIO $ setObjectPropertyBool obj "gtk-auto-mnemonics" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-auto-mnemonics@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkAutoMnemonics :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkAutoMnemonics val = constructObjectPropertyBool "gtk-auto-mnemonics" val

#if ENABLE_OVERLOADING
data SettingsGtkAutoMnemonicsPropertyInfo
instance AttrInfo SettingsGtkAutoMnemonicsPropertyInfo where
    type AttrAllowedOps SettingsGtkAutoMnemonicsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkAutoMnemonicsPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkAutoMnemonicsPropertyInfo = IsSettings
    type AttrGetType SettingsGtkAutoMnemonicsPropertyInfo = Bool
    type AttrLabel SettingsGtkAutoMnemonicsPropertyInfo = "gtk-auto-mnemonics"
    type AttrOrigin SettingsGtkAutoMnemonicsPropertyInfo = Settings
    attrGet _ = getSettingsGtkAutoMnemonics
    attrSet _ = setSettingsGtkAutoMnemonics
    attrConstruct _ = constructSettingsGtkAutoMnemonics
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-button-images"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-button-images@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkButtonImages
@
-}
getSettingsGtkButtonImages :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkButtonImages obj = liftIO $ getObjectPropertyBool obj "gtk-button-images"

{- |
Set the value of the “@gtk-button-images@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkButtonImages 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkButtonImages :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkButtonImages obj val = liftIO $ setObjectPropertyBool obj "gtk-button-images" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-button-images@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkButtonImages :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkButtonImages val = constructObjectPropertyBool "gtk-button-images" val

#if ENABLE_OVERLOADING
data SettingsGtkButtonImagesPropertyInfo
instance AttrInfo SettingsGtkButtonImagesPropertyInfo where
    type AttrAllowedOps SettingsGtkButtonImagesPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkButtonImagesPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkButtonImagesPropertyInfo = IsSettings
    type AttrGetType SettingsGtkButtonImagesPropertyInfo = Bool
    type AttrLabel SettingsGtkButtonImagesPropertyInfo = "gtk-button-images"
    type AttrOrigin SettingsGtkButtonImagesPropertyInfo = Settings
    attrGet _ = getSettingsGtkButtonImages
    attrSet _ = setSettingsGtkButtonImages
    attrConstruct _ = constructSettingsGtkButtonImages
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-can-change-accels"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-can-change-accels@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkCanChangeAccels
@
-}
getSettingsGtkCanChangeAccels :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkCanChangeAccels obj = liftIO $ getObjectPropertyBool obj "gtk-can-change-accels"

{- |
Set the value of the “@gtk-can-change-accels@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkCanChangeAccels 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkCanChangeAccels :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkCanChangeAccels obj val = liftIO $ setObjectPropertyBool obj "gtk-can-change-accels" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-can-change-accels@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkCanChangeAccels :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkCanChangeAccels val = constructObjectPropertyBool "gtk-can-change-accels" val

#if ENABLE_OVERLOADING
data SettingsGtkCanChangeAccelsPropertyInfo
instance AttrInfo SettingsGtkCanChangeAccelsPropertyInfo where
    type AttrAllowedOps SettingsGtkCanChangeAccelsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkCanChangeAccelsPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkCanChangeAccelsPropertyInfo = IsSettings
    type AttrGetType SettingsGtkCanChangeAccelsPropertyInfo = Bool
    type AttrLabel SettingsGtkCanChangeAccelsPropertyInfo = "gtk-can-change-accels"
    type AttrOrigin SettingsGtkCanChangeAccelsPropertyInfo = Settings
    attrGet _ = getSettingsGtkCanChangeAccels
    attrSet _ = setSettingsGtkCanChangeAccels
    attrConstruct _ = constructSettingsGtkCanChangeAccels
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-color-palette"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-color-palette@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkColorPalette
@
-}
getSettingsGtkColorPalette :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkColorPalette obj = liftIO $ getObjectPropertyString obj "gtk-color-palette"

{- |
Set the value of the “@gtk-color-palette@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkColorPalette 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkColorPalette :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkColorPalette obj val = liftIO $ setObjectPropertyString obj "gtk-color-palette" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-color-palette@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkColorPalette :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkColorPalette val = constructObjectPropertyString "gtk-color-palette" (Just val)

{- |
Set the value of the “@gtk-color-palette@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkColorPalette
@
-}
clearSettingsGtkColorPalette :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkColorPalette obj = liftIO $ setObjectPropertyString obj "gtk-color-palette" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkColorPalettePropertyInfo
instance AttrInfo SettingsGtkColorPalettePropertyInfo where
    type AttrAllowedOps SettingsGtkColorPalettePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkColorPalettePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkColorPalettePropertyInfo = IsSettings
    type AttrGetType SettingsGtkColorPalettePropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkColorPalettePropertyInfo = "gtk-color-palette"
    type AttrOrigin SettingsGtkColorPalettePropertyInfo = Settings
    attrGet _ = getSettingsGtkColorPalette
    attrSet _ = setSettingsGtkColorPalette
    attrConstruct _ = constructSettingsGtkColorPalette
    attrClear _ = clearSettingsGtkColorPalette
#endif

-- VVV Prop "gtk-color-scheme"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-color-scheme@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkColorScheme
@
-}
getSettingsGtkColorScheme :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkColorScheme obj = liftIO $ getObjectPropertyString obj "gtk-color-scheme"

{- |
Set the value of the “@gtk-color-scheme@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkColorScheme 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkColorScheme :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkColorScheme obj val = liftIO $ setObjectPropertyString obj "gtk-color-scheme" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-color-scheme@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkColorScheme :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkColorScheme val = constructObjectPropertyString "gtk-color-scheme" (Just val)

{- |
Set the value of the “@gtk-color-scheme@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkColorScheme
@
-}
clearSettingsGtkColorScheme :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkColorScheme obj = liftIO $ setObjectPropertyString obj "gtk-color-scheme" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkColorSchemePropertyInfo
instance AttrInfo SettingsGtkColorSchemePropertyInfo where
    type AttrAllowedOps SettingsGtkColorSchemePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkColorSchemePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkColorSchemePropertyInfo = IsSettings
    type AttrGetType SettingsGtkColorSchemePropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkColorSchemePropertyInfo = "gtk-color-scheme"
    type AttrOrigin SettingsGtkColorSchemePropertyInfo = Settings
    attrGet _ = getSettingsGtkColorScheme
    attrSet _ = setSettingsGtkColorScheme
    attrConstruct _ = constructSettingsGtkColorScheme
    attrClear _ = clearSettingsGtkColorScheme
#endif

-- VVV Prop "gtk-cursor-blink"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-cursor-blink@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkCursorBlink
@
-}
getSettingsGtkCursorBlink :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkCursorBlink obj = liftIO $ getObjectPropertyBool obj "gtk-cursor-blink"

{- |
Set the value of the “@gtk-cursor-blink@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkCursorBlink 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkCursorBlink :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkCursorBlink obj val = liftIO $ setObjectPropertyBool obj "gtk-cursor-blink" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-cursor-blink@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkCursorBlink :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkCursorBlink val = constructObjectPropertyBool "gtk-cursor-blink" val

#if ENABLE_OVERLOADING
data SettingsGtkCursorBlinkPropertyInfo
instance AttrInfo SettingsGtkCursorBlinkPropertyInfo where
    type AttrAllowedOps SettingsGtkCursorBlinkPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkCursorBlinkPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkCursorBlinkPropertyInfo = IsSettings
    type AttrGetType SettingsGtkCursorBlinkPropertyInfo = Bool
    type AttrLabel SettingsGtkCursorBlinkPropertyInfo = "gtk-cursor-blink"
    type AttrOrigin SettingsGtkCursorBlinkPropertyInfo = Settings
    attrGet _ = getSettingsGtkCursorBlink
    attrSet _ = setSettingsGtkCursorBlink
    attrConstruct _ = constructSettingsGtkCursorBlink
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-cursor-blink-time"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-cursor-blink-time@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkCursorBlinkTime
@
-}
getSettingsGtkCursorBlinkTime :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkCursorBlinkTime obj = liftIO $ getObjectPropertyInt32 obj "gtk-cursor-blink-time"

{- |
Set the value of the “@gtk-cursor-blink-time@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkCursorBlinkTime 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkCursorBlinkTime :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkCursorBlinkTime obj val = liftIO $ setObjectPropertyInt32 obj "gtk-cursor-blink-time" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-cursor-blink-time@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkCursorBlinkTime :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkCursorBlinkTime val = constructObjectPropertyInt32 "gtk-cursor-blink-time" val

#if ENABLE_OVERLOADING
data SettingsGtkCursorBlinkTimePropertyInfo
instance AttrInfo SettingsGtkCursorBlinkTimePropertyInfo where
    type AttrAllowedOps SettingsGtkCursorBlinkTimePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkCursorBlinkTimePropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkCursorBlinkTimePropertyInfo = IsSettings
    type AttrGetType SettingsGtkCursorBlinkTimePropertyInfo = Int32
    type AttrLabel SettingsGtkCursorBlinkTimePropertyInfo = "gtk-cursor-blink-time"
    type AttrOrigin SettingsGtkCursorBlinkTimePropertyInfo = Settings
    attrGet _ = getSettingsGtkCursorBlinkTime
    attrSet _ = setSettingsGtkCursorBlinkTime
    attrConstruct _ = constructSettingsGtkCursorBlinkTime
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-cursor-blink-timeout"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-cursor-blink-timeout@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkCursorBlinkTimeout
@
-}
getSettingsGtkCursorBlinkTimeout :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkCursorBlinkTimeout obj = liftIO $ getObjectPropertyInt32 obj "gtk-cursor-blink-timeout"

{- |
Set the value of the “@gtk-cursor-blink-timeout@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkCursorBlinkTimeout 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkCursorBlinkTimeout :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkCursorBlinkTimeout obj val = liftIO $ setObjectPropertyInt32 obj "gtk-cursor-blink-timeout" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-cursor-blink-timeout@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkCursorBlinkTimeout :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkCursorBlinkTimeout val = constructObjectPropertyInt32 "gtk-cursor-blink-timeout" val

#if ENABLE_OVERLOADING
data SettingsGtkCursorBlinkTimeoutPropertyInfo
instance AttrInfo SettingsGtkCursorBlinkTimeoutPropertyInfo where
    type AttrAllowedOps SettingsGtkCursorBlinkTimeoutPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkCursorBlinkTimeoutPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkCursorBlinkTimeoutPropertyInfo = IsSettings
    type AttrGetType SettingsGtkCursorBlinkTimeoutPropertyInfo = Int32
    type AttrLabel SettingsGtkCursorBlinkTimeoutPropertyInfo = "gtk-cursor-blink-timeout"
    type AttrOrigin SettingsGtkCursorBlinkTimeoutPropertyInfo = Settings
    attrGet _ = getSettingsGtkCursorBlinkTimeout
    attrSet _ = setSettingsGtkCursorBlinkTimeout
    attrConstruct _ = constructSettingsGtkCursorBlinkTimeout
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-cursor-theme-name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-cursor-theme-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkCursorThemeName
@
-}
getSettingsGtkCursorThemeName :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkCursorThemeName obj = liftIO $ getObjectPropertyString obj "gtk-cursor-theme-name"

{- |
Set the value of the “@gtk-cursor-theme-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkCursorThemeName 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkCursorThemeName :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkCursorThemeName obj val = liftIO $ setObjectPropertyString obj "gtk-cursor-theme-name" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-cursor-theme-name@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkCursorThemeName :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkCursorThemeName val = constructObjectPropertyString "gtk-cursor-theme-name" (Just val)

{- |
Set the value of the “@gtk-cursor-theme-name@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkCursorThemeName
@
-}
clearSettingsGtkCursorThemeName :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkCursorThemeName obj = liftIO $ setObjectPropertyString obj "gtk-cursor-theme-name" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkCursorThemeNamePropertyInfo
instance AttrInfo SettingsGtkCursorThemeNamePropertyInfo where
    type AttrAllowedOps SettingsGtkCursorThemeNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkCursorThemeNamePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkCursorThemeNamePropertyInfo = IsSettings
    type AttrGetType SettingsGtkCursorThemeNamePropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkCursorThemeNamePropertyInfo = "gtk-cursor-theme-name"
    type AttrOrigin SettingsGtkCursorThemeNamePropertyInfo = Settings
    attrGet _ = getSettingsGtkCursorThemeName
    attrSet _ = setSettingsGtkCursorThemeName
    attrConstruct _ = constructSettingsGtkCursorThemeName
    attrClear _ = clearSettingsGtkCursorThemeName
#endif

-- VVV Prop "gtk-cursor-theme-size"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-cursor-theme-size@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkCursorThemeSize
@
-}
getSettingsGtkCursorThemeSize :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkCursorThemeSize obj = liftIO $ getObjectPropertyInt32 obj "gtk-cursor-theme-size"

{- |
Set the value of the “@gtk-cursor-theme-size@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkCursorThemeSize 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkCursorThemeSize :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkCursorThemeSize obj val = liftIO $ setObjectPropertyInt32 obj "gtk-cursor-theme-size" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-cursor-theme-size@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkCursorThemeSize :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkCursorThemeSize val = constructObjectPropertyInt32 "gtk-cursor-theme-size" val

#if ENABLE_OVERLOADING
data SettingsGtkCursorThemeSizePropertyInfo
instance AttrInfo SettingsGtkCursorThemeSizePropertyInfo where
    type AttrAllowedOps SettingsGtkCursorThemeSizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkCursorThemeSizePropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkCursorThemeSizePropertyInfo = IsSettings
    type AttrGetType SettingsGtkCursorThemeSizePropertyInfo = Int32
    type AttrLabel SettingsGtkCursorThemeSizePropertyInfo = "gtk-cursor-theme-size"
    type AttrOrigin SettingsGtkCursorThemeSizePropertyInfo = Settings
    attrGet _ = getSettingsGtkCursorThemeSize
    attrSet _ = setSettingsGtkCursorThemeSize
    attrConstruct _ = constructSettingsGtkCursorThemeSize
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-decoration-layout"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-decoration-layout@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkDecorationLayout
@
-}
getSettingsGtkDecorationLayout :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkDecorationLayout obj = liftIO $ getObjectPropertyString obj "gtk-decoration-layout"

{- |
Set the value of the “@gtk-decoration-layout@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkDecorationLayout 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkDecorationLayout :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkDecorationLayout obj val = liftIO $ setObjectPropertyString obj "gtk-decoration-layout" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-decoration-layout@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkDecorationLayout :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkDecorationLayout val = constructObjectPropertyString "gtk-decoration-layout" (Just val)

{- |
Set the value of the “@gtk-decoration-layout@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkDecorationLayout
@
-}
clearSettingsGtkDecorationLayout :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkDecorationLayout obj = liftIO $ setObjectPropertyString obj "gtk-decoration-layout" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkDecorationLayoutPropertyInfo
instance AttrInfo SettingsGtkDecorationLayoutPropertyInfo where
    type AttrAllowedOps SettingsGtkDecorationLayoutPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkDecorationLayoutPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkDecorationLayoutPropertyInfo = IsSettings
    type AttrGetType SettingsGtkDecorationLayoutPropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkDecorationLayoutPropertyInfo = "gtk-decoration-layout"
    type AttrOrigin SettingsGtkDecorationLayoutPropertyInfo = Settings
    attrGet _ = getSettingsGtkDecorationLayout
    attrSet _ = setSettingsGtkDecorationLayout
    attrConstruct _ = constructSettingsGtkDecorationLayout
    attrClear _ = clearSettingsGtkDecorationLayout
#endif

-- VVV Prop "gtk-dialogs-use-header"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-dialogs-use-header@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkDialogsUseHeader
@
-}
getSettingsGtkDialogsUseHeader :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkDialogsUseHeader obj = liftIO $ getObjectPropertyBool obj "gtk-dialogs-use-header"

{- |
Set the value of the “@gtk-dialogs-use-header@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkDialogsUseHeader 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkDialogsUseHeader :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkDialogsUseHeader obj val = liftIO $ setObjectPropertyBool obj "gtk-dialogs-use-header" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-dialogs-use-header@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkDialogsUseHeader :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkDialogsUseHeader val = constructObjectPropertyBool "gtk-dialogs-use-header" val

#if ENABLE_OVERLOADING
data SettingsGtkDialogsUseHeaderPropertyInfo
instance AttrInfo SettingsGtkDialogsUseHeaderPropertyInfo where
    type AttrAllowedOps SettingsGtkDialogsUseHeaderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkDialogsUseHeaderPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkDialogsUseHeaderPropertyInfo = IsSettings
    type AttrGetType SettingsGtkDialogsUseHeaderPropertyInfo = Bool
    type AttrLabel SettingsGtkDialogsUseHeaderPropertyInfo = "gtk-dialogs-use-header"
    type AttrOrigin SettingsGtkDialogsUseHeaderPropertyInfo = Settings
    attrGet _ = getSettingsGtkDialogsUseHeader
    attrSet _ = setSettingsGtkDialogsUseHeader
    attrConstruct _ = constructSettingsGtkDialogsUseHeader
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-dnd-drag-threshold"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-dnd-drag-threshold@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkDndDragThreshold
@
-}
getSettingsGtkDndDragThreshold :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkDndDragThreshold obj = liftIO $ getObjectPropertyInt32 obj "gtk-dnd-drag-threshold"

{- |
Set the value of the “@gtk-dnd-drag-threshold@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkDndDragThreshold 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkDndDragThreshold :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkDndDragThreshold obj val = liftIO $ setObjectPropertyInt32 obj "gtk-dnd-drag-threshold" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-dnd-drag-threshold@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkDndDragThreshold :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkDndDragThreshold val = constructObjectPropertyInt32 "gtk-dnd-drag-threshold" val

#if ENABLE_OVERLOADING
data SettingsGtkDndDragThresholdPropertyInfo
instance AttrInfo SettingsGtkDndDragThresholdPropertyInfo where
    type AttrAllowedOps SettingsGtkDndDragThresholdPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkDndDragThresholdPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkDndDragThresholdPropertyInfo = IsSettings
    type AttrGetType SettingsGtkDndDragThresholdPropertyInfo = Int32
    type AttrLabel SettingsGtkDndDragThresholdPropertyInfo = "gtk-dnd-drag-threshold"
    type AttrOrigin SettingsGtkDndDragThresholdPropertyInfo = Settings
    attrGet _ = getSettingsGtkDndDragThreshold
    attrSet _ = setSettingsGtkDndDragThreshold
    attrConstruct _ = constructSettingsGtkDndDragThreshold
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-double-click-distance"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-double-click-distance@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkDoubleClickDistance
@
-}
getSettingsGtkDoubleClickDistance :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkDoubleClickDistance obj = liftIO $ getObjectPropertyInt32 obj "gtk-double-click-distance"

{- |
Set the value of the “@gtk-double-click-distance@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkDoubleClickDistance 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkDoubleClickDistance :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkDoubleClickDistance obj val = liftIO $ setObjectPropertyInt32 obj "gtk-double-click-distance" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-double-click-distance@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkDoubleClickDistance :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkDoubleClickDistance val = constructObjectPropertyInt32 "gtk-double-click-distance" val

#if ENABLE_OVERLOADING
data SettingsGtkDoubleClickDistancePropertyInfo
instance AttrInfo SettingsGtkDoubleClickDistancePropertyInfo where
    type AttrAllowedOps SettingsGtkDoubleClickDistancePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkDoubleClickDistancePropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkDoubleClickDistancePropertyInfo = IsSettings
    type AttrGetType SettingsGtkDoubleClickDistancePropertyInfo = Int32
    type AttrLabel SettingsGtkDoubleClickDistancePropertyInfo = "gtk-double-click-distance"
    type AttrOrigin SettingsGtkDoubleClickDistancePropertyInfo = Settings
    attrGet _ = getSettingsGtkDoubleClickDistance
    attrSet _ = setSettingsGtkDoubleClickDistance
    attrConstruct _ = constructSettingsGtkDoubleClickDistance
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-double-click-time"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-double-click-time@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkDoubleClickTime
@
-}
getSettingsGtkDoubleClickTime :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkDoubleClickTime obj = liftIO $ getObjectPropertyInt32 obj "gtk-double-click-time"

{- |
Set the value of the “@gtk-double-click-time@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkDoubleClickTime 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkDoubleClickTime :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkDoubleClickTime obj val = liftIO $ setObjectPropertyInt32 obj "gtk-double-click-time" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-double-click-time@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkDoubleClickTime :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkDoubleClickTime val = constructObjectPropertyInt32 "gtk-double-click-time" val

#if ENABLE_OVERLOADING
data SettingsGtkDoubleClickTimePropertyInfo
instance AttrInfo SettingsGtkDoubleClickTimePropertyInfo where
    type AttrAllowedOps SettingsGtkDoubleClickTimePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkDoubleClickTimePropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkDoubleClickTimePropertyInfo = IsSettings
    type AttrGetType SettingsGtkDoubleClickTimePropertyInfo = Int32
    type AttrLabel SettingsGtkDoubleClickTimePropertyInfo = "gtk-double-click-time"
    type AttrOrigin SettingsGtkDoubleClickTimePropertyInfo = Settings
    attrGet _ = getSettingsGtkDoubleClickTime
    attrSet _ = setSettingsGtkDoubleClickTime
    attrConstruct _ = constructSettingsGtkDoubleClickTime
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-enable-accels"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-enable-accels@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkEnableAccels
@
-}
getSettingsGtkEnableAccels :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkEnableAccels obj = liftIO $ getObjectPropertyBool obj "gtk-enable-accels"

{- |
Set the value of the “@gtk-enable-accels@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkEnableAccels 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkEnableAccels :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkEnableAccels obj val = liftIO $ setObjectPropertyBool obj "gtk-enable-accels" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-enable-accels@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkEnableAccels :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkEnableAccels val = constructObjectPropertyBool "gtk-enable-accels" val

#if ENABLE_OVERLOADING
data SettingsGtkEnableAccelsPropertyInfo
instance AttrInfo SettingsGtkEnableAccelsPropertyInfo where
    type AttrAllowedOps SettingsGtkEnableAccelsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkEnableAccelsPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkEnableAccelsPropertyInfo = IsSettings
    type AttrGetType SettingsGtkEnableAccelsPropertyInfo = Bool
    type AttrLabel SettingsGtkEnableAccelsPropertyInfo = "gtk-enable-accels"
    type AttrOrigin SettingsGtkEnableAccelsPropertyInfo = Settings
    attrGet _ = getSettingsGtkEnableAccels
    attrSet _ = setSettingsGtkEnableAccels
    attrConstruct _ = constructSettingsGtkEnableAccels
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-enable-animations"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-enable-animations@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkEnableAnimations
@
-}
getSettingsGtkEnableAnimations :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkEnableAnimations obj = liftIO $ getObjectPropertyBool obj "gtk-enable-animations"

{- |
Set the value of the “@gtk-enable-animations@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkEnableAnimations 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkEnableAnimations :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkEnableAnimations obj val = liftIO $ setObjectPropertyBool obj "gtk-enable-animations" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-enable-animations@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkEnableAnimations :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkEnableAnimations val = constructObjectPropertyBool "gtk-enable-animations" val

#if ENABLE_OVERLOADING
data SettingsGtkEnableAnimationsPropertyInfo
instance AttrInfo SettingsGtkEnableAnimationsPropertyInfo where
    type AttrAllowedOps SettingsGtkEnableAnimationsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkEnableAnimationsPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkEnableAnimationsPropertyInfo = IsSettings
    type AttrGetType SettingsGtkEnableAnimationsPropertyInfo = Bool
    type AttrLabel SettingsGtkEnableAnimationsPropertyInfo = "gtk-enable-animations"
    type AttrOrigin SettingsGtkEnableAnimationsPropertyInfo = Settings
    attrGet _ = getSettingsGtkEnableAnimations
    attrSet _ = setSettingsGtkEnableAnimations
    attrConstruct _ = constructSettingsGtkEnableAnimations
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-enable-event-sounds"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-enable-event-sounds@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkEnableEventSounds
@
-}
getSettingsGtkEnableEventSounds :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkEnableEventSounds obj = liftIO $ getObjectPropertyBool obj "gtk-enable-event-sounds"

{- |
Set the value of the “@gtk-enable-event-sounds@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkEnableEventSounds 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkEnableEventSounds :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkEnableEventSounds obj val = liftIO $ setObjectPropertyBool obj "gtk-enable-event-sounds" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-enable-event-sounds@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkEnableEventSounds :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkEnableEventSounds val = constructObjectPropertyBool "gtk-enable-event-sounds" val

#if ENABLE_OVERLOADING
data SettingsGtkEnableEventSoundsPropertyInfo
instance AttrInfo SettingsGtkEnableEventSoundsPropertyInfo where
    type AttrAllowedOps SettingsGtkEnableEventSoundsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkEnableEventSoundsPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkEnableEventSoundsPropertyInfo = IsSettings
    type AttrGetType SettingsGtkEnableEventSoundsPropertyInfo = Bool
    type AttrLabel SettingsGtkEnableEventSoundsPropertyInfo = "gtk-enable-event-sounds"
    type AttrOrigin SettingsGtkEnableEventSoundsPropertyInfo = Settings
    attrGet _ = getSettingsGtkEnableEventSounds
    attrSet _ = setSettingsGtkEnableEventSounds
    attrConstruct _ = constructSettingsGtkEnableEventSounds
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-enable-input-feedback-sounds"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-enable-input-feedback-sounds@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkEnableInputFeedbackSounds
@
-}
getSettingsGtkEnableInputFeedbackSounds :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkEnableInputFeedbackSounds obj = liftIO $ getObjectPropertyBool obj "gtk-enable-input-feedback-sounds"

{- |
Set the value of the “@gtk-enable-input-feedback-sounds@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkEnableInputFeedbackSounds 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkEnableInputFeedbackSounds :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkEnableInputFeedbackSounds obj val = liftIO $ setObjectPropertyBool obj "gtk-enable-input-feedback-sounds" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-enable-input-feedback-sounds@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkEnableInputFeedbackSounds :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkEnableInputFeedbackSounds val = constructObjectPropertyBool "gtk-enable-input-feedback-sounds" val

#if ENABLE_OVERLOADING
data SettingsGtkEnableInputFeedbackSoundsPropertyInfo
instance AttrInfo SettingsGtkEnableInputFeedbackSoundsPropertyInfo where
    type AttrAllowedOps SettingsGtkEnableInputFeedbackSoundsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkEnableInputFeedbackSoundsPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkEnableInputFeedbackSoundsPropertyInfo = IsSettings
    type AttrGetType SettingsGtkEnableInputFeedbackSoundsPropertyInfo = Bool
    type AttrLabel SettingsGtkEnableInputFeedbackSoundsPropertyInfo = "gtk-enable-input-feedback-sounds"
    type AttrOrigin SettingsGtkEnableInputFeedbackSoundsPropertyInfo = Settings
    attrGet _ = getSettingsGtkEnableInputFeedbackSounds
    attrSet _ = setSettingsGtkEnableInputFeedbackSounds
    attrConstruct _ = constructSettingsGtkEnableInputFeedbackSounds
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-enable-mnemonics"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-enable-mnemonics@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkEnableMnemonics
@
-}
getSettingsGtkEnableMnemonics :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkEnableMnemonics obj = liftIO $ getObjectPropertyBool obj "gtk-enable-mnemonics"

{- |
Set the value of the “@gtk-enable-mnemonics@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkEnableMnemonics 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkEnableMnemonics :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkEnableMnemonics obj val = liftIO $ setObjectPropertyBool obj "gtk-enable-mnemonics" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-enable-mnemonics@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkEnableMnemonics :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkEnableMnemonics val = constructObjectPropertyBool "gtk-enable-mnemonics" val

#if ENABLE_OVERLOADING
data SettingsGtkEnableMnemonicsPropertyInfo
instance AttrInfo SettingsGtkEnableMnemonicsPropertyInfo where
    type AttrAllowedOps SettingsGtkEnableMnemonicsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkEnableMnemonicsPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkEnableMnemonicsPropertyInfo = IsSettings
    type AttrGetType SettingsGtkEnableMnemonicsPropertyInfo = Bool
    type AttrLabel SettingsGtkEnableMnemonicsPropertyInfo = "gtk-enable-mnemonics"
    type AttrOrigin SettingsGtkEnableMnemonicsPropertyInfo = Settings
    attrGet _ = getSettingsGtkEnableMnemonics
    attrSet _ = setSettingsGtkEnableMnemonics
    attrConstruct _ = constructSettingsGtkEnableMnemonics
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-enable-primary-paste"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-enable-primary-paste@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkEnablePrimaryPaste
@
-}
getSettingsGtkEnablePrimaryPaste :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkEnablePrimaryPaste obj = liftIO $ getObjectPropertyBool obj "gtk-enable-primary-paste"

{- |
Set the value of the “@gtk-enable-primary-paste@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkEnablePrimaryPaste 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkEnablePrimaryPaste :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkEnablePrimaryPaste obj val = liftIO $ setObjectPropertyBool obj "gtk-enable-primary-paste" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-enable-primary-paste@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkEnablePrimaryPaste :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkEnablePrimaryPaste val = constructObjectPropertyBool "gtk-enable-primary-paste" val

#if ENABLE_OVERLOADING
data SettingsGtkEnablePrimaryPastePropertyInfo
instance AttrInfo SettingsGtkEnablePrimaryPastePropertyInfo where
    type AttrAllowedOps SettingsGtkEnablePrimaryPastePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkEnablePrimaryPastePropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkEnablePrimaryPastePropertyInfo = IsSettings
    type AttrGetType SettingsGtkEnablePrimaryPastePropertyInfo = Bool
    type AttrLabel SettingsGtkEnablePrimaryPastePropertyInfo = "gtk-enable-primary-paste"
    type AttrOrigin SettingsGtkEnablePrimaryPastePropertyInfo = Settings
    attrGet _ = getSettingsGtkEnablePrimaryPaste
    attrSet _ = setSettingsGtkEnablePrimaryPaste
    attrConstruct _ = constructSettingsGtkEnablePrimaryPaste
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-enable-tooltips"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-enable-tooltips@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkEnableTooltips
@
-}
getSettingsGtkEnableTooltips :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkEnableTooltips obj = liftIO $ getObjectPropertyBool obj "gtk-enable-tooltips"

{- |
Set the value of the “@gtk-enable-tooltips@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkEnableTooltips 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkEnableTooltips :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkEnableTooltips obj val = liftIO $ setObjectPropertyBool obj "gtk-enable-tooltips" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-enable-tooltips@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkEnableTooltips :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkEnableTooltips val = constructObjectPropertyBool "gtk-enable-tooltips" val

#if ENABLE_OVERLOADING
data SettingsGtkEnableTooltipsPropertyInfo
instance AttrInfo SettingsGtkEnableTooltipsPropertyInfo where
    type AttrAllowedOps SettingsGtkEnableTooltipsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkEnableTooltipsPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkEnableTooltipsPropertyInfo = IsSettings
    type AttrGetType SettingsGtkEnableTooltipsPropertyInfo = Bool
    type AttrLabel SettingsGtkEnableTooltipsPropertyInfo = "gtk-enable-tooltips"
    type AttrOrigin SettingsGtkEnableTooltipsPropertyInfo = Settings
    attrGet _ = getSettingsGtkEnableTooltips
    attrSet _ = setSettingsGtkEnableTooltips
    attrConstruct _ = constructSettingsGtkEnableTooltips
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-entry-password-hint-timeout"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-entry-password-hint-timeout@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkEntryPasswordHintTimeout
@
-}
getSettingsGtkEntryPasswordHintTimeout :: (MonadIO m, IsSettings o) => o -> m Word32
getSettingsGtkEntryPasswordHintTimeout obj = liftIO $ getObjectPropertyUInt32 obj "gtk-entry-password-hint-timeout"

{- |
Set the value of the “@gtk-entry-password-hint-timeout@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkEntryPasswordHintTimeout 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkEntryPasswordHintTimeout :: (MonadIO m, IsSettings o) => o -> Word32 -> m ()
setSettingsGtkEntryPasswordHintTimeout obj val = liftIO $ setObjectPropertyUInt32 obj "gtk-entry-password-hint-timeout" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-entry-password-hint-timeout@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkEntryPasswordHintTimeout :: (IsSettings o) => Word32 -> IO (GValueConstruct o)
constructSettingsGtkEntryPasswordHintTimeout val = constructObjectPropertyUInt32 "gtk-entry-password-hint-timeout" val

#if ENABLE_OVERLOADING
data SettingsGtkEntryPasswordHintTimeoutPropertyInfo
instance AttrInfo SettingsGtkEntryPasswordHintTimeoutPropertyInfo where
    type AttrAllowedOps SettingsGtkEntryPasswordHintTimeoutPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkEntryPasswordHintTimeoutPropertyInfo = (~) Word32
    type AttrBaseTypeConstraint SettingsGtkEntryPasswordHintTimeoutPropertyInfo = IsSettings
    type AttrGetType SettingsGtkEntryPasswordHintTimeoutPropertyInfo = Word32
    type AttrLabel SettingsGtkEntryPasswordHintTimeoutPropertyInfo = "gtk-entry-password-hint-timeout"
    type AttrOrigin SettingsGtkEntryPasswordHintTimeoutPropertyInfo = Settings
    attrGet _ = getSettingsGtkEntryPasswordHintTimeout
    attrSet _ = setSettingsGtkEntryPasswordHintTimeout
    attrConstruct _ = constructSettingsGtkEntryPasswordHintTimeout
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-entry-select-on-focus"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-entry-select-on-focus@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkEntrySelectOnFocus
@
-}
getSettingsGtkEntrySelectOnFocus :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkEntrySelectOnFocus obj = liftIO $ getObjectPropertyBool obj "gtk-entry-select-on-focus"

{- |
Set the value of the “@gtk-entry-select-on-focus@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkEntrySelectOnFocus 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkEntrySelectOnFocus :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkEntrySelectOnFocus obj val = liftIO $ setObjectPropertyBool obj "gtk-entry-select-on-focus" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-entry-select-on-focus@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkEntrySelectOnFocus :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkEntrySelectOnFocus val = constructObjectPropertyBool "gtk-entry-select-on-focus" val

#if ENABLE_OVERLOADING
data SettingsGtkEntrySelectOnFocusPropertyInfo
instance AttrInfo SettingsGtkEntrySelectOnFocusPropertyInfo where
    type AttrAllowedOps SettingsGtkEntrySelectOnFocusPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkEntrySelectOnFocusPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkEntrySelectOnFocusPropertyInfo = IsSettings
    type AttrGetType SettingsGtkEntrySelectOnFocusPropertyInfo = Bool
    type AttrLabel SettingsGtkEntrySelectOnFocusPropertyInfo = "gtk-entry-select-on-focus"
    type AttrOrigin SettingsGtkEntrySelectOnFocusPropertyInfo = Settings
    attrGet _ = getSettingsGtkEntrySelectOnFocus
    attrSet _ = setSettingsGtkEntrySelectOnFocus
    attrConstruct _ = constructSettingsGtkEntrySelectOnFocus
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-error-bell"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-error-bell@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkErrorBell
@
-}
getSettingsGtkErrorBell :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkErrorBell obj = liftIO $ getObjectPropertyBool obj "gtk-error-bell"

{- |
Set the value of the “@gtk-error-bell@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkErrorBell 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkErrorBell :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkErrorBell obj val = liftIO $ setObjectPropertyBool obj "gtk-error-bell" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-error-bell@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkErrorBell :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkErrorBell val = constructObjectPropertyBool "gtk-error-bell" val

#if ENABLE_OVERLOADING
data SettingsGtkErrorBellPropertyInfo
instance AttrInfo SettingsGtkErrorBellPropertyInfo where
    type AttrAllowedOps SettingsGtkErrorBellPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkErrorBellPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkErrorBellPropertyInfo = IsSettings
    type AttrGetType SettingsGtkErrorBellPropertyInfo = Bool
    type AttrLabel SettingsGtkErrorBellPropertyInfo = "gtk-error-bell"
    type AttrOrigin SettingsGtkErrorBellPropertyInfo = Settings
    attrGet _ = getSettingsGtkErrorBell
    attrSet _ = setSettingsGtkErrorBell
    attrConstruct _ = constructSettingsGtkErrorBell
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-fallback-icon-theme"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-fallback-icon-theme@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkFallbackIconTheme
@
-}
getSettingsGtkFallbackIconTheme :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkFallbackIconTheme obj = liftIO $ getObjectPropertyString obj "gtk-fallback-icon-theme"

{- |
Set the value of the “@gtk-fallback-icon-theme@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkFallbackIconTheme 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkFallbackIconTheme :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkFallbackIconTheme obj val = liftIO $ setObjectPropertyString obj "gtk-fallback-icon-theme" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-fallback-icon-theme@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkFallbackIconTheme :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkFallbackIconTheme val = constructObjectPropertyString "gtk-fallback-icon-theme" (Just val)

{- |
Set the value of the “@gtk-fallback-icon-theme@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkFallbackIconTheme
@
-}
clearSettingsGtkFallbackIconTheme :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkFallbackIconTheme obj = liftIO $ setObjectPropertyString obj "gtk-fallback-icon-theme" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkFallbackIconThemePropertyInfo
instance AttrInfo SettingsGtkFallbackIconThemePropertyInfo where
    type AttrAllowedOps SettingsGtkFallbackIconThemePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkFallbackIconThemePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkFallbackIconThemePropertyInfo = IsSettings
    type AttrGetType SettingsGtkFallbackIconThemePropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkFallbackIconThemePropertyInfo = "gtk-fallback-icon-theme"
    type AttrOrigin SettingsGtkFallbackIconThemePropertyInfo = Settings
    attrGet _ = getSettingsGtkFallbackIconTheme
    attrSet _ = setSettingsGtkFallbackIconTheme
    attrConstruct _ = constructSettingsGtkFallbackIconTheme
    attrClear _ = clearSettingsGtkFallbackIconTheme
#endif

-- VVV Prop "gtk-file-chooser-backend"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-file-chooser-backend@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkFileChooserBackend
@
-}
getSettingsGtkFileChooserBackend :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkFileChooserBackend obj = liftIO $ getObjectPropertyString obj "gtk-file-chooser-backend"

{- |
Set the value of the “@gtk-file-chooser-backend@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkFileChooserBackend 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkFileChooserBackend :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkFileChooserBackend obj val = liftIO $ setObjectPropertyString obj "gtk-file-chooser-backend" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-file-chooser-backend@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkFileChooserBackend :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkFileChooserBackend val = constructObjectPropertyString "gtk-file-chooser-backend" (Just val)

{- |
Set the value of the “@gtk-file-chooser-backend@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkFileChooserBackend
@
-}
clearSettingsGtkFileChooserBackend :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkFileChooserBackend obj = liftIO $ setObjectPropertyString obj "gtk-file-chooser-backend" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkFileChooserBackendPropertyInfo
instance AttrInfo SettingsGtkFileChooserBackendPropertyInfo where
    type AttrAllowedOps SettingsGtkFileChooserBackendPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkFileChooserBackendPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkFileChooserBackendPropertyInfo = IsSettings
    type AttrGetType SettingsGtkFileChooserBackendPropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkFileChooserBackendPropertyInfo = "gtk-file-chooser-backend"
    type AttrOrigin SettingsGtkFileChooserBackendPropertyInfo = Settings
    attrGet _ = getSettingsGtkFileChooserBackend
    attrSet _ = setSettingsGtkFileChooserBackend
    attrConstruct _ = constructSettingsGtkFileChooserBackend
    attrClear _ = clearSettingsGtkFileChooserBackend
#endif

-- VVV Prop "gtk-font-name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-font-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkFontName
@
-}
getSettingsGtkFontName :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkFontName obj = liftIO $ getObjectPropertyString obj "gtk-font-name"

{- |
Set the value of the “@gtk-font-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkFontName 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkFontName :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkFontName obj val = liftIO $ setObjectPropertyString obj "gtk-font-name" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-font-name@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkFontName :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkFontName val = constructObjectPropertyString "gtk-font-name" (Just val)

{- |
Set the value of the “@gtk-font-name@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkFontName
@
-}
clearSettingsGtkFontName :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkFontName obj = liftIO $ setObjectPropertyString obj "gtk-font-name" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkFontNamePropertyInfo
instance AttrInfo SettingsGtkFontNamePropertyInfo where
    type AttrAllowedOps SettingsGtkFontNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkFontNamePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkFontNamePropertyInfo = IsSettings
    type AttrGetType SettingsGtkFontNamePropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkFontNamePropertyInfo = "gtk-font-name"
    type AttrOrigin SettingsGtkFontNamePropertyInfo = Settings
    attrGet _ = getSettingsGtkFontName
    attrSet _ = setSettingsGtkFontName
    attrConstruct _ = constructSettingsGtkFontName
    attrClear _ = clearSettingsGtkFontName
#endif

-- VVV Prop "gtk-fontconfig-timestamp"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-fontconfig-timestamp@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkFontconfigTimestamp
@
-}
getSettingsGtkFontconfigTimestamp :: (MonadIO m, IsSettings o) => o -> m Word32
getSettingsGtkFontconfigTimestamp obj = liftIO $ getObjectPropertyUInt32 obj "gtk-fontconfig-timestamp"

{- |
Set the value of the “@gtk-fontconfig-timestamp@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkFontconfigTimestamp 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkFontconfigTimestamp :: (MonadIO m, IsSettings o) => o -> Word32 -> m ()
setSettingsGtkFontconfigTimestamp obj val = liftIO $ setObjectPropertyUInt32 obj "gtk-fontconfig-timestamp" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-fontconfig-timestamp@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkFontconfigTimestamp :: (IsSettings o) => Word32 -> IO (GValueConstruct o)
constructSettingsGtkFontconfigTimestamp val = constructObjectPropertyUInt32 "gtk-fontconfig-timestamp" val

#if ENABLE_OVERLOADING
data SettingsGtkFontconfigTimestampPropertyInfo
instance AttrInfo SettingsGtkFontconfigTimestampPropertyInfo where
    type AttrAllowedOps SettingsGtkFontconfigTimestampPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkFontconfigTimestampPropertyInfo = (~) Word32
    type AttrBaseTypeConstraint SettingsGtkFontconfigTimestampPropertyInfo = IsSettings
    type AttrGetType SettingsGtkFontconfigTimestampPropertyInfo = Word32
    type AttrLabel SettingsGtkFontconfigTimestampPropertyInfo = "gtk-fontconfig-timestamp"
    type AttrOrigin SettingsGtkFontconfigTimestampPropertyInfo = Settings
    attrGet _ = getSettingsGtkFontconfigTimestamp
    attrSet _ = setSettingsGtkFontconfigTimestamp
    attrConstruct _ = constructSettingsGtkFontconfigTimestamp
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-icon-sizes"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-icon-sizes@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkIconSizes
@
-}
getSettingsGtkIconSizes :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkIconSizes obj = liftIO $ getObjectPropertyString obj "gtk-icon-sizes"

{- |
Set the value of the “@gtk-icon-sizes@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkIconSizes 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkIconSizes :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkIconSizes obj val = liftIO $ setObjectPropertyString obj "gtk-icon-sizes" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-icon-sizes@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkIconSizes :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkIconSizes val = constructObjectPropertyString "gtk-icon-sizes" (Just val)

{- |
Set the value of the “@gtk-icon-sizes@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkIconSizes
@
-}
clearSettingsGtkIconSizes :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkIconSizes obj = liftIO $ setObjectPropertyString obj "gtk-icon-sizes" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkIconSizesPropertyInfo
instance AttrInfo SettingsGtkIconSizesPropertyInfo where
    type AttrAllowedOps SettingsGtkIconSizesPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkIconSizesPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkIconSizesPropertyInfo = IsSettings
    type AttrGetType SettingsGtkIconSizesPropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkIconSizesPropertyInfo = "gtk-icon-sizes"
    type AttrOrigin SettingsGtkIconSizesPropertyInfo = Settings
    attrGet _ = getSettingsGtkIconSizes
    attrSet _ = setSettingsGtkIconSizes
    attrConstruct _ = constructSettingsGtkIconSizes
    attrClear _ = clearSettingsGtkIconSizes
#endif

-- VVV Prop "gtk-icon-theme-name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-icon-theme-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkIconThemeName
@
-}
getSettingsGtkIconThemeName :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkIconThemeName obj = liftIO $ getObjectPropertyString obj "gtk-icon-theme-name"

{- |
Set the value of the “@gtk-icon-theme-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkIconThemeName 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkIconThemeName :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkIconThemeName obj val = liftIO $ setObjectPropertyString obj "gtk-icon-theme-name" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-icon-theme-name@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkIconThemeName :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkIconThemeName val = constructObjectPropertyString "gtk-icon-theme-name" (Just val)

{- |
Set the value of the “@gtk-icon-theme-name@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkIconThemeName
@
-}
clearSettingsGtkIconThemeName :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkIconThemeName obj = liftIO $ setObjectPropertyString obj "gtk-icon-theme-name" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkIconThemeNamePropertyInfo
instance AttrInfo SettingsGtkIconThemeNamePropertyInfo where
    type AttrAllowedOps SettingsGtkIconThemeNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkIconThemeNamePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkIconThemeNamePropertyInfo = IsSettings
    type AttrGetType SettingsGtkIconThemeNamePropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkIconThemeNamePropertyInfo = "gtk-icon-theme-name"
    type AttrOrigin SettingsGtkIconThemeNamePropertyInfo = Settings
    attrGet _ = getSettingsGtkIconThemeName
    attrSet _ = setSettingsGtkIconThemeName
    attrConstruct _ = constructSettingsGtkIconThemeName
    attrClear _ = clearSettingsGtkIconThemeName
#endif

-- VVV Prop "gtk-im-module"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-im-module@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkImModule
@
-}
getSettingsGtkImModule :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkImModule obj = liftIO $ getObjectPropertyString obj "gtk-im-module"

{- |
Set the value of the “@gtk-im-module@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkImModule 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkImModule :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkImModule obj val = liftIO $ setObjectPropertyString obj "gtk-im-module" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-im-module@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkImModule :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkImModule val = constructObjectPropertyString "gtk-im-module" (Just val)

{- |
Set the value of the “@gtk-im-module@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkImModule
@
-}
clearSettingsGtkImModule :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkImModule obj = liftIO $ setObjectPropertyString obj "gtk-im-module" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkImModulePropertyInfo
instance AttrInfo SettingsGtkImModulePropertyInfo where
    type AttrAllowedOps SettingsGtkImModulePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkImModulePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkImModulePropertyInfo = IsSettings
    type AttrGetType SettingsGtkImModulePropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkImModulePropertyInfo = "gtk-im-module"
    type AttrOrigin SettingsGtkImModulePropertyInfo = Settings
    attrGet _ = getSettingsGtkImModule
    attrSet _ = setSettingsGtkImModule
    attrConstruct _ = constructSettingsGtkImModule
    attrClear _ = clearSettingsGtkImModule
#endif

-- VVV Prop "gtk-im-preedit-style"
   -- Type: TInterface (Name {namespace = "Gtk", name = "IMPreeditStyle"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-im-preedit-style@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkImPreeditStyle
@
-}
getSettingsGtkImPreeditStyle :: (MonadIO m, IsSettings o) => o -> m Gtk.Enums.IMPreeditStyle
getSettingsGtkImPreeditStyle obj = liftIO $ getObjectPropertyEnum obj "gtk-im-preedit-style"

{- |
Set the value of the “@gtk-im-preedit-style@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkImPreeditStyle 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkImPreeditStyle :: (MonadIO m, IsSettings o) => o -> Gtk.Enums.IMPreeditStyle -> m ()
setSettingsGtkImPreeditStyle obj val = liftIO $ setObjectPropertyEnum obj "gtk-im-preedit-style" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-im-preedit-style@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkImPreeditStyle :: (IsSettings o) => Gtk.Enums.IMPreeditStyle -> IO (GValueConstruct o)
constructSettingsGtkImPreeditStyle val = constructObjectPropertyEnum "gtk-im-preedit-style" val

#if ENABLE_OVERLOADING
data SettingsGtkImPreeditStylePropertyInfo
instance AttrInfo SettingsGtkImPreeditStylePropertyInfo where
    type AttrAllowedOps SettingsGtkImPreeditStylePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkImPreeditStylePropertyInfo = (~) Gtk.Enums.IMPreeditStyle
    type AttrBaseTypeConstraint SettingsGtkImPreeditStylePropertyInfo = IsSettings
    type AttrGetType SettingsGtkImPreeditStylePropertyInfo = Gtk.Enums.IMPreeditStyle
    type AttrLabel SettingsGtkImPreeditStylePropertyInfo = "gtk-im-preedit-style"
    type AttrOrigin SettingsGtkImPreeditStylePropertyInfo = Settings
    attrGet _ = getSettingsGtkImPreeditStyle
    attrSet _ = setSettingsGtkImPreeditStyle
    attrConstruct _ = constructSettingsGtkImPreeditStyle
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-im-status-style"
   -- Type: TInterface (Name {namespace = "Gtk", name = "IMStatusStyle"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-im-status-style@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkImStatusStyle
@
-}
getSettingsGtkImStatusStyle :: (MonadIO m, IsSettings o) => o -> m Gtk.Enums.IMStatusStyle
getSettingsGtkImStatusStyle obj = liftIO $ getObjectPropertyEnum obj "gtk-im-status-style"

{- |
Set the value of the “@gtk-im-status-style@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkImStatusStyle 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkImStatusStyle :: (MonadIO m, IsSettings o) => o -> Gtk.Enums.IMStatusStyle -> m ()
setSettingsGtkImStatusStyle obj val = liftIO $ setObjectPropertyEnum obj "gtk-im-status-style" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-im-status-style@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkImStatusStyle :: (IsSettings o) => Gtk.Enums.IMStatusStyle -> IO (GValueConstruct o)
constructSettingsGtkImStatusStyle val = constructObjectPropertyEnum "gtk-im-status-style" val

#if ENABLE_OVERLOADING
data SettingsGtkImStatusStylePropertyInfo
instance AttrInfo SettingsGtkImStatusStylePropertyInfo where
    type AttrAllowedOps SettingsGtkImStatusStylePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkImStatusStylePropertyInfo = (~) Gtk.Enums.IMStatusStyle
    type AttrBaseTypeConstraint SettingsGtkImStatusStylePropertyInfo = IsSettings
    type AttrGetType SettingsGtkImStatusStylePropertyInfo = Gtk.Enums.IMStatusStyle
    type AttrLabel SettingsGtkImStatusStylePropertyInfo = "gtk-im-status-style"
    type AttrOrigin SettingsGtkImStatusStylePropertyInfo = Settings
    attrGet _ = getSettingsGtkImStatusStyle
    attrSet _ = setSettingsGtkImStatusStyle
    attrConstruct _ = constructSettingsGtkImStatusStyle
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-key-theme-name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-key-theme-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkKeyThemeName
@
-}
getSettingsGtkKeyThemeName :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkKeyThemeName obj = liftIO $ getObjectPropertyString obj "gtk-key-theme-name"

{- |
Set the value of the “@gtk-key-theme-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkKeyThemeName 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkKeyThemeName :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkKeyThemeName obj val = liftIO $ setObjectPropertyString obj "gtk-key-theme-name" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-key-theme-name@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkKeyThemeName :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkKeyThemeName val = constructObjectPropertyString "gtk-key-theme-name" (Just val)

{- |
Set the value of the “@gtk-key-theme-name@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkKeyThemeName
@
-}
clearSettingsGtkKeyThemeName :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkKeyThemeName obj = liftIO $ setObjectPropertyString obj "gtk-key-theme-name" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkKeyThemeNamePropertyInfo
instance AttrInfo SettingsGtkKeyThemeNamePropertyInfo where
    type AttrAllowedOps SettingsGtkKeyThemeNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkKeyThemeNamePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkKeyThemeNamePropertyInfo = IsSettings
    type AttrGetType SettingsGtkKeyThemeNamePropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkKeyThemeNamePropertyInfo = "gtk-key-theme-name"
    type AttrOrigin SettingsGtkKeyThemeNamePropertyInfo = Settings
    attrGet _ = getSettingsGtkKeyThemeName
    attrSet _ = setSettingsGtkKeyThemeName
    attrConstruct _ = constructSettingsGtkKeyThemeName
    attrClear _ = clearSettingsGtkKeyThemeName
#endif

-- VVV Prop "gtk-keynav-cursor-only"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-keynav-cursor-only@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkKeynavCursorOnly
@
-}
getSettingsGtkKeynavCursorOnly :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkKeynavCursorOnly obj = liftIO $ getObjectPropertyBool obj "gtk-keynav-cursor-only"

{- |
Set the value of the “@gtk-keynav-cursor-only@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkKeynavCursorOnly 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkKeynavCursorOnly :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkKeynavCursorOnly obj val = liftIO $ setObjectPropertyBool obj "gtk-keynav-cursor-only" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-keynav-cursor-only@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkKeynavCursorOnly :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkKeynavCursorOnly val = constructObjectPropertyBool "gtk-keynav-cursor-only" val

#if ENABLE_OVERLOADING
data SettingsGtkKeynavCursorOnlyPropertyInfo
instance AttrInfo SettingsGtkKeynavCursorOnlyPropertyInfo where
    type AttrAllowedOps SettingsGtkKeynavCursorOnlyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkKeynavCursorOnlyPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkKeynavCursorOnlyPropertyInfo = IsSettings
    type AttrGetType SettingsGtkKeynavCursorOnlyPropertyInfo = Bool
    type AttrLabel SettingsGtkKeynavCursorOnlyPropertyInfo = "gtk-keynav-cursor-only"
    type AttrOrigin SettingsGtkKeynavCursorOnlyPropertyInfo = Settings
    attrGet _ = getSettingsGtkKeynavCursorOnly
    attrSet _ = setSettingsGtkKeynavCursorOnly
    attrConstruct _ = constructSettingsGtkKeynavCursorOnly
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-keynav-use-caret"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-keynav-use-caret@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkKeynavUseCaret
@
-}
getSettingsGtkKeynavUseCaret :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkKeynavUseCaret obj = liftIO $ getObjectPropertyBool obj "gtk-keynav-use-caret"

{- |
Set the value of the “@gtk-keynav-use-caret@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkKeynavUseCaret 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkKeynavUseCaret :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkKeynavUseCaret obj val = liftIO $ setObjectPropertyBool obj "gtk-keynav-use-caret" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-keynav-use-caret@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkKeynavUseCaret :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkKeynavUseCaret val = constructObjectPropertyBool "gtk-keynav-use-caret" val

#if ENABLE_OVERLOADING
data SettingsGtkKeynavUseCaretPropertyInfo
instance AttrInfo SettingsGtkKeynavUseCaretPropertyInfo where
    type AttrAllowedOps SettingsGtkKeynavUseCaretPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkKeynavUseCaretPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkKeynavUseCaretPropertyInfo = IsSettings
    type AttrGetType SettingsGtkKeynavUseCaretPropertyInfo = Bool
    type AttrLabel SettingsGtkKeynavUseCaretPropertyInfo = "gtk-keynav-use-caret"
    type AttrOrigin SettingsGtkKeynavUseCaretPropertyInfo = Settings
    attrGet _ = getSettingsGtkKeynavUseCaret
    attrSet _ = setSettingsGtkKeynavUseCaret
    attrConstruct _ = constructSettingsGtkKeynavUseCaret
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-keynav-wrap-around"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-keynav-wrap-around@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkKeynavWrapAround
@
-}
getSettingsGtkKeynavWrapAround :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkKeynavWrapAround obj = liftIO $ getObjectPropertyBool obj "gtk-keynav-wrap-around"

{- |
Set the value of the “@gtk-keynav-wrap-around@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkKeynavWrapAround 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkKeynavWrapAround :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkKeynavWrapAround obj val = liftIO $ setObjectPropertyBool obj "gtk-keynav-wrap-around" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-keynav-wrap-around@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkKeynavWrapAround :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkKeynavWrapAround val = constructObjectPropertyBool "gtk-keynav-wrap-around" val

#if ENABLE_OVERLOADING
data SettingsGtkKeynavWrapAroundPropertyInfo
instance AttrInfo SettingsGtkKeynavWrapAroundPropertyInfo where
    type AttrAllowedOps SettingsGtkKeynavWrapAroundPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkKeynavWrapAroundPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkKeynavWrapAroundPropertyInfo = IsSettings
    type AttrGetType SettingsGtkKeynavWrapAroundPropertyInfo = Bool
    type AttrLabel SettingsGtkKeynavWrapAroundPropertyInfo = "gtk-keynav-wrap-around"
    type AttrOrigin SettingsGtkKeynavWrapAroundPropertyInfo = Settings
    attrGet _ = getSettingsGtkKeynavWrapAround
    attrSet _ = setSettingsGtkKeynavWrapAround
    attrConstruct _ = constructSettingsGtkKeynavWrapAround
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-label-select-on-focus"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-label-select-on-focus@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkLabelSelectOnFocus
@
-}
getSettingsGtkLabelSelectOnFocus :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkLabelSelectOnFocus obj = liftIO $ getObjectPropertyBool obj "gtk-label-select-on-focus"

{- |
Set the value of the “@gtk-label-select-on-focus@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkLabelSelectOnFocus 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkLabelSelectOnFocus :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkLabelSelectOnFocus obj val = liftIO $ setObjectPropertyBool obj "gtk-label-select-on-focus" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-label-select-on-focus@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkLabelSelectOnFocus :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkLabelSelectOnFocus val = constructObjectPropertyBool "gtk-label-select-on-focus" val

#if ENABLE_OVERLOADING
data SettingsGtkLabelSelectOnFocusPropertyInfo
instance AttrInfo SettingsGtkLabelSelectOnFocusPropertyInfo where
    type AttrAllowedOps SettingsGtkLabelSelectOnFocusPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkLabelSelectOnFocusPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkLabelSelectOnFocusPropertyInfo = IsSettings
    type AttrGetType SettingsGtkLabelSelectOnFocusPropertyInfo = Bool
    type AttrLabel SettingsGtkLabelSelectOnFocusPropertyInfo = "gtk-label-select-on-focus"
    type AttrOrigin SettingsGtkLabelSelectOnFocusPropertyInfo = Settings
    attrGet _ = getSettingsGtkLabelSelectOnFocus
    attrSet _ = setSettingsGtkLabelSelectOnFocus
    attrConstruct _ = constructSettingsGtkLabelSelectOnFocus
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-long-press-time"
   -- Type: TBasicType TUInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-long-press-time@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkLongPressTime
@
-}
getSettingsGtkLongPressTime :: (MonadIO m, IsSettings o) => o -> m Word32
getSettingsGtkLongPressTime obj = liftIO $ getObjectPropertyUInt32 obj "gtk-long-press-time"

{- |
Set the value of the “@gtk-long-press-time@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkLongPressTime 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkLongPressTime :: (MonadIO m, IsSettings o) => o -> Word32 -> m ()
setSettingsGtkLongPressTime obj val = liftIO $ setObjectPropertyUInt32 obj "gtk-long-press-time" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-long-press-time@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkLongPressTime :: (IsSettings o) => Word32 -> IO (GValueConstruct o)
constructSettingsGtkLongPressTime val = constructObjectPropertyUInt32 "gtk-long-press-time" val

#if ENABLE_OVERLOADING
data SettingsGtkLongPressTimePropertyInfo
instance AttrInfo SettingsGtkLongPressTimePropertyInfo where
    type AttrAllowedOps SettingsGtkLongPressTimePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkLongPressTimePropertyInfo = (~) Word32
    type AttrBaseTypeConstraint SettingsGtkLongPressTimePropertyInfo = IsSettings
    type AttrGetType SettingsGtkLongPressTimePropertyInfo = Word32
    type AttrLabel SettingsGtkLongPressTimePropertyInfo = "gtk-long-press-time"
    type AttrOrigin SettingsGtkLongPressTimePropertyInfo = Settings
    attrGet _ = getSettingsGtkLongPressTime
    attrSet _ = setSettingsGtkLongPressTime
    attrConstruct _ = constructSettingsGtkLongPressTime
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-menu-bar-accel"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-menu-bar-accel@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkMenuBarAccel
@
-}
getSettingsGtkMenuBarAccel :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkMenuBarAccel obj = liftIO $ getObjectPropertyString obj "gtk-menu-bar-accel"

{- |
Set the value of the “@gtk-menu-bar-accel@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkMenuBarAccel 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkMenuBarAccel :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkMenuBarAccel obj val = liftIO $ setObjectPropertyString obj "gtk-menu-bar-accel" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-menu-bar-accel@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkMenuBarAccel :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkMenuBarAccel val = constructObjectPropertyString "gtk-menu-bar-accel" (Just val)

{- |
Set the value of the “@gtk-menu-bar-accel@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkMenuBarAccel
@
-}
clearSettingsGtkMenuBarAccel :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkMenuBarAccel obj = liftIO $ setObjectPropertyString obj "gtk-menu-bar-accel" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkMenuBarAccelPropertyInfo
instance AttrInfo SettingsGtkMenuBarAccelPropertyInfo where
    type AttrAllowedOps SettingsGtkMenuBarAccelPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkMenuBarAccelPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkMenuBarAccelPropertyInfo = IsSettings
    type AttrGetType SettingsGtkMenuBarAccelPropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkMenuBarAccelPropertyInfo = "gtk-menu-bar-accel"
    type AttrOrigin SettingsGtkMenuBarAccelPropertyInfo = Settings
    attrGet _ = getSettingsGtkMenuBarAccel
    attrSet _ = setSettingsGtkMenuBarAccel
    attrConstruct _ = constructSettingsGtkMenuBarAccel
    attrClear _ = clearSettingsGtkMenuBarAccel
#endif

-- VVV Prop "gtk-menu-bar-popup-delay"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-menu-bar-popup-delay@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkMenuBarPopupDelay
@
-}
getSettingsGtkMenuBarPopupDelay :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkMenuBarPopupDelay obj = liftIO $ getObjectPropertyInt32 obj "gtk-menu-bar-popup-delay"

{- |
Set the value of the “@gtk-menu-bar-popup-delay@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkMenuBarPopupDelay 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkMenuBarPopupDelay :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkMenuBarPopupDelay obj val = liftIO $ setObjectPropertyInt32 obj "gtk-menu-bar-popup-delay" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-menu-bar-popup-delay@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkMenuBarPopupDelay :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkMenuBarPopupDelay val = constructObjectPropertyInt32 "gtk-menu-bar-popup-delay" val

#if ENABLE_OVERLOADING
data SettingsGtkMenuBarPopupDelayPropertyInfo
instance AttrInfo SettingsGtkMenuBarPopupDelayPropertyInfo where
    type AttrAllowedOps SettingsGtkMenuBarPopupDelayPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkMenuBarPopupDelayPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkMenuBarPopupDelayPropertyInfo = IsSettings
    type AttrGetType SettingsGtkMenuBarPopupDelayPropertyInfo = Int32
    type AttrLabel SettingsGtkMenuBarPopupDelayPropertyInfo = "gtk-menu-bar-popup-delay"
    type AttrOrigin SettingsGtkMenuBarPopupDelayPropertyInfo = Settings
    attrGet _ = getSettingsGtkMenuBarPopupDelay
    attrSet _ = setSettingsGtkMenuBarPopupDelay
    attrConstruct _ = constructSettingsGtkMenuBarPopupDelay
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-menu-images"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-menu-images@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkMenuImages
@
-}
getSettingsGtkMenuImages :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkMenuImages obj = liftIO $ getObjectPropertyBool obj "gtk-menu-images"

{- |
Set the value of the “@gtk-menu-images@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkMenuImages 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkMenuImages :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkMenuImages obj val = liftIO $ setObjectPropertyBool obj "gtk-menu-images" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-menu-images@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkMenuImages :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkMenuImages val = constructObjectPropertyBool "gtk-menu-images" val

#if ENABLE_OVERLOADING
data SettingsGtkMenuImagesPropertyInfo
instance AttrInfo SettingsGtkMenuImagesPropertyInfo where
    type AttrAllowedOps SettingsGtkMenuImagesPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkMenuImagesPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkMenuImagesPropertyInfo = IsSettings
    type AttrGetType SettingsGtkMenuImagesPropertyInfo = Bool
    type AttrLabel SettingsGtkMenuImagesPropertyInfo = "gtk-menu-images"
    type AttrOrigin SettingsGtkMenuImagesPropertyInfo = Settings
    attrGet _ = getSettingsGtkMenuImages
    attrSet _ = setSettingsGtkMenuImages
    attrConstruct _ = constructSettingsGtkMenuImages
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-menu-popdown-delay"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-menu-popdown-delay@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkMenuPopdownDelay
@
-}
getSettingsGtkMenuPopdownDelay :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkMenuPopdownDelay obj = liftIO $ getObjectPropertyInt32 obj "gtk-menu-popdown-delay"

{- |
Set the value of the “@gtk-menu-popdown-delay@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkMenuPopdownDelay 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkMenuPopdownDelay :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkMenuPopdownDelay obj val = liftIO $ setObjectPropertyInt32 obj "gtk-menu-popdown-delay" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-menu-popdown-delay@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkMenuPopdownDelay :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkMenuPopdownDelay val = constructObjectPropertyInt32 "gtk-menu-popdown-delay" val

#if ENABLE_OVERLOADING
data SettingsGtkMenuPopdownDelayPropertyInfo
instance AttrInfo SettingsGtkMenuPopdownDelayPropertyInfo where
    type AttrAllowedOps SettingsGtkMenuPopdownDelayPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkMenuPopdownDelayPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkMenuPopdownDelayPropertyInfo = IsSettings
    type AttrGetType SettingsGtkMenuPopdownDelayPropertyInfo = Int32
    type AttrLabel SettingsGtkMenuPopdownDelayPropertyInfo = "gtk-menu-popdown-delay"
    type AttrOrigin SettingsGtkMenuPopdownDelayPropertyInfo = Settings
    attrGet _ = getSettingsGtkMenuPopdownDelay
    attrSet _ = setSettingsGtkMenuPopdownDelay
    attrConstruct _ = constructSettingsGtkMenuPopdownDelay
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-menu-popup-delay"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-menu-popup-delay@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkMenuPopupDelay
@
-}
getSettingsGtkMenuPopupDelay :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkMenuPopupDelay obj = liftIO $ getObjectPropertyInt32 obj "gtk-menu-popup-delay"

{- |
Set the value of the “@gtk-menu-popup-delay@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkMenuPopupDelay 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkMenuPopupDelay :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkMenuPopupDelay obj val = liftIO $ setObjectPropertyInt32 obj "gtk-menu-popup-delay" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-menu-popup-delay@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkMenuPopupDelay :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkMenuPopupDelay val = constructObjectPropertyInt32 "gtk-menu-popup-delay" val

#if ENABLE_OVERLOADING
data SettingsGtkMenuPopupDelayPropertyInfo
instance AttrInfo SettingsGtkMenuPopupDelayPropertyInfo where
    type AttrAllowedOps SettingsGtkMenuPopupDelayPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkMenuPopupDelayPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkMenuPopupDelayPropertyInfo = IsSettings
    type AttrGetType SettingsGtkMenuPopupDelayPropertyInfo = Int32
    type AttrLabel SettingsGtkMenuPopupDelayPropertyInfo = "gtk-menu-popup-delay"
    type AttrOrigin SettingsGtkMenuPopupDelayPropertyInfo = Settings
    attrGet _ = getSettingsGtkMenuPopupDelay
    attrSet _ = setSettingsGtkMenuPopupDelay
    attrConstruct _ = constructSettingsGtkMenuPopupDelay
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-modules"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-modules@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkModules
@
-}
getSettingsGtkModules :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkModules obj = liftIO $ getObjectPropertyString obj "gtk-modules"

{- |
Set the value of the “@gtk-modules@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkModules 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkModules :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkModules obj val = liftIO $ setObjectPropertyString obj "gtk-modules" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-modules@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkModules :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkModules val = constructObjectPropertyString "gtk-modules" (Just val)

{- |
Set the value of the “@gtk-modules@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkModules
@
-}
clearSettingsGtkModules :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkModules obj = liftIO $ setObjectPropertyString obj "gtk-modules" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkModulesPropertyInfo
instance AttrInfo SettingsGtkModulesPropertyInfo where
    type AttrAllowedOps SettingsGtkModulesPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkModulesPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkModulesPropertyInfo = IsSettings
    type AttrGetType SettingsGtkModulesPropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkModulesPropertyInfo = "gtk-modules"
    type AttrOrigin SettingsGtkModulesPropertyInfo = Settings
    attrGet _ = getSettingsGtkModules
    attrSet _ = setSettingsGtkModules
    attrConstruct _ = constructSettingsGtkModules
    attrClear _ = clearSettingsGtkModules
#endif

-- VVV Prop "gtk-primary-button-warps-slider"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-primary-button-warps-slider@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkPrimaryButtonWarpsSlider
@
-}
getSettingsGtkPrimaryButtonWarpsSlider :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkPrimaryButtonWarpsSlider obj = liftIO $ getObjectPropertyBool obj "gtk-primary-button-warps-slider"

{- |
Set the value of the “@gtk-primary-button-warps-slider@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkPrimaryButtonWarpsSlider 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkPrimaryButtonWarpsSlider :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkPrimaryButtonWarpsSlider obj val = liftIO $ setObjectPropertyBool obj "gtk-primary-button-warps-slider" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-primary-button-warps-slider@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkPrimaryButtonWarpsSlider :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkPrimaryButtonWarpsSlider val = constructObjectPropertyBool "gtk-primary-button-warps-slider" val

#if ENABLE_OVERLOADING
data SettingsGtkPrimaryButtonWarpsSliderPropertyInfo
instance AttrInfo SettingsGtkPrimaryButtonWarpsSliderPropertyInfo where
    type AttrAllowedOps SettingsGtkPrimaryButtonWarpsSliderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkPrimaryButtonWarpsSliderPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkPrimaryButtonWarpsSliderPropertyInfo = IsSettings
    type AttrGetType SettingsGtkPrimaryButtonWarpsSliderPropertyInfo = Bool
    type AttrLabel SettingsGtkPrimaryButtonWarpsSliderPropertyInfo = "gtk-primary-button-warps-slider"
    type AttrOrigin SettingsGtkPrimaryButtonWarpsSliderPropertyInfo = Settings
    attrGet _ = getSettingsGtkPrimaryButtonWarpsSlider
    attrSet _ = setSettingsGtkPrimaryButtonWarpsSlider
    attrConstruct _ = constructSettingsGtkPrimaryButtonWarpsSlider
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-print-backends"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-print-backends@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkPrintBackends
@
-}
getSettingsGtkPrintBackends :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkPrintBackends obj = liftIO $ getObjectPropertyString obj "gtk-print-backends"

{- |
Set the value of the “@gtk-print-backends@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkPrintBackends 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkPrintBackends :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkPrintBackends obj val = liftIO $ setObjectPropertyString obj "gtk-print-backends" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-print-backends@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkPrintBackends :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkPrintBackends val = constructObjectPropertyString "gtk-print-backends" (Just val)

{- |
Set the value of the “@gtk-print-backends@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkPrintBackends
@
-}
clearSettingsGtkPrintBackends :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkPrintBackends obj = liftIO $ setObjectPropertyString obj "gtk-print-backends" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkPrintBackendsPropertyInfo
instance AttrInfo SettingsGtkPrintBackendsPropertyInfo where
    type AttrAllowedOps SettingsGtkPrintBackendsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkPrintBackendsPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkPrintBackendsPropertyInfo = IsSettings
    type AttrGetType SettingsGtkPrintBackendsPropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkPrintBackendsPropertyInfo = "gtk-print-backends"
    type AttrOrigin SettingsGtkPrintBackendsPropertyInfo = Settings
    attrGet _ = getSettingsGtkPrintBackends
    attrSet _ = setSettingsGtkPrintBackends
    attrConstruct _ = constructSettingsGtkPrintBackends
    attrClear _ = clearSettingsGtkPrintBackends
#endif

-- VVV Prop "gtk-print-preview-command"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-print-preview-command@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkPrintPreviewCommand
@
-}
getSettingsGtkPrintPreviewCommand :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkPrintPreviewCommand obj = liftIO $ getObjectPropertyString obj "gtk-print-preview-command"

{- |
Set the value of the “@gtk-print-preview-command@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkPrintPreviewCommand 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkPrintPreviewCommand :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkPrintPreviewCommand obj val = liftIO $ setObjectPropertyString obj "gtk-print-preview-command" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-print-preview-command@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkPrintPreviewCommand :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkPrintPreviewCommand val = constructObjectPropertyString "gtk-print-preview-command" (Just val)

{- |
Set the value of the “@gtk-print-preview-command@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkPrintPreviewCommand
@
-}
clearSettingsGtkPrintPreviewCommand :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkPrintPreviewCommand obj = liftIO $ setObjectPropertyString obj "gtk-print-preview-command" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkPrintPreviewCommandPropertyInfo
instance AttrInfo SettingsGtkPrintPreviewCommandPropertyInfo where
    type AttrAllowedOps SettingsGtkPrintPreviewCommandPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkPrintPreviewCommandPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkPrintPreviewCommandPropertyInfo = IsSettings
    type AttrGetType SettingsGtkPrintPreviewCommandPropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkPrintPreviewCommandPropertyInfo = "gtk-print-preview-command"
    type AttrOrigin SettingsGtkPrintPreviewCommandPropertyInfo = Settings
    attrGet _ = getSettingsGtkPrintPreviewCommand
    attrSet _ = setSettingsGtkPrintPreviewCommand
    attrConstruct _ = constructSettingsGtkPrintPreviewCommand
    attrClear _ = clearSettingsGtkPrintPreviewCommand
#endif

-- VVV Prop "gtk-recent-files-enabled"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-recent-files-enabled@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkRecentFilesEnabled
@
-}
getSettingsGtkRecentFilesEnabled :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkRecentFilesEnabled obj = liftIO $ getObjectPropertyBool obj "gtk-recent-files-enabled"

{- |
Set the value of the “@gtk-recent-files-enabled@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkRecentFilesEnabled 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkRecentFilesEnabled :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkRecentFilesEnabled obj val = liftIO $ setObjectPropertyBool obj "gtk-recent-files-enabled" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-recent-files-enabled@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkRecentFilesEnabled :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkRecentFilesEnabled val = constructObjectPropertyBool "gtk-recent-files-enabled" val

#if ENABLE_OVERLOADING
data SettingsGtkRecentFilesEnabledPropertyInfo
instance AttrInfo SettingsGtkRecentFilesEnabledPropertyInfo where
    type AttrAllowedOps SettingsGtkRecentFilesEnabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkRecentFilesEnabledPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkRecentFilesEnabledPropertyInfo = IsSettings
    type AttrGetType SettingsGtkRecentFilesEnabledPropertyInfo = Bool
    type AttrLabel SettingsGtkRecentFilesEnabledPropertyInfo = "gtk-recent-files-enabled"
    type AttrOrigin SettingsGtkRecentFilesEnabledPropertyInfo = Settings
    attrGet _ = getSettingsGtkRecentFilesEnabled
    attrSet _ = setSettingsGtkRecentFilesEnabled
    attrConstruct _ = constructSettingsGtkRecentFilesEnabled
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-recent-files-limit"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-recent-files-limit@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkRecentFilesLimit
@
-}
getSettingsGtkRecentFilesLimit :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkRecentFilesLimit obj = liftIO $ getObjectPropertyInt32 obj "gtk-recent-files-limit"

{- |
Set the value of the “@gtk-recent-files-limit@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkRecentFilesLimit 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkRecentFilesLimit :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkRecentFilesLimit obj val = liftIO $ setObjectPropertyInt32 obj "gtk-recent-files-limit" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-recent-files-limit@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkRecentFilesLimit :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkRecentFilesLimit val = constructObjectPropertyInt32 "gtk-recent-files-limit" val

#if ENABLE_OVERLOADING
data SettingsGtkRecentFilesLimitPropertyInfo
instance AttrInfo SettingsGtkRecentFilesLimitPropertyInfo where
    type AttrAllowedOps SettingsGtkRecentFilesLimitPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkRecentFilesLimitPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkRecentFilesLimitPropertyInfo = IsSettings
    type AttrGetType SettingsGtkRecentFilesLimitPropertyInfo = Int32
    type AttrLabel SettingsGtkRecentFilesLimitPropertyInfo = "gtk-recent-files-limit"
    type AttrOrigin SettingsGtkRecentFilesLimitPropertyInfo = Settings
    attrGet _ = getSettingsGtkRecentFilesLimit
    attrSet _ = setSettingsGtkRecentFilesLimit
    attrConstruct _ = constructSettingsGtkRecentFilesLimit
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-recent-files-max-age"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-recent-files-max-age@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkRecentFilesMaxAge
@
-}
getSettingsGtkRecentFilesMaxAge :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkRecentFilesMaxAge obj = liftIO $ getObjectPropertyInt32 obj "gtk-recent-files-max-age"

{- |
Set the value of the “@gtk-recent-files-max-age@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkRecentFilesMaxAge 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkRecentFilesMaxAge :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkRecentFilesMaxAge obj val = liftIO $ setObjectPropertyInt32 obj "gtk-recent-files-max-age" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-recent-files-max-age@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkRecentFilesMaxAge :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkRecentFilesMaxAge val = constructObjectPropertyInt32 "gtk-recent-files-max-age" val

#if ENABLE_OVERLOADING
data SettingsGtkRecentFilesMaxAgePropertyInfo
instance AttrInfo SettingsGtkRecentFilesMaxAgePropertyInfo where
    type AttrAllowedOps SettingsGtkRecentFilesMaxAgePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkRecentFilesMaxAgePropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkRecentFilesMaxAgePropertyInfo = IsSettings
    type AttrGetType SettingsGtkRecentFilesMaxAgePropertyInfo = Int32
    type AttrLabel SettingsGtkRecentFilesMaxAgePropertyInfo = "gtk-recent-files-max-age"
    type AttrOrigin SettingsGtkRecentFilesMaxAgePropertyInfo = Settings
    attrGet _ = getSettingsGtkRecentFilesMaxAge
    attrSet _ = setSettingsGtkRecentFilesMaxAge
    attrConstruct _ = constructSettingsGtkRecentFilesMaxAge
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-scrolled-window-placement"
   -- Type: TInterface (Name {namespace = "Gtk", name = "CornerType"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-scrolled-window-placement@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkScrolledWindowPlacement
@
-}
getSettingsGtkScrolledWindowPlacement :: (MonadIO m, IsSettings o) => o -> m Gtk.Enums.CornerType
getSettingsGtkScrolledWindowPlacement obj = liftIO $ getObjectPropertyEnum obj "gtk-scrolled-window-placement"

{- |
Set the value of the “@gtk-scrolled-window-placement@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkScrolledWindowPlacement 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkScrolledWindowPlacement :: (MonadIO m, IsSettings o) => o -> Gtk.Enums.CornerType -> m ()
setSettingsGtkScrolledWindowPlacement obj val = liftIO $ setObjectPropertyEnum obj "gtk-scrolled-window-placement" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-scrolled-window-placement@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkScrolledWindowPlacement :: (IsSettings o) => Gtk.Enums.CornerType -> IO (GValueConstruct o)
constructSettingsGtkScrolledWindowPlacement val = constructObjectPropertyEnum "gtk-scrolled-window-placement" val

#if ENABLE_OVERLOADING
data SettingsGtkScrolledWindowPlacementPropertyInfo
instance AttrInfo SettingsGtkScrolledWindowPlacementPropertyInfo where
    type AttrAllowedOps SettingsGtkScrolledWindowPlacementPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkScrolledWindowPlacementPropertyInfo = (~) Gtk.Enums.CornerType
    type AttrBaseTypeConstraint SettingsGtkScrolledWindowPlacementPropertyInfo = IsSettings
    type AttrGetType SettingsGtkScrolledWindowPlacementPropertyInfo = Gtk.Enums.CornerType
    type AttrLabel SettingsGtkScrolledWindowPlacementPropertyInfo = "gtk-scrolled-window-placement"
    type AttrOrigin SettingsGtkScrolledWindowPlacementPropertyInfo = Settings
    attrGet _ = getSettingsGtkScrolledWindowPlacement
    attrSet _ = setSettingsGtkScrolledWindowPlacement
    attrConstruct _ = constructSettingsGtkScrolledWindowPlacement
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-shell-shows-app-menu"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-shell-shows-app-menu@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkShellShowsAppMenu
@
-}
getSettingsGtkShellShowsAppMenu :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkShellShowsAppMenu obj = liftIO $ getObjectPropertyBool obj "gtk-shell-shows-app-menu"

{- |
Set the value of the “@gtk-shell-shows-app-menu@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkShellShowsAppMenu 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkShellShowsAppMenu :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkShellShowsAppMenu obj val = liftIO $ setObjectPropertyBool obj "gtk-shell-shows-app-menu" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-shell-shows-app-menu@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkShellShowsAppMenu :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkShellShowsAppMenu val = constructObjectPropertyBool "gtk-shell-shows-app-menu" val

#if ENABLE_OVERLOADING
data SettingsGtkShellShowsAppMenuPropertyInfo
instance AttrInfo SettingsGtkShellShowsAppMenuPropertyInfo where
    type AttrAllowedOps SettingsGtkShellShowsAppMenuPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkShellShowsAppMenuPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkShellShowsAppMenuPropertyInfo = IsSettings
    type AttrGetType SettingsGtkShellShowsAppMenuPropertyInfo = Bool
    type AttrLabel SettingsGtkShellShowsAppMenuPropertyInfo = "gtk-shell-shows-app-menu"
    type AttrOrigin SettingsGtkShellShowsAppMenuPropertyInfo = Settings
    attrGet _ = getSettingsGtkShellShowsAppMenu
    attrSet _ = setSettingsGtkShellShowsAppMenu
    attrConstruct _ = constructSettingsGtkShellShowsAppMenu
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-shell-shows-desktop"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-shell-shows-desktop@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkShellShowsDesktop
@
-}
getSettingsGtkShellShowsDesktop :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkShellShowsDesktop obj = liftIO $ getObjectPropertyBool obj "gtk-shell-shows-desktop"

{- |
Set the value of the “@gtk-shell-shows-desktop@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkShellShowsDesktop 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkShellShowsDesktop :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkShellShowsDesktop obj val = liftIO $ setObjectPropertyBool obj "gtk-shell-shows-desktop" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-shell-shows-desktop@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkShellShowsDesktop :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkShellShowsDesktop val = constructObjectPropertyBool "gtk-shell-shows-desktop" val

#if ENABLE_OVERLOADING
data SettingsGtkShellShowsDesktopPropertyInfo
instance AttrInfo SettingsGtkShellShowsDesktopPropertyInfo where
    type AttrAllowedOps SettingsGtkShellShowsDesktopPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkShellShowsDesktopPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkShellShowsDesktopPropertyInfo = IsSettings
    type AttrGetType SettingsGtkShellShowsDesktopPropertyInfo = Bool
    type AttrLabel SettingsGtkShellShowsDesktopPropertyInfo = "gtk-shell-shows-desktop"
    type AttrOrigin SettingsGtkShellShowsDesktopPropertyInfo = Settings
    attrGet _ = getSettingsGtkShellShowsDesktop
    attrSet _ = setSettingsGtkShellShowsDesktop
    attrConstruct _ = constructSettingsGtkShellShowsDesktop
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-shell-shows-menubar"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-shell-shows-menubar@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkShellShowsMenubar
@
-}
getSettingsGtkShellShowsMenubar :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkShellShowsMenubar obj = liftIO $ getObjectPropertyBool obj "gtk-shell-shows-menubar"

{- |
Set the value of the “@gtk-shell-shows-menubar@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkShellShowsMenubar 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkShellShowsMenubar :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkShellShowsMenubar obj val = liftIO $ setObjectPropertyBool obj "gtk-shell-shows-menubar" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-shell-shows-menubar@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkShellShowsMenubar :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkShellShowsMenubar val = constructObjectPropertyBool "gtk-shell-shows-menubar" val

#if ENABLE_OVERLOADING
data SettingsGtkShellShowsMenubarPropertyInfo
instance AttrInfo SettingsGtkShellShowsMenubarPropertyInfo where
    type AttrAllowedOps SettingsGtkShellShowsMenubarPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkShellShowsMenubarPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkShellShowsMenubarPropertyInfo = IsSettings
    type AttrGetType SettingsGtkShellShowsMenubarPropertyInfo = Bool
    type AttrLabel SettingsGtkShellShowsMenubarPropertyInfo = "gtk-shell-shows-menubar"
    type AttrOrigin SettingsGtkShellShowsMenubarPropertyInfo = Settings
    attrGet _ = getSettingsGtkShellShowsMenubar
    attrSet _ = setSettingsGtkShellShowsMenubar
    attrConstruct _ = constructSettingsGtkShellShowsMenubar
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-show-input-method-menu"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-show-input-method-menu@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkShowInputMethodMenu
@
-}
getSettingsGtkShowInputMethodMenu :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkShowInputMethodMenu obj = liftIO $ getObjectPropertyBool obj "gtk-show-input-method-menu"

{- |
Set the value of the “@gtk-show-input-method-menu@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkShowInputMethodMenu 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkShowInputMethodMenu :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkShowInputMethodMenu obj val = liftIO $ setObjectPropertyBool obj "gtk-show-input-method-menu" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-show-input-method-menu@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkShowInputMethodMenu :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkShowInputMethodMenu val = constructObjectPropertyBool "gtk-show-input-method-menu" val

#if ENABLE_OVERLOADING
data SettingsGtkShowInputMethodMenuPropertyInfo
instance AttrInfo SettingsGtkShowInputMethodMenuPropertyInfo where
    type AttrAllowedOps SettingsGtkShowInputMethodMenuPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkShowInputMethodMenuPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkShowInputMethodMenuPropertyInfo = IsSettings
    type AttrGetType SettingsGtkShowInputMethodMenuPropertyInfo = Bool
    type AttrLabel SettingsGtkShowInputMethodMenuPropertyInfo = "gtk-show-input-method-menu"
    type AttrOrigin SettingsGtkShowInputMethodMenuPropertyInfo = Settings
    attrGet _ = getSettingsGtkShowInputMethodMenu
    attrSet _ = setSettingsGtkShowInputMethodMenu
    attrConstruct _ = constructSettingsGtkShowInputMethodMenu
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-show-unicode-menu"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-show-unicode-menu@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkShowUnicodeMenu
@
-}
getSettingsGtkShowUnicodeMenu :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkShowUnicodeMenu obj = liftIO $ getObjectPropertyBool obj "gtk-show-unicode-menu"

{- |
Set the value of the “@gtk-show-unicode-menu@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkShowUnicodeMenu 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkShowUnicodeMenu :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkShowUnicodeMenu obj val = liftIO $ setObjectPropertyBool obj "gtk-show-unicode-menu" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-show-unicode-menu@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkShowUnicodeMenu :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkShowUnicodeMenu val = constructObjectPropertyBool "gtk-show-unicode-menu" val

#if ENABLE_OVERLOADING
data SettingsGtkShowUnicodeMenuPropertyInfo
instance AttrInfo SettingsGtkShowUnicodeMenuPropertyInfo where
    type AttrAllowedOps SettingsGtkShowUnicodeMenuPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkShowUnicodeMenuPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkShowUnicodeMenuPropertyInfo = IsSettings
    type AttrGetType SettingsGtkShowUnicodeMenuPropertyInfo = Bool
    type AttrLabel SettingsGtkShowUnicodeMenuPropertyInfo = "gtk-show-unicode-menu"
    type AttrOrigin SettingsGtkShowUnicodeMenuPropertyInfo = Settings
    attrGet _ = getSettingsGtkShowUnicodeMenu
    attrSet _ = setSettingsGtkShowUnicodeMenu
    attrConstruct _ = constructSettingsGtkShowUnicodeMenu
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-sound-theme-name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-sound-theme-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkSoundThemeName
@
-}
getSettingsGtkSoundThemeName :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkSoundThemeName obj = liftIO $ getObjectPropertyString obj "gtk-sound-theme-name"

{- |
Set the value of the “@gtk-sound-theme-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkSoundThemeName 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkSoundThemeName :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkSoundThemeName obj val = liftIO $ setObjectPropertyString obj "gtk-sound-theme-name" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-sound-theme-name@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkSoundThemeName :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkSoundThemeName val = constructObjectPropertyString "gtk-sound-theme-name" (Just val)

{- |
Set the value of the “@gtk-sound-theme-name@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkSoundThemeName
@
-}
clearSettingsGtkSoundThemeName :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkSoundThemeName obj = liftIO $ setObjectPropertyString obj "gtk-sound-theme-name" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkSoundThemeNamePropertyInfo
instance AttrInfo SettingsGtkSoundThemeNamePropertyInfo where
    type AttrAllowedOps SettingsGtkSoundThemeNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkSoundThemeNamePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkSoundThemeNamePropertyInfo = IsSettings
    type AttrGetType SettingsGtkSoundThemeNamePropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkSoundThemeNamePropertyInfo = "gtk-sound-theme-name"
    type AttrOrigin SettingsGtkSoundThemeNamePropertyInfo = Settings
    attrGet _ = getSettingsGtkSoundThemeName
    attrSet _ = setSettingsGtkSoundThemeName
    attrConstruct _ = constructSettingsGtkSoundThemeName
    attrClear _ = clearSettingsGtkSoundThemeName
#endif

-- VVV Prop "gtk-split-cursor"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-split-cursor@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkSplitCursor
@
-}
getSettingsGtkSplitCursor :: (MonadIO m, IsSettings o) => o -> m Bool
getSettingsGtkSplitCursor obj = liftIO $ getObjectPropertyBool obj "gtk-split-cursor"

{- |
Set the value of the “@gtk-split-cursor@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkSplitCursor 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkSplitCursor :: (MonadIO m, IsSettings o) => o -> Bool -> m ()
setSettingsGtkSplitCursor obj val = liftIO $ setObjectPropertyBool obj "gtk-split-cursor" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-split-cursor@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkSplitCursor :: (IsSettings o) => Bool -> IO (GValueConstruct o)
constructSettingsGtkSplitCursor val = constructObjectPropertyBool "gtk-split-cursor" val

#if ENABLE_OVERLOADING
data SettingsGtkSplitCursorPropertyInfo
instance AttrInfo SettingsGtkSplitCursorPropertyInfo where
    type AttrAllowedOps SettingsGtkSplitCursorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkSplitCursorPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint SettingsGtkSplitCursorPropertyInfo = IsSettings
    type AttrGetType SettingsGtkSplitCursorPropertyInfo = Bool
    type AttrLabel SettingsGtkSplitCursorPropertyInfo = "gtk-split-cursor"
    type AttrOrigin SettingsGtkSplitCursorPropertyInfo = Settings
    attrGet _ = getSettingsGtkSplitCursor
    attrSet _ = setSettingsGtkSplitCursor
    attrConstruct _ = constructSettingsGtkSplitCursor
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-theme-name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-theme-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkThemeName
@
-}
getSettingsGtkThemeName :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkThemeName obj = liftIO $ getObjectPropertyString obj "gtk-theme-name"

{- |
Set the value of the “@gtk-theme-name@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkThemeName 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkThemeName :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkThemeName obj val = liftIO $ setObjectPropertyString obj "gtk-theme-name" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-theme-name@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkThemeName :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkThemeName val = constructObjectPropertyString "gtk-theme-name" (Just val)

{- |
Set the value of the “@gtk-theme-name@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkThemeName
@
-}
clearSettingsGtkThemeName :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkThemeName obj = liftIO $ setObjectPropertyString obj "gtk-theme-name" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkThemeNamePropertyInfo
instance AttrInfo SettingsGtkThemeNamePropertyInfo where
    type AttrAllowedOps SettingsGtkThemeNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkThemeNamePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkThemeNamePropertyInfo = IsSettings
    type AttrGetType SettingsGtkThemeNamePropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkThemeNamePropertyInfo = "gtk-theme-name"
    type AttrOrigin SettingsGtkThemeNamePropertyInfo = Settings
    attrGet _ = getSettingsGtkThemeName
    attrSet _ = setSettingsGtkThemeName
    attrConstruct _ = constructSettingsGtkThemeName
    attrClear _ = clearSettingsGtkThemeName
#endif

-- VVV Prop "gtk-timeout-expand"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-timeout-expand@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkTimeoutExpand
@
-}
getSettingsGtkTimeoutExpand :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkTimeoutExpand obj = liftIO $ getObjectPropertyInt32 obj "gtk-timeout-expand"

{- |
Set the value of the “@gtk-timeout-expand@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkTimeoutExpand 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkTimeoutExpand :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkTimeoutExpand obj val = liftIO $ setObjectPropertyInt32 obj "gtk-timeout-expand" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-timeout-expand@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkTimeoutExpand :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkTimeoutExpand val = constructObjectPropertyInt32 "gtk-timeout-expand" val

#if ENABLE_OVERLOADING
data SettingsGtkTimeoutExpandPropertyInfo
instance AttrInfo SettingsGtkTimeoutExpandPropertyInfo where
    type AttrAllowedOps SettingsGtkTimeoutExpandPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkTimeoutExpandPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkTimeoutExpandPropertyInfo = IsSettings
    type AttrGetType SettingsGtkTimeoutExpandPropertyInfo = Int32
    type AttrLabel SettingsGtkTimeoutExpandPropertyInfo = "gtk-timeout-expand"
    type AttrOrigin SettingsGtkTimeoutExpandPropertyInfo = Settings
    attrGet _ = getSettingsGtkTimeoutExpand
    attrSet _ = setSettingsGtkTimeoutExpand
    attrConstruct _ = constructSettingsGtkTimeoutExpand
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-timeout-initial"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-timeout-initial@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkTimeoutInitial
@
-}
getSettingsGtkTimeoutInitial :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkTimeoutInitial obj = liftIO $ getObjectPropertyInt32 obj "gtk-timeout-initial"

{- |
Set the value of the “@gtk-timeout-initial@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkTimeoutInitial 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkTimeoutInitial :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkTimeoutInitial obj val = liftIO $ setObjectPropertyInt32 obj "gtk-timeout-initial" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-timeout-initial@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkTimeoutInitial :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkTimeoutInitial val = constructObjectPropertyInt32 "gtk-timeout-initial" val

#if ENABLE_OVERLOADING
data SettingsGtkTimeoutInitialPropertyInfo
instance AttrInfo SettingsGtkTimeoutInitialPropertyInfo where
    type AttrAllowedOps SettingsGtkTimeoutInitialPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkTimeoutInitialPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkTimeoutInitialPropertyInfo = IsSettings
    type AttrGetType SettingsGtkTimeoutInitialPropertyInfo = Int32
    type AttrLabel SettingsGtkTimeoutInitialPropertyInfo = "gtk-timeout-initial"
    type AttrOrigin SettingsGtkTimeoutInitialPropertyInfo = Settings
    attrGet _ = getSettingsGtkTimeoutInitial
    attrSet _ = setSettingsGtkTimeoutInitial
    attrConstruct _ = constructSettingsGtkTimeoutInitial
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-timeout-repeat"
   -- Type: TBasicType TInt
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-timeout-repeat@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkTimeoutRepeat
@
-}
getSettingsGtkTimeoutRepeat :: (MonadIO m, IsSettings o) => o -> m Int32
getSettingsGtkTimeoutRepeat obj = liftIO $ getObjectPropertyInt32 obj "gtk-timeout-repeat"

{- |
Set the value of the “@gtk-timeout-repeat@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkTimeoutRepeat 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkTimeoutRepeat :: (MonadIO m, IsSettings o) => o -> Int32 -> m ()
setSettingsGtkTimeoutRepeat obj val = liftIO $ setObjectPropertyInt32 obj "gtk-timeout-repeat" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-timeout-repeat@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkTimeoutRepeat :: (IsSettings o) => Int32 -> IO (GValueConstruct o)
constructSettingsGtkTimeoutRepeat val = constructObjectPropertyInt32 "gtk-timeout-repeat" val

#if ENABLE_OVERLOADING
data SettingsGtkTimeoutRepeatPropertyInfo
instance AttrInfo SettingsGtkTimeoutRepeatPropertyInfo where
    type AttrAllowedOps SettingsGtkTimeoutRepeatPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint SettingsGtkTimeoutRepeatPropertyInfo = (~) Int32
    type AttrBaseTypeConstraint SettingsGtkTimeoutRepeatPropertyInfo = IsSettings
    type AttrGetType SettingsGtkTimeoutRepeatPropertyInfo = Int32
    type AttrLabel SettingsGtkTimeoutRepeatPropertyInfo = "gtk-timeout-repeat"
    type AttrOrigin SettingsGtkTimeoutRepeatPropertyInfo = Settings
    attrGet _ = getSettingsGtkTimeoutRepeat
    attrSet _ = setSettingsGtkTimeoutRepeat
    attrConstruct _ = constructSettingsGtkTimeoutRepeat
    attrClear _ = undefined
#endif

-- VVV Prop "gtk-titlebar-double-click"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-titlebar-double-click@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkTitlebarDoubleClick
@
-}
getSettingsGtkTitlebarDoubleClick :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkTitlebarDoubleClick obj = liftIO $ getObjectPropertyString obj "gtk-titlebar-double-click"

{- |
Set the value of the “@gtk-titlebar-double-click@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkTitlebarDoubleClick 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkTitlebarDoubleClick :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkTitlebarDoubleClick obj val = liftIO $ setObjectPropertyString obj "gtk-titlebar-double-click" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-titlebar-double-click@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkTitlebarDoubleClick :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkTitlebarDoubleClick val = constructObjectPropertyString "gtk-titlebar-double-click" (Just val)

{- |
Set the value of the “@gtk-titlebar-double-click@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkTitlebarDoubleClick
@
-}
clearSettingsGtkTitlebarDoubleClick :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkTitlebarDoubleClick obj = liftIO $ setObjectPropertyString obj "gtk-titlebar-double-click" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkTitlebarDoubleClickPropertyInfo
instance AttrInfo SettingsGtkTitlebarDoubleClickPropertyInfo where
    type AttrAllowedOps SettingsGtkTitlebarDoubleClickPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkTitlebarDoubleClickPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkTitlebarDoubleClickPropertyInfo = IsSettings
    type AttrGetType SettingsGtkTitlebarDoubleClickPropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkTitlebarDoubleClickPropertyInfo = "gtk-titlebar-double-click"
    type AttrOrigin SettingsGtkTitlebarDoubleClickPropertyInfo = Settings
    attrGet _ = getSettingsGtkTitlebarDoubleClick
    attrSet _ = setSettingsGtkTitlebarDoubleClick
    attrConstruct _ = constructSettingsGtkTitlebarDoubleClick
    attrClear _ = clearSettingsGtkTitlebarDoubleClick
#endif

-- VVV Prop "gtk-titlebar-middle-click"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-titlebar-middle-click@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkTitlebarMiddleClick
@
-}
getSettingsGtkTitlebarMiddleClick :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkTitlebarMiddleClick obj = liftIO $ getObjectPropertyString obj "gtk-titlebar-middle-click"

{- |
Set the value of the “@gtk-titlebar-middle-click@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkTitlebarMiddleClick 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkTitlebarMiddleClick :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkTitlebarMiddleClick obj val = liftIO $ setObjectPropertyString obj "gtk-titlebar-middle-click" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-titlebar-middle-click@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkTitlebarMiddleClick :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkTitlebarMiddleClick val = constructObjectPropertyString "gtk-titlebar-middle-click" (Just val)

{- |
Set the value of the “@gtk-titlebar-middle-click@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkTitlebarMiddleClick
@
-}
clearSettingsGtkTitlebarMiddleClick :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkTitlebarMiddleClick obj = liftIO $ setObjectPropertyString obj "gtk-titlebar-middle-click" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkTitlebarMiddleClickPropertyInfo
instance AttrInfo SettingsGtkTitlebarMiddleClickPropertyInfo where
    type AttrAllowedOps SettingsGtkTitlebarMiddleClickPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkTitlebarMiddleClickPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkTitlebarMiddleClickPropertyInfo = IsSettings
    type AttrGetType SettingsGtkTitlebarMiddleClickPropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkTitlebarMiddleClickPropertyInfo = "gtk-titlebar-middle-click"
    type AttrOrigin SettingsGtkTitlebarMiddleClickPropertyInfo = Settings
    attrGet _ = getSettingsGtkTitlebarMiddleClick
    attrSet _ = setSettingsGtkTitlebarMiddleClick
    attrConstruct _ = constructSettingsGtkTitlebarMiddleClick
    attrClear _ = clearSettingsGtkTitlebarMiddleClick
#endif

-- VVV Prop "gtk-titlebar-right-click"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-titlebar-right-click@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkTitlebarRightClick
@
-}
getSettingsGtkTitlebarRightClick :: (MonadIO m, IsSettings o) => o -> m (Maybe T.Text)
getSettingsGtkTitlebarRightClick obj = liftIO $ getObjectPropertyString obj "gtk-titlebar-right-click"

{- |
Set the value of the “@gtk-titlebar-right-click@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkTitlebarRightClick 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkTitlebarRightClick :: (MonadIO m, IsSettings o) => o -> T.Text -> m ()
setSettingsGtkTitlebarRightClick obj val = liftIO $ setObjectPropertyString obj "gtk-titlebar-right-click" (Just val)

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-titlebar-right-click@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkTitlebarRightClick :: (IsSettings o) => T.Text -> IO (GValueConstruct o)
constructSettingsGtkTitlebarRightClick val = constructObjectPropertyString "gtk-titlebar-right-click" (Just val)

{- |
Set the value of the “@gtk-titlebar-right-click@” property to `Nothing`.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.clear' #gtkTitlebarRightClick
@
-}
clearSettingsGtkTitlebarRightClick :: (MonadIO m, IsSettings o) => o -> m ()
clearSettingsGtkTitlebarRightClick obj = liftIO $ setObjectPropertyString obj "gtk-titlebar-right-click" (Nothing :: Maybe T.Text)

#if ENABLE_OVERLOADING
data SettingsGtkTitlebarRightClickPropertyInfo
instance AttrInfo SettingsGtkTitlebarRightClickPropertyInfo where
    type AttrAllowedOps SettingsGtkTitlebarRightClickPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint SettingsGtkTitlebarRightClickPropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint SettingsGtkTitlebarRightClickPropertyInfo = IsSettings
    type AttrGetType SettingsGtkTitlebarRightClickPropertyInfo = (Maybe T.Text)
    type AttrLabel SettingsGtkTitlebarRightClickPropertyInfo = "gtk-titlebar-right-click"
    type AttrOrigin SettingsGtkTitlebarRightClickPropertyInfo = Settings
    attrGet _ = getSettingsGtkTitlebarRightClick
    attrSet _ = setSettingsGtkTitlebarRightClick
    attrConstruct _ = constructSettingsGtkTitlebarRightClick
    attrClear _ = clearSettingsGtkTitlebarRightClick
#endif

-- VVV Prop "gtk-toolbar-icon-size"
   -- Type: TInterface (Name {namespace = "Gtk", name = "IconSize"})
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

{- |
Get the value of the “@gtk-toolbar-icon-size@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' settings #gtkToolbarIconSize
@
-}
getSettingsGtkToolbarIconSize :: (MonadIO m, IsSettings o) => o -> m Gtk.Enums.IconSize
getSettingsGtkToolbarIconSize obj = liftIO $ getObjectPropertyEnum obj "gtk-toolbar-icon-size"

{- |
Set the value of the “@gtk-toolbar-icon-size@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' settings [ #gtkToolbarIconSize 'Data.GI.Base.Attributes.:=' value ]
@
-}
setSettingsGtkToolbarIconSize :: (MonadIO m, IsSettings o) => o -> Gtk.Enums.IconSize -> m ()
setSettingsGtkToolbarIconSize obj val = liftIO $ setObjectPropertyEnum obj "gtk-toolbar-icon-size" val

{- |
Construct a `GValueConstruct` with valid value for the “@gtk-toolbar-icon-size@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructSettingsGtkToolbarIconSize :: (IsSettings o) =>