Standard GUI framework inspired by Qt

Vadim Lopatin via Digitalmars-d digitalmars-d at
Thu Mar 5 05:38:57 PST 2015

On Tuesday, 3 March 2015 at 18:43:50 UTC, Aram wrote:
> Hi all
> I've been thinking over a GUI framework for D for some time, 
> and ended up with idea expressed by Andrew Fedoniouk here: 
> That is, having a separate drawing layer, and widgets built on 
> top of it. But since it has already been discussed 9 years ago, 
> I wonder if such a framework has ever been implemented.
> In that duscussion many participants agreed that Qt would be a 
> good foundation, but had very restrictive license. Things have 
> changed since then, and Qt now is available under LGPL, which, 
> to my undestanding, makes it suitable for the purpose of 
> standard GUI library (please correct me if I am wrong on this). 
> The license, of course, may change in the future, preventing us 
> from using their updates for our drawing engine. But if we are 
> able to start using the engine now, in the future we can 
> maintain the updates ourselves.
> Now, how I envision the library's design:
> The library will be mostly implemented in D, except for drawing 
> engine and event loop, which are system-dependent. Those two 
> parts will be extracted from Qt into a separate library which 
> will be linked to by the rest of framework either statically or 
> dynamically. There will be bindings for sending drawing 
> instructions to drawing engine, as well as for retrieving 
> system and GUI events from event loop.
> The system-independent part will mimic architecture of Qt. 
> However, for maximum flexibility and customizability, GUI will 
> utilize QML+CSS approach, and Qt's layout manager classes will 
> be dropped completely. Also there is no need to port classes 
> that are available in D, such as collections and strings.
> If there is no standard GUI for D yet, and if LGPL license fits 
> our purpose, then I am looking for 2-3 Qt experts to join me 
> and build the framework.
> Thanks,
> Aram

Probably DlangUI fits your requirements.

It's written in D, so can be easy extended.
Cross platform - backend part is separated, and new platforms 
support can be added. So far, win32 and SDL2 backends are 
implemented. There is as well X (XCB) backend, but now it's 

Look and feel can be customized using themes and styles.

More information about the Digitalmars-d mailing list