[gtk+] Add a setting for dialog headers



commit 3701de14a11e1b3e7cab4d5d2676c0c80928f278
Author: Matthias Clasen <mclasen redhat com>
Date:   Wed Jan 15 00:33:30 2014 -0500

    Add a setting for dialog headers
    
    This setting will let us keep traditional appearance
    of dialogs on platforms where this is expected.
    The new setting is called gtk-dialogs-use-header, backed
    by the Gtk/DialogsUseHeader xsetting.

 gdk/x11/gdksettings.c |    1 +
 gtk/gtksettings.c     |   22 ++++++++++++++++++++++
 2 files changed, 23 insertions(+), 0 deletions(-)
---
diff --git a/gdk/x11/gdksettings.c b/gdk/x11/gdksettings.c
index ac92cca..86ecc2d 100644
--- a/gdk/x11/gdksettings.c
+++ b/gdk/x11/gdksettings.c
@@ -59,6 +59,7 @@ static const struct {
   {"Gtk/ShellShowsMenubar",   "gtk-shell-shows-menubar"},
   {"Gtk/ShellShowsDesktop",   "gtk-shell-shows-desktop"},
   {"Gtk/DecorationLayout",    "gtk-decoration-layout"},
+  {"Gtk/DialogsUseHeader",    "gtk-dialogs-use-header"},
   {"Gtk/EnablePrimaryPaste",  "gtk-enable-primary-paste"},
   {"Gtk/RecentFilesMaxAge",   "gtk-recent-files-max-age"},
   {"Gtk/RecentFilesEnabled",  "gtk-recent-files-enabled"},
diff --git a/gtk/gtksettings.c b/gtk/gtksettings.c
index 3c74274..4bf0e9b 100644
--- a/gtk/gtksettings.c
+++ b/gtk/gtksettings.c
@@ -215,6 +215,7 @@ enum {
   PROP_SHELL_SHOWS_MENUBAR,
   PROP_SHELL_SHOWS_DESKTOP,
   PROP_DECORATION_LAYOUT,
+  PROP_DIALOGS_USE_HEADER,
   PROP_ENABLE_PRIMARY_PASTE,
   PROP_RECENT_FILES_ENABLED
 };
@@ -1576,6 +1577,27 @@ gtk_settings_class_init (GtkSettingsClass *class)
   g_assert (result == PROP_DECORATION_LAYOUT);
 
   /**
+   * GtkSettings:gtk-dialogs-use-header:
+   *
+   * 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
+   */
+  result = settings_install_property_parser (class,
+                                             g_param_spec_boolean ("gtk-dialogs-use-header",
+                                                                   P_("Dialogs use header bar"),
+                                                                   P_("Whether builtin GTK+ dialogs should 
use a header bar instead of an action area."),
+                                                                   FALSE,
+                                                                   GTK_PARAM_READWRITE),
+                                             NULL);
+  g_assert (result == PROP_DIALOGS_USE_HEADER);
+
+  /**
    * GtkSettings:gtk-enable-primary-paste:
    *
    * Whether a middle click on a mouse should paste the


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]