The program below demonstates a simple example of a transparent overlay. The program creates a transparent overlay window, draws the window border in white, displays a text string in white, and draws a white filled rectangle. The paint type is opaque by default, and the window background is transparent by default. Use the following Makefile to compile and link the program.
simple: simple.c cc -I../ -I/usr/openwin/include -o simple simple.c \ -L/usr/openwin/lib -lX11 -lXext
#include <stdio.h>
#include <X11/Xlib.h> #include "X11/Xmd.h" #include
<X11/extensions/transovl.h> #include
<X11/extensions/transovlstr.h> Display *display; Window
window; XSetWindowAttributes attribs; GC gc; XGCValues
gcvalues; main() { display = XOpenDisplay("");
attribs.override_redirect = True; attribs.border_pixel = WhitePixel(display,
0); window = XSolarisOvlCreateWindow(display, DefaultRootWindow(display),
100, 100, 500, 500, 10, CopyFromParent, InputOutput,CopyFromParent,
CWBorderPixel | CWOverrideRedirect, &attribs); gcvalues.font =
XLoadFont(display, "fixed"); gcvalues.foreground =
WhitePixel(display, 0); gc = XCreateGC(display, window, GCFont | GCForeground,
&gcvalues); XMapWindow(display, window); XDrawString(display, window,
gc, 50, 50, "This is a test", 14); XFillRectangle(display,
window, gc, 70, 70, 100, 100); XFlush(display); while (1);}