1/*
2 * Copyright (C) 1998-2002 The gtkmm Development Team
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17 */
18
19
20#include <gtkmm/toolbar.h>
21
22
23_DEFS(gtkmm,gtk)
24_PINCLUDE(glibmm/private/object_p.h)
25
26namespace Gtk
27{
28
29_WRAP_ENUM(IMPreeditStyle, GtkIMPreeditStyle)
30_WRAP_ENUM(IMStatusStyle, GtkIMStatusStyle)
31
32
33/** Sharing settings between applications.
34 *
35 */
36class Settings : public Glib::Object
37{
38   _CLASS_GOBJECT(Settings, GtkSettings, GTK_SETTINGS, Glib::Object, GObject)
39   _IGNORE(gtk_settings_set_property_value, gtk_settings_set_string_property, gtk_settings_set_long_property, gtk_settings_set_double_property)
40protected:
41
42
43public:
44
45  _WRAP_METHOD(static Glib::RefPtr<Settings> get_default(), gtk_settings_get_default, refreturn)
46
47  _WRAP_METHOD(static Glib::RefPtr<Settings> get_for_screen(const Glib::RefPtr<Gdk::Screen>& screen), gtk_settings_get_for_screen, refreturn)
48
49  _WRAP_METHOD(void reset_property(const Glib::ustring& name), gtk_settings_reset_property)
50
51  _WRAP_PROPERTY("gtk-double-click-time", int)
52  _WRAP_PROPERTY("gtk-double-click-distance", int)
53  _WRAP_PROPERTY("gtk-cursor-blink", bool)
54  _WRAP_PROPERTY("gtk-cursor-blink-time", int)
55  _WRAP_PROPERTY("gtk-cursor-blink-timeout", int) //since 3.4
56  _WRAP_PROPERTY("gtk-split-cursor", bool)
57  _WRAP_PROPERTY("gtk-theme-name", Glib::ustring)
58  _WRAP_PROPERTY("gtk-key-theme-name", Glib::ustring)
59  _WRAP_PROPERTY("gtk-menu-bar-accel", Glib::ustring, deprecated "This setting is ignored.")
60  _WRAP_PROPERTY("gtk-dnd-drag-threshold", int)
61  _WRAP_PROPERTY("gtk-font-name", Glib::ustring)
62  _WRAP_PROPERTY("gtk-modules", Glib::ustring)
63//#ifdef GDK_WINDOWING_X11
64  _WRAP_PROPERTY("gtk-xft-antialias", int)
65  _WRAP_PROPERTY("gtk-xft-hinting", int)
66  _WRAP_PROPERTY("gtk-xft-hintstyle", Glib::ustring)
67  _WRAP_PROPERTY("gtk-xft-rgba", Glib::ustring)
68  _WRAP_PROPERTY("gtk-xft-dpi", int)
69  _WRAP_PROPERTY("gtk-cursor-theme-name", Glib::ustring)
70  _WRAP_PROPERTY("gtk-cursor-theme-size", int)
71//#endif
72  _WRAP_PROPERTY("gtk-alternative-button-order", bool)
73  _WRAP_PROPERTY("gtk-alternative-sort-arrows", bool)
74  _WRAP_PROPERTY("gtk-show-input-method-menu", bool, deprecated "This setting is ignored.")
75  _WRAP_PROPERTY("gtk-show-unicode-menu", bool, deprecated "This setting is ignored.")
76  _WRAP_PROPERTY("gtk-timeout-initial", int, deprecated "This setting is ignored.")
77  _WRAP_PROPERTY("gtk-timeout-repeat", int, deprecated "This setting is ignored.")
78  _WRAP_PROPERTY("gtk-timeout-expand", int, deprecated "This setting is ignored.")
79  _WRAP_PROPERTY("gtk-color-scheme", Glib::ustring, deprecated "Color scheme support was dropped. This setting is now ignored.")
80  _WRAP_PROPERTY("gtk-enable-animations", bool)
81  _WRAP_PROPERTY("gtk-touchscreen-mode", bool, deprecated "Generally the behavior for touchscreen input should be performed dynamically based on gdk_event_get_source_device().")
82  _WRAP_PROPERTY("gtk-tooltip-timeout", int, deprecated "This setting is ignored.")
83  _WRAP_PROPERTY("gtk-tooltip-browse-timeout", int, deprecated "This setting is ignored.")
84  _WRAP_PROPERTY("gtk-tooltip-browse-mode-timeout", int, deprecated "This setting is ignored.")
85  _WRAP_PROPERTY("gtk-keynav-cursor-only", bool, deprecated "Generally the behavior for touchscreen input should be performed dynamically based on gdk_event_get_source_device().")
86  _WRAP_PROPERTY("gtk-keynav-wrap-around", bool, deprecated "This setting is ignored.")
87  _WRAP_PROPERTY("gtk-error-bell", bool)
88  _WRAP_PROPERTY("color-hash", Gdk::Color, deprecated "Will always return an empty hash table.") //This is really a hash table.
89  _WRAP_PROPERTY("gtk-file-chooser-backend", Glib::ustring, deprecated "This setting is ignored. Gtk::FileChooser uses GIO by default.")
90  _WRAP_PROPERTY("gtk-print-backends", Glib::ustring)
91  _WRAP_PROPERTY("gtk-print-preview-command", Glib::ustring)
92  _WRAP_PROPERTY("gtk-enable-mnemonics", bool, deprecated "This setting is ignored.")
93  _WRAP_PROPERTY("gtk-enable-accels", bool)
94  _WRAP_PROPERTY("gtk-recent-files-limit", int, deprecated "This setting is ignored.")
95  _WRAP_PROPERTY("gtk-im-module", Glib::ustring)
96  _WRAP_PROPERTY("gtk-recent-files-max-age", int)
97  _WRAP_PROPERTY("gtk-fontconfig-timestamp", int)
98  _WRAP_PROPERTY("gtk-sound-theme-name", Glib::ustring)
99  _WRAP_PROPERTY("gtk-enable-input-feedback-sounds", bool)
100  _WRAP_PROPERTY("gtk-enable-event-sounds", bool)
101  _WRAP_PROPERTY("gtk-enable-tooltips", bool, deprecated "This setting is ignored.")
102  _WRAP_PROPERTY("gtk-application-prefer-dark-theme", bool)  // since 2.22
103  _WRAP_PROPERTY("gtk-auto-mnemonics", bool, deprecated "This setting is ignored.") // since 2.20
104  _WRAP_PROPERTY("gtk-visible-focus", Gtk::PolicyType, deprecated "This setting is ignored.")  // since 3.2
105  _WRAP_PROPERTY("gtk-im-preedit-style", IMPreeditStyle, deprecated "This setting is ignored.") //since 3.4
106  _WRAP_PROPERTY("gtk-im-status-style", IMStatusStyle, deprecated "This setting is ignored.") //since 3.4
107  _WRAP_PROPERTY("gtk-shell-shows-app-menu", bool) //since 3.4
108  _WRAP_PROPERTY("gtk-shell-shows-menubar", bool) //since 3.4
109  _WRAP_PROPERTY("gtk-shell-shows-desktop", bool) //since 3.12
110  _WRAP_PROPERTY("gtk-enable-primary-paste", bool) //since 3.6
111
112  _WRAP_PROPERTY("gtk-menu-popup-delay", int, deprecated "This setting is ignored.") //since 3.4
113  _WRAP_PROPERTY("gtk-menu-popdown-delay", int, deprecated "This setting is ignored.") //since 3.4
114  _WRAP_PROPERTY("gtk-label-select-on-focus", bool) //since 3.4
115  _WRAP_PROPERTY("gtk-entry-password-hint-timeout", guint) //since 3.4
116  _WRAP_PROPERTY("gtk-menu-images", bool, deprecated "This setting is ignored.") //since 3.4
117  _WRAP_PROPERTY("gtk-menu-bar-popup-delay", int, deprecated "This setting is ignored.") //since 3.4
118  _WRAP_PROPERTY("gtk-scrolled-window-placement", GtkCornerType, deprecated "This setting is ignored.") //since 3.4
119  //TODO: Add others added since?
120
121  _WRAP_PROPERTY("gtk-toolbar-style", ToolbarStyle, deprecated "This setting is ignored.")
122  _WRAP_PROPERTY("gtk-toolbar-icon-size", IconSize, deprecated "This setting is ignored.")
123
124  _WRAP_PROPERTY("gtk-can-change-accels", bool, deprecated "This setting is ignored.")
125
126  _WRAP_PROPERTY("gtk-entry-select-on-focus", bool)
127
128  _WRAP_PROPERTY("gtk-color-palette", Glib::ustring, deprecated "Only used by the deprecated color selector widget.")
129
130  _WRAP_PROPERTY("gtk-button-images", bool, deprecated "This setting is ignored.")
131
132  _WRAP_PROPERTY("gtk-icon-theme-name", Glib::ustring)
133  _WRAP_PROPERTY("gtk-fallback-icon-theme", Glib::ustring, deprecated "This setting is ignored.")
134  _WRAP_PROPERTY("gtk-icon-sizes", Glib::ustring, deprecated "This setting is ignored.")
135
136  _WRAP_PROPERTY("gtk-recent-files-enabled", bool)
137  _WRAP_PROPERTY("gtk-primary-button-warps-slider", bool)
138
139  _WRAP_PROPERTY("gtk-decoration-layout", Glib::ustring) // since 3.12
140  _WRAP_PROPERTY("gtk-titlebar-double-click", Glib::ustring, newin "3,20")
141  _WRAP_PROPERTY("gtk-titlebar-middle-click", Glib::ustring, newin "3,20")
142  _WRAP_PROPERTY("gtk-titlebar-right-click", Glib::ustring, newin "3,20")
143  _WRAP_PROPERTY("gtk-dialogs-use-header", bool) // since 3.12
144
145  _WRAP_PROPERTY("gtk-long-press-time", guint) // since 3.14
146  _WRAP_PROPERTY("gtk-keynav-use-caret", bool)
147};
148
149} //namespace Gtk
150
151