Mercurial > geeqie.yaz
comparison src/pixbuf-renderer.c @ 1500:42081a3433bb
use a better signal
author | nadvornik |
---|---|
date | Tue, 31 Mar 2009 20:35:04 +0000 |
parents | c350242b1a5d |
children | 3e6cd9243162 |
comparison
equal
deleted
inserted
replaced
1499:56b534d71872 | 1500:42081a3433bb |
---|---|
223 static void pr_zoom_sync(PixbufRenderer *pr, gdouble zoom, | 223 static void pr_zoom_sync(PixbufRenderer *pr, gdouble zoom, |
224 PrZoomFlags flags, gint px, gint py); | 224 PrZoomFlags flags, gint px, gint py); |
225 | 225 |
226 static void pr_signals_connect(PixbufRenderer *pr); | 226 static void pr_signals_connect(PixbufRenderer *pr); |
227 static void pr_size_cb(GtkWidget *widget, GtkAllocation *allocation, gpointer data); | 227 static void pr_size_cb(GtkWidget *widget, GtkAllocation *allocation, gpointer data); |
228 static void pr_unmap_cb(GtkWidget *widget, gpointer data); | 228 static void pr_hierarchy_changed_cb(GtkWidget *widget, GtkWidget *previous_toplevel, gpointer data); |
229 static void pixbuf_renderer_paint(PixbufRenderer *pr, GdkRectangle *area); | 229 static void pixbuf_renderer_paint(PixbufRenderer *pr, GdkRectangle *area); |
230 static gint pr_queue_draw_idle_cb(gpointer data); | 230 static gint pr_queue_draw_idle_cb(gpointer data); |
231 | 231 |
232 | 232 |
233 /* | 233 /* |
534 | 534 |
535 gtk_widget_set_double_buffered(box, FALSE); | 535 gtk_widget_set_double_buffered(box, FALSE); |
536 g_signal_connect_after(G_OBJECT(box), "size_allocate", | 536 g_signal_connect_after(G_OBJECT(box), "size_allocate", |
537 G_CALLBACK(pr_size_cb), pr); | 537 G_CALLBACK(pr_size_cb), pr); |
538 | 538 |
539 g_signal_connect(G_OBJECT(pr), "unmap", | 539 g_signal_connect(G_OBJECT(pr), "hierarchy-changed", |
540 G_CALLBACK(pr_unmap_cb), pr); | 540 G_CALLBACK(pr_hierarchy_changed_cb), pr); |
541 | 541 |
542 pr_signals_connect(pr); | 542 pr_signals_connect(pr); |
543 } | 543 } |
544 | 544 |
545 static void pixbuf_renderer_finalize(GObject *object) | 545 static void pixbuf_renderer_finalize(GObject *object) |
1159 void pixbuf_renderer_overlay_remove(PixbufRenderer *pr, gint id) | 1159 void pixbuf_renderer_overlay_remove(PixbufRenderer *pr, gint id) |
1160 { | 1160 { |
1161 pixbuf_renderer_overlay_set(pr, id, NULL, 0, 0); | 1161 pixbuf_renderer_overlay_set(pr, id, NULL, 0, 0); |
1162 } | 1162 } |
1163 | 1163 |
1164 static void pr_unmap_cb(GtkWidget *widget, gpointer data) | 1164 static void pr_hierarchy_changed_cb(GtkWidget *widget, GtkWidget *previous_toplevel, gpointer data) |
1165 { | 1165 { |
1166 PixbufRenderer *pr = data; | 1166 PixbufRenderer *pr = data; |
1167 pr_overlay_list_reset_window(pr); | 1167 pr_overlay_list_reset_window(pr); |
1168 } | 1168 } |
1169 | 1169 |
3860 G_CALLBACK(pr_mouse_press_cb), pr); | 3860 G_CALLBACK(pr_mouse_press_cb), pr); |
3861 g_signal_connect(G_OBJECT(pr), "button_release_event", | 3861 g_signal_connect(G_OBJECT(pr), "button_release_event", |
3862 G_CALLBACK(pr_mouse_release_cb), pr); | 3862 G_CALLBACK(pr_mouse_release_cb), pr); |
3863 g_signal_connect(G_OBJECT(pr), "leave_notify_event", | 3863 g_signal_connect(G_OBJECT(pr), "leave_notify_event", |
3864 G_CALLBACK(pr_mouse_leave_cb), pr); | 3864 G_CALLBACK(pr_mouse_leave_cb), pr); |
3865 g_signal_connect(G_OBJECT(pr), "unmap", | 3865 g_signal_connect(G_OBJECT(pr), "hierarchy-changed", |
3866 G_CALLBACK(pr_unmap_cb), pr); | 3866 G_CALLBACK(pr_hierarchy_changed_cb), pr); |
3867 | 3867 |
3868 gtk_widget_set_events(GTK_WIDGET(pr), GDK_POINTER_MOTION_MASK | | 3868 gtk_widget_set_events(GTK_WIDGET(pr), GDK_POINTER_MOTION_MASK | |
3869 GDK_BUTTON_RELEASE_MASK | GDK_BUTTON_PRESS_MASK | | 3869 GDK_BUTTON_RELEASE_MASK | GDK_BUTTON_PRESS_MASK | |
3870 GDK_LEAVE_NOTIFY_MASK); | 3870 GDK_LEAVE_NOTIFY_MASK); |
3871 | 3871 |