summaryrefslogtreecommitdiffstats
path: root/src/ui/toolbar/node-toolbar.cpp
diff options
context:
space:
mode:
authorAlexander Valavanis <valavanisalex@gmail.com>2019-01-22 00:46:25 +0000
committerAlexander Valavanis <valavanisalex@gmail.com>2019-01-22 00:46:25 +0000
commit35cbd0fa2ef8b713018cd9adf996bd70d783cc1c (patch)
treeeb6f8c2c9fe9d7a652740253e17d32588200a5b1 /src/ui/toolbar/node-toolbar.cpp
parentTidy up toolbox code (diff)
downloadinkscape-35cbd0fa2ef8b713018cd9adf996bd70d783cc1c.tar.gz
inkscape-35cbd0fa2ef8b713018cd9adf996bd70d783cc1c.zip
Tidy memory management in toolbars
Diffstat (limited to 'src/ui/toolbar/node-toolbar.cpp')
-rw-r--r--src/ui/toolbar/node-toolbar.cpp29
1 files changed, 7 insertions, 22 deletions
diff --git a/src/ui/toolbar/node-toolbar.cpp b/src/ui/toolbar/node-toolbar.cpp
index 472d99c43..5f3b8daa2 100644
--- a/src/ui/toolbar/node-toolbar.cpp
+++ b/src/ui/toolbar/node-toolbar.cpp
@@ -209,12 +209,6 @@ static void sp_node_path_edit_nextLPEparam(GtkAction * /*act*/, gpointer data) {
sp_selection_next_patheffect_param( reinterpret_cast<SPDesktop*>(data) );
}
-
-
-//################################
-//## Node Editing Toolbox ##
-//################################
-
namespace Inkscape {
namespace UI {
namespace Toolbar {
@@ -224,15 +218,6 @@ NodeToolbar::NodeToolbar(SPDesktop *desktop)
_tracker(new UnitTracker(Inkscape::Util::UNIT_TYPE_LINEAR))
{}
-NodeToolbar::~NodeToolbar()
-{
- delete _pusher_show_transform_handles;
- delete _pusher_show_handles;
- delete _pusher_show_outline;
- delete _pusher_edit_clipping_paths;
- delete _pusher_edit_masks;
-}
-
GtkWidget *
NodeToolbar::prep(SPDesktop *desktop, GtkActionGroup* mainActions)
{
@@ -418,7 +403,7 @@ NodeToolbar::prep(SPDesktop *desktop, GtkActionGroup* mainActions)
"node-transform",
secondarySize );
gtk_action_group_add_action( mainActions, GTK_ACTION( act ) );
- holder->_pusher_show_transform_handles = new PrefPusher(GTK_TOGGLE_ACTION(act), "/tools/nodes/show_transform_handles");
+ holder->_pusher_show_transform_handles.reset(new PrefPusher(GTK_TOGGLE_ACTION(act), "/tools/nodes/show_transform_handles"));
}
{
@@ -428,7 +413,7 @@ NodeToolbar::prep(SPDesktop *desktop, GtkActionGroup* mainActions)
INKSCAPE_ICON("show-node-handles"),
secondarySize );
gtk_action_group_add_action( mainActions, GTK_ACTION( act ) );
- holder->_pusher_show_handles = new PrefPusher(GTK_TOGGLE_ACTION(act), "/tools/nodes/show_handles");
+ holder->_pusher_show_handles.reset(new PrefPusher(GTK_TOGGLE_ACTION(act), "/tools/nodes/show_handles"));
}
{
@@ -438,7 +423,7 @@ NodeToolbar::prep(SPDesktop *desktop, GtkActionGroup* mainActions)
INKSCAPE_ICON("show-path-outline"),
secondarySize );
gtk_action_group_add_action( mainActions, GTK_ACTION( act ) );
- holder->_pusher_show_outline = new PrefPusher(GTK_TOGGLE_ACTION(act), "/tools/nodes/show_outline");
+ holder->_pusher_show_outline.reset(new PrefPusher(GTK_TOGGLE_ACTION(act), "/tools/nodes/show_outline"));
}
{
@@ -459,7 +444,7 @@ NodeToolbar::prep(SPDesktop *desktop, GtkActionGroup* mainActions)
INKSCAPE_ICON("path-clip-edit"),
secondarySize );
gtk_action_group_add_action( mainActions, GTK_ACTION(inky) );
- holder->_pusher_edit_clipping_paths = new PrefPusher(GTK_TOGGLE_ACTION(inky), "/tools/nodes/edit_clipping_paths");
+ holder->_pusher_edit_clipping_paths.reset(new PrefPusher(GTK_TOGGLE_ACTION(inky), "/tools/nodes/edit_clipping_paths"));
}
{
@@ -469,7 +454,7 @@ NodeToolbar::prep(SPDesktop *desktop, GtkActionGroup* mainActions)
INKSCAPE_ICON("path-mask-edit"),
secondarySize );
gtk_action_group_add_action( mainActions, GTK_ACTION(inky) );
- holder->_pusher_edit_masks = new PrefPusher(GTK_TOGGLE_ACTION(inky), "/tools/nodes/edit_masks");
+ holder->_pusher_edit_masks.reset(new PrefPusher(GTK_TOGGLE_ACTION(inky), "/tools/nodes/edit_masks"));
}
/* X coord of selected node(s) */
@@ -482,7 +467,7 @@ NodeToolbar::prep(SPDesktop *desktop, GtkActionGroup* mainActions)
TRUE, "altx-nodes",
-1e6, 1e6, SPIN_STEP, SPIN_PAGE_STEP,
labels, values, G_N_ELEMENTS(labels),
- holder->_tracker );
+ holder->_tracker.get() );
ege_adjustment_action_set_focuswidget(holder->_nodes_x_action, GTK_WIDGET(desktop->canvas));
holder->_nodes_x_adj = Glib::wrap(ege_adjustment_action_get_adjustment(holder->_nodes_x_action));
holder->_nodes_x_adj->signal_value_changed().connect(sigc::bind(sigc::mem_fun(*holder, &NodeToolbar::value_changed), Geom::X));
@@ -500,7 +485,7 @@ NodeToolbar::prep(SPDesktop *desktop, GtkActionGroup* mainActions)
FALSE, nullptr,
-1e6, 1e6, SPIN_STEP, SPIN_PAGE_STEP,
labels, values, G_N_ELEMENTS(labels),
- holder->_tracker );
+ holder->_tracker.get() );
ege_adjustment_action_set_focuswidget(holder->_nodes_y_action, GTK_WIDGET(desktop->canvas));
holder->_nodes_y_adj = Glib::wrap(ege_adjustment_action_get_adjustment(holder->_nodes_y_action));
holder->_nodes_y_adj->signal_value_changed().connect(sigc::bind(sigc::mem_fun(*holder, &NodeToolbar::value_changed), Geom::Y));