Hi,

I haven't used D before and wanted to take a closer look at it. However, there are a few things that keep me from doing so. Most notably I am somewhat confused about the state of GUI's. I have looked at a couple projects and online resources, but the resources I found seam to be quite outdated. Sorry in advance, if I have missed some update on the topic. I wanted to ask, if there is something in the workings (or already done) to provide a standard way to create GUI's. Something supported by D, not an independent project. Independent projects tend to scare me away, as they almost always get abandoned at some point. I am looking for a cross platform (Windows, Linux, BSD) solution.

I very much enjoyed working with QT before, especially QML and would like to use something, that essentially replaces C++ with D for QML. I only found QtD which also seams to be abandoned. Or (maybe even preferable) something similar to .NET and WPF as this makes it very easy and flexible to create modern GUI's. I would like to install a D environment and get working without having to build other projects for GUI's.

e.g.
import std.GUI;

void main(string[] args)
{
        auto win = loadGUIFromXML("Path/to/gui.xml");
        win.show();
}

The XML could then have bindings to D-Modules to handle events and perform the actual tasks.

e.g.
<dgui>
        <resources>
                <import module="someModule.d" id="sm" />
        </resources>
        <window width="640" height="480">
                <button text="click me" clickEvent="sm:someFunction()" />
                <content path="path/to/other/xml/gui/for/nested/components" />
        </window>
</dgui>

// some component to be loaded into the window above
<dgui>
        <resources>
                <import module="otherModule.d" id="om" />
        </resources>
        <component>
<button text="click me" clickEvent="om:otherFunction()" orientation="LeftToRight">
                        <image path="src/to/icon.png" />
                        <text content="some text for the button"/>
                </button>
                <label text="some label text" />
        </component>
</dgui>

Does D offer something like this by now? What is the current state/standard for GUI creation?

Reply via email to