![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Exportar desde una aplicación a dos displays simultáneamenteTuesday, 20 December 2005, 10:21:59 am Sobrel el xfree con vnc Estamos utilizando el xf4vnc (tal y como hicimos con el portátil de ana). Para saber qué hay que poner en el XF86Config ver la documentación del xf4vnc. Friday, 16 December 2005, 1:30:54 pm Para detectar las deconexiones del servidor X Esos tienen una función diferente de registro (gdk.c) y es: XSetIOErrorHandler (gdk_x_io_error); Friday, 16 December 2005, 1:04:07 pm Gertión de errores en als X Para eso, ver Ghostview.c. Básicamente es: static XErrorHandler oldhandler;
static int
catch_alloc (dpy, err)
Display dpy;
XErrorEvent err;
{
if (err->error_code == BadAlloc) alloc_error = True;
if (alloc_error) return 0;
return oldhandler(dpy, err);
}
[...]
oldhandler = XSetErrorHandler(catch_alloc);
// Cosa que puede provocar el error
[...]
// Fin de la cosa que provoca el error
XSync(XtDisplay(w), False); // Forzar el error (si lo hay
oldhandler = XSetErrorHandler(oldhandler); // Desinstalar el manejador de error
Wednesday, 14 December 2005, 1:08:43 pm Uso de backing pixmaps El gv usa backing pixmap. Habría que hacer lo mismo. El código (gv-3.6.1/src/callbacks.c) es el siguiente: XSetWindowBackgroundPixmap(XtDisplay(w), XtWindow(w), MyPixmap);Antes de hacer un free del pixmap, hay que poner el background pixmap a None (se pone param. None en vez de MyPixmap). Wednesday, 14 December 2005, 9:25:06 am Para el redraw Ver Motif FAQ, 157) How can I send an expose event to a Drawing Area widget?. Wednesday, 23 November 2005, 1:48:18 pm Fuentes del libXpm COmo la librería libXpm hace lo que queremos, puede ser útil para ver cómo genera los pixmaps sin pasar por la xlib...
Tuesday, 22 November 2005, 1:18:43 pm Peleando con los Pixmaps Googleando un poco, encontramos el siguiente tutorial:
Monday, 7 November 2005, 12:26:01 pm Ejemplos con PEX Hay unos cuantos aquí (ftp://ftp.opengroup.org/pub/ftp.x.org/contrib/pex/). Wednesday, 2 November 2005, 11:18:02 am Cómo generar la segunda ventana Básicamente se abre un display con XOpenDisplay(nombre_display) (ver windowwatch.c) y luego se genera la ventana con XCreateSimpleWindow Descripción del proyectoSe trata de hacer que las aplicaciones con PEX (ui_operador y ui_teleindicador) exporten a un Xvnc con PEX la parte del plano, y en la ventana principal visualicen dicha ventana a base de protocolo vnc. Attachswindowwatch.cXlib JPEG Example.c Ghostview.c |