GUI libraries
"Luís
"Luís
Thu Nov 28 05:30:52 PST 2013
On Thursday, 28 November 2013 at 12:13:42 UTC, Chris wrote:
> What I meant was no bindings to native widgets or other
> toolkits. DWT (like SWT) uses the native widgets and needs an
> interface. I was thinking of a toolkit where everything is
> provided by D and done in D without any reference to native
> frameworks (Cocoa etc.).
Whatever API / bindings you use, please don't expose non-native
UIs to users (drawn from scratch, either mimicking the native UI
or not). They never completely integrate with the OS, subtly
deviating from the native behaviour in ways that range from
awkward to infuriating, and are always playing catch-up to the
latest OS changes.
For instance, take Viber for the Mac: what could be a great
application (most of the complexity of a VoIP app isn't even in
the UI), has awkward behaviors (e.g., the scrolling panes don't
implement rubber banding, which makes them feel extremely
unresponsive in OS X), badly imitated controls (e.g., the chat
text box context menu, in OS X at least), etc. Features which are
both complex and subtle like internationalisation also tend to
break.
The situation was already bad when the Windows, Mac and Linux
interfaces were, overall, pretty similar (many of the non-optimal
design decisions in apps with non-native UIs tended to appear
where there were differences, such as in OS X global menus vs
Windows' per window menus). With the trend toward newer and more
diverse interface approaches, such as attempts to try to bring
traditional computers to touch screen hardware, non-native UIs
will tend to perform even worse, feeling even more alien to the
end users.
More information about the Digitalmars-d
mailing list