glade3, gtk i dynamiczne okna dialogowe
: 27 lutego 2010, 16:35
Mam taki mały problemik. Chciałbym dynamicznie tworzyć okna dialogowe pobierając interfejs z pliku xml. Generalnie wiem jak się pobiera widgety, ale problem występuje kiedy zamykam okno a później próbuję uruchomić je jeszcze raz. Oto przykład.
Tworzenie okna w main:
Zamykanie okna po naciśnięciu przycisku:
Próba uruchomienia okna po wciśnięciu innego przycisku:
i tutaj właśnie nie działa.
Po naciśnięciu przycisku nic się nie dzieje (sygnał jest przypisany do funkcji).
Tworzenie okna w main:
Kod: Zaznacz cały
window2 = glade_xml_get_widget (gxml, "dialog1");
Kod: Zaznacz cały
static void on_button1_clicked (GtkWidget* widget, gpointer user_data)
{
gtk_widget_destroy(window2);
}
Kod: Zaznacz cały
static void on_directory_button_clicked (GtkWidget* widget, gpointer user_data)
{
window2 = glade_xml_get_widget (gxml, "dialog1");
gtk_dialog_run (GTK_DIALOG (window2));
gtk_widget_show (window2);
}
Po naciśnięciu przycisku nic się nie dzieje (sygnał jest przypisany do funkcji).