[Mono-winforms-list] Project status of WinForms on MacOS
Brock Reeve
Brock.Reeve at ni.com
Thu Nov 1 11:00:11 EDT 2007
Hey Geoff,
I have been playing with your stuff on the Mac. Basic things are working
and I am impressed. I am also impressed with the whole WindowsForms cross
platform effort thus far. We have tested some of our custom WindowsForms
components on Linux and for the most part things work (we haven't done
exhastive testing. Have submitted a few bugs).
I have a question about supporting the MacOS aqua stuff. I know the
WindowsForms stuff has the Theme classes that do the drawing, but that
seems to be a lot of work to draw all this stuff using GDI+. I was playing
around with DrawThemeButton in the Carbon stuff to try and draw a themed
button. My current approach (which is not working) was to derivie from
Button and draw in OnPaint by calling DrawThemeButton from there. I am new
to the Mac API's (Carbon and Cocoa) but I think the MacOS only allows
drawing at certain times. From examples of DrawThemeButton, they put the
call inside of the event loop callback's kEventControlDraw (we have that
code in XplatUIOSX.cs). I haven't tried this solution but it is obviously
not the right place to put the call because all the drawing is abstracted
out into the Theme classes.
Has anyone thought about this or gotten DrawTheme stuff to work?
- Brock
Geoff Norton <gnorton at novell.com>
10/29/2007 12:59 PM
To
Brock Reeve <Brock.Reeve at ni.com>
cc
mono-winforms-list <mono-winforms-list at lists.ximian.com>
Subject
Re: [Mono-winforms-list] Project status of WinForms on MacOS
Brock,
> - How much support does this effort have? I know the windowing side is
> early ( XplatUIOSX ).
Its still very premature to consider using it for deployed applications,
however its far enough along that you can start working with it /
submitting patches for it :)
> - Do you guys know the state of Cairo to Quartz. I have heard things
> that it is just drawing to a bitmap and then drawing that instead of
> using the raw Quartz API's. There has been work on it recently.
>
Cairo currently draws to a CGBitmapContext and blits the result to a
real CGContext. This is slower than drawing directly on a CGContext but
there are a number of reasons that cairo does this (mostly explained in
the cairo-quartz-surface.c file).
-g
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-winforms-list/attachments/20071101/cf7d3c95/attachment.html
More information about the Mono-winforms-list
mailing list