typedef struct _GnomeCanvasItem GnomeCanvasItem;
typedef struct _GnomeCanvasItemClass GnomeCanvasItemClass;
struct _GnomeCanvasItem {
GtkObject object;
/* Canvas we are on */
GnomeCanvas *canvas;
/* Parent group */
GnomeCanvasItem *parent;
/* Bounding box for this item */
double x1, y1, x2, y2;
/* If NULL, the identity transform */
double *xform;
};
struct _GnomeCanvasItemClass {
GtkObjectClass parent_class;
void (* update) (GnomeCanvasItem *item, double *affine,
ArtSVP *clip_path, int flags);
void (* realize) (GnomeCanvasItem *item);
void (* unrealize) (GnomeCanvasItem *item);
void (* map) (GnomeCanvasItem *item);
void (* unmap) (GnomeCanvasItem *item);
/* Unused in Gnome 1.0 */
ArtUta *(* coverage) (GnomeCanvasItem *item);
/* Used only in Gdk mode */
void (* draw) (GnomeCanvasItem *item, GdkDrawable *drawable,
int x, int y, int width, int height);
/* Used only in RGB mode */
void (* render) (GnomeCanvasItem *item, GnomeCanvasBuf *buf);
double (* point) (GnomeCanvasItem *item, double x, double y,
int cx, int cy,
GnomeCanvasItem **actual_item);
/* Obsolete; not used in Gnome 1.0 */
void (* translate) (GnomeCanvasItem *item, double dx, double dy);
/* Deprecated, but occasionally used in Gnome 1.0 */
void (* bounds) (GnomeCanvasItem *item,
double *x1, double *y1,
double *x2, double *y2);
/* The only canvas item class function that is also a signal */
gint (* event) (GnomeCanvasItem *item, GdkEvent *event);
};
|