/* Generated by wbuild from "IconBox.w"
** (generator version $Revision: 1.17 $ of $Date: 92/12/07 19:32:00 $)
*/
#ifndef _XfwfIconBoxP_H_
#define _XfwfIconBoxP_H_
#include <Xfwf/BoardP.h>
#include <Xfwf/IconBox.h>
typedef struct _HashNode {
	    String name;
	    Icon icon;
	    struct _HashNode *next;
	} HashNode;
typedef HashNode * Bucket;
typedef struct {
	    Widget icon, label;
	    Boolean selected;
	} ItemInfo;
typedef void (*clean_up_Proc)(
#if NeedFunctionPrototypes
Widget
#endif
);
#define XtInherit_clean_up ((clean_up_Proc) _XtInherit)
typedef void (*canonical_order_Proc)(
#if NeedFunctionPrototypes
Widget
#endif
);
#define XtInherit_canonical_order ((canonical_order_Proc) _XtInherit)
typedef struct {
/* methods */
clean_up_Proc clean_up;
canonical_order_Proc canonical_order;
/* class variables */
Bucket * hashtable;
} XfwfIconBoxClassPart;
typedef struct _XfwfIconBoxClassRec {
CoreClassPart core_class;
CompositeClassPart composite_class;
XfwfCommonClassPart xfwfCommon_class;
XfwfFrameClassPart xfwfFrame_class;
XfwfBoardClassPart xfwfBoard_class;
XfwfIconBoxClassPart xfwfIconBox_class;
} XfwfIconBoxClassRec;

typedef struct {
/* resources */
XfwfIconList  list;
Dimension  horizontalGrid;
Dimension  verticalGrid;
int  margin;
XtCallbackList  itemSelect;
XtCallbackList  itemDeselect;
XtCallbackList  itemActivate;
XtCallbackList  itemDrop;
XFontStruct * labelFont;
String  iconTranslations;
Cursor  dragCursor;
/* private state */
ItemInfo * item_info;
int  nitems;
int  dragx0;
int  dragy0;
int  dragxprev;
int  dragyprev;
Atom  drop_atom;
Atom  drop_selection;
Boolean  drag_in_progress;
GC  xor_gc;
} XfwfIconBoxPart;

typedef struct _XfwfIconBoxRec {
CorePart core;
CompositePart composite;
XfwfCommonPart xfwfCommon;
XfwfFramePart xfwfFrame;
XfwfBoardPart xfwfBoard;
XfwfIconBoxPart xfwfIconBox;
} XfwfIconBoxRec;

externalref XfwfIconBoxClassRec xfwfIconBoxClassRec;

#endif /* _XfwfIconBoxP_H_ */
