DWT - D Widget Toolkit
DWT is a library for creating cross-platform GUI applications. It's a port of the SWT Java library from Eclipse. Current supported platforms are Windows, using Win32 and Linux, using GTK.
Usage
-
Install all the requirements
-
Enter the following code in a file called
main.d
:/+ dub.sdl: name "main" dependency "dwt" version="~>1.0.0" libs \ "atk-1.0" \ "cairo" \ "dl" \ "fontconfig" \ "gdk-x11-2.0" \ "gdk_pixbuf-2.0" \ "glib-2.0" \ "gmodule-2.0" \ "gnomeui-2" \ "gnomevfs-2" \ "gobject-2.0" \ "gthread-2.0" \ "gtk-x11-2.0" \ "pango-1.0" \ "pangocairo-1.0" \ "X11" \ "Xcomposite" \ "Xcursor" \ "Xdamage" \ "Xext" \ "Xfixes" \ "Xi" \ "Xinerama" \ "Xrandr" \ "Xrender" \ "Xtst" \ platform="linux" +/ module main; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; void main () { auto display = new Display; auto shell = new Shell; shell.open(); while (!shell.isDisposed) if (!display.readAndDispatch()) display.sleep(); display.dispose(); }
-
Build and run by running:
dub --single main.d
Build all the Snippets
$ dub --single tools/build_snippets.d
Documentation
For documentation, see any existing documentation or examples for SWT. See also the snippets which contains a bunch of the official SWT snippets ported to D.
Requirements
Windows
All required files are included in the repository.
Linux
For Ubuntu, use the packages below. For other systems use the corresponding packages available in the system package manager.
- libcairo2-dev
- libglib2.0-dev
- libgnomeui-dev
- libgtk2.0-dev
- libpango1.0-dev
- libxcomposite-dev
- libxcursor-dev
- libxdamage-dev
- libxfixes-dev
- libxi-dev
- libxinerama-dev
- libxrandr-dev
- libxtst-dev