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

    NewObjectA -- Create an object from a class. (V36)
    NewObject -- Varargs stub for NewObjectA(). (V36)

    object = NewObjectA( class, classID, tagList )
    D0                   A0     A1       A2

    APTR NewObjectA( struct IClass *, UBYTE *, struct TagItem * );

    object = NewObject( class, classID, Tag1, ... )

    APTR NewObject( struct IClass *, UBYTE *, ULONG, ... );

    This is the general method of creating objects from 'boopsi' classes.
    ('Boopsi' stands for "basic object-oriented programming system for

    You specify a class either as a pointer (for a private class) or
    by its ID string (for public classes).  If the class pointer
    is NULL, then the classID is used.

    You further specify initial "create-time" attributes for the
    object via a TagItem list, and they are applied to the resulting
    generic data object that is returned.  The attributes, their meanings,
    attributes applied only at create-time, and required attributes
    are all defined and documented on a class-by-class basis.

    class = abstract pointer to a boopsi class gotten via MakeClass().
    classID = the name/ID string of a public class.  This parameter is
            only used if 'class' is NULL.
    tagList = pointer to array of TagItems containing attribute/value
            pairs to be applied to the object being created

    A boopsi object, which may be used in different contexts such
    as a gadget or image, and may be manipulated by generic functions.
    You eventually free the object using DisposeObject().

    This function invokes the OM_NEW "method" for the class specified.

    Typedef's for 'Object' and 'Class' are defined in the include
    files but not used consistently.  The generic type APTR is
    probably best used for object and class "handles", with the
    type (UBYTE *) used for classID strings.

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

[Back to Amiga Developer Docs]