[Mono-winforms-list] MWF painting VERY slow compared to .NET

Peter Dennis Bartok peter at novonyx.com
Thu Jul 28 17:13:49 EDT 2005


[...testcode explanation...]
Thanks for the snippet, I will play and report back later.

>With regards to Mac, I know very little about X11 (as with Linux). To be
>honest, I don't even understand your question ;-). When trying to get MWF
>and gtk-sharp running I saw on the mailing lists that X11 needs to be
>installed, so I did that. I also tried to run 'mono.exe' from an X11
>terminal (I don't know how this differs from a normal terminal on Mac).
>After macpack I've managed to get a MWF app displaying for an instant 
>before
>quitting, so my success has been limited so far. However, all of my non-gui
>code is running without problems under Mono on OS X, albeit at 
>approximately
>half the speed of Mono on Linux (FC 4), on the same PowerPC hardware.

Quick and dirty intro:
MWF is implemented around the concept of a 'driver'. The driver provides an 
abstraction layer for different windowing systems, to allow the same MWF 
controls to run unchanged on Win32, X11 OS X or any other desktop/window 
system. (Drawing is handled by System.Drawing, not the driver.)

Today we have three drivers, Win32 (maintained by myself), X11 (maintained 
by Jackson and myself) and OS X (maintained by a non-Novell contributor, 
Geoff Norton). We keep Win32 and X11 en par, but due to our complete and 
utter lack of Mac know-how, we cannot do the same with the OS X driver, we 
are (until we find some time to learn Mac or it becomes a business priority) 
dependent on community contributions to it. The Mac driver currently does 
not provide keyboard handling, and has some issues with drawing and 
exposures.

On the Mac, you can use either the X11 driver (and draw through the Mac X11 
server) or the OS X driver (which draws via native Carbon). You are correct, 
today X11 is required on the Mac even for the native driver, due to some 
font handling requirements.

If you run the app via macpack, you are using the OS X driver, not the X11 
driver. Running from a X11 terminal should a) work and b) use the X11 
driver. Remember, I'm not a mac guy, though.

Cheers,
  Peter




More information about the Mono-winforms-list mailing list