[Customdrawn] Some patches

Felipe Monteiro de Carvalho felipemonteiro.carvalho at gmail.com
Mon Apr 2 14:56:27 CEST 2012

On Mon, Apr 2, 2012 at 12:27 PM, Giuliano Colla
<giuliano.colla at fastwebnet.it> wrote:
> But if slowness is not an X11-only issue, then this approach should be
> considered. After all that's the reason why other widgesets are faster. It
> is not that they're smarter in painting than you. They just distribute
> activity between the main thread and their own threads.

One of my main interrests now in LCL-CustomDrawn is using it to build
the next Mac OS X release of the Virtual Magnifying Glass. The VMG
takes a fullscreen screenshot and draws it and then draws a movable
lens in the screen which magnifies part of the screen.

The nasty thing is that it works so fast in LCL-Win32, even in a huge
screen, really extremelly fast despite painting the entire screen in
every single drawing operation and doing a very large number of
refreshes because it needs to follow the mouse (I'd say it makes at
least 20FPS). In LCL-Gtk2 in Linux it is also fast, I think that
LCL-Qt in Linux too.

But then in LCL-Carbon, LCL-Qt (running in Mac OS X) and also in
LCL-CustomDrawn-Cocoa it is far too slow. (LCL-Cocoa can't run it so
cannot compare the result, but surely will be very slow).

And this is a huge shock. Why is in Windows so much faster? Maybe some
Mac limitation since even Qt is slow there? Or can I do something?
Since I have full control of the source code I'd like to do everything
in my power to make it fast and be able to make my release.

I think it will probably be slow in LCL-CustomDrawn-X11, although I
haven't tested yet since it requires screenshot support and this
backend lacks this feature. It would be really interresting to
investigate how to make screenshots in X11 and implement this to test
the Virtual Magnifying Glass.

Felipe Monteiro de Carvalho

More information about the Customdrawn mailing list