From 6a82d4c61f4061666d0e231cdbe2ab630a251908 Mon Sep 17 00:00:00 2001 From: Owen Taylor Date: Sun, 20 Oct 2002 19:08:17 +0000 Subject: [PATCH] Add a scrollbar_spacing style property (#81396, based on a patch from Sun Oct 20 14:58:02 2002 Owen Taylor * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): Add a scrollbar_spacing style property (#81396, based on a patch from Anders Carlsson) --- ChangeLog | 6 ++++++ ChangeLog.pre-2-10 | 6 ++++++ ChangeLog.pre-2-2 | 6 ++++++ ChangeLog.pre-2-4 | 6 ++++++ ChangeLog.pre-2-6 | 6 ++++++ ChangeLog.pre-2-8 | 6 ++++++ gtk/gtkscrolledwindow.c | 23 +++++++++++++++++++++-- 7 files changed, 57 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index e7b628e70d..99d570ab48 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sun Oct 20 14:58:02 2002 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): + Add a scrollbar_spacing style property (#81396, based + on a patch from Anders Carlsson) + 2002-10-19 Jeremy Katz * configure.in: make configure checks for Xrandr and Xinerama diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index e7b628e70d..99d570ab48 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,9 @@ +Sun Oct 20 14:58:02 2002 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): + Add a scrollbar_spacing style property (#81396, based + on a patch from Anders Carlsson) + 2002-10-19 Jeremy Katz * configure.in: make configure checks for Xrandr and Xinerama diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index e7b628e70d..99d570ab48 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,9 @@ +Sun Oct 20 14:58:02 2002 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): + Add a scrollbar_spacing style property (#81396, based + on a patch from Anders Carlsson) + 2002-10-19 Jeremy Katz * configure.in: make configure checks for Xrandr and Xinerama diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index e7b628e70d..99d570ab48 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,9 @@ +Sun Oct 20 14:58:02 2002 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): + Add a scrollbar_spacing style property (#81396, based + on a patch from Anders Carlsson) + 2002-10-19 Jeremy Katz * configure.in: make configure checks for Xrandr and Xinerama diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index e7b628e70d..99d570ab48 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,9 @@ +Sun Oct 20 14:58:02 2002 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): + Add a scrollbar_spacing style property (#81396, based + on a patch from Anders Carlsson) + 2002-10-19 Jeremy Katz * configure.in: make configure checks for Xrandr and Xinerama diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index e7b628e70d..99d570ab48 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,9 @@ +Sun Oct 20 14:58:02 2002 Owen Taylor + + * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): + Add a scrollbar_spacing style property (#81396, based + on a patch from Anders Carlsson) + 2002-10-19 Jeremy Katz * configure.in: make configure checks for Xrandr and Xinerama diff --git a/gtk/gtkscrolledwindow.c b/gtk/gtkscrolledwindow.c index 3dde39a52d..cc78baaa65 100644 --- a/gtk/gtkscrolledwindow.c +++ b/gtk/gtkscrolledwindow.c @@ -277,6 +277,15 @@ gtk_scrolled_window_class_init (GtkScrolledWindowClass *class) GTK_SHADOW_NONE, G_PARAM_READABLE | G_PARAM_WRITABLE)); + gtk_widget_class_install_style_property (widget_class, + g_param_spec_int ("scrollbar_spacing", + _("Scrollbar spacing"), + _("Number of pixels between the scrollbars and the scrolled window"), + 0, + G_MAXINT, + DEFAULT_SCROLLBAR_SPACING, + G_PARAM_READABLE)); + signals[SCROLL_CHILD] = g_signal_new ("scroll_child", G_TYPE_FROM_CLASS (object_class), @@ -1384,6 +1393,16 @@ _gtk_scrolled_window_get_scrollbar_spacing (GtkScrolledWindow *scrolled_window) class = GTK_SCROLLED_WINDOW_GET_CLASS (scrolled_window); - return class->scrollbar_spacing >= 0 ? class->scrollbar_spacing : DEFAULT_SCROLLBAR_SPACING; -} + if (class->scrollbar_spacing >= 0) + return class->scrollbar_spacing; + else + { + gint scrollbar_spacing; + + gtk_widget_style_get (GTK_WIDGET (scrolled_window), + "scrollbar_spacing", &scrollbar_spacing, + NULL); + return scrollbar_spacing; + } +}