[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