View this PageEdit this PageUploads to this PageVersions of this PageHomeRecent ChangesSearchHelp Guide

Exportar desde una aplicación a dos displays simultáneamente




Tuesday, 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 proyecto


Se 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.

Attachs

windowwatch.c
Xlib JPEG Example.c
Ghostview.c