1
0
mirror of git://projects.qi-hardware.com/cae-tools.git synced 2025-02-02 01:31:06 +02:00

Added expose events for auxiliary projections.

- solidify/level.c (expose_event, level): renamed expose_event to
  expose_event_xy, for consistency with new expose event handlers
- solidify/level.c (expose_event_xz, expose_event_zy, level): added expose
  event handlers for the auxiliary projections
- solidify/level.c (level): the drawing areas receive an expose event when
  becoming visible, so there's no need to explicitly initilize them
This commit is contained in:
Werner Almesberger 2010-09-28 07:12:20 -03:00
parent 6acca4ea4a
commit abb945e76b

View File

@ -223,7 +223,7 @@ static gboolean scroll_event(GtkWidget *widget, GdkEventScroll *event,
}
static gboolean expose_event(GtkWidget *widget, GdkEventExpose *event,
static gboolean expose_event_xy(GtkWidget *widget, GdkEventExpose *event,
gpointer user_data)
{
draw_image(widget, user_data, has_osd);
@ -231,6 +231,22 @@ static gboolean expose_event(GtkWidget *widget, GdkEventExpose *event,
}
static gboolean expose_event_xz(GtkWidget *widget, GdkEventExpose *event,
gpointer user_data)
{
draw_xz(widget, user_data, -1);
return TRUE;
}
static gboolean expose_event_zy(GtkWidget *widget, GdkEventExpose *event,
gpointer user_data)
{
draw_zy(widget, user_data, -1);
return TRUE;
}
static gboolean motion_notify_event(GtkWidget *widget, GdkEventMotion *event,
gpointer data)
{
@ -280,14 +296,16 @@ void level(GtkWidget *canvas, struct face *f)
gtk_container_add(GTK_CONTAINER(evbox), xy);
gtk_widget_show_all(canvas);
draw_image(xy, f, 0);
draw_xz(xz, f, -1);
draw_zy(zy, f, -1);
has_osd = 0;
g_signal_connect(G_OBJECT(evbox), "scroll-event",
G_CALLBACK(scroll_event), f);
g_signal_connect(G_OBJECT(xy), "expose-event",
G_CALLBACK(expose_event), f);
G_CALLBACK(expose_event_xy), f);
g_signal_connect(G_OBJECT(xz), "expose-event",
G_CALLBACK(expose_event_xz), f);
g_signal_connect(G_OBJECT(zy), "expose-event",
G_CALLBACK(expose_event_zy), f);
g_signal_connect(G_OBJECT(xy), "motion-notify-event",
G_CALLBACK(motion_notify_event), f);
}