[Mono-winforms-list] Re: [Mono-dev] Help contributing tolibgdiplus and Cairo integration

Kornél Pál kornelpal at hotmail.com
Wed Oct 5 14:31:24 EDT 2005


> Microsoft implemented System.Windows.Forms as a thin wrapper on top of
> the Win32 API not on top of System.Drawing like we are doing (that's
> because we call our implementation managed). Most of Microsoft SWF
> controls are native and these ones do not use GDI+.
>
> I hope that this helps to clarify.

They are wrappers around native windows but most of them are drawn using
GDI+ using managed code unless you set FlatStyle to System. These are:
Button, CheckBox, RadioButton, Label and GroupBox. Look at ControlPaint
class. In MWF it wraps ThemeEngine but in MS.NET it probably really
implements drawing and is probably used by the above controls.

Some more complex controls like ListView are drawn by Windows (in this case
by comctl32.dll) anyway and there is no FlatStyle property.

But just to make sure that people who want to contribute this know:

The help we need is simply to implement proper non-antialiased drawing in
Cairo. People who want to contribute this don't have to have experience in
Windows, GDI, GDI+, libgdiplus, Mono or System.Drawing. This is a general
drawing related problem and only Cairo has to be modified. This makes the
things a bit easier.

And also not that proper non-antialiased drawing is something that should be
supported by Cairo and System.Drawing anyway so we don't need it just
because Windows uses GDI that is old, we need it because it should be
supported.

Kornél

----- Original Message -----
From: "Jordi Mas" <jordi at ximian.com>
To: "Jonathan Gilbert" <2a5gjx302 at sneakemail.com>
Cc: <mono-winforms-list at lists.ximian.com>
Sent: Wednesday, October 05, 2005 7:44 PM
Subject: Re: [Mono-winforms-list] Re: [Mono-dev] Help contributing
tolibgdiplus and Cairo integration


> El dc 05 de 10 del 2005 a les 12:49 -0500, en/na Jonathan Gilbert va
> escriure:
>
>> I don't have much to say about the rest of the e-mail, but this last
>> statement is not true. System.Windows.Forms uses System.Drawing for all
>> of
>> its drawing needs, and System.Drawing is a relatively thin wrapper of
>> GDI+,
>
> Jonathan,
>
> Microsoft implemented System.Windows.Forms as a thin wrapper on top of
> the Win32 API not on top of System.Drawing like we are doing (that's
> because we call our implementation managed). Most of Microsoft SWF
> controls are native and these ones do not use GDI+.
>
> I hope that this helps to clarify.
>
> Jordi,
>
> --
> Jordi Mas i Hernàndez - Mono development team -
> http://www.mono-project.com
> Homepage and LiveJournal at http://www.softcatala.org/~jmas
>
>
> _______________________________________________
> Mono-winforms-list maillist  -  Mono-winforms-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-winforms-list
>



More information about the Mono-winforms-list mailing list