[Mono-osx] An open letter to the OS X Mono group.

Andreas Färber andreas.faerber at web.de
Sun Mar 25 17:00:01 EDT 2007


Am 25.03.2007 um 21:55 schrieb Jaume Llardén Prieto:

> A Mono GUI application isn't that easy, at present. The application
> needs a nib file, the archived user interface. Or it can use Windows
> Forms and run on X, and be ugly, no Mac OS look and feel at all.
>
> I guess you'd like to have a Windows Forms implementation similar to
> the Swing or SWT implementations on Mac OS X, which create the UI
> without the need of a nib file. In Java, some additional work is
> needed either, to adapt it to the Mac OS idiosyncrasies. I don't know
> if work is being done in this direction for Windows Forms, though.
>
> You can avoid using Objective-C entirely by using Cocoa#, which gives
> you access to Cocoa as C# classes. With Cocoa# you need to wrap your
> common application core (in MVC pattern parlance, the model classes)
> to interact with the nib file. There's a short tutorial on Cocoa#
> here: http://code.google.com/p/cocoa-sharp-dev/wiki/SimpleTutorial.
>
> As I see it, you can't avoid, at present and for the next future,
> using nib files, which obliges you to do some Mac OS specific
> development. You decide the way: Cocoa# for pure C#, or either
> Dumbarton or ObjC# for mixed Objective-C and C#.

This is simply not true. It is possible to avoid nibs using Objective- 
C and thus also when using a bridge such as Cocoa#. The only place I  
needed to use nibs so far was for preference panes (but an empty nib  
does the job for me). Putting together your own GUI can be done  
completely in code.

True is that the Cocoa# *tutorials* use nibs and that it is *common*  
for Objective-C applications to use nibs.


Robert: Another possibility to consider might be Gtk# - it's  
available on Windows, X11 and there seems to be a Mac/Aqua port in  
progress: http://developer.imendio.com/projects/gtk-macosx

But as always with cross-platform development your users will like  
your app best if you stick with their platform's guidelines for look- 
and-feel (e.g. control placement, spacing, touchpad/mouse without  
second button).

Andreas


More information about the Mono-osx mailing list