Programación en Ubuntu

Juan Daniel jdprigioni en arnet.com.ar
Mie Mayo 27 07:18:04 BST 2009


Estoy probando de programar en ubuntu con el anjuta y glade, ya cree una
interfaz de usuario y descubrí como insertar en el codigo del programa los
"manejadores de señales" que utiliza glade pero no se como hacerlos andar.
Alguien que me ayude a conseguir algun tutorial porque estoy cansado de
recorrer toda la web sin encontrar nada, solo encuentro tutoriales viejos
donde el glade generaba un archivo llamado callbacks.c pero ese archivo no
lo genera mas, ahora se insertan en el main.cc los manejadores. Este es mi
codigo, lo unico que necesito es hacer andar el boton BtSalir para poder
salir de la aplicacion.

/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
/*
 * main.cc
 * Copyright (C) Juan Daniel 2009 <jdprigioni en gmail.com>
 *
 */

#include <libglademm/xml.h>
#include <gtkmm.h>
#include <iostream>



/* For testing propose use the local (not installed) glade file */
/* #define GLADE_FILE PACKAGE_DATA_DIR"/prueba/glade/prueba.glade" */
#define GLADE_FILE "prueba.glade"

int main (int argc, char *argv[])
{
    Gtk::Main kit(argc, argv);


    //Load the Glade file and instiate its widgets:
    Glib::RefPtr<Gnome::Glade::Xml> refXml;
    try
    {
        refXml = Gnome::Glade::Xml::create(GLADE_FILE);
    }
    catch(const Gnome::Glade::XmlError& ex)
    {
        std::cerr << ex.what() << std::endl;
        return 1;
    }
    Gtk::Window* main_win = 0;
    refXml->get_widget("main_window", main_win);
    if (main_win)
    {
        kit.run(*main_win);
    }
    return 0;
}

//Estos son los manejadores de señales segun estan declaradas parecen
funciones
//pero al momento de ejecutar el programa presiono en el boton y no pasa
nada
//supongo que debo implementarlo en algun lado del codigo de arriba pero no
se
//donde ni como

void
on_BtSalir_clicked (GtkButton *self, gpointer user_data)
{
    gtk_main_quit ();
}

void
on_main_window_destroy (GtkWindow *self, gpointer user_data)
{
    gtk_main_quit ();
}

Espero puedan ayudarme o decirme donde encontrar ayuda!Muchas gracias!

-- 
Juan Daniel
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://lists.ubuntu.com/archives/ubuntu-es/attachments/20090527/c3be1a9c/attachment.htm 


Más información sobre la lista de distribución ubuntu-es