Whither DWT?

Anders F Björklund afb at algonet.se
Sun Apr 16 14:25:01 PDT 2006

clayasaurus wrote:

>> What about wxD?  That seems promising as the underlying framework is 
>> supported across multiple platforms.
> It is? I just looked at its website and it says it has ports for 
> Windows, GTK, and Mac, which makes me think that they write a new 
> backend for each platform they support. From what I can tell, wxd is 
> farther along than DWT, but the site says that wxd is still an early alpha.

Half right, *wxWidgets* has a new port of each platform that it 
supports. (but it is written in C++, this cross-platform library)

Here is their list of the currently supported wxWidgets platforms:
     * wxMSW: Win32/Win64/WinCE.
     * wxGTK: GTK+ 1 or 2 on Unix.
     * wxX11: Xlib on Unix.
     * wxMac: Mac OS X/Carbon, Mac OS Classic.
     * wxMGL: MGL on DOS, Linux and other platforms supported by MGL.
     * wxBase: non-GUI builds of the library.
     * wxCocoa: Mac OS X/Cocoa (beta).
     * wxOS2: a Presentation Manager port (beta).
     * wxPalmOS: a Palm OS port (alpha).

wxD is "just" a D wrapping layer for wxWidgets, inspired by / based on 
wx.NET - but written in C++ for the wrappers and in D for the classes.

The wxD code should be portable to everything with wxWidgets and D,
but is being developed and actively tested on three major platforms:

     * Windows XP (wxMSW)
     * Linux/GTK (wxGTK)
     * Mac OS X (wxMac)

It's not being tested on any of Windows 95, GTK 1.x, X11 or Mac OS 9.
But it "could" still be made to work there, if anyone wanted to...(?)

The alpha status (same as D!) comes mostly from the facts that the
memory handling isn't exactly perfect, and that some wxD demos crash.

wxWidgets itself (C++) is stable, at least on these three platforms.
wx.NET, on which wxD is based, is also a bit more stable and tested.

Not being written all in D (but half in C++ and half in C# -> D),
means that it is both smaller and bigger than the other projects...
Smaller: less code is needed on the D side of the equation. (wxD)
Bigger: more code is needed on the C++ side (being done elsewhere)

But there should be *no* OS-specific code in wxD, outside of API
differences (versioned) or the differences in the Makefiles etc.
I will make the home page spell this out clearer, with wxD 0.05.
(since apparently you got the wrong impression, from wxD 0.04...)


You can also check out some of the other language wrappers for wx:

* C++     http://www.wxwidgets.org/
* C#      http://wxnet.sourceforge.net/
* Python  http://www.wxpython.org/
* Lua     http://wxlua.sourceforge.net/

These all share the same underlying interface implementation. (wx)

More information about the Digitalmars-d-dwt mailing list