[Haskell-beginners] Re: Selecting a GUI toolkit

Thomas Davie tom.davie at gmail.com
Thu Apr 30 06:07:13 EDT 2009


On 30 Apr 2009, at 11:12, Daniel Carrera wrote:

> Thomas Davie wrote:
>> Really, here's what that *should* look like:
>> http://www.cs.kent.ac.uk/people/rpg/tatd2/controls-macosx.png
>
> Your link is for Panther, my link was for Jaguar. The wxHaskell also  
> has a screenshot on Panther:
>
> http://wxhaskell.sourceforge.net/images/controls-macosx2.png

My link was on leopard actually, but that still looks significantly  
different to the natively designed UI.
>
>> Of note though, the main problem with WX is not that the controls  
>> look different, it's that they behave differently.  UI is not just  
>> about looks ;).
>
> Ok.. how do they behave?  I bet you that they behave better than the  
> Gtk controls on OS X... ugh.

I very much doubt that actually – mac users in my experience notice  
when things are annoyingly slightly different from the norm – a kind  
of uncanny valley effect, it's almost what you expect, but not quite.   
In the mean time, gtk being entirely non-OS X like running in X11 says  
"hey, I'm different, deal with it", and people do.

> You are right that UI is not just looks. That's another of the  
> issues with X11 on OS X, it behaves wrong. The command key doesn't  
> do anything, so for example, it's a major pain to use Gimp on OS X  
> without a two button mouse.

Well yes, but then all macs come with 2 button mice, so *shrug*.  But  
yes, X11 apps in general behave wrong, and mac users don't like them  
much, but they like them better than apps that pretend to be OS X  
like, but don't get it right.

> How about Qt? Do you know if Qt behaves well on OS X? I thought that  
> Qt didn't look native on OS X (I'm on Ubuntu right now, so I can't  
> check).

Qt get closer into uncanny valley than gtk does, because it runs  
natively.

This really though comes down to the fact that it's totally impossible  
to design cross platform UIs for applications.  Different platforms  
UIs behave differently, so deal with it, and write different UIs for  
the different platforms.  Don't expect everyone to fit into your one- 
size-fits-all straight jacket.

This is extra work, but 1) it enforces a good abstraction layer  
between your UI and your actual application, and 2) it gives major  
benefits in terms of happy customers.

Bob
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/beginners/attachments/20090430/3468665d/attachment-0001.htm


More information about the Beginners mailing list