From 0a908b7fe481dd3bf216021fd8e04489f5f2aa66 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Sat, 11 Mar 2000 00:32:15 +0000 Subject: Designed a new system for doing hierarchical displays in the canvas. Adds 2000-03-10 Christopher James Lahey * e-util/e-canvas.c, e-util/e-canvas.h: Designed a new system for doing hierarchical displays in the canvas. Adds an extra idle loop to the canvas system. * widgets/e-minicard/e-minicard.c, widgets/e-minicard/e-minicard-label.c, widgets/e-minicard/e-minicard-label.h, widgets/e-minicard/e-reflow.c, widgets/e-minicard/test-reflow.c, widgets/e-text/e-text.c, widgets/e-text/e-text.h: Adapted to use the new e-canvas reflow system. svn path=/trunk/; revision=2096 --- e-util/e-canvas.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'e-util/e-canvas.h') diff --git a/e-util/e-canvas.h b/e-util/e-canvas.h index 0ece5ae3b4..e70957b6d7 100644 --- a/e-util/e-canvas.h +++ b/e-util/e-canvas.h @@ -38,6 +38,8 @@ extern "C" { #define E_IS_CANVAS(obj) (GTK_CHECK_TYPE ((obj), E_CANVAS_TYPE)) #define E_IS_CANVAS_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((obj), E_CANVAS_TYPE)) +typedef void (*ECanvasItemReflowFunc) (GnomeCanvasItem *item, + gint flags); typedef struct _ECanvas ECanvas; typedef struct _ECanvasClass ECanvasClass; @@ -46,12 +48,13 @@ struct _ECanvas { GnomeCanvas parent; - /* item specific fields */ + int idle_id; }; struct _ECanvasClass { GnomeCanvasClass parent_class; + void (* reflow) (ECanvas *canvas); }; @@ -63,6 +66,10 @@ GtkWidget *e_canvas_new (void); */ void e_canvas_item_grab_focus (GnomeCanvasItem *item); +void e_canvas_item_request_reflow (GnomeCanvasItem *item); +void e_canvas_item_request_parent_reflow (GnomeCanvasItem *item); +void e_canvas_item_set_reflow_callback (GnomeCanvasItem *item, ECanvasItemReflowFunc func); + #ifdef __cplusplus } #endif /* __cplusplus */ -- cgit v1.2.3