[Mono-osx] [MonoMac] A few new patches
rsarwas at gmail.com
Mon Mar 14 17:14:56 EDT 2011
On Mon, Mar 14, 2011 at 9:53 AM, Miguel de Icaza <miguel at novell.com> wrote:
> Hello Regan,
> Thanks for this fabulous list of patches:
> > 1) The monomac build from git is broken (at least for me: OSX 10.6.6,
> > 22.214.171.124). Seems some changes
> > to maccore/src/CoreMedia/CMSampleBuffer.cs requires CoreMedia on
> > monomac, However CoreMedia is not a public framework on OSX.
> > coremedia.patch (for monomac) fixes this by adding a path in
> > monomac/src/Constants.cs to a private framework, but it may be better to
> > revisit CMSampleBuffer.cs.
> > 2) NSFileManager.patch (for maccore) adds the 'Url' methods to the
> > NSFileManager type in maccore/src/foundation.cs and some supporting
> > These are new in iOS 4, and have been attributed with [Since(4,0)],
> > if you would prefer to only have them in monomac, I can surround with an
> > #ifdef
> > 3) I think I finally understand the Drag/Drop classes for monomac, and
> > provided dragging.patch (for monomac) with the appropriate changes to
> > appkit.cs. In essence the messages that are sent to delegates that might
> > respond to 'drag events' are sent an object that implements
> > NSDraggingInfo is a protocol, but implementing this as a [Model] does
> > work because this object is not created by clients, and the runtime
> > cast the actual object created by appkit to the C# class. Drag and Drop
> > Programming Topics for Cocoa mentions that the system creates an
> > undocumented NSDragDestination object which implements NSDraggingInfo.
> > Since the docs refer to NSDraggingInfo and not NSDragDestination, and
> > NSDraggingInfo is a more descriptive name, it is used in appkit.cs, and
> > Name attribute is used to register NSDraggingInfo to NSDragDestination.
> > tested this with NSDraggingDestination and NSBrowserDelegate, and all
> > well. It could be improved by privatizing the constructors for
> > NSDraggingInfo.
> Could you contribute a sample that shows this?
> Gladly. The ImageKit sample already shows
using NSDraggingDestination. I'll work up a sample for NSBrowser,
> The other thing to keep in mind is that this is an area that got
> revisited in Lion, would you mind checking the documentation for Lion,
> because I get the feeling that they improved things in this area.
> I'm not a member of the Mac Developer Program, and I don't know how else to
get a hold of the Lion docs.
> > 5) sample.patch eliminates some warnings and errors from the monomac
> > samples. It relies on NSFileManager.patch. pretty minor stuff, but it
> > nice to have samples that build without warnings/errors. There is an
> > with the macdoc sample, but It may be specific to me. The sample gives
> > errors when built from the command line (make/mdtools), but builds fine
> > MonoDevelop.
> The removal of the timer means that we can call destroy when the timer
> gets GCed, so it would terminate the timer after a GC pass.
> Oops. Thanks for catching this.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Mono-osx