Hi guys,

 

I would like to draw your attention to a problem in the DirectFB interfaces that can become important in some situations.  The problem is that IDirectFBSurface is lacking accessor methods (“Get” functions) for such things as Color, Clip, BlittingFlags, DrawingFlags and PorterDuff.

 

In my particular context, I’m writing a library to help with drawing primitives inside DirectFB surfaces.  What if, for instance, my library has to:

-          set PorterDuff

-          draw something

-          restore the original PorterDuff rule for the caller

 

In this context, since it’s impossible for the lib to restore the original state using the current interface, after the lib has done its job of messing with the graphics state, the caller would find itself in a different context and, hooooooo, bad things could happen.  Yeah.

 

While looking for a solution, I found out it was possible to create a SubSurface in order to get a copy of the graphics context, and thus not having to restore anything in the original surface.  Although, I’m guessing it would be faster and “straighter to the point” if there were accessors to allow for manually restoring only the states that were modified.  Anyway, let me know what you think of adding these functions in the current interface.  Is this a good idea?

 

Best regards,

Mat

_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev

Reply via email to