[cairo] Clip region problems

mental at rydia.net mental at rydia.net
Fri Mar 11 14:47:06 PST 2005


Quoting Owen Taylor <otaylor at redhat.com>:

>  2. Have a "drawing state" for a surface. So, something like:

Of all the approaches, that one seems intuitively right to me.

It is desirable to have multiple cairo_ts per surface, and backends
are stateful, so it seems like all context-specific state belongs in
some intermediate object.

Given those, I'm wondering whether it might not make sense to go
ahead and pull all the cairo_t-related "smarts" up into the drawing
states, leaving surfaces as relatively dumb objects that just deal
with the pattern_t stuff.

That might make the complexity more managable.

(In fact, before I became more familiar with cairo internals, I
assumed that was how the backends worked already.)

Thoughts?

-mental



More information about the cairo mailing list