
/*** icclass.h *****************************************************************
 *
 *  Gadget Interconnection classes
 *
 *  $Header: /home/amiga/V36/src/kickstart/intuition/RCS/icclass.h,v 1.5 90/04/06 22:25:09 jimm Exp $
 *
 *  Confidential Information: Commodore-Amiga, Inc.
 *  Copyright (C) 1989, Commodore-Amiga, Inc.
 *  All Rights Reserved
 *
 ****************************************************************************/

/* IC Class attributes	*/

#ifndef UTILITY_TAGITEM_H
#include <utility/tagitem.h>
#endif

enum {	ICM_Dummy = 0x401,
	ICM_SETLOOP,		/* set/increment loop counter	*/
	ICM_CLEARLOOP,		/* clear/decrement loop counter	*/
	ICM_CHECKLOOP,		/* set/increment loop		*/
};

/* no arguments for ICM_SETLOOP, ICM_CLEARLOOP, ICM_CHECKLOOP	*/

/* commonly used object attributes	*/
enum	{ ICA_Dummy = TAG_USER+0x40000,
    ICA_TARGET,		/* interconnection target		*/
    ICA_MAP,		/* interconnection map tagitem list	*/
    ICSPECIAL_CODE,	/* a dummy attribute.  see below.	*/
};

/* Normally, the value for ICA_TARGET is some object pointer,
 * but if you specify the special value ICTARGET_IDCMP, notification
 * will be send as an IDCMPUPDATE message to the appropriate window's
 * IDCMP port.  See the definition of IDCMPUPDATE. 
 *
 * When you specify ICTARGET_IDCMP for ICA_TARGET, the map you
 * specify will be applied to derive the attribute list that is
 * sent with the IDCMPUPDATE message.  If you specify a map list
 * which results in the attribute tag id ICSPECIAL_CODE, the
 * lower sixteen bits of the corresponding ti_Data value will
 * be copied into the Code field of the IDCMPUPDATE IntuiMessage.
 */
#define ICTARGET_IDCMP	(~0)
