Hallo!
ich habe ein non modales Dialog mit 2 Buttons: OK und abbrechen.
Der Benutzer muss das Dialog nicht darauf klicken, aber wenn er es schließt, möchte ich wissen mit welchem Button er das geschlossen hat.
Ich mache es so:
Code:
dialog = gtk_message_dialog_new(parent, GTK_DIALOG_DESTROY_WITH_PARENT, messageType, GTK_BUTTONS_OK_CANCEL, "%s", meldung);
g_signal_connect_swapped(nm_local.info_dialog, "response", G_CALLBACK (cb_on_close_non_modal), dialog);
Code:
static gboolean cb_on_close_non_modal(GtkWidget *widget, gpointer data)
{
// hier unterscheiden, was für ein Button gedrückt wurde
switch (response)
{
case GTK_BUTTON_OK: do this
break;
case GTK_BUTTON_CANCEL: do that
break;
}
return FALSE;
}
In der Funktion cb_on_close_non_modal möchte ich gern unterscheiden, ob der Benutzer "OK" oder "Cancel" gedrückt hat.
Ich kann die Funktion response = gtk_dialog_run (GTK_DIALOG (dialog));
NICHT benutzen, weil ich ein non modales Dialog möchte.
Kann mir jemand sagen, woher ich die Antwort des Benutzers bekommen kann?
Danke im Voraus für Eure Hilfe
Lesezeichen