/*
 * $Id: buildmenu.h,v 1.3 1996/11/21 23:22:24 root Exp $
 *
 * $Log: buildmenu.h,v $
 * Revision 1.3  1996/11/21 23:22:24  root
 * Added #include <stdlib.h>
 *
 * Revision 1.2  1996/11/19 22:05:28  root
 * Changed prototype to reflect change in buildmenu.c
 *
 * Revision 1.1  1996-11-18 16:39:35-05  root
 * Initial revision
 *
 */

#ifndef INCLUDED_BUILDMENU_H
#define INCLUDED_BUILDMENU_H

#include <Xm/CascadeBG.h>
#include <Xm/PushB.h>
#include <Xm/PushBG.h>
#include <Xm/ToggleB.h>
#include <Xm/ToggleBG.h>
#include <Xm/RowColumn.h>

#include <stdlib.h>

typedef struct _menu_item {
    char        *label;         /* the label for the item */
    WidgetClass *class;         /* pushbutton, label, separator... */
    char         mnemonic;      /* mnemonic; NULL if none */
    char        *accelerator;   /* accelerator; NULL if none */
    char        *accel_text;    /* to be converted to compound string */
    void       (*callback)();   /* routine to call; NULL if none */
    XtPointer    callback_data; /* client_data for callback() */
    struct _menu_item *subitems; /* pullright menu items, if not NULL */
} MenuItem;

/*
 *  Prototypes
 */

Widget BuildPulldownMenu(Widget, char *, char, Boolean, 
			 MenuItem *, Widget **);


#endif
