Inkscape
Vector Graphics Editor
|
Go to the source code of this file.
Functions | |
static void | sp_group_perform_patheffect (SPGroup *group, SPGroup *top_group, Inkscape::LivePathEffect::Effect *lpe, bool write) |
static void | _ungroup_compensate_source_transform (SPItem *item, SPItem const *const expected_source, Geom::Affine const &source_transform) |
Helper function for ungrouping. | |
void | sp_item_group_ungroup_handle_clones (SPItem *parent, Geom::Affine const g) |
finds clones of a child of the group going out of the group; and inverse the group transform on its clones Also called when moving objects between different layers | |
Geom::OptRect | bbox_on_rect_clip (SPObject *object) |
bool | equal_clip (SPItem *item, SPObject *clip) |
static void | unlink_clones_of (SPGroup *group) |
Unlink all clones of the group. | |
void | sp_item_group_ungroup (SPGroup *group, std::vector< SPItem * > &children) |
SPObject * | sp_item_group_get_child_by_name (SPGroup *group, SPObject *ref, const gchar *name) |
void | set_default_highlight_colors (std::vector< guint32 > colors) |
Variables | |
std::vector< guint32 > | default_highlights |
|
static |
Helper function for ungrouping.
Compensates the transform of linked items (clones, linked offset, text-on-path, text with shape-inside) who's source is a direct child of the group being ungrouped (or will be moved to a different group or layer).
item | An object which may be linked to expected_source |
expected_source | An object who's transform attribute (but not its i2doc transform) will change (later) due to moving to a different group |
source_transform | A transform which will be applied to expected_source (later) and needs to be compensated in its linked items |
Definition at line 399 of file sp-item-group.cpp.
References SPText::_adjustFontsizeRecursive(), SPItem::adjust_paint_recursive(), SPItem::adjust_stroke_width_recursive(), Inkscape::LivePathEffect::CLONE_ORIGINAL, SPObject::cloned, SVGLength::computed, Geom::Affine::descrim(), SPText::get_first_shape_dependency(), SPUse::get_original(), SPItem::GRADIENT, SPItem::HATCH, Geom::identity(), Geom::Affine::inverse(), item, SPItem::PATTERN, SPOffset::rad, scale, sp_offset_get_source(), sp_textpath_get_path_item(), SPItem::transform, SPObject::updateRepr(), SPDimensions::x, and SPDimensions::y.
Referenced by sp_item_group_ungroup(), and sp_item_group_ungroup_handle_clones().
Geom::OptRect bbox_on_rect_clip | ( | SPObject * | object | ) |
Definition at line 477 of file sp-item-group.cpp.
References Geom::are_near(), Geom::PathVector::nodes(), Geom::PathVector::size(), Geom::X, and Geom::Y.
Referenced by sp_item_group_ungroup().
Definition at line 503 of file sp-item-group.cpp.
References clip(), item, pathv_similar(), and stroke.
Referenced by sp_item_group_ungroup().
void set_default_highlight_colors | ( | std::vector< guint32 > | colors | ) |
Definition at line 1125 of file sp-item-group.cpp.
References default_highlights.
Referenced by Inkscape::UI::ThemeContext::themechangecallback().
|
static |
Definition at line 1054 of file sp-item-group.cpp.
References SPLPEItem::applyToClipPath(), SPLPEItem::applyToMask(), c, i2anc_affine(), Geom::Affine::inverse(), SPGroup::item_list(), Inkscape::LivePathEffect::Effect::lpeversion, Inkscape::LivePathEffect::HiddenParam::param_getSVGValue(), Inkscape::LivePathEffect::Effect::pathvector_after_effect, Inkscape::LivePathEffect::Effect::pathvector_before_effect, SPLPEItem::performOnePathEffect(), Inkscape::XML::Node::setAttribute(), sp_group_perform_patheffect(), and sp_svg_write_path().
Referenced by sp_group_perform_patheffect(), and SPGroup::update_patheffect().
Definition at line 781 of file sp-item-group.cpp.
References child, SPObject::firstChild(), SPObject::getNext(), name, and ref.
Referenced by sp_document_metadata().
Definition at line 540 of file sp-item-group.cpp.
References _ungroup_compensate_source_transform(), Inkscape::ObjectSet::add(), Inkscape::XML::Node::addChild(), SPItem::adjust_paint_recursive(), bbox_on_rect_clip(), child, SPObject::children, clip(), Inkscape::LivePathEffect::CLONE_ORIGINAL, Geom::GenericOptRect< C >::contains(), SPObject::deleteObject(), SPObject::document, Inkscape::XML::Node::document(), SPItem::doWriteTransform(), Inkscape::XML::Node::duplicate(), equal_clip(), Inkscape::Preferences::get(), SPItem::getClipObject(), SPItem::getMaskObject(), SPDocument::getObjectByRepr(), SPObject::getRepr(), SPDocument::getRoot(), Inkscape::ObjectSet::group(), i2anc_affine(), Geom::identity(), Geom::Affine::isIdentity(), item, items, Inkscape::XML::Node::lastChild(), Inkscape::XML::Node::name(), SPObject::parent, PREFS_MASKOBJECT_GROUPING_NONE, Inkscape::XML::Node::prev(), Inkscape::GC::release(), Inkscape::ObjectSet::remove(), SPLPEItem::removeAllPathEffects(), SPObject::requestModified(), root, Inkscape::ObjectSet::setMask(), Inkscape::ObjectSet::singleItem(), Inkscape::ObjectSet::size(), sp_item_group_ungroup_handle_clones(), sp_lpe_item_enable_path_effects(), sp_repr_is_meta_element(), SPObject::style, SPItem::transform, unlink_clones_of(), Inkscape::ObjectSet::unsetMask(), and SPItem::visualBounds().
Referenced by file_import(), ungroup_impl(), and Inkscape::ObjectSet::unsetMask().
void sp_item_group_ungroup_handle_clones | ( | SPItem * | parent, |
Geom::Affine const | g | ||
) |
finds clones of a child of the group going out of the group; and inverse the group transform on its clones Also called when moving objects between different layers
group | current group |
parent | original parent |
clone_original | lpe clone handle ungroup |
g | transform |
Definition at line 464 of file sp-item-group.cpp.
References _ungroup_compensate_source_transform(), and parent.
Referenced by sp_item_group_ungroup(), and sp_selection_change_layer_maintain_clones().
|
static |
Unlink all clones of the group.
group->_delete_signal.emit(group)
if "/options/cloneorphans" is SP_CLONE_ORPHANS_UNLINK. Definition at line 527 of file sp-item-group.cpp.
References SPObject::hrefList.
Referenced by sp_item_group_ungroup().
std::vector<guint32> default_highlights |
Definition at line 1108 of file sp-item-group.cpp.
Referenced by SPGroup::highlight_color(), and set_default_highlight_colors().