Missing Pattern::set_filter() method?
Submitted by Ian Britten
Assigned to Murray Cumming
Description
Currently (v1.8.0), cairomm doesn't seem to support the idiom described at http://cairographics.org/manual/cairo-cairo-pattern-t.html#cairo-pattern-set-filter, namely: cairo_pattern_set_filter (cairo_get_source (cr), CAIRO_FILTER_NEAREST);
The actual problem is that Context::get_source() returns a (baseclass) Pattern, but Pattern has no set_filter() method. Only one of the derived Patterns has that functionality, namely SurfacePattern.
It is unclear to me if this mis-match is intentional or an oversight. Initial discussions on IRC drifted into design discussions about Cairo/Pixman details, eg: - "Could it make sense to have dithering for gradients somehow be part of such filtering?" - "I'd like to see a proper approach to dithering implemented in pixman first"
As such, I'm just pointing out the issue, and will leave it up to the Cairo/cairomm developers to decide how to best proceed. Meanwhile, I'll work around it in my own code.
Version: CVS HEAD