[glom] Canvas_PrintLayout: Use std::unique_ptr<> instead of naked new.



commit d5b76d65fcca3a7039287f3afb3842e675e81ddb
Author: Murray Cumming <murrayc murrayc com>
Date:   Fri Feb 5 11:01:19 2016 +0100

    Canvas_PrintLayout: Use std::unique_ptr<> instead of naked new.
    
    I am not very happy with passing the raw pointer to gtkmm's
    attach_to_widget(), but that seems to be the normal use of
    unique_ptr<>::operator*() and unique_ptr<>::get(),
    as long as we don't expect the receiving API to take any
    ownership.

 glom/print_layout/canvas_print_layout.cc |    2 +-
 glom/print_layout/canvas_print_layout.h  |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/glom/print_layout/canvas_print_layout.cc b/glom/print_layout/canvas_print_layout.cc
index a410a23..88e4e68 100644
--- a/glom/print_layout/canvas_print_layout.cc
+++ b/glom/print_layout/canvas_print_layout.cc
@@ -286,7 +286,7 @@ void Canvas_PrintLayout::setup_context_menu()
   menu->append(_("_Edit"), "context.edit");
   menu->append(_("_Formatting"), "context.formatting");
   menu->append(_("_Delete"), "context.delete");
-  m_context_menu = new Gtk::Menu(menu);
+  m_context_menu = std::make_unique<Gtk::Menu>(menu);
   m_context_menu->attach_to_widget(*this);
 }
 
diff --git a/glom/print_layout/canvas_print_layout.h b/glom/print_layout/canvas_print_layout.h
index 1fd7a44..c139c01 100644
--- a/glom/print_layout/canvas_print_layout.h
+++ b/glom/print_layout/canvas_print_layout.h
@@ -151,7 +151,7 @@ private:
   type_vec_margins m_vec_margin_bottoms;
 
   //Context menu for existing items:
-  Gtk::Menu* m_context_menu;
+  std::unique_ptr<Gtk::Menu> m_context_menu;
   Glib::RefPtr<Gio::SimpleActionGroup> m_context_menu_action_group;
   Glib::RefPtr<Gio::SimpleAction> m_action_edit, m_action_formatting, m_action_delete;
   Glib::RefPtr<CanvasLayoutItem> m_context_item; //The selected item when showing the context menu.,


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