20-May-2013 22:01, Adam Wilson пишет:
On Sun, 19 May 2013 22:25:49 -0700, Tyler Jameson Little
<beatgam...@gmail.com> wrote:

I've been looking into trying to fix QtD, but it seems writing a
binding to a C++ library is a bit complicated. I've read on the forums
that a native D GUI toolkit is the most desirable long-term, so I'd
like to start that discussion.

First off, I've heard of the DWT project, which looks promising, but
it seems like a direct port of Java's SWT instead of a reimagining
using idiomatic D. I understand the allure here (works, little
translation for new developers), but since it's not yet in Phobos, I
can only assume it's still up for discussion.

Personally, I want these features:

* simple and extensible
   * minimal components (something like HTMLs feature-set)
   * custom components (embed OpenGL/direct frame buffer)
* "native" window decorations by default, but can provide custom
decorations
* markup (like QML) or programmable (like SWT)

Nice-to-haves:

* hardware accelerated (2D OpenGL)
* GUI designer (much easier with QML-esque markup)
* part of Phobos

I'm willing to lend a hand, but I'd like to know in what direction the
community would like to go. I'd also like to know the likelihood of
getting a GUI toolkit into Phobos.

Thoughts?

So I've been around D a while pushing for native D UI toolkit. And here
are a few trends I've seen in the community.

* There is a deep-seated distrust of any toolkit that does not use the
OS Native UI widgets. The people in this community prefer native
toolkits to the point of jihad.

It's just one crazy Nick ;)

Now I am a XAML guy myself, and I saw
the light a long time ago, but around here, the majority are still
command line gurus.

Markup for GUI layout seems like a decent idea.

* There is absolutely no chance of inclusion in Phobos, and to-be-honest
I don't think it really belongs there.

Where you take that from? I thought it was quite the opposite if written in D. Even C++ guys seem interested in GUIs in std library(!)

[snip]

* Nobody believes that we can do it, you'll hear a lot of moaning about
how much work it is. My reply to that is: And Linux is such a piece of
cake right? It's only the most widely used kernel on the planet.

If anything D community is full of people doing things close to impossible (esp given the limited spare time and other constraints).


Here's the deal. Building a GUI toolkit, particularly a useful one, is a
massive undertaking. WPF is the single largest library in all of .NET.
IIRC it weighs in at 40,000 classes. Building a UI toolkit in D will
require something that D itself does not. A highly dedicated team of
people with many diverse skills. The project is simply too big for a
single person.

I sure hope savings in amount of idiomatic D code vs C# idiomatic code OOP code could help here.

Part of the problem with UI toolkits is the number of skills you'll need
for the team. Graphics programmers who can make GPU's sing, API
designers who can make it easy access, UI designers capable of
replicating the looks of each OS. Experts for each targeted OS. And I
can think of more.

Well, then you'll also become an expert in a couple of cool fields ;)
Seriously a few helping hands are sorely needed.

[snip other good points]

A UI toolkit in D would be a fantastic showcase for demonstrating just
how powerful D is. But make no mistake, it will not be easy getting it
done.



--
Dmitry Olshansky

Reply via email to