From 3649ef4c620b9eae5132d89a39ebd280d9dc50a8 Mon Sep 17 00:00:00 2001 From: Alexander Brock Date: Thu, 27 Oct 2016 19:13:05 +0200 Subject: Add recursive clone unlink feature (bzr r15191.1.1) --- src/object-set.h | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'src/object-set.h') diff --git a/src/object-set.h b/src/object-set.h index 8fa20e454..35fdb431a 100644 --- a/src/object-set.h +++ b/src/object-set.h @@ -329,7 +329,19 @@ public: void deleteItems(); void duplicate(bool suppressDone = false, bool duplicateLayer = false); void clone(); - void unlink(); + + /** + * @brief Unlink all directly selected clones. + * @param skip_undo If this is set to true the call to DocumentUndo::done is omitted. + * @return True if anything was unlinked, otherwise false. + */ + bool unlink(bool skip_undo = false); + /** + * @brief Recursively unlink any clones present in the current selection, + * including clones which are used to clip other objects, groups of clones etc. + * @return true if anything was unlinked, otherwise false. + */ + bool unlinkRecursive(); void relink(); void cloneOriginal(); void cloneOriginalPathLPE(); @@ -375,7 +387,7 @@ public: void createBitmapCopy(); void setMask(bool apply_clip_path, bool apply_to_layer = false, bool skip_undo = false); void editMask(bool clip); - void unsetMask(bool apply_clip_path); + void unsetMask(const bool apply_clip_path, const bool skip_undo = false); void setClipGroup(); // moves -- cgit v1.2.3