Lines Matching refs:pict
220 create_solid_fill_image(PicturePtr pict)
222 PictSolidFill *solid = &pict->pSourcePict->solidFill;
282 create_bits_picture(PicturePtr pict, Bool has_clip, int *xoff, int *yoff)
290 fbGetDrawablePixmap(pict->pDrawable, pixmap, *xoff, *yoff);
293 image = pixman_image_create_bits((pixman_format_code_t) pict->format,
311 if (pict->clientClip)
315 pixman_region_translate(pict->pCompositeClip, *xoff, *yoff);
317 pixman_image_set_clip_region(image, pict->pCompositeClip);
320 pixman_region_translate(pict->pCompositeClip, -*xoff, -*yoff);
324 if (pict->pFormat->index.devPrivate)
325 pixman_image_set_indexed(image, pict->pFormat->index.devPrivate);
328 *xoff += pict->pDrawable->x;
329 *yoff += pict->pDrawable->y;
334 static pixman_image_t *image_from_pict_internal(PicturePtr pict, Bool has_clip,
344 set_image_properties(pixman_image_t * image, PicturePtr pict, Bool has_clip,
350 if (pict->transform) {
359 adjusted = *pict->transform;
369 pixman_image_set_transform(image, pict->transform);
372 switch (pict->repeatType) {
393 /* Fetch alpha map unless 'pict' is being used
396 if (pict->alphaMap && !is_alpha_map) {
399 image_from_pict_internal(pict->alphaMap, FALSE, &alpha_xoff,
402 pixman_image_set_alpha_map(image, alpha_map, pict->alphaOrigin.x,
403 pict->alphaOrigin.y);
405 free_pixman_pict(pict->alphaMap, alpha_map);
408 pixman_image_set_component_alpha(image, pict->componentAlpha);
410 switch (pict->filter) {
427 if (pict->pDrawable)
429 pict->pDrawable);
432 (pixman_fixed_t *) pict->filter_params,
433 pict->filter_nparams);
438 image_from_pict_internal(PicturePtr pict, Bool has_clip, int *xoff, int *yoff,
443 if (!pict)
446 if (pict->pDrawable) {
447 image = create_bits_picture(pict, has_clip, xoff, yoff);
449 else if (pict->pSourcePict) {
450 SourcePict *sp = pict->pSourcePict;
453 image = create_solid_fill_image(pict);
456 PictGradient *gradient = &pict->pSourcePict->gradient;
469 set_image_properties(image, pict, has_clip, xoff, yoff, is_alpha_map);
475 image_from_pict(PicturePtr pict, Bool has_clip, int *xoff, int *yoff)
477 return image_from_pict_internal(pict, has_clip, xoff, yoff, FALSE);
481 free_pixman_pict(PicturePtr pict, pixman_image_t * image)