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

Two methods may be used to remove a Bob.  The first method uses the
RemBob() macro.  RemBob() causes the system to remove the Bob during the
next call to DrawGList() (or two calls to DrawGList() if the system is
double-buffered).  RemBob() asks the system to remove the Bob at the next
convenient time.  See the description of the BOBSAWAY and BOBNIX flags
above. It is called as follows:

    struct Bob myBob = {0};

    RemBob(&myBob);

The second method uses the RemIBob() routine.  RemIBob() tells the system
to remove this Bob immediately.  For example:

    struct Bob      myBob = {0};
    struct RastPort rastport = {0};
    struct ViewPort viewport = {0};

    RemIBob(&myBob, &rastport, &viewport);

This causes the system to erase the Bob from the drawing area and causes
the immediate erasure of any other Bob that had been drawn subsequent to
(and on top of) this one.  The system then unlinks the Bob from the system
GEL list.  To redraw the Bobs that were drawn on top of the one just
removed, another call to DrawGList() must be made.