home *** CD-ROM | disk | FTP | other *** search
/ Aminet 18 / aminetcdnumber181997.iso / Aminet / misc / emu / AROSdev.lha / AROS / compiler / alib / newobject.c < prev    next >
Encoding:
C/C++ Source or Header  |  1997-01-27  |  1.9 KB  |  74 lines

  1. /*
  2.     (C) 1995-96 AROS - The Amiga Replacement OS
  3.     $Id: newobject.c,v 1.6 1997/01/27 00:16:37 ldp Exp $
  4.  
  5.     Desc: Create a new BOOPSI object
  6.     Lang: english
  7. */
  8. #define AROS_TAGRETURNTYPE APTR
  9.  
  10. #include <intuition/classes.h>
  11. #include <intuition/intuitionbase.h>
  12. #include "alib_intern.h"
  13.  
  14. extern struct IntuitionBase * IntuitionBase;
  15.  
  16. /*****************************************************************************
  17.  
  18.     NAME */
  19. #include <intuition/classusr.h>
  20. #include <proto/intuition.h>
  21.  
  22.     APTR NewObject (
  23.  
  24. /*  SYNOPSIS */
  25.     struct IClass * classPtr,
  26.     UBYTE          * classID,
  27.     ULONG        tag1,
  28.     ...        )
  29.  
  30. /*  FUNCTION
  31.     Use this function to create BOOPSI objects (BOOPSI stands for
  32.     "Basic Object Oriented Programming System for Intuition).
  33.  
  34.     You may specify a class either by it's name (if it's a public class)
  35.     or by a pointer to its definition (if it's a private class). If
  36.     classPtr is NULL, classID is used.
  37.  
  38.     INPUTS
  39.     classPtr - Pointer to a private class (or a public class if you
  40.         happen to have a pointer to it)
  41.     classID - Name of a public class
  42.     tagList - Initial attributes. Read the documentation of the class
  43.         carefully to find out which attributes must be specified
  44.         here and which can.
  45.  
  46.     RESULT
  47.     A BOOPSI object which can be manipulated with general functions and
  48.     which must be disposed with DisposeObject() later.
  49.  
  50.     NOTES
  51.     This functions send OM_NEW to the dispatcher of the class.
  52.  
  53.     EXAMPLE
  54.  
  55.     BUGS
  56.  
  57.     SEE ALSO
  58.     DisposeObject(), SetAttrs(), GetAttr(), MakeClass(),
  59.     "Basic Object-Oriented Programming System for Intuition" and
  60.     "boopsi Class Reference" Dokument.
  61.  
  62.     INTERNALS
  63.  
  64.     HISTORY
  65.     29-10-95    digulla automatically created from
  66.                 intuition_lib.fd and clib/intuition_protos.h
  67.  
  68. *****************************************************************************/
  69. {
  70.     AROS_SLOWSTACKTAGS_PRE(tag1)
  71.     retval = NewObjectA (classPtr, classID, AROS_SLOWSTACKTAGS_ARG(tag1));
  72.     AROS_SLOWSTACKTAGS_POST
  73. } /* NewObject */
  74.