December 30, 2007
During my /investigations/ regarding :What GUI do I need to create an realtime/collaboration IDE I found our the the MS MFC approach is not that bad.

In case that there is some interest I could add a page to the D WIKI
showing the use of :

CriticalSection/Mutex
Thread Local Storage
CBT (computer based training) Hooks. (in our case, Invoked before WM_NCCREATE)

together they'll make a thread safe GUI, using common D stuff like :

class Window
{
package :
  static Window[HWND] wndMap; //

...
etc. The important point is that :

one thread's Window is not present in other threads' HWND-to-wndMaps.

Just let me know
Bjoern