#include <stdio.h>
#include <X11/Xlib.h>
#include <X11/extensions/shape.h>
-#include <GL/glx.h>
#include <string.h>
#include <stdlib.h>
#include "render.h"
int main()
{
Window win;
- GC gc;
- Pixmap pm;
- Appearance *look;
+ RrInstance *inst;
+ RrAppearance *look;
- int grabbed = 0;
Window root;
- XGCValues values;
XEvent report;
- int h = 500, w = 500, tmp;
- XVisualInfo *vi;
- int i;
+ int h = 500, w = 500;
ob_display = XOpenDisplay(NULL);
XSetErrorHandler(x_error_handler);
ob_screen = DefaultScreen(ob_display);
ob_root = RootWindow(ob_display, ob_screen);
win =
- XCreateWindow(ob_display, RootWindow(ob_display, 0)
- , 10, 10, w, h, 10,
- CopyFromParent, // depth
- CopyFromParent, // class
- CopyFromParent, // visual
- 0, // valuemask
- 0); // attributes
+ XCreateWindow(ob_display, RootWindow(ob_display, 0),
+ 10, 10, w, h, 10,
+ CopyFromParent, /* depth */
+ CopyFromParent, /* class */
+ CopyFromParent, /* visual */
+ 0, /* valuemask */
+ 0); /* attributes */
XMapWindow(ob_display, win);
XSelectInput(ob_display, win, ExposureMask | StructureNotifyMask);
root = RootWindow (ob_display, DefaultScreen (ob_display));
- render_startup();
+ inst = RrInstanceNew(ob_display, ob_screen);
- look = appearance_new(Surface_Planar, 0);
- look->surface.data.planar.grad = Background_Solid;
- look->surface.data.planar.secondary = color_new(0xFF, 0xFF, 0xFF);
- look->surface.data.planar.primary = color_parse("Red");
- look->surface.data.planar.interlaced = FALSE;
+ look = RrAppearanceNew(inst, 0);
+ look->surface.grad = RR_SURFACE_RECTANGLE;
+ look->surface.secondary = RrColorParse(inst, "Yellow");
+ look->surface.primary = RrColorParse(inst, "Blue");
+ look->surface.interlaced = FALSE;
if (ob_display == NULL) {
fprintf(stderr, "couldn't connect to X server :0\n");
return 0;
}
- paint(win, look, 500, 500);
+ RrPaint(look, win, w, h);
while (1) {
XNextEvent(ob_display, &report);
switch (report.type) {
case Expose:
break;
case ConfigureNotify:
- w = report.xconfigure.width;
- h = report.xconfigure.height;
- paint(win, look, w, h);
- printf("confignotify %i:%i\n", w, h);
+ RrPaint(look, win,
+ report.xconfigure.width,
+ report.xconfigure.height);
break;
}
}
+ RrAppearanceFree (look);
+ RrInstanceFree (inst);
+
return 1;
}