On Fri, 2009-02-13 at 16:57 +0100, Chris Hills wrote: > Tom Opgenorth wrote: > >> What could be better to use Gtk# or Winforms? > > The rule of thumb would use: if the majority of users are Windows, > > use WinForms. If Linux, use GTK#. Of course, this is assuming that > > you're equally skilled in both. > > Bear in mind that if one chooses Gtk# one will have to include it with > one's Windows packages, as the vast majority of Windows users do not > have it installed already. Winforms is available in both .Net and Mono > as standard. The desktop integration of WinForms in Mono could be > improved if someone does the work to allow use of native widgets.
I suspect that this isn't possible, because native GTK+ widgets would require a GLib event loop, etc., and wouldn't be able to raise the SWF events that would be needed (which is why implementing SWF atop Gtk# was never a workable solution). The best that is likely possible is theming, which Mono has support for, but theming is a far cry from actual "support" (see also Word 6.0/Mac, one of the most hated Word releases of all time, which wasn't even "themed" but was hated by ~everyone because it didn't behave properly). > On a related note, I would like to see a Qt backend for WinForms > available as well. I believe the KDE project is still working on Qyoto. Mono's System.Windows.Forms doesn't have a "backend" that is handled by other toolkits (such as GTK+ or Qt), so this doesn't make sense. The entire SWF implementation is custom drawn with System.Drawing (itself built upon Cairo on Linux). In summary, Mono's SWF hasn't used native widgets in years, nor will it do so any time soon (afaik), and SWF looks like ass on Linux. Even if it didn't look like ass (and good theme engines will help), it will still behave differently from other Linux apps -- just see all the years of problems with the "feel" part of "look and feel" that Java Swing has dealt with (and oftentimes still suffers from). GTK+ on Windows has similar problems, from what I've heard (looking "alien," not "feeling" correct, etc.). So there is no perfect, one framework fits all solution. (Just see all the people who claim to be able to tell a Qt app at a glance on OS X.) The best solution, from the user perspective, is to provide a UI for each platform, not provide one UI for all platforms. Unfortunately this increases costs, but users tend to prefer this solution, by far... - Jon _______________________________________________ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list