manuel david jimenez patiño
Mon, 01 Oct 2007 15:44:48 -0700
Hola a todos, os cuento el último problemilla que tengo con Gazpacho. Verán el código que tengo para conectar con la interfaz que he creado es el siguiente:
#include
#include
#include
#include
GtkWidget * prueba_crear_main(void);
void on_window1_destroy();
/*********************************************************************************************
* Funcion principal main
*********************************************************************************************
int main(int argc, char *argv[]) {
GtkWidget* window_main;
gtk_init(&argc, &argv);
window_main = prueba_crear_main();
/* Iniciar el ciclo principal */
gtk_main();
return 0;
}
/*****************************************************************************************
* fin del main
*****************************************************************************************/
/*******************************************************************************
* CARGAMOS LA VENTANA
*******************************************************************************
GtkWidget * prueba_crear_main(void){
GladeXML *xml;
GtkWidget *window;
xml = glade_xml_new("saludo3.glade", NULL, NULL);
glade_xml_signal_autoconnect(xml);
window = glade_xml_get_widget (xml, "principal");
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size (GTK_WINDOW (window), 800, 500);
g_signal_connect (window, "destroy",G_CALLBACK (on_window1_destroy), NULL);
return window;
}
/*****************************************************************************
* Funcion que al pinchar salir en la ventana se ejecuta y fuerza la salida del
programa
*****************************************************************************
void on_window1_destroy(){
gtk_main_quit();
}
Lo compilo como siempre:
$ gcc -o aver2 aver.c `pkg-config --cflags --libs gtk+-2.0 libglade-2.0`
¡ y guay!, me crea el ejecutable.
entonces yo hago:
$ ./aver2
y vale la ventana me la muestra bien, pero en línea de comandos me sale la
siguiente mierda:
(aver2:9788): libglade-WARNING **: could not find signal handler
'on_window1_destroy'.
Es decir como que no me reconoce el método "on_window1_destroy".
Vale, alguno que haya utilizado glade, glade-3 o Gazpacho, podría pensar que se
me ha olivado ponerlo en el apartado de señales de la ventana principal
"window1", pero no, justo en:
-GtkObject
- destroy on_window1_destroy
(Esto está en el programa Gazpacho)
He estado buscando por ahí, y he leido que quizá me podría faltar la librería:
#include
pero no creo que este sea el problema, ya que a mi me da el problema con
libglade.
el enlace está aquí:
http://listas.hispalinux.es/pipermail/gnome-libros/2006-June/000852.html
¿A alguno de ustedes le ha pasado esto alguna vez?
Venga un saludo, no obstante seguiré investigando.
*******************************************************************************
"Por mucho que camine nunca alcanzaré la utopía, pero al menos para eso me
sirve, para caminar" eslogan de una manifestación ANTIglobalización... si ,
esos locos dando gritos que nos sacan en los telediarios a la hora de comer ...
. ¿Acaso un loco escribiría una frase como la anterior? ...
----------------------------------------> From: [EMAIL PROTECTED]> To:
crysol@arco.inf-cr.uclm.es> Date: Sun, 30 Sep 2007 18:25:22 +0000> Subject: Re:
[CRySoL] Glade, or Gazpacho: that is the question>>> Os cuento alguno de los
últimos avances con Gazpacho.> Al igual que glade o glade-3, Gazpacho genera
archivos .glade (esto es la interfaz que creas y luego guardas).>> Hasta ahora
sólo sabía cargar la interfaz (el archivo .glade ), dese Python, el código es
el siguiente:> (El archivo en mi caso se llama saludo3.glade)>>> #Importamos
las librerias Gtk necesarias> import gtk> from gtk import glade>> #Creamos
nuestra clase principal> class saludo:> def __init__ (self):>> #Cargamos el
archivo .glade> self.xml = glade.XML("saludo3.glade", None, None)>
self.xml.signal_connect("on_principal_destroy",lambda w: gtk.main_quit())>>>
#Iniciamos la aplicacion> if __name__ == "__main__":> c = saludo()>
gtk.main()>>> Para compilar:>> $ python este_archivo.py>>>>> Pero esta tarde
también he aprendido a cargarla desde C, el código es el sigiuente:>> #include>
#include>>> int main(int argc, char *argv[]) {> GladeXML *xml;>>
gtk_init(&argc, &argv);>> /* Cargar la interfaz de usuario */> xml =
glade_xml_new("saludo3.glade", NULL, NULL);>> /* Conectar las señales de la
interfaz */> glade_xml_signal_autoconnect(xml);>> /* Iniciar el ciclo principal
*/> gtk_main();>> return 0;> }>>> Para compilar:>> $ gcc -o este_archivo
este_archivo.c `pkg-config --cflags --libs gtk+-2.0 libglade-2.0`>
$./este_archivo>>>>> la librería libglade, te permite a partir del archivo XML
que define una interfaz creada con glade generarla en tiempo de ejecución, sin
la necesidad de código en C generado. Desde entonces, ya no es recomendable
usar el código generado por glade, y se da preferencia al uso de esta
librería.>>> Por ahora nada màs, ahora toca ponerse a controlar los eventos de
los botones y todo eso.>> Un saludo.>>>>>>>>>
----------------------------------------> From: [EMAIL PROTECTED]> To:
crysol@arco.inf-cr.uclm.es> Date: Sun, 30 Sep 2007 10:44:20 +0000> Subject: Re:
[CRySoL] Glade, or Gazpacho: that is the question>>>>>>>>Puedes subirlo como
receta.> Un saludo!>> Hola David!, pues si, al final me va a tocar ponerlo como
receta, aunque más que una receta va ser un mini libro de cocina (son unas 20
caras), pero en fin, todo sea para que le pueda ser útil a alguien.>> Un
saludo.>>
**************************************************************************************************>
Siempre pongo citas, pero lo cierto es que hace tiempo que no tengo una.>>>>>
El sáb, 29-09-2007 a las 23:20 +0000, manuel david jimenez patiño> escribió:>>
Oye muchachos os estaba adjuntando un manual de introducción a glade, glade-3 y
Gazpacho,que había estado realizando estos días. pero parece ser que ocupa más
de 100 KB y no me deja adjuntarlo.>>>> He mirado la sección de manuales en
Crysol, pero creo que yo no lo puedo subir ..., así que de momento mi manual
está aquí inutilizado en mi escritorio, que rabia ... .>>>> Un saludo.>>>>
*******************************************************************************************************
Anímense hombre, ¡que todos los días toca! ..., toca ver el cielo, toca
aprender, toca reir, toca luchar ... .¿Existe lotería mejor?>>>>>>>>>>
----------------------------------------> From: [EMAIL PROTECTED]> To:
crysol@arco.inf-cr.uclm.es> Date: Sun, 23 Sep 2007 11:25:32 +0000> Subject: Re:
[CRySoL] Glade, or Gazpacho: that is the question>>> Vale. Voya ver que soy
capaz de hacer estas semanas.>> Un saludo.>>> ________________________________>
Date: Sun, 23 Sep 2007 02:23:09 +0200> From: [EMAIL PROTECTED]> To: [EMAIL
PROTECTED]> Subject: Re: [CRySoL] Glade, or Gazpacho: that is the question> CC:
crysol@arco.inf-cr.uclm.es>> Si haces un tuto, cuelga la receta en
www.crysol.org> Un saludo.> El día 22/09/07, manuel david jimenez patiño <
[EMAIL PROTECTED]> escribió:>>
_________________________________________________________________> Prueba
algunos de los nuevos servicios en línea que te ofrece Windows Live Ideas: tan
nuevos que ni siquiera se han publicado oficialmente todavía.>
http://ideas.live.com> _______________________________________________> CRySoL
mailing list> http://crysol.inf-cr.uclm.es/>
https://arco.inf-cr.uclm.es/cgi-bin/mailman/listinfo/crysol>>>>
_________________________________________________________________>> Busca desde
cualquier página Web con una protección excepcional. Consigue la Barra de
herramientas de Windows Live hoy mismo y GRATUITAMENTE.>>
http://www.toolbar.live.com>> _______________________________________________>>
CRySoL mailing list>> http://crysol.inf-cr.uclm.es/>>
https://arco.inf-cr.uclm.es/cgi-bin/mailman/listinfo/crysol>>>
_________________________________________________________________> ¡Ya está
aquí Windows Live Spaces! Ahora podrás crear fácilmente tu propio sitio Web.>
http://spaces.live.com/signup.aspx>
_______________________________________________> CRySoL mailing list>
http://crysol.inf-cr.uclm.es/>
https://arco.inf-cr.uclm.es/cgi-bin/mailman/listinfo/crysol>>
_________________________________________________________________> ¡Ya está
aquí Windows Live Spaces! Ahora podrás crear fácilmente tu propio sitio Web.>
http://spaces.live.com/signup.aspx>
_______________________________________________> CRySoL mailing list>
http://crysol.inf-cr.uclm.es/>
https://arco.inf-cr.uclm.es/cgi-bin/mailman/listinfo/crysol
_________________________________________________________________
¡Ya está aquí Windows Live Spaces! Ahora podrás crear fácilmente tu propio
sitio Web.
http://spaces.live.com/signup.aspx
_______________________________________________
CRySoL mailing list
http://crysol.inf-cr.uclm.es/
https://arco.inf-cr.uclm.es/cgi-bin/mailman/listinfo/crysol