On Thu, Sep 28, 2006 at 09:40:38AM +0200, Abdelrazak Younes wrote: > >But keep in mind that to reach real encapsulation in the end _in theory_ > >src/*.[Ch] should not contain any #include "frontends/*". > > Yes, that exactly my plan. But hey I have to start somewhere ;-)
I know. And note that I am not preventing you from committing stuff... > For now, I am just replacing all the global variables with one unique > global variable. If the things are reasonably independent I see no real need to bundle them artificially. > Agreed. BufferList should be easy to clean up, I am much more afraid of > this painter class used all over the place. The problem here is that painting is a frontend thing, but the One True Way of passing information from the core to the frontend (signal a change, let the frontend react) is not really suitable here as signal-slot does not scale up well to thousands or even millions of calls. So a reasonable way might be to declare the painter _interface_ part of the kernel and if a frontend requires painting it needs to crate an actual object and call a suotable kernel method with this painter (pointer/reference) as argument. This does not suit very well right now as we push repainting from the kernel instead of letting the frontend pulling it. Andre'