[ekiga] Manage the addressbook window using a smart pointer



commit c846213bd66e0455b995e540457ae5612a7e0b93
Author: Julien Puydt <jpuydt free fr>
Date:   Wed Jun 19 08:01:10 2013 +0200

    Manage the addressbook window using a smart pointer

 lib/engine/gui/gtk-frontend/gtk-frontend.cpp |    6 +++---
 lib/engine/gui/gtk-frontend/gtk-frontend.h   |    2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)
---
diff --git a/lib/engine/gui/gtk-frontend/gtk-frontend.cpp b/lib/engine/gui/gtk-frontend/gtk-frontend.cpp
index 4979c66..e08ff73 100644
--- a/lib/engine/gui/gtk-frontend/gtk-frontend.cpp
+++ b/lib/engine/gui/gtk-frontend/gtk-frontend.cpp
@@ -96,7 +96,6 @@ GtkFrontend::~GtkFrontend ()
   // management
 
   //gtk_widget_destroy (assistant_window);
-  //gtk_widget_destroy (addressbook_window);
   //gtk_widget_destroy (accounts_window);
   //gtk_widget_destroy (chat_window);
   //gtk_widget_destroy (call_window);
@@ -116,7 +115,8 @@ void GtkFrontend::build ()
   gtk_window_set_default_icon_name (GM_ICON_LOGO);
 
   addressbook_window =
-    addressbook_window_new_with_key (*contact_core, "/apps/" PACKAGE_NAME 
"/general/user_interface/addressbook_window");
+    boost::shared_ptr<GtkWidget>(addressbook_window_new_with_key (*contact_core, "/apps/" PACKAGE_NAME 
"/general/user_interface/addressbook_window"),
+                                gtk_widget_destroy);
   accounts_window = accounts_window_new_with_key (core, "/apps/" PACKAGE_NAME 
"/general/user_interface/accounts_window");
   assistant_window = ekiga_assistant_new (core);
   call_window = call_window_new (core);
@@ -154,7 +154,7 @@ GtkFrontend::get_main_window () const
 
 const GtkWidget *GtkFrontend::get_addressbook_window () const
 {
-  return addressbook_window;
+  return addressbook_window.get ();
 }
 
 
diff --git a/lib/engine/gui/gtk-frontend/gtk-frontend.h b/lib/engine/gui/gtk-frontend/gtk-frontend.h
index 81b4006..300e49f 100644
--- a/lib/engine/gui/gtk-frontend/gtk-frontend.h
+++ b/lib/engine/gui/gtk-frontend/gtk-frontend.h
@@ -84,7 +84,7 @@ private :
   GtkWidget* assistant_window;
   GtkWidget* main_window;
   GtkWidget *preferences_window;
-  GtkWidget *addressbook_window;
+  boost::shared_ptr<GtkWidget> addressbook_window;
   GtkWidget *accounts_window;
   GtkWidget *call_window;
   GtkWidget *chat_window;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]