dmxgc.c File Reference
#include "dmx.h"
#include "dmxsync.h"
#include "dmxgc.h"
#include "dmxgcops.h"
#include "dmxpixmap.h"
#include "dmxfont.h"
#include "gcstruct.h"
#include "pixmapstr.h"
#include "migc.h"

Functions

Bool dmxInitGC (ScreenPtr pScreen)
void dmxBECreateGC (ScreenPtr pScreen, GCPtr pGC)
Bool dmxCreateGC (GCPtr pGC)
void dmxValidateGC (GCPtr pGC, unsigned long changes, DrawablePtr pDrawable)
void dmxChangeGC (GCPtr pGC, unsigned long mask)
void dmxCopyGC (GCPtr pGCSrc, unsigned long changes, GCPtr pGCDst)
Bool dmxBEFreeGC (GCPtr pGC)
void dmxDestroyGC (GCPtr pGC)
void dmxChangeClip (GCPtr pGC, int type, pointer pvalue, int nrects)
void dmxDestroyClip (GCPtr pGC)
void dmxCopyClip (GCPtr pGCDst, GCPtr pGCSrc)

Variables

static GCFuncs dmxGCFuncs
static GCOps dmxGCOps

Detailed Description

This file provides support for GCs.


Function Documentation

void dmxBECreateGC ( ScreenPtr  pScreen,
GCPtr  pGC 
)
Bool dmxBEFreeGC ( GCPtr  pGC)

Free the pGC on the back-end server.

References _DMXScreenInfo::beDisplay, DMX_GET_GC_PRIV, dmxScreens, and _dmxGCPriv::gc.

Referenced by dmxBEDestroyResources(), dmxBEDestroyScratchGCs(), and dmxDestroyGC().

void dmxChangeClip ( GCPtr  pGC,
int  type,
pointer  pvalue,
int  nrects 
)
void dmxChangeGC ( GCPtr  pGC,
unsigned long  mask 
)
void dmxCopyClip ( GCPtr  pGCDst,
GCPtr  pGCSrc 
)

Copy a GC's clip rects.

References DMX_GC_FUNC_EPILOGUE, and DMX_GC_FUNC_PROLOGUE.

void dmxCopyGC ( GCPtr  pGCSrc,
unsigned long  changes,
GCPtr  pGCDst 
)

Copy pGCSrc to pGCDst on the back-end server associated with pGCSrc's screen.

References _DMXScreenInfo::beDisplay, DMX_GC_FUNC_EPILOGUE, DMX_GC_FUNC_PROLOGUE, DMX_GET_GC_PRIV, dmxScreens, and _dmxGCPriv::gc.

Bool dmxCreateGC ( GCPtr  pGC)

Create a graphics context on the back-end server associated /a pGC's screen.

References _DMXScreenInfo::beDisplay, DMX_GET_GC_PRIV, DMX_UNWRAP, DMX_WRAP, dmxBECreateGC(), dmxCreateGC(), dmxGCFuncs, dmxScreens, _dmxGCPriv::funcs, _dmxGCPriv::gc, _dmxGCPriv::msc, and _dmxGCPriv::ops.

Referenced by dmxCreateGC(), and dmxScreenInit().

void dmxDestroyClip ( GCPtr  pGC)
void dmxDestroyGC ( GCPtr  pGC)

Destroy the graphics context, pGC and free the corresponding GC on the back-end server.

References _DMXScreenInfo::beDisplay, DMX_GC_FUNC_EPILOGUE, DMX_GC_FUNC_PROLOGUE, dmxBEFreeGC(), and dmxScreens.

Bool dmxInitGC ( ScreenPtr  pScreen)

Initialize the GC on pScreen

References dmxGCPrivateKeyRec.

Referenced by dmxScreenInit().

void dmxValidateGC ( GCPtr  pGC,
unsigned long  changes,
DrawablePtr  pDrawable 
)

Validate a graphics context, pGC, locally in the DMX server and recompute the composite clip, if necessary.

References DMX_GC_FUNC_EPILOGUE, DMX_GC_FUNC_PROLOGUE, DMX_GET_GC_PRIV, and _dmxGCPriv::ops.


Variable Documentation