/* * Checks whether an item has a construction applied as LPE and if so returns the index in * lpesubtools of this construction */ int lpetool_item_has_construction(LpeTool */*lc*/, SPItem *item) { if (!SP_IS_LPE_ITEM(item)) { return -1; } Inkscape::LivePathEffect::Effect* lpe = SP_LPE_ITEM(item)->getCurrentLPE(); if (!lpe) { return -1; } return lpetool_mode_to_index(lpe->effectType()); }
/* * Checks whether an item has a construction applied as LPE and if so returns the index in * lpesubtools of this construction */ int lpetool_item_has_construction(SPLPEToolContext */*lc*/, SPItem *item) { if (!SP_IS_LPE_ITEM(item)) { return -1; } Inkscape::LivePathEffect::Effect* lpe = sp_lpe_item_get_current_lpe(SP_LPE_ITEM(item)); if (!lpe) { return -1; } return lpetool_mode_to_index(lpe->effectType()); }
Inkscape::LivePathEffect::Effect* SPLPEItem::getPathEffectOfType(int type) { std::list<Inkscape::LivePathEffect::LPEObjectReference *>::iterator i; for (i = path_effect_list->begin(); i != path_effect_list->end(); ++i) { LivePathEffectObject *lpeobj = (*i)->lpeobject; if (lpeobj) { Inkscape::LivePathEffect::Effect* lpe = lpeobj->get_lpe(); if (lpe && (lpe->effectType() == type)) { return lpe; } } } return NULL; }