Klassenhierarchie erneuert, Codebase erneuert
* Object -> Drawable -> ...
* Surface stellt eine SDL Schnittstelle bereit
* namespace pmc wurde aufgegeben
* DEBUG Option im Makefile
Bekannte Fehler:
* Jedes Drawable muss wissen und checken, ob es gezeichnet werden kann oder nicht
* Diese *P[i] = *P[i] + location Konstrukte machen mich irgendwie nervös...
-> operator* entfernt...
committer: Markus Bröker <mbroeker@largo.homelinux.org>
/**
* test/demos/xdemo.c
* Copyright (C) 2008 Markus Broeker
*/
#include <stdio.h>
#include <stdlib.h>
#include <X11/Xlib.h>
int main (int argc, char **argv)
{
Window w = 0;
Display *dpy = XOpenDisplay (NULL);
XEvent xev;
int active;
if (dpy == NULL) {
printf ("Error opening localhost:0\n");
return EXIT_SUCCESS;
}
XSynchronize (dpy, 1);
w = XCreateSimpleWindow (dpy, DefaultRootWindow (dpy), 0, 0, 240, 60, 1, 1, 1);
if (w < 0)
return EXIT_SUCCESS;
printf ("WINDOW-ID: %ld\n", w);
XRaiseWindow (dpy, w);
XMapWindow (dpy, w);
printf ("Press ESC to quit\n");
active = 1;
XSelectInput (dpy, w, KeyPressMask);
while (active) {
XNextEvent (dpy, &xev);
switch (xev.type) {
case KeyPress:
if (xev.xkey.keycode == 9)
active = 0;
printf ("Keycode = %2u\n", xev.xkey.keycode);
break;
default:
printf ("Unknown Event: %d\n", xev.type);
}
}
XDestroyWindow (dpy, w);
XCloseDisplay (dpy);
return EXIT_SUCCESS;
}