static void sp_mask_child_added (SPObject *object, SPRepr *child, SPRepr *ref) { SPMask *cp; SPObject *ochild; cp = SP_MASK (object); /* Invoke SPObjectGroup implementation */ ((SPObjectClass *) (parent_class))->child_added (object, child, ref); /* Show new object */ ochild = sp_document_lookup_id (SP_OBJECT_DOCUMENT (object), sp_repr_attr (child, "id")); if (SP_IS_ITEM (ochild)) { SPMaskView *v; for (v = cp->display; v != NULL; v = v->next) { NRArenaItem *ac; ac = sp_item_invoke_show (SP_ITEM (ochild), NR_ARENA_ITEM_ARENA (v->arenaitem), v->key, SP_ITEM_REFERENCE_FLAGS); if (ac) { nr_arena_item_add_child (v->arenaitem, ac, NULL); nr_arena_item_unref (ac); } } } }
static void sp_clippath_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { /* Invoke SPObjectGroup implementation */ ((SPObjectClass *) (parent_class))->child_added(object, child, ref); /* Show new object */ SPObject *ochild = SP_OBJECT_DOCUMENT(object)->getObjectByRepr(child); if (SP_IS_ITEM(ochild)) { SPClipPath *cp = SP_CLIPPATH(object); for (SPClipPathView *v = cp->display; v != NULL; v = v->next) { NRArenaItem *ac = sp_item_invoke_show(SP_ITEM(ochild), NR_ARENA_ITEM_ARENA(v->arenaitem), v->key, SP_ITEM_REFERENCE_FLAGS); if (ac) { nr_arena_item_add_child(v->arenaitem, ac, NULL); } } } }