summaryrefslogtreecommitdiff
path: root/gtk/gtkhandlebox.c
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@gtk.org>1998-05-22 07:07:11 +0000
committerOwen Taylor <otaylor@src.gnome.org>1998-05-22 07:07:11 +0000
commit579856439b9d4a088717d15caaa1bc6cc7d10242 (patch)
tree830d51f7895280d656fbc411db4dacaeef14dd57 /gtk/gtkhandlebox.c
parentbf874e967e1627a21bb8f25e5db13e3f68a2f083 (diff)
downloadgtk+-579856439b9d4a088717d15caaa1bc6cc7d10242.tar.gz
Added style_set handler.
Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org> * gtk/gtkhandlebox.c: Added style_set handler. Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org> [ From: Chris Lahey <clahey@umich.edu> ] * gtk/gtkeditable.c, gtk/gtkeditable.h, gtk/gtktext.c, gtk/gtkentry.c: Added get_position, and set_position functions to get and set the cursor position. * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to signal status. Make GtkText do user-controlled insertion and deletion through the Editable widget so that these signals are properly emitted. * gtk/gtkentry.c: Changed gtk_entry_set_visibility to display asterisks instead of empty space when visible = FALSE)
Diffstat (limited to 'gtk/gtkhandlebox.c')
-rw-r--r--gtk/gtkhandlebox.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/gtk/gtkhandlebox.c b/gtk/gtkhandlebox.c
index f723807b72..a59f643ea1 100644
--- a/gtk/gtkhandlebox.c
+++ b/gtk/gtkhandlebox.c
@@ -49,6 +49,8 @@ static void gtk_handle_box_map (GtkWidget *widget);
static void gtk_handle_box_unmap (GtkWidget *widget);
static void gtk_handle_box_realize (GtkWidget *widget);
static void gtk_handle_box_unrealize (GtkWidget *widget);
+static void gtk_handle_box_style_set (GtkWidget *widget,
+ GtkStyle *previous_style);
static void gtk_handle_box_size_request (GtkWidget *widget,
GtkRequisition *requisition);
static void gtk_handle_box_size_allocate (GtkWidget *widget,
@@ -151,6 +153,7 @@ gtk_handle_box_class_init (GtkHandleBoxClass *class)
widget_class->unmap = gtk_handle_box_unmap;
widget_class->realize = gtk_handle_box_realize;
widget_class->unrealize = gtk_handle_box_unrealize;
+ widget_class->style_set = gtk_handle_box_style_set;
widget_class->size_request = gtk_handle_box_size_request;
widget_class->size_allocate = gtk_handle_box_size_allocate;
widget_class->draw = gtk_handle_box_draw;
@@ -350,6 +353,29 @@ gtk_handle_box_unrealize (GtkWidget *widget)
}
static void
+gtk_handle_box_style_set (GtkWidget *widget,
+ GtkStyle *previous_style)
+{
+ GtkHandleBox *hb;
+
+ g_return_if_fail (widget != NULL);
+ g_return_if_fail (GTK_IS_HANDLE_BOX (widget));
+
+ hb = GTK_HANDLE_BOX (widget);
+
+ if (GTK_WIDGET_REALIZED (widget) &&
+ !GTK_WIDGET_NO_WINDOW (widget))
+ {
+ gtk_style_set_background (widget->style, widget->window,
+widget->state);
+ gtk_style_set_background (widget->style, hb->bin_window, widget->state);
+ gtk_style_set_background (widget->style, hb->float_window, widget->state);
+ if (GTK_WIDGET_DRAWABLE (widget))
+ gdk_window_clear (widget->window);
+ }
+}
+
+static void
gtk_handle_box_size_request (GtkWidget *widget,
GtkRequisition *requisition)
{