Remove draw_focus and draw_default (gtk_widget_draw_focus): remove this

2001-02-28  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
	draw_default
	(gtk_widget_draw_focus): remove this function; we could instead
	make it just gtk_widget_draw(), but in most cases I think the
	result would be broken user code, so think it's better to have
	that code not compile and get fixed
	(gtk_widget_draw_default): ditto

	* gtk/gtkwidget.c: Add default handlers for focus_in_event and
	focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw

	* gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
	widgets lose/get the default, instead of calling draw_default

	* docs/Changes-2.0.txt: note about all this

	Then fixed every widget in GTK, I won't list all the filenames.
This commit is contained in:
Havoc Pennington
2001-02-28 19:07:46 +00:00
committed by Havoc Pennington
parent c82dc58f7f
commit 56a2f2c628
24 changed files with 197 additions and 367 deletions

View File

@ -72,8 +72,6 @@ static void gtk_button_size_allocate (GtkWidget *widget,
GtkAllocation *allocation);
static void gtk_button_paint (GtkWidget *widget,
GdkRectangle *area);
static void gtk_button_draw_focus (GtkWidget *widget);
static void gtk_button_draw_default (GtkWidget *widget);
static gint gtk_button_expose (GtkWidget *widget,
GdkEventExpose *event);
static gint gtk_button_button_press (GtkWidget *widget,
@ -84,10 +82,6 @@ static gint gtk_button_enter_notify (GtkWidget *widget,
GdkEventCrossing *event);
static gint gtk_button_leave_notify (GtkWidget *widget,
GdkEventCrossing *event);
static gint gtk_button_focus_in (GtkWidget *widget,
GdkEventFocus *event);
static gint gtk_button_focus_out (GtkWidget *widget,
GdkEventFocus *event);
static void gtk_button_add (GtkContainer *container,
GtkWidget *widget);
static void gtk_button_remove (GtkContainer *container,
@ -147,8 +141,6 @@ gtk_button_class_init (GtkButtonClass *klass)
object_class->get_arg = gtk_button_get_arg;
widget_class->realize = gtk_button_realize;
widget_class->draw_focus = gtk_button_draw_focus;
widget_class->draw_default = gtk_button_draw_default;
widget_class->size_request = gtk_button_size_request;
widget_class->size_allocate = gtk_button_size_allocate;
widget_class->expose_event = gtk_button_expose;
@ -156,8 +148,6 @@ gtk_button_class_init (GtkButtonClass *klass)
widget_class->button_release_event = gtk_button_button_release;
widget_class->enter_notify_event = gtk_button_enter_notify;
widget_class->leave_notify_event = gtk_button_leave_notify;
widget_class->focus_in_event = gtk_button_focus_in;
widget_class->focus_out_event = gtk_button_focus_out;
container_class->add = gtk_button_add;
container_class->remove = gtk_button_remove;
@ -690,18 +680,6 @@ gtk_button_paint (GtkWidget *widget,
}
}
static void
gtk_button_draw_focus (GtkWidget *widget)
{
gtk_widget_draw (widget, NULL);
}
static void
gtk_button_draw_default (GtkWidget *widget)
{
gtk_widget_draw (widget, NULL);
}
static gint
gtk_button_expose (GtkWidget *widget,
GdkEventExpose *event)
@ -819,34 +797,6 @@ gtk_button_leave_notify (GtkWidget *widget,
return FALSE;
}
static gint
gtk_button_focus_in (GtkWidget *widget,
GdkEventFocus *event)
{
g_return_val_if_fail (widget != NULL, FALSE);
g_return_val_if_fail (GTK_IS_BUTTON (widget), FALSE);
g_return_val_if_fail (event != NULL, FALSE);
GTK_WIDGET_SET_FLAGS (widget, GTK_HAS_FOCUS);
gtk_widget_draw_focus (widget);
return FALSE;
}
static gint
gtk_button_focus_out (GtkWidget *widget,
GdkEventFocus *event)
{
g_return_val_if_fail (widget != NULL, FALSE);
g_return_val_if_fail (GTK_IS_BUTTON (widget), FALSE);
g_return_val_if_fail (event != NULL, FALSE);
GTK_WIDGET_UNSET_FLAGS (widget, GTK_HAS_FOCUS);
gtk_widget_draw_focus (widget);
return FALSE;
}
static void
gtk_button_add (GtkContainer *container,
GtkWidget *widget)