Java > Scala -> new thread: GUI for D

Adam Wilson flyboynw at gmail.com
Fri Dec 2 12:19:36 PST 2011


On Fri, 02 Dec 2011 10:15:12 -0800, Nick Sabalausky <a at a.a> wrote:

> "Adam Wilson" <flyboynw at gmail.com> wrote in message
> news:op.v5vibnca707hn8 at invictus.skynet.com...
>> On Fri, 02 Dec 2011 04:33:48 -0800, a <a at a.com> wrote:
>>
>>> QML looks like it is (currently ?) targeted at the kind of GUI
>>> programming when you make your own custom widgets for everything. It
>>> only provides the most basic components such as rectangles, text, and
>>> images. There isn't, say, a button components - you have to make one
>>> using a Rectangle and a MouseArea. One consequence of this is that
>>> typical GUI programming is much slower. Another consequence is that you
>>> can't build GUIs that look native on multiple platforms. QML is  
>>> probably
>>> great for some things, but it is not a replacement for GUI  toolkits
>>> such as Qt.
>>
>> This is similar in concept to how XAML in WPF/Silverlight is used to
>> construct screens, and it's not bad idea. And the fact that the UX can  
>> be
>> skinned to look nothing like the default OSUI is actually probably one  
>> of
>> the most useful things about WPF and Silverlight. Yes, it doesn't look
>> true to the OS, but you'll find that in the UI Design world, that is of
>> surprisingly little importance.
>
> That's without a doubt my #1 complaint about desktop apps over the last
> decade: Narcissistic designers with nothing but contempt for a user's
> control over their own system.
>

So the push for multi-platform UI consistency via the internet and  
HTML/CSS is wrong? I don't mind calling the use of HTML/CSS the wrong  
method to achieve multi-platform UI consistency, it's a document markup  
language after all and was never originally intended to construct complex  
UI's, but what you are saying is that the entire idea of how the internet  
displays data is wrong. It certainly has it's pitfalls, but I have trouble  
believing that the collective conclusion of billions of people that it is  
the right idea can realistically be considered 'wrong'. Users in general  
LOVE the cross-platform UI consistency of the internet. Amazon, Facebook,  
the list goes on, the most widely-used and successful interfaces in the  
world are built on the concept of cross-platform UI consistency. It just  
so happens that it is achieved with HTML/JS/CSS. The implementation might  
be lacking, but I don't see any point in arguing with the collective will  
of billions of people.

>> The most important thing to a UI designer  is that the UI looks and  
>> works
>> the same across *ALL* OS's.
>
> That's just terrible.
>

Why? Isn't that pretty much the definition of the internet?

>> Facebook looks and works the  same regardless of whether I pull it up in
>> Chrome or Firefox, Mac or Linux.
>
> The hell with mobile, eh? Making things look and act the same on  
> everything
> is *terrible* UI design. Making things look and act *appropriate* for the
> given platform has alwas been and will always be the proper thing to do
> regardless of what the majority of designers decide is the trend du jour
> (ok, so that's redundant, so sue me ;) ).

Mobile has form factor issues, namely that it's too small to display a  
desktop style UI. But UI design isn't a technical thing, it's a  
right-brain thing. As long as the interaction and display models are  
similar (i.e. it works and looks similar) the physical layout changes that  
the mobile form-factor demands won't seem nearly as jarring to the user,  
because they already have a mental model for how to interact with the  
interface for that piece of software.

Now, all that said, the default style of WPF is Windows Aero (aka the  
default look of Vista/7). And there is no reason not to have the UI  
framework default to the OS default style. But the true power of WPF is  
that if you need to, you can change everything. It's like Andrei once  
said, "The right way should be easy, but the wrong way should be  
possible." The implication there is that 'wrong' isn't always wrong.  
That's what WPF does and that's what I want to build for D.

I have no problem defaulting to the OS default look, and in fact that  
would be the default of any GUI project I'd be interested in undertaking.  
But I don't want to be limited to just the OS look. Those types of  
arbitrary limitations fly in the face of the D way, at least as I  
understand it.

-- 
Adam Wilson
Project Coordinator
The Horizon Project
http://www.thehorizonproject.org/


More information about the Digitalmars-d mailing list