[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]

    IFND INTUITION_CLASSUSR_I
INTUITION_CLASSUSR_I SET 1
**
** $Filename: intuition/classusr.i $
** $Release: 2.04 Includes, V37.4 $
** $Revision: 36.4 $
** $Date: 91/11/08 $
**
** For application users of Intuition object classes
**
**  (C) Copyright 1989-1999 Amiga, Inc.
**	    All Rights Reserved
**



    IFND UTILITY_HOOKS_I
    INCLUDE "utility/hooks.i"
    ENDC

* beginning of "method message" passed to class dispatchers
 STRUCTURE Msg,0
    ULONG msg_MethodID
    ; method-specific data follows, some examples below

* For now, see the class id's for Intuition basic classes
* defined in classusr.h.  Sorry there aren't macros for the strings yet.

* dispatched method ID's
* NOTE: Applications should use Intuition entry points, not these,
* for NewObject, DisposeObject, SetAttrs, SetGadgetAttrs, and GetAttr.

    ENUM $101
    EITEM OM_NEW		; 'object' parameter is "true class"
    EITEM OM_DISPOSE		; delete self (no parameters)
    EITEM OM_SET		; set attribute (list)
    EITEM OM_GET		; return single attribute value
    EITEM OM_ADDTAIL		; add self to a List
    EITEM OM_REMOVE		; remove self from list (no parameters)
    EITEM OM_NOTIFY		; send to self: notify dependents
    EITEM OM_UPDATE		; notification message from someone
    EITEM OM_ADDMEMBER		; used by various classes with lists
    EITEM OM_REMMEMBER		; used by various classes with lists

* Parameter "Messages" passed to methods.
* NOTE: All of these parameter packets
* start off by the longword MethodID, but
* we don't redefine it for each structure.

* OM_NEW and OM_SET
 STRUCTURE opSet,4
    ; ULONG		MethodID
    APTR		ops_AttrList	; new attributes
    APTR		ops_GInfo	; always there for gadgets,
					; but will be NULL for OM_NEW

* OM_NOTIFY, and OM_UPDATE
 STRUCTURE opUpdate,4
    ; ULONG		MethodID
    APTR		opu_AttrList	; new attributes
    APTR		opu_GInfo	; always there for gadgets,
					; but will be NULL for OM_NEW
    ULONG		opu_Flags	; defined below

* this flag means that the update message is being issued from
* something like an active gadget, ala GACT_FOLLOWMOUSE.  When
* the gadget goes inactive, it will issue a final update
* message with this bit cleared.  Examples of use are for
* GACT_FOLLOWMOUSE equivalents for propgadclass, and repeat strobes
* for buttons.

OPUB_INTERIM	EQU	0
OPUF_INTERIM	EQU	1

* OM_GET
 STRUCTURE opGet,4
    ; ULONG		MethodID
    ULONG		opg_AttrID
    APTR		opg_Storage	; may be other types, but "int"
					; types are all ULONG

* OM_ADDTAIL
 STRUCTURE opAddTail,4
    ; ULONG		MethodID
    APTR		opat_List

* OM_ADDMEMBER, OM_REMMEMBER

 STRUCTURE opMember,4
    ; ULONG		MethodID
    APTR		opam_Object

 ENDC	; IFND INTUITION_CLASSUSR_I