Lines Matching defs:group

25 #include "display/drawing-group.h"
59 static void sp_group_perform_patheffect(SPGroup *group, SPGroup *topgroup, bool write);
182 // For a group, we need to update ourselves *after* updating children.
183 // this is because the group might contain shapes such as rect or ellipse,
190 Inkscape::DrawingGroup *group = dynamic_cast<Inkscape::DrawingGroup *>(v->arenaitem);
194 group->setStyle(this->style, this->context_style);
264 value = "group";
392 sp_item_group_ungroup (SPGroup *group, std::vector<SPItem*> &children, bool do_done)
394 g_return_if_fail (group != NULL);
396 SPDocument *doc = group->document;
400 Inkscape::XML::Node *grepr = group->getRepr();
407 // this converts the gradient/pattern fill/stroke on the group, if any, to userSpaceOnUse
408 group->adjust_paint_recursive (Geom::identity(), Geom::identity(), false);
410 SPItem *pitem = dynamic_cast<SPItem *>(group->parent);
415 SPBox3D *box = dynamic_cast<SPBox3D *>(group);
417 group = box3d_convert_to_group(box);
421 group->removeAllPathEffects(false);
426 Geom::Affine const g(group->transform);
428 for (SPObject *child = group->firstChild() ; child; child = child->getNext() )
433 for (SPObject *child = group->firstChild() ; child; child = child->getNext() ) {
441 child->style->merge( group->style );
444 * and the group has any style settings.
447 * version of inkscape without using the XML editor: we usually apply group
448 * style changes to children rather than to the group itself.)
450 * If the group has no style settings, then style->merge() should be a no-op. Otherwise
456 * be put into a new group -- a somewhat surprising response to an Ungroup
459 * if the transparent group's children weren't in a group), though that's
469 // We should not apply the group's transformation to both a linked offset AND to its source
479 group->isAncestorOf(source) ) { // ... of which the source is in the same group
480 ctrans = citem->transform; // then we should apply the transformation of the group to the offset
486 // case. E.g. if the group was squeezed, to keep the ungrouped textpath squeezed
492 // reattached outside of the group, the transform will be written more properly
506 /* Step 2 - clear group */
507 // remember the position of the group
508 gint pos = group->getRepr()->position();
510 // the group is leaving forever, no heir, clones should take note; its children however are going to reemerge
511 group->deleteObject(true, false);
558 std::vector<SPItem*> sp_item_group_item_list(SPGroup * group)
561 g_return_val_if_fail(group != NULL, s);
563 for (SPObject *o = group->firstChild() ; o ; o = o->getNext() ) {
571 SPObject *sp_item_group_get_child_by_name(SPGroup *group, SPObject *ref, const gchar *name)
573 SPObject *child = (ref) ? ref->getNext() : group->firstChild();
657 SPGroup *group = dynamic_cast<SPGroup *>(item);
658 if (group && !dynamic_cast<SPBox3D *>(item)) {
661 instead change the transform on the entire group, and the transform
699 group->scaleChildItemsRec(sc, p, false);
827 sp_group_perform_patheffect(SPGroup *group, SPGroup *topgroup, bool write)
829 std::vector<SPItem*> const item_list = sp_item_group_item_list(group);