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


    NAME
        ChangeScreenBuffer -- Swap the screen's bitmap. (v39)

    SYNOPSIS
        success = ChangeScreenBuffer( screen, screenbuffer )
        D0                            A0      A1

        ULONG ChangeScreenBuffer( struct screen *, struct screenbuffer * );

    FUNCTION
        Performs double (or multiple) buffering on an Intuition screen
        in an Intuition-cooperative manner.  The bitmap associated
        with the supplied screenbuffer will be installed in the
        specified screen, if possible.  The previously-installed bitmap
        is available for re-use upon receiving a signal from
        graphics.library.  See the graphics.library autodocs for
        graphics.library/allocdbufinfo() and graphics.library/changevpbitmap()
        for details.

    INPUTS
        Screen: pointer to the screen whose bitmap is to be swapped.
        ScreenBuffer: pointer to a screenbuffer structure obtained from
            allocscreenbuffer().

    RESULT
        Returns non-zero if the operation succeeded.  Returns zero
        if the operation cannot be performed.  This function will
        fail if Intuition's state cannot permit it, for example the
        user is playing with menus or gadgets.

    NOTES
        It is not required to restore the original screenbuffer
        before closing the screen. Simply freescreenbuffer() each
        buffer (including the original and the currently-installed one)
        then close the screen.  Of course, you cannot call
        ChangeScreenBuffer() after freeing the currently-installed one.

    BUGS

    SEE ALSO
        allocscreenbuffer(), freescreenbuffer(),
        graphics.library/changevpbitmap()