[cairo] [PATCH] filtering value preservation

graydon hoare graydon at redhat.com
Thu Jan 29 10:49:15 PST 2004


Carl Worth wrote:

> The patch needs to initialize surface->filter in _cairo_surface_init.

ok.

> But, I don't think we actually want the "create_similar" interface to
> clone so much of the original surface[*]. Instead, I think we do want
> the new surface->filter field and cairo_surface_get_filter. Then,
> instead of copying this in create_similar, I think the code that is
> creating the temporary copy should copy the filter parameter over as
> necessary.
> 
> Does that make sense?

yup. that was the other way I was thinking of doing it (well, ideally 
having a way to dynamically query the backend for the filter, but 
storing the state is good enough).

> Also, I think I want to remove the get/set of repeat, filter, and
> matrix from the public "object-like" surface API, and instead move
> them to cairo_t functions that would operate on the "current
> pattern". The idea here is to keep rendering state in the cairo_t
> state object, and not sprinkled throughout various objects.

yeah, I'd be amenable to that. storing intrinsic drawing state in the 
surface makes sense implementation-wise, but is sufficiently confusing 
to a user to warrant hiding. do you want me to start on that change, or 
just commit the patch with the more minor fixes you've pointed out above?

-graydon




More information about the cairo mailing list