[GTKmm] Fenster schließen & TextView
-
Sollte eigentlich ein triviales Problem sein aber ich finde die Funktion nicht:
Ich habe eine von
Gtk::Window
abgeleitete Klasse, die per
Gtk::Main::run(instanz)
gestartet wird. Nun würde ich gerne das Fenster in einem Signalhandler, der als Memberfunktion implementiert ist, das Fenster schlicht schließen, finde aber den passenden Funktionsaufruf nicht.
-
Was du suchst, ist hide();
Eleganter geht das so:
//Unsere quit-Methode void Application::shutdown() { Gtk::MessageDialog dia("Really quit application", false, Gtk::MESSAGE_QUESTION, Gtk::BUTTONS_YES_NO, true); int result = dia.run(); //Wenn Benutzer Anwendung schließen will, erfüllen wir ihm diesen Wunsch :-D if (Gtk::RESPONSE_YES == result) hide(); } //Wenn jemand das Fenster schließt, wird dieser Handler aufgerufen bool Application::on_delete_event(GdkEventAny *event) { shutdown(); return true; }
-
Danke, macht genau das was ich will.
Damit erledigt sich auch die Frage nach dem Signal, das ich dabei bekomme (signal_hide() )
noch eine Frage: Gibts für Gtk::TextViews was vergleichbares zu signal_changed() oder muss ich da mit signal_keydown() oder so arbeiten? signal_changed() will mein Compiler nicht.
EDIT://
signal_changed gibts für den Buffer