
-----------------------------------------------------------------------
pkg.h

EXTERN int      Tk_DialObjCmd _ANSI_ARGS_((ClientData clientData,
                        Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]));

EXTERN int      Tk_BargraphCmd _ANSI_ARGS_((ClientData clientData,
                        Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]));

-----------------------------------------------------------------------
pkgInit.c

    Tcl_CreateObjCommand(interp, "dial", Tk_DialObjCmd,
            (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);
    Tcl_CreateObjCommand(interp, "bargraph", Tk_BargraphCmd,
            (ClientData) NULL, (Tcl_CmdDeleteProc *) NULL);



-----------------------------------------------------------------------
% fgrep Tk_DialObjCmd *.c *.h

pkgInit.c:    Tcl_CreateObjCommand(interp, "dial", Tk_DialObjCmd,
tkDial.c:Tk_DialObjCmd(clientData, interp, objc, objv)
pkg.h:EXTERN int        Tk_DialObjCmd _ANSI_ARGS_((ClientData clientData,

% fgrep Tk_BargraphCmd *.c *.h

pkgInit.c:    Tcl_CreateObjCommand(interp, "bargraph", Tk_BargraphCmd,
tkBargraph.c:Tk_BargraphCmd(clientData, interp, objc, objv)
pkg.h:EXTERN int        Tk_BargraphCmd _ANSI_ARGS_((ClientData clientData,

-----------------------------------------------------------------------
		DIAL

int
Tk_DialObjCmd(clientData, interp, objc, objv)
     ClientData clientData;     /* Main window associated with
                                 * interpreter. */
     Tcl_Interp *interp;        /* Current interpreter. */
     int objc;                  /* Number of arguments. */
     Tcl_Obj *CONST objv[];      /* Argument objects. */
{
    register TkDial *dPtr;
    Tk_OptionTable optionTable;
    Tk_Window tkwin;

    optionTable = (Tk_OptionTable) clientData;
    if (optionTable == NULL) {
        Tcl_CmdInfo info;
        char *name;

        fprintf(stderr,"Option table is NULL make a new one\n");


		BARGRAPH

int
Tk_BargraphCmd(clientData, interp, objc, objv)
     ClientData clientData;             /* Main window associated with
                                 * interpreter. */
     Tcl_Interp *interp;                /* Current interpreter. */
     int objc;                  /* Number of arguments. */
     Tcl_Obj *CONST objv[];      /* Argument objects. */

{

  register Bargraph *bgPtr;
  Tk_OptionTable optionTable;
  Tk_Window tkwin;

   fprintf(stderr,"In Tk_BargraphCmd\n");

/*      hmmm, how does this actually work?      */

    optionTable = (Tk_OptionTable) clientData;

    if (optionTable == NULL) {

        Tcl_CmdInfo info;
        char *name;

        fprintf(stderr,"Create new option table\n");
	...

    } else {

        fprintf(stderr,"optionTable is %x\n",optionTable);
    }


