1import core.sys.posix.unistd;
 2import core.stdc.stdlib;
 3
 4extern(C) {
 5	struct Display;
 6	struct Screen;
 7	alias Window = ulong;
 8
 9	Display* XOpenDisplay(const char*);
10	Window XDefaultRootWindow(Display*);
11	Window XCreateSimpleWindow(Display*, Window, int, int, uint, uint, uint, ulong, ulong);
12	int XMapWindow(Display*, Window);
13	int XFlush(Display*);
14	int XCloseDisplay(Display*);
15}
16
17void main() {
18	Display* mainDisplay = XOpenDisplay(null);
19	if (mainDisplay is null) {
20		exit(1);
21	}
22
23	Window rootWindow = XDefaultRootWindow(mainDisplay);
24
25	Window mainWindow = XCreateSimpleWindow(
26		mainDisplay, rootWindow,
27		0, 0,         // x, y position
28		800, 600,     // width, height
29		0,            // border width
30		0,            // border color (ignored)
31		0xFF0000      // background color (red)
32	);
33
34	XMapWindow(mainDisplay, mainWindow);
35	XFlush(mainDisplay);
36
37	while(true) {
38		sleep(1);
39	}
40}