only connect/disconnect to GtkWidgetClass::event to block mouse events.
Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org> * gtk/gtkclist.c (gtk_clist_column_title_passive) (gtk_clist_column_title_active): only connect/disconnect to GtkWidgetClass::event to block mouse events. * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): zero initialize event, removed superfluous gdk_window_get_pointer call * gtk/gtklist.c (gtk_list_vertical_timeout) (gtk_list_horizontal_timeout): removed superfluous gdk_window_get_pointer call
This commit is contained in:
13
ChangeLog
13
ChangeLog
@@ -1,3 +1,16 @@
|
||||
Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
|
||||
|
||||
* gtk/gtkclist.c (gtk_clist_column_title_passive)
|
||||
(gtk_clist_column_title_active):
|
||||
only connect/disconnect to GtkWidgetClass::event to block mouse events.
|
||||
|
||||
* gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
|
||||
zero initialize event, removed superfluous gdk_window_get_pointer call
|
||||
|
||||
* gtk/gtklist.c (gtk_list_vertical_timeout)
|
||||
(gtk_list_horizontal_timeout): removed superfluous
|
||||
gdk_window_get_pointer call
|
||||
|
||||
Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
|
||||
|
||||
* plugging problems reported by "Bruce Mitchener, Jr."
|
||||
|
||||
@@ -1,3 +1,16 @@
|
||||
Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
|
||||
|
||||
* gtk/gtkclist.c (gtk_clist_column_title_passive)
|
||||
(gtk_clist_column_title_active):
|
||||
only connect/disconnect to GtkWidgetClass::event to block mouse events.
|
||||
|
||||
* gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
|
||||
zero initialize event, removed superfluous gdk_window_get_pointer call
|
||||
|
||||
* gtk/gtklist.c (gtk_list_vertical_timeout)
|
||||
(gtk_list_horizontal_timeout): removed superfluous
|
||||
gdk_window_get_pointer call
|
||||
|
||||
Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
|
||||
|
||||
* plugging problems reported by "Bruce Mitchener, Jr."
|
||||
|
||||
@@ -1,3 +1,16 @@
|
||||
Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
|
||||
|
||||
* gtk/gtkclist.c (gtk_clist_column_title_passive)
|
||||
(gtk_clist_column_title_active):
|
||||
only connect/disconnect to GtkWidgetClass::event to block mouse events.
|
||||
|
||||
* gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
|
||||
zero initialize event, removed superfluous gdk_window_get_pointer call
|
||||
|
||||
* gtk/gtklist.c (gtk_list_vertical_timeout)
|
||||
(gtk_list_horizontal_timeout): removed superfluous
|
||||
gdk_window_get_pointer call
|
||||
|
||||
Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
|
||||
|
||||
* plugging problems reported by "Bruce Mitchener, Jr."
|
||||
|
||||
@@ -1,3 +1,16 @@
|
||||
Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
|
||||
|
||||
* gtk/gtkclist.c (gtk_clist_column_title_passive)
|
||||
(gtk_clist_column_title_active):
|
||||
only connect/disconnect to GtkWidgetClass::event to block mouse events.
|
||||
|
||||
* gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
|
||||
zero initialize event, removed superfluous gdk_window_get_pointer call
|
||||
|
||||
* gtk/gtklist.c (gtk_list_vertical_timeout)
|
||||
(gtk_list_horizontal_timeout): removed superfluous
|
||||
gdk_window_get_pointer call
|
||||
|
||||
Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
|
||||
|
||||
* plugging problems reported by "Bruce Mitchener, Jr."
|
||||
|
||||
@@ -1,3 +1,16 @@
|
||||
Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
|
||||
|
||||
* gtk/gtkclist.c (gtk_clist_column_title_passive)
|
||||
(gtk_clist_column_title_active):
|
||||
only connect/disconnect to GtkWidgetClass::event to block mouse events.
|
||||
|
||||
* gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
|
||||
zero initialize event, removed superfluous gdk_window_get_pointer call
|
||||
|
||||
* gtk/gtklist.c (gtk_list_vertical_timeout)
|
||||
(gtk_list_horizontal_timeout): removed superfluous
|
||||
gdk_window_get_pointer call
|
||||
|
||||
Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
|
||||
|
||||
* plugging problems reported by "Bruce Mitchener, Jr."
|
||||
|
||||
@@ -1,3 +1,16 @@
|
||||
Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
|
||||
|
||||
* gtk/gtkclist.c (gtk_clist_column_title_passive)
|
||||
(gtk_clist_column_title_active):
|
||||
only connect/disconnect to GtkWidgetClass::event to block mouse events.
|
||||
|
||||
* gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
|
||||
zero initialize event, removed superfluous gdk_window_get_pointer call
|
||||
|
||||
* gtk/gtklist.c (gtk_list_vertical_timeout)
|
||||
(gtk_list_horizontal_timeout): removed superfluous
|
||||
gdk_window_get_pointer call
|
||||
|
||||
Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
|
||||
|
||||
* plugging problems reported by "Bruce Mitchener, Jr."
|
||||
|
||||
@@ -1,3 +1,16 @@
|
||||
Fri Mar 19 00:00:22 1999 Lars Hamann <lars@gtk.org>
|
||||
|
||||
* gtk/gtkclist.c (gtk_clist_column_title_passive)
|
||||
(gtk_clist_column_title_active):
|
||||
only connect/disconnect to GtkWidgetClass::event to block mouse events.
|
||||
|
||||
* gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
|
||||
zero initialize event, removed superfluous gdk_window_get_pointer call
|
||||
|
||||
* gtk/gtklist.c (gtk_list_vertical_timeout)
|
||||
(gtk_list_horizontal_timeout): removed superfluous
|
||||
gdk_window_get_pointer call
|
||||
|
||||
Wed Mar 17 09:00:00 1999 Tim Janik <timj@gtk.org>
|
||||
|
||||
* plugging problems reported by "Bruce Mitchener, Jr."
|
||||
|
||||
102
gtk/gtkclist.c
102
gtk/gtkclist.c
@@ -1294,8 +1294,6 @@ void
|
||||
gtk_clist_column_title_active (GtkCList *clist,
|
||||
gint column)
|
||||
{
|
||||
GtkObject *object;
|
||||
|
||||
g_return_if_fail (clist != NULL);
|
||||
g_return_if_fail (GTK_IS_CLIST (clist));
|
||||
|
||||
@@ -1304,35 +1302,11 @@ gtk_clist_column_title_active (GtkCList *clist,
|
||||
if (!clist->column[column].button || !clist->column[column].button_passive)
|
||||
return;
|
||||
|
||||
object = GTK_OBJECT (clist->column[column].button);
|
||||
|
||||
clist->column[column].button_passive = FALSE;
|
||||
|
||||
gtk_signal_disconnect_by_func (object,
|
||||
gtk_signal_disconnect_by_func (GTK_OBJECT (clist->column[column].button),
|
||||
(GtkSignalFunc) column_title_passive_func,
|
||||
GINT_TO_POINTER (gtk_signal_lookup
|
||||
("button_press_event",
|
||||
GTK_TYPE_WIDGET)));
|
||||
gtk_signal_disconnect_by_func (object,
|
||||
(GtkSignalFunc) column_title_passive_func,
|
||||
GINT_TO_POINTER (gtk_signal_lookup
|
||||
("button_release_event",
|
||||
GTK_TYPE_WIDGET)));
|
||||
gtk_signal_disconnect_by_func (object,
|
||||
(GtkSignalFunc) column_title_passive_func,
|
||||
GINT_TO_POINTER (gtk_signal_lookup
|
||||
("motion_notify_event",
|
||||
GTK_TYPE_WIDGET)));
|
||||
gtk_signal_disconnect_by_func (object,
|
||||
(GtkSignalFunc) column_title_passive_func,
|
||||
GINT_TO_POINTER (gtk_signal_lookup
|
||||
("enter_notify_event",
|
||||
GTK_TYPE_WIDGET)));
|
||||
gtk_signal_disconnect_by_func (object,
|
||||
(GtkSignalFunc) column_title_passive_func,
|
||||
GINT_TO_POINTER (gtk_signal_lookup
|
||||
("leave_notify_event",
|
||||
GTK_TYPE_WIDGET)));
|
||||
NULL);
|
||||
|
||||
GTK_WIDGET_SET_FLAGS (clist->column[column].button, GTK_CAN_FOCUS);
|
||||
if (GTK_WIDGET_VISIBLE (clist))
|
||||
@@ -1343,7 +1317,6 @@ void
|
||||
gtk_clist_column_title_passive (GtkCList *clist,
|
||||
gint column)
|
||||
{
|
||||
GtkObject *object;
|
||||
GtkButton *button;
|
||||
|
||||
g_return_if_fail (clist != NULL);
|
||||
@@ -1354,46 +1327,17 @@ gtk_clist_column_title_passive (GtkCList *clist,
|
||||
if (!clist->column[column].button || clist->column[column].button_passive)
|
||||
return;
|
||||
|
||||
object = GTK_OBJECT (clist->column[column].button);
|
||||
button = GTK_BUTTON (clist->column[column].button);
|
||||
|
||||
clist->column[column].button_passive = TRUE;
|
||||
|
||||
|
||||
|
||||
gtk_signal_connect (object, "button_press_event",
|
||||
(GtkSignalFunc) column_title_passive_func,
|
||||
GINT_TO_POINTER (gtk_signal_lookup
|
||||
("button_press_event",
|
||||
GTK_TYPE_WIDGET)));
|
||||
|
||||
if (button->button_down)
|
||||
gtk_button_released (button);
|
||||
|
||||
gtk_signal_connect (object, "button_release_event",
|
||||
(GtkSignalFunc) column_title_passive_func,
|
||||
GINT_TO_POINTER (gtk_signal_lookup
|
||||
("button_release_event",
|
||||
GTK_TYPE_WIDGET)));
|
||||
gtk_signal_connect (object, "motion_notify_event",
|
||||
(GtkSignalFunc) column_title_passive_func,
|
||||
GINT_TO_POINTER (gtk_signal_lookup
|
||||
("motion_notify_event",
|
||||
GTK_TYPE_WIDGET)));
|
||||
gtk_signal_connect (object, "enter_notify_event",
|
||||
(GtkSignalFunc) column_title_passive_func,
|
||||
GINT_TO_POINTER (gtk_signal_lookup
|
||||
("enter_notify_event",
|
||||
GTK_TYPE_WIDGET)));
|
||||
|
||||
if (button->in_button)
|
||||
gtk_button_leave (button);
|
||||
|
||||
gtk_signal_connect (object, "leave_notify_event",
|
||||
(GtkSignalFunc) column_title_passive_func,
|
||||
GINT_TO_POINTER (gtk_signal_lookup
|
||||
("leave_notify_event",
|
||||
GTK_TYPE_WIDGET)));
|
||||
gtk_signal_connect (GTK_OBJECT (clist->column[column].button), "event",
|
||||
(GtkSignalFunc) column_title_passive_func, NULL);
|
||||
|
||||
GTK_WIDGET_UNSET_FLAGS (clist->column[column].button, GTK_CAN_FOCUS);
|
||||
if (GTK_WIDGET_VISIBLE (clist))
|
||||
@@ -2178,7 +2122,21 @@ column_title_passive_func (GtkWidget *widget,
|
||||
GdkEvent *event,
|
||||
gpointer data)
|
||||
{
|
||||
gtk_signal_emit_stop (GTK_OBJECT (widget), GPOINTER_TO_INT (data));
|
||||
g_return_val_if_fail (event != NULL, FALSE);
|
||||
|
||||
switch (event->type)
|
||||
{
|
||||
case GDK_MOTION_NOTIFY:
|
||||
case GDK_BUTTON_PRESS:
|
||||
case GDK_2BUTTON_PRESS:
|
||||
case GDK_3BUTTON_PRESS:
|
||||
case GDK_BUTTON_RELEASE:
|
||||
case GDK_ENTER_NOTIFY:
|
||||
case GDK_LEAVE_NOTIFY:
|
||||
return TRUE;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -7121,19 +7079,14 @@ move_vertical (GtkCList *clist,
|
||||
static gint
|
||||
horizontal_timeout (GtkCList *clist)
|
||||
{
|
||||
gint x, y;
|
||||
GdkEventMotion event;
|
||||
GdkModifierType mask;
|
||||
GdkEventMotion event = { 0 };
|
||||
|
||||
GDK_THREADS_ENTER ();
|
||||
|
||||
clist->htimer = 0;
|
||||
gdk_window_get_pointer (clist->clist_window, &x, &y, &mask);
|
||||
|
||||
event.is_hint = 0;
|
||||
event.x = x;
|
||||
event.y = y;
|
||||
event.state = mask;
|
||||
event.type = GDK_MOTION_NOTIFY;
|
||||
event.send_event = TRUE;
|
||||
|
||||
gtk_clist_motion (GTK_WIDGET (clist), &event);
|
||||
|
||||
@@ -7145,19 +7098,14 @@ horizontal_timeout (GtkCList *clist)
|
||||
static gint
|
||||
vertical_timeout (GtkCList *clist)
|
||||
{
|
||||
gint x, y;
|
||||
GdkEventMotion event;
|
||||
GdkModifierType mask;
|
||||
GdkEventMotion event = { 0 };
|
||||
|
||||
GDK_THREADS_ENTER ();
|
||||
|
||||
clist->vtimer = 0;
|
||||
gdk_window_get_pointer (clist->clist_window, &x, &y, &mask);
|
||||
|
||||
event.is_hint = 0;
|
||||
event.x = x;
|
||||
event.y = y;
|
||||
event.state = mask;
|
||||
event.type = GDK_MOTION_NOTIFY;
|
||||
event.send_event = TRUE;
|
||||
|
||||
gtk_clist_motion (GTK_WIDGET (clist), &event);
|
||||
|
||||
|
||||
@@ -2409,22 +2409,14 @@ gtk_list_move_focus_child (GtkList *list,
|
||||
static gint
|
||||
gtk_list_horizontal_timeout (GtkWidget *list)
|
||||
{
|
||||
gint x, y;
|
||||
GdkEventMotion event = { 0 };
|
||||
GdkModifierType mask;
|
||||
|
||||
GDK_THREADS_ENTER ();
|
||||
|
||||
GTK_LIST (list)->htimer = 0;
|
||||
gdk_window_get_pointer (list->window, &x, &y, &mask);
|
||||
|
||||
event.type = GDK_MOTION_NOTIFY;
|
||||
event.send_event = TRUE;
|
||||
event.window = NULL;
|
||||
event.is_hint = 0;
|
||||
event.x = x;
|
||||
event.y = y;
|
||||
event.state = mask;
|
||||
|
||||
gtk_list_motion_notify (list, &event);
|
||||
|
||||
@@ -2436,23 +2428,14 @@ gtk_list_horizontal_timeout (GtkWidget *list)
|
||||
static gint
|
||||
gtk_list_vertical_timeout (GtkWidget *list)
|
||||
{
|
||||
gint x;
|
||||
gint y;
|
||||
GdkEventMotion event = { 0 };
|
||||
GdkModifierType mask;
|
||||
|
||||
GDK_THREADS_ENTER ();
|
||||
|
||||
GTK_LIST (list)->vtimer = 0;
|
||||
gdk_window_get_pointer (list->window, &x, &y, &mask);
|
||||
|
||||
event.type = GDK_MOTION_NOTIFY;
|
||||
event.send_event = TRUE;
|
||||
event.window = NULL;
|
||||
event.is_hint = 0;
|
||||
event.x = x;
|
||||
event.y = y;
|
||||
event.state = mask;
|
||||
|
||||
gtk_list_motion_notify (list, &event);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user