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

	DoGadgetMethodA -- Invoke method on a boopsi gadget. (V39)
	DoGadgetMethod -- Varargs stub for DoGadgetMethodA(). (V39)

	result = DoGadgetMethodA( Gadget, Window, Requester, Message )
	D0		          A0      A1      A2         A3

	ULONG DoGadgetMethodA( struct Gadget *, struct Window *,
		struct Requester *, Msg );

	result = DoGadgetMethod( Gadget, Window, Requester, MethodID, ...)

	ULONG DoGadgetMethod( struct Gadget *, struct Window *,
		struct Requester *, ULONG, ... );

	Same as the DoMethod() function of amiga.lib, but provides context
	information and arbitration for classes which implement custom
	Intuition gadgets.

	You should use this function for boopsi gadget objects,
	or for "models" which propagate information to gadgets.

	Unlike DoMethod(), this function provides a GadgetInfo pointer
	(if possible) when invoking the method.  Some classes may
	require or benefit from this.

	Gadget = abstract pointer to a boopsi gadget
	Window = window gadget has been added to using AddGList() or AddGadget()
	Requester = for REQGADGETs, requester containing the gadget
	Msg = the boopsi message to send

	The object does whatever it wants with the message you sent,
	which might include updating its gadget visuals.

	The return value is defined per-method.

	This function invokes the specified method with a GadgetInfo
	derived from the 'Window' and 'Requester' pointers.  The GadgetInfo
	is passed as the second parameter of the message, except for
	OM_NEW, OM_SET, OM_NOTIFY, and OM_UPDATE, where the GadgetInfo
	is passed as the third parameter.

	Implementers of new gadget methods should ensure that the
	GadgetInfo is the second long-word of their message!

	NewObject(), DisposeObject(), GetAttr(), MakeClass(),
	Document "Basic Object-Oriented Programming System for Intuition"
	and the "boopsi Class Reference" document.

[Back to Amiga Developer Docs]