示例#1
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAPolySegmentPixmap(DrawablePtr pDraw, GCPtr pGC, int nseg, xSegment * pSeg)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->PolySegment) (pDraw, pGC, nseg, pSeg);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#2
0
文件: xaaGC.c 项目: L3oV1nc3/VMGL
static RegionPtr
XAACopyPlanePixmap(
    DrawablePtr	pSrc,
    DrawablePtr	pDst,
    GCPtr pGC,
    int	srcx, int srcy,
    int	width, int height,
    int	dstx, int dsty,
    unsigned long bitPlane 
){
    XAAInfoRecPtr infoRec = GET_XAAINFORECPTR_FROM_GC(pGC);
    RegionPtr ret;

    XAA_PIXMAP_OP_PROLOGUE(pGC, pDst);

    if(infoRec->pScrn->vtSema && 
	((pSrc->type == DRAWABLE_WINDOW) || IS_OFFSCREEN_PIXMAP(pSrc))){
	if(infoRec->NeedToSync) {
	   (*infoRec->Sync)(infoRec->pScrn);
	    infoRec->NeedToSync = FALSE;
	}
    }    

    ret = (*pGC->ops->CopyPlane)(pSrc, pDst,
	       pGC, srcx, srcy, width, height, dstx, dsty, bitPlane);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
    return ret;
}
示例#3
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAPolyFillArcPixmap(DrawablePtr pDraw, GCPtr pGC, int narcs, xArc * parcs)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->PolyFillArc) (pDraw, pGC, narcs, parcs);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#4
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAImageText16Pixmap(DrawablePtr pDraw,
                     GCPtr pGC, int x, int y, int count, unsigned short *chars)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->ImageText16) (pDraw, pGC, x, y, count, chars);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#5
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAPolyFillRectPixmap(DrawablePtr pDraw,
                      GCPtr pGC, int nrectFill, xRectangle *prectInit)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->PolyFillRect) (pDraw, pGC, nrectFill, prectInit);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#6
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAPolyRectanglePixmap(DrawablePtr pDraw,
                       GCPtr pGC, int nRectsInit, xRectangle *pRectsInit)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->PolyRectangle) (pDraw, pGC, nRectsInit, pRectsInit);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#7
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAPolylinesPixmap(DrawablePtr pDraw,
                   GCPtr pGC, int mode, int npt, DDXPointPtr pptInit)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->Polylines) (pDraw, pGC, mode, npt, pptInit);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#8
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAPushPixelsPixmap(GCPtr pGC,
                    PixmapPtr pBitMap,
                    DrawablePtr pDraw, int dx, int dy, int xOrg, int yOrg)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->PushPixels) (pGC, pBitMap, pDraw, dx, dy, xOrg, yOrg);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#9
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAFillPolygonPixmap(DrawablePtr pDraw,
                     GCPtr pGC,
                     int shape, int mode, int count, DDXPointPtr ptsIn)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->FillPolygon) (pDraw, pGC, shape, mode, count, ptsIn);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#10
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAFillSpansPixmap(DrawablePtr pDraw,
                   GC * pGC,
                   int nInit, DDXPointPtr pptInit, int *pwidthInit, int fSorted)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->FillSpans) (pDraw, pGC, nInit, pptInit, pwidthInit, fSorted);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#11
0
文件: xaaGC.c 项目: csulmone/X11
static int
XAAPolyText16Pixmap(DrawablePtr pDraw,
                    GCPtr pGC, int x, int y, int count, unsigned short *chars)
{
    int ret;

    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    ret = (*pGC->ops->PolyText16) (pDraw, pGC, x, y, count, chars);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
    return ret;
}
示例#12
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAASetSpansPixmap(DrawablePtr pDraw,
                  GCPtr pGC,
                  char *pcharsrc,
                  register DDXPointPtr ppt,
                  int *pwidth, int nspans, int fSorted)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->SetSpans) (pDraw, pGC, pcharsrc, ppt, pwidth, nspans, fSorted);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#13
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAPolyGlyphBltPixmap(DrawablePtr pDraw,
                      GCPtr pGC,
                      int xInit, int yInit,
                      unsigned int nglyph,
                      CharInfoPtr * ppci, pointer pglyphBase)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->PolyGlyphBlt) (pDraw, pGC, xInit, yInit, nglyph,
                               ppci, pglyphBase);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#14
0
文件: xaaGC.c 项目: csulmone/X11
static void
XAAPutImagePixmap(DrawablePtr pDraw,
                  GCPtr pGC,
                  int depth,
                  int x, int y, int w, int h,
                  int leftPad, int format, char *pImage)
{
    XAA_PIXMAP_OP_PROLOGUE(pGC, pDraw);
    (*pGC->ops->PutImage) (pDraw, pGC, depth, x, y, w, h,
                           leftPad, format, pImage);
    XAA_PIXMAP_OP_EPILOGUE(pGC);
}
示例#15
0
文件: xaaGC.c 项目: L3oV1nc3/VMGL
static RegionPtr
XAACopyAreaPixmap(
    DrawablePtr pSrc,
    DrawablePtr pDst,
    GC *pGC,
    int srcx, int srcy,
    int width, int height,
    int dstx, int dsty 
){
    XAAInfoRecPtr infoRec = GET_XAAINFORECPTR_FROM_GC(pGC);
    RegionPtr ret;

    if(infoRec->pScrn->vtSema && 
	((pSrc->type == DRAWABLE_WINDOW) || IS_OFFSCREEN_PIXMAP(pSrc))) 
    {
	if(infoRec->ReadPixmap && (pGC->alu == GXcopy) &&
           (pSrc->bitsPerPixel == pDst->bitsPerPixel) &&
          ((pGC->planemask & infoRec->FullPlanemasks[pSrc->depth - 1])
              == infoRec->FullPlanemasks[pSrc->depth - 1]))
        {
            XAAPixmapPtr pixPriv = XAA_GET_PIXMAP_PRIVATE((PixmapPtr)(pDst));
	    pixPriv->flags |= DIRTY; 

            return (XAABitBlt( pSrc, pDst, pGC,
                srcx, srcy, width, height, dstx, dsty,
                XAADoImageRead, 0L));
        } else
	if(infoRec->NeedToSync) {
	   (*infoRec->Sync)(infoRec->pScrn);
	    infoRec->NeedToSync = FALSE;
	}
    }    

    {
	XAA_PIXMAP_OP_PROLOGUE(pGC, pDst);
	ret = (*pGC->ops->CopyArea)(pSrc, pDst,
            pGC, srcx, srcy, width, height, dstx, dsty);
	XAA_PIXMAP_OP_EPILOGUE(pGC);
    }
    return ret;
}