#ifndef GNOCLCANVAS_H_INCLUDED
#define GNOCLCANVAS_H_INCLUDED

/*
 * canvas.h --
 *
 * This file 
 *
 * Copyright (c) 2001 P.G. Baum
 *
 * See the file "license.terms" for information on usage and redistribution
 * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
 *
 */

#include "gnocl.h"

typedef int (*GnoclItemConfigFunc)( Tcl_Interp *interp, int objc, 
      Tcl_Obj * const objv[], struct Gnocl_CanvasItemInfo_ *typeInfo );
typedef int (*GnoclItemDeleteFunc)( Tcl_Interp *interp, 
      struct Gnocl_CanvasItemInfo_ *typeInfo );

struct Gnocl_CanvasItemInfo_
{
   GnoclItemConfigFunc configFunc;
   GnoclItemConfigFunc coordsFunc;
   GnoclItemDeleteFunc deleteFunc;
   
   GnomeCanvas      *canvas;
   GnomeCanvasGroup *group;
   GnomeCanvasItem  *item;
   gint id;
   /* tags */

};

typedef Gnocl_CanvasItemInfo *(GnoclItemCreateFunc)( Tcl_Interp *interp,
      int objc, Tcl_Obj * const objv[], GnomeCanvas *widget );

#endif
