Code

Fixed undo for eraser to be a single step
authorjoncruz <joncruz@users.sourceforge.net>
Sun, 27 Apr 2008 08:30:53 +0000 (08:30 +0000)
committerjoncruz <joncruz@users.sourceforge.net>
Sun, 27 Apr 2008 08:30:53 +0000 (08:30 +0000)
src/eraser-context.cpp
src/splivarot.cpp
src/splivarot.h

index f8748558d0bea7cab9170344cce6c9697594711e..3d142a9d0365584468cd42300d156cdce366485c 100644 (file)
@@ -837,7 +837,7 @@ set_to_accumulated(SPEraserContext *dc)
 
                         selection->set(item);
                         selection->add(dup);
-                        sp_selected_path_diff();
+                        sp_selected_path_diff_skip_undo();
                         if ( !selection->isEmpty() ) {
                             // If the item was not completely erased, add it back to the selection.
                             GSList const *selected2 = g_slist_copy(const_cast<GSList *>(selection->itemList()));
index b2da4e9f661f98f102911646356c81ec55b70126..01331d2f8a6e3c5a4e260600b9fb527de0720b6a 100644 (file)
@@ -89,6 +89,12 @@ sp_selected_path_diff()
     sp_selected_path_boolop(bool_op_diff, SP_VERB_SELECTION_DIFF, _("Difference"));
 }
 
+void
+sp_selected_path_diff_skip_undo()
+{
+    sp_selected_path_boolop(bool_op_diff, SP_VERB_NONE, _("Difference"));
+}
+
 void
 sp_selected_path_symdiff()
 {
index 61b5ee14380eecd170db947dd0d7747164d5a322..2ac47135a947434211fe5770b87d8a8dc5da0192 100644 (file)
@@ -16,6 +16,7 @@ void sp_selected_path_union ();
 void sp_selected_path_union_skip_undo ();
 void sp_selected_path_intersect ();
 void sp_selected_path_diff ();
+void sp_selected_path_diff_skip_undo ();
 void sp_selected_path_symdiff ();
 void sp_selected_path_cut ();
 void sp_selected_path_slice ();