[Kde-devel-es] Como termino mi aplicación desde un slot?

Eloy Cuadra kde-devel-es@mail.kde.org
Fri, 10 Jan 2003 19:59:29 +0100


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hola,

El Vie 10 Ene 2003 18:26, Jaime Robles escribió:
> ¿Como es un slot que termina la aplicación?
> el "fileExit()"... ¿Como se implementa? ¿Cual es la función a la =
que hay
> que llamar para que acabe?
> He encontrado exit() y quit() pero no se muy bien que hacer...

En una aplicación KDE "real" lo ideal sería crear una acción para manejar el 
slot que termina la ejecución (por ejemplo slotFileQuit() ).

Un buen lugar para crear esa acción y conectarla con el slot correspondiente 
es el constructor de la ventana principal de la aplicación. Por ejemplo, 
suponiendo que nuestra ventana principal está derivada de KMainWindow y 
estando declarada actQuit como una variable de tipo KAction* en la definición 
de la clase de la ventana principal, en en constructor de la misma 
escribimos:

  actQuit = KStdAction::quit(this, SLOT(slotFileQuit()), actionCollection());

A continuación, también dentro del constructor, esa acción puede ser añadida 
al menú principal, por ejemplo:

  KPopupMenu* file = new KPopupMenu(this);
  menuBar()->insertItem(i18n("&File"), file );
  actQuit->plug(file);

Y también en la barra de herramientas, si se quiere:

  actQuit->plug(toolBar());

La función correspondiente a este slot sería algo parecido a esto:

void MyWnd::slotFileQuit()
{
  if(queryClose()) kapp->quit();
}

Saludos,

Eloy
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)

iD8DBQE+HxgZwUEwizbVe3YRAovuAJ9bGixnRH4Pm4V+DaXsRSlaG6+KBACfeDbh
JahFhY0xcoJuyotcKqgAH0g=
=7xBn
-----END PGP SIGNATURE-----