On Tue, Apr 14, 2009 at 1:22 AM, Massimo Del Fedele <m...@veneto.com> wrote: > The approach taken so far consisted in having 2 device pointers inside > GDI32, one for dib engine and > the other for normal display driver. > This way had the disadvantage of having to keep in sync the DC with the > right driver depending on > selected bitmap, which lead to many small changes spread along all gdi code; > going deeper with > development this approach showed many limits and problems. > > So I decided to start again from scratch with a completely different > approach which is giving good > results and is quite less invasive on gdi32 code. > Instead of doing : > > -- DIB ENGINE > / > GDI32 --- > \ -- X11 DRIVER > > I took this approach : > > GDI32 -- DIB ENGINE -- X11 DRIVER >
I'm trying to understand what the problem is to make you think there needs to be a change. Are most of the problems with Blt related functions? It is my understanding the DIB engine should actually be able to call the display driver and vice-versa. So I think we shouldn't abandon the two driver approach, just add the capability to call each other. I believe GDI on windows has infrastructure for this too.