From ca67793ac5341a345279be20473942daf0261e2f Mon Sep 17 00:00:00 2001 From: daleclack Date: Fri, 17 Sep 2021 11:04:05 +0800 Subject: [PATCH] Update gtk108 --- Gtkmm3/gtk108_settings/src/MyWin.cc | 6 +----- Gtkmm3/gtk108_settings/src/MyWin.hh | 5 ++++- Gtkmm3/gtk108_settings/src/main.cc | 6 +----- 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/Gtkmm3/gtk108_settings/src/MyWin.cc b/Gtkmm3/gtk108_settings/src/MyWin.cc index 95f0dba..4743cfe 100644 --- a/Gtkmm3/gtk108_settings/src/MyWin.cc +++ b/Gtkmm3/gtk108_settings/src/MyWin.cc @@ -66,9 +66,5 @@ MyWin * MyWin::create(){ void MyWin::btnprefs_clicked(){ auto prefs=MyPrefs::create(*this); prefs->present(); - prefs->signal_hide().connect(sigc::bind(sigc::mem_fun(*this,&MyWin::on_hide_window),prefs)); -} - -void MyWin::on_hide_window(Gtk::Window* window){ - delete window; + prefs->signal_hide().connect(sigc::bind(sigc::ptr_fun(on_hide_window),prefs)); } diff --git a/Gtkmm3/gtk108_settings/src/MyWin.hh b/Gtkmm3/gtk108_settings/src/MyWin.hh index 05231ea..0a363a6 100644 --- a/Gtkmm3/gtk108_settings/src/MyWin.hh +++ b/Gtkmm3/gtk108_settings/src/MyWin.hh @@ -17,5 +17,8 @@ class MyWin : public Gtk::Window{ //Signal Handlers void btnprefs_clicked(); - void on_hide_window(Gtk::Window* window); }; + +static inline void on_hide_window(Gtk::Window* window){ + delete window; +} diff --git a/Gtkmm3/gtk108_settings/src/main.cc b/Gtkmm3/gtk108_settings/src/main.cc index bedfa65..f69aa65 100644 --- a/Gtkmm3/gtk108_settings/src/main.cc +++ b/Gtkmm3/gtk108_settings/src/main.cc @@ -1,9 +1,5 @@ #include "MyWin.hh" -void on_hide(Gtk::Window* window){ - delete window; -} - int main(int argc,char **argv){ //Initalize env Glib::setenv("GSETTINGS_SCHEMA_DIR",".",false); @@ -11,7 +7,7 @@ int main(int argc,char **argv){ //Create a application and run auto app=Gtk::Application::create(argc,argv,"org.gtk.daleclack"); auto window=MyWin::create(); - window->signal_hide().connect(sigc::bind(sigc::ptr_fun(on_hide),window)); + window->signal_hide().connect(sigc::bind(sigc::ptr_fun(on_hide_window),window)); return app->run(*window); } \ No newline at end of file