[Contents] [index] [Help] [Retrace] [browse <] [Browse >]

Here are the data structures that you need to define to create a basic
display:

    struct View view;               /* These get used in all versions of */
    struct ViewPort viewPort;       /* the OS */
    struct BitMap bitMap;
    struct RasInfo rasInfo;
    struct ColorMap *cm;

    struct ViewExtra *vextra;       /* Extra View data, new in Release 2 */
    struct ViewPortExtra *vpextra;  /* Extra ViewPort data, new in       */
                                    /* Release 2 */
    struct MonitorSpec *monspec;    /* Monitor data needed in Release 2  */
    struct DimensionInfo dimquery;  /* Display dimension data needed in  */
                                    /* Release 2 */

viewextra and viewportextra are new data structures used in release 2 to
hold extended data about their corresponding parent structure.  ViewExtra
contains information about the video monitor being used to render the
view.  viewportextra contains information required for clipping of the
viewport.

gfxnew() is used to create these extended data structures and
gfxassociate() is used to associate the extended data structure with an
appropriate parent structure.  Although GfxAssociate() can associate a
viewportextra structure with a viewport, it is better to use
videocontrol() with the vtag_viewportextra_set tag instead.  keep in mind
that GfxNew() allocates memory for the resulting data structure which must
be returned using gfxfree() before the application exits.  the function
gfxlookup() will find the address of an extended data structure from the
address of its parent.

 preparing the view structure 
 preparing the bitmap structure 
 preparing the rasinfo structure 
 preparing the viewport structure 
 preparing the colormap structure 
 creating the display instructions