Inkscape
Vector Graphics Editor
|
#include <sp-lpe-item.h>
Public Member Functions | |
SPLPEItem () | |
~SPLPEItem () override | |
int | tag () const override |
void | replacePathEffects (std::vector< LivePathEffectObject const * > const &old_lpeobjs, std::vector< LivePathEffectObject const * > const &new_lpeobjs) |
Writes a new "inkscape:path-effect" string to xml, where the old_lpeobjects are substituted by the new ones. | |
void | build (SPDocument *doc, Inkscape::XML::Node *repr) override |
void | release () override |
void | set (SPAttr key, char const *value) override |
void | update (SPCtx *ctx, unsigned int flags) override |
void | modified (unsigned int flags) override |
void | child_added (Inkscape::XML::Node *child, Inkscape::XML::Node *ref) override |
void | remove_child (Inkscape::XML::Node *child) override |
Inkscape::XML::Node * | write (Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, unsigned int flags) override |
virtual void | update_patheffect (bool write) |
bool | optimizeTransforms () |
returns false when LPE write unoptimiced | |
void | notifyTransform (Geom::Affine const &postmul) |
notify tranbsform applied to a LPE | |
bool | performPathEffect (Geom::PathVector &curve, SPShape *current, bool is_clip_or_mask=false) |
returns true when LPE was successful. | |
bool | performOnePathEffect (Geom::PathVector &curve, SPShape *current, Inkscape::LivePathEffect::Effect *lpe, bool is_clip_or_mask=false) |
returns true when LPE was successful. | |
bool | pathEffectsEnabled () const |
bool | hasPathEffect () const |
bool | hasPathEffectOfType (int const type, bool is_ready=true) const |
bool | hasPathEffectOfTypeRecursive (int const type, bool is_ready=true) const |
bool | hasPathEffectRecursive () const |
SPLPEItem const * | getTopPathEffect () const |
returns top most LPE item with LPE | |
bool | hasPathEffectOnClipOrMask (SPLPEItem *shape) const |
returns true when any LPE apply to clip or mask. | |
bool | hasPathEffectOnClipOrMaskRecursive (SPLPEItem *shape) const |
returns true when any LPE apply to clip or mask. | |
std::size_t | getLPEIndex (Inkscape::LivePathEffect::Effect *lpe) const |
std::size_t | countLPEOfType (int const type, bool inc_hidden=true, bool is_ready=true) const |
std::size_t | getLPEReferenceIndex (PathEffectSharedPtr const &lperef) const |
Inkscape::LivePathEffect::Effect * | getFirstPathEffectOfType (int type) |
Inkscape::LivePathEffect::Effect const * | getFirstPathEffectOfType (int type) const |
std::vector< Inkscape::LivePathEffect::Effect * > | getPathEffectsOfType (int type) |
std::vector< Inkscape::LivePathEffect::Effect const * > | getPathEffectsOfType (int type) const |
std::vector< Inkscape::LivePathEffect::Effect * > | getPathEffects () |
std::vector< Inkscape::LivePathEffect::Effect const * > | getPathEffects () const |
std::vector< SPObject * > | get_satellites (bool force=true, bool recursive=false, bool onchilds=false) |
bool | isOnClipboard () |
The lpeitem is on clipboard. | |
bool | isOnSymbol () const |
bool | hasBrokenPathEffect () const |
used for shapes so they can see if they should also disable shape calculation and read from d= | |
PathEffectList | getEffectList () |
PathEffectList const | getEffectList () const |
void | duplicateCurrentPathEffect () |
void | downCurrentPathEffect () |
void | upCurrentPathEffect () |
void | removePathEffect (Inkscape::LivePathEffect::Effect *lpe, bool keep_paths) |
void | movePathEffect (gint origin, gint dest, bool select_moved=false) |
SPLPEItem * | flattenCurrentPathEffect () |
PathEffectSharedPtr | getCurrentLPEReference () |
Inkscape::LivePathEffect::Effect * | getCurrentLPE () |
PathEffectSharedPtr | getPrevLPEReference (PathEffectSharedPtr const &lperef) |
Inkscape::LivePathEffect::Effect * | getPrevLPE (Inkscape::LivePathEffect::Effect *lpe) |
PathEffectSharedPtr | getNextLPEReference (PathEffectSharedPtr const &lperef) |
Inkscape::LivePathEffect::Effect * | getNextLPE (Inkscape::LivePathEffect::Effect *lpe) |
PathEffectSharedPtr | getLastLPEReference () |
Inkscape::LivePathEffect::Effect * | getLastLPE () |
bool | setCurrentPathEffect (PathEffectSharedPtr const &lperef) |
bool | setCurrentPathEffect (LivePathEffectObject const *lpeobj) |
SPLPEItem * | removeCurrentPathEffect (bool keep_paths) |
If keep_path is true, the item should not be updated, effectively 'flattening' the LPE. | |
SPLPEItem * | removeAllPathEffects (bool keep_paths, bool recursive=false) |
If keep_path is true, the item should not be updated, effectively 'flattening' the LPE. | |
void | addPathEffect (std::string value, bool reset) |
void | addPathEffect (LivePathEffectObject *new_lpeobj) |
void | resetClipPathAndMaskLPE (bool fromrecurse=false) |
void | applyToMask (SPItem *to, Inkscape::LivePathEffect::Effect *lpe=nullptr) |
void | applyToClipPath (SPItem *to, Inkscape::LivePathEffect::Effect *lpe=nullptr) |
void | applyToClipPathOrMask (SPItem *clip_mask, SPItem *to, Inkscape::LivePathEffect::Effect *lpe=nullptr) |
bool | forkPathEffectsIfNecessary (unsigned int nr_of_allowed_users=1, bool recursive=true, bool force=false) |
Check all effects in the stack if they are used by other items, and fork them if so. | |
void | editNextParamOncanvas (SPDesktop *dt) |
void | update_satellites (bool recursive=true) |
![]() | |
SPItem () | |
~SPItem () override | |
SPClipPath * | getClipObject () const |
SPMask * | getMaskObject () const |
SPClipPathReference & | getClipRef () |
SPMaskReference & | getMaskRef () |
std::optional< Geom::PathVector > | getClipPathVector () const |
Return the path vector of the clipping region. | |
std::optional< Geom::PathVector > | getClipPathVector (SPItem const *root) const |
Return the path vector of the clipping region, combined with the clipping regions of all groups containing this object up to and including root. | |
SPText const * | getClipTextObject () const |
Return the text object, IF and only if this item is clipped by a single SPText object. | |
SPAvoidRef & | getAvoidRef () |
bool | isLocked () const |
void | setLocked (bool lock, bool recursive=false) |
bool | isHidden () const |
void | setHidden (bool hidden) |
bool | isSensitive () const |
void | setHighlight (Inkscape::Colors::Color color) |
bool | isHighlightSet () const |
virtual Inkscape::Colors::Color | highlight_color () const |
bool | isEvaluated () const |
void | setEvaluated (bool visible) |
void | resetEvaluated () |
bool | unoptimized () |
bool | isHidden (unsigned display_key) const |
bool | isExplicitlyHidden () const |
Returns something suitable for the ‘Hide’ checkbox in the Object Properties dialog box. | |
void | setExplicitlyHidden (bool val) |
Sets the display CSS property to ‘hidden’ if val is true, otherwise makes it unset. | |
void | setCenter (Geom::Point const &object_centre) |
Sets the transform_center_x and transform_center_y properties to retain the rotation center. | |
bool | updateCenterIfSet (Geom::Point const ¢er) |
void | unsetCenter () |
bool | isCenterSet () const |
Geom::Point | getCenter (bool ensure_uptodate=true) const |
void | scaleCenter (Geom::Scale const &sc) |
bool | isVisibleAndUnlocked () const |
bool | isVisibleAndUnlocked (unsigned display_key) const |
Geom::Affine | getRelativeTransform (SPObject const *obj) const |
bool | raiseOne () |
bool | lowerOne () |
void | raiseToTop () |
void | lowerToBottom () |
SPGroup * | getParentGroup () const |
Return the parent, only if it's a group object. | |
void | moveTo (SPItem *target, bool intoafter) |
Move this SPItem into or after another SPItem in the doc. | |
sigc::connection | connectTransformed (sigc::slot< void(Geom::Affine const *, SPItem *)> slot) |
Geom::OptRect | geometricBounds (Geom::Affine const &transform=Geom::identity()) const |
Get item's geometric bounding box in this item's coordinate system. | |
Geom::OptRect | visualBounds (Geom::Affine const &transform=Geom::identity(), bool wfilter=true, bool wclip=true, bool wmask=true) const |
Get item's visual bounding box in this item's coordinate system. | |
Geom::OptRect | bounds (BBoxType type, Geom::Affine const &transform=Geom::identity()) const |
Geom::OptRect | documentGeometricBounds () const |
Get item's geometric bbox in document coordinate system. | |
Geom::OptRect | documentVisualBounds () const |
Get item's visual bbox in document coordinate system. | |
Geom::OptRect | documentBounds (BBoxType type) const |
Geom::OptRect | documentPreferredBounds () const |
virtual std::optional< Geom::PathVector > | documentExactBounds () const |
Get an exact geometric shape representing the visual bounds of the item in the document coordinates. | |
Geom::OptRect | desktopGeometricBounds () const |
Get item's geometric bbox in desktop coordinate system. | |
Geom::OptRect | desktopVisualBounds () const |
Get item's visual bbox in desktop coordinate system. | |
Geom::OptRect | desktopPreferredBounds () const |
Geom::OptRect | desktopBounds (BBoxType type) const |
unsigned int | pos_in_parent () const |
char * | detailedDescription () const |
Returns a string suitable for status bar, formatted in pango markup language. | |
bool | isFiltered () const |
Returns true if the item is filtered, false otherwise. | |
SPObject * | isInMask () const |
SPObject * | isInClipPath () const |
void | invoke_print (SPPrintContext *ctx) |
Inkscape::DrawingItem * | invoke_show (Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) |
void | invoke_hide (unsigned int key) |
void | invoke_hide_except (unsigned key, const std::vector< SPItem const * > &to_keep) |
Invoke hide on all non-group items, except for the list of items to keep. | |
void | getSnappoints (std::vector< Inkscape::SnapCandidatePoint > &p, Inkscape::SnapPreferences const *snapprefs=nullptr) const |
void | adjust_pattern (Geom::Affine const &postmul, bool set=false, PaintServerTransform=TRANSFORM_BOTH) |
void | adjust_hatch (Geom::Affine const &postmul, bool set=false, PaintServerTransform=TRANSFORM_BOTH) |
void | adjust_gradient (Geom::Affine const &postmul, bool set=false) |
void | adjust_clip (Geom::Affine const &postmul, bool set=false) |
void | remove_clip_transforms () |
void | adjust_stroke (double ex) |
void | adjust_stroke_width_recursive (double ex) |
Recursively scale stroke width in item and its children by expansion. | |
void | freeze_stroke_width_recursive (bool freeze) |
void | adjust_paint_recursive (Geom::Affine advertized_transform, Geom::Affine t_ancestors, PaintServerType type=GRADIENT) |
Recursively compensate pattern or gradient transform. | |
bool | collidesWith (Geom::PathVector const &shape) const |
Checks for visual collision with another item. | |
bool | collidesWith (SPItem const &other) const |
void | doWriteTransform (Geom::Affine const &transform, Geom::Affine const *adv=nullptr, bool compensate=true) |
Set a new transform on an object. | |
void | set_item_transform (Geom::Affine const &transform_matrix) |
Sets item private transform (not propagated to repr), without compensating stroke widths, gradients, patterns as sp_item_write_transform does. | |
Inkscape::DrawingItem * | get_arenaitem (unsigned key) const |
Return the arenaitem corresponding to the given item in the display with the given key. | |
Geom::Affine | i2doc_affine () const |
Returns the accumulated transformation of the item and all its ancestors, including root's viewport. | |
Geom::Affine | i2dt_affine () const |
Returns the transformation from item to desktop coords. | |
void | set_i2d_affine (Geom::Affine const &transform) |
Geom::Affine | dt2i_affine () const |
Returns the transformation from desktop to item coords. | |
bool | isExpanded () const |
void | setExpanded (bool expand) |
void | rotate_rel (Geom::Rotate const &rotation) |
void | scale_rel (Geom::Scale const &scale) |
void | skew_rel (double skewX, double skewY) |
void | move_rel (Geom::Translate const &tr) |
virtual Geom::OptRect | bbox (Geom::Affine const &transform, SPItem::BBoxType type) const |
virtual void | print (SPPrintContext *ctx) |
virtual const char * | typeName () const |
The item's type name, not node tag name. | |
virtual const char * | displayName () const |
The item's type name as a translated human string. | |
virtual char * | description () const |
virtual Inkscape::DrawingItem * | show (Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) |
virtual void | hide (unsigned int key) |
virtual void | snappoints (std::vector< Inkscape::SnapCandidatePoint > &p, Inkscape::SnapPreferences const *snapprefs) const |
virtual Geom::Affine | set_transform (Geom::Affine const &transform) |
virtual void | removeTransformsRecursively (SPObject const *root) |
virtual void | convert_to_guides () const |
![]() | |
SPObject () | |
Constructor, sets all attributes to default values. | |
SPObject (SPObject const &)=delete | |
SPObject & | operator= (SPObject const &)=delete |
~SPObject () override | |
Destructor, frees the used memory and unreferences a potential successor of the object. | |
char const * | getId () const |
Returns the objects current ID string. | |
void | getIds (std::set< std::string > &ret) const |
Accumulate this id and all it's descendants ids. | |
std::string | getUrl () const |
Get the id in a URL format. | |
Inkscape::XML::Node * | getRepr () |
Returns the XML representation of tree. | |
Inkscape::XML::Node const * | getRepr () const |
Returns the XML representation of tree. | |
void | releaseReferences () |
Cleans up an SPObject, releasing its references and requesting that references to it be released. | |
sigc::connection | connectRelease (sigc::slot< void(SPObject *)> slot) |
Connects to the release request signal. | |
bool | isSiblingOf (SPObject const *object) const |
virtual void | getLinked (std::vector< SPObject * > &objects, LinkedObjectNature direction=LinkedObjectNature::ANY) const |
Get objects which are linked to this object as either a source or a target. | |
std::vector< SPObject * > | getLinked (LinkedObjectNature direction=LinkedObjectNature::ANY) const |
Get objects which are linked, like above. | |
bool | isAncestorOf (SPObject const *object) const |
True if object is non-NULL and this is some in/direct parent of object. | |
SPObject const * | nearestCommonAncestor (SPObject const *object) const |
Returns youngest object being parent to this and object. | |
SPObject const * | getTopAncestorNonLayer () const |
Returns ancestor non layer. | |
SPObject * | getNext () |
SPObject * | getPrev () |
Returns previous object in sibling list or NULL. | |
bool | hasChildren () const |
SPObject * | firstChild () |
SPObject const * | firstChild () const |
SPObject * | lastChild () |
SPObject const * | lastChild () const |
SPObject * | nthChild (unsigned index) |
SPObject const * | nthChild (unsigned index) const |
std::vector< SPObject * > | childList (bool add_ref, Action action=ActionGeneral) |
Retrieves the children as a std vector object, optionally ref'ing the children in the process, if add_ref is specified. | |
std::vector< SPObject * > | ancestorList (bool root_to_tip) |
Retrieves a list of ancestors of the object, as an easy to use vector. | |
SPObject * | appendChildRepr (Inkscape::XML::Node *repr) |
Append repr as child of this object. | |
char const * | label () const |
Gets the author-visible label property for the object or a default if no label is defined. | |
char const * | defaultLabel () const |
Returns a default label property for this object. | |
void | setLabel (char const *label) |
Sets the author-visible label for this object. | |
char * | title () const |
Returns the title of this object, or NULL if there is none. | |
bool | setTitle (char const *title, bool verbatim=false) |
Sets the title of this object. | |
char * | desc () const |
Returns the description of this object, or NULL if there is none. | |
bool | setDesc (char const *desc, bool verbatim=false) |
Sets the description of this object. | |
Glib::ustring | getExportFilename () const |
Get and set the exportable filename on this object. | |
void | setExportFilename (Glib::ustring filename) |
Geom::Point | getExportDpi () const |
Get and set the exported DPI for this objet, if available. | |
void | setExportDpi (Geom::Point dpi) |
CollectionPolicy | collectionPolicy () const |
Set the policy under which this object will be orphan-collected. | |
void | setCollectionPolicy (CollectionPolicy policy) |
Sets the orphan-collection policy in effect for this object. | |
void | requestOrphanCollection () |
Requests a later automatic call to collectOrphan(). | |
void | collectOrphan () |
Unconditionally delete the object if it is not referenced. | |
void | hrefObject (SPObject *owner=nullptr) |
Increase weak refcount. | |
void | unhrefObject (SPObject *owner=nullptr) |
Decrease weak refcount. | |
bool | isReferenced () |
Check if object is referenced by any other object. | |
void | deleteObject (bool propagate, bool propagate_descendants) |
Deletes an object, unparenting it from its parent. | |
void | deleteObject (bool propagate=true) |
Deletes on object. | |
void | cropToObject (SPObject *except) |
Removes all children except for the given object, it's children and it's ancesstors. | |
void | cropToObjects (std::vector< SPObject * > except_objects) |
Removes objects which are not related to given list of objects. | |
void | getObjectsExcept (std::vector< SPObject * > &objects, const std::vector< SPObject * > &except) |
Get all child objects except for any in the list. | |
void | getLinkedRecursive (std::vector< SPObject * > &objects, LinkedObjectNature direction=LinkedObjectNature::ANY) const |
Grows the input list with all linked items recursively in both child nodes and links of links. | |
sigc::connection | connectDelete (sigc::slot< void(SPObject *)> slot) |
Connects a slot to be called when an object is deleted. | |
sigc::connection | connectPositionChanged (sigc::slot< void(SPObject *)> slot) |
SPObject * | successor () |
Returns the object which supercedes this one (if any). | |
void | setSuccessor (SPObject *successor) |
Indicates that another object supercedes this one. | |
void | setTmpSuccessor (SPObject *tmpsuccessor) |
Indicates that another object supercedes temporaty this one. | |
void | unsetTmpSuccessor () |
Unset object supercedes. | |
void | fixTmpSuccessors () |
Fix temporary successors in duple stamp. | |
Inkscape::XML::Node * | updateRepr (unsigned int flags=SP_OBJECT_WRITE_EXT) |
Updates the object's repr based on the object's state. | |
Inkscape::XML::Node * | updateRepr (Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, unsigned int flags) |
Updates the given repr based on the object's state. | |
void | requestDisplayUpdate (unsigned int flags) |
Queues an deferred update of this object's display. | |
void | updateDisplay (SPCtx *ctx, unsigned int flags) |
Updates the object's display immediately. | |
void | requestModified (unsigned int flags) |
Requests that a modification notification signal be emitted later (e.g. | |
void | emitModified (unsigned int flags) |
Emits the MODIFIED signal with the object's flags. | |
sigc::connection | connectModified (sigc::slot< void(SPObject *, unsigned int)> slot) |
Connects to the modification notification signal. | |
void | _sendDeleteSignalRecursive () |
Sends the delete signal to all children of this object recursively. | |
void | _updateTotalHRefCount (int increment) |
Adds increment to _total_hrefcount of object and its parents. | |
void | _requireSVGVersion (unsigned major, unsigned minor) |
void | _requireSVGVersion (Inkscape::Version version) |
Lifts SVG version of all root objects to version. | |
void | attach (SPObject *object, SPObject *prev) |
Put object into object tree, under parent, and behind prev; also update object's XML space. | |
void | reorder (SPObject *obj, SPObject *prev) |
In list of object's children, move object behind prev. | |
void | detach (SPObject *object) |
Remove object from parent's children, release and unref it. | |
SPObject * | get_child_by_repr (Inkscape::XML::Node *repr) |
Return object's child whose node pointer equals repr. | |
void | invoke_build (SPDocument *document, Inkscape::XML::Node *repr, unsigned int cloned) |
int | getIntAttribute (char const *key, int def) |
unsigned | getPosition () |
char const * | getAttribute (char const *name) const |
void | appendChild (Inkscape::XML::Node *child) |
void | addChild (Inkscape::XML::Node *child, Inkscape::XML::Node *prev=nullptr) |
void | setKeyValue (SPAttr key, char const *value) |
Call virtual set() function of object. | |
void | setAttribute (Inkscape::Util::const_char_ptr key, Inkscape::Util::const_char_ptr value) |
void | setAttributeDouble (Inkscape::Util::const_char_ptr key, double value) |
void | setAttributeOrRemoveIfEmpty (Inkscape::Util::const_char_ptr key, Inkscape::Util::const_char_ptr value) |
void | readAttr (char const *key) |
Read value of key attribute from XML node into object. | |
void | readAttr (SPAttr keyid) |
char const * | getTagName () const |
void | removeAttribute (char const *key) |
void | setCSS (SPCSSAttr *css, char const *attr) |
void | changeCSS (SPCSSAttr *css, char const *attr) |
bool | storeAsDouble (char const *key, double *val) const |
virtual void | read_content () |
void | recursivePrintTree (unsigned level=0) |
void | objectTrace (std::string const &, bool in=true, unsigned flags=0) |
std::string | generate_unique_id (char const *default_id=nullptr) const |
Generate a document-wide unique id for this object. | |
Public Attributes | |
int | path_effects_enabled |
PathEffectList * | path_effect_list |
PathEffectSharedPtr | current_path_effect |
std::vector< Inkscape::Display::TemporaryItem * > | lpe_helperpaths |
bool | onsymbol = false |
bool | lpe_initialized = false |
![]() | |
unsigned int | sensitive: 1 |
unsigned int | stop_paint: 1 |
unsigned | bbox_valid: 1 |
double | transform_center_x |
double | transform_center_y |
bool | freeze_stroke_width |
bool | _is_expanded = false |
Geom::Affine | transform |
Geom::OptRect | doc_bbox |
Geom::Rect | viewport |
std::vector< std::pair< Glib::ustring, Glib::ustring > > | rootsatellites |
std::vector< SPItemView > | views |
sigc::signal< void(Geom::Affine const *, SPItem *)> | _transformed_signal |
std::optional< Inkscape::Colors::Color > | _highlightColor |
![]() | |
unsigned int | cloned: 1 |
SPObject * | clone_original {nullptr} |
unsigned int | uflags: 16 |
unsigned int | mflags: 16 |
SPIXmlSpace | xml_space |
Glib::ustring | lang |
unsigned int | hrefcount {0} |
unsigned int | _total_hrefcount {0} |
SPDocument * | document {nullptr} |
SPObject * | parent {nullptr} |
int | refCount {1} |
std::list< SPObject * > | hrefList |
SPStyle * | style |
Represents the style properties, whether from presentation attributes, the style attribute, or inherited. | |
SPStyle * | context_style |
Represents the style that should be used to resolve 'context-fill' and 'context-stroke'. | |
sigc::signal< void(SPObject *)> | _release_signal |
sigc::signal< void(SPObject *)> | _delete_signal |
sigc::signal< void(SPObject *)> | _position_changed_signal |
sigc::signal< void(SPObject *, unsigned int)> | _modified_signal |
SPObject * | _successor {nullptr} |
SPObject * | _tmpsuccessor {nullptr} |
CollectionPolicy | _collection_policy {SPObject::COLLECT_WITH_PARENT} |
char * | _label {nullptr} |
char * | _default_label {nullptr} |
ChildrenList | children |
Private Attributes | |
std::list< sigc::scoped_connection > | lpe_modified_connection_list |
Additional Inherited Members | |
![]() | |
enum | BBoxType { APPROXIMATE_BBOX , GEOMETRIC_BBOX , VISUAL_BBOX } |
enum | PaintServerType { PATTERN , HATCH , GRADIENT } |
![]() | |
enum | CollectionPolicy { COLLECT_WITH_PARENT , ALWAYS_COLLECT } |
enum class | LinkedObjectNature { DEPENDENT = -1 , ANY = 0 , DEPENDENCY = 1 } |
enum | Action { ActionGeneral , ActionBBox , ActionUpdate , ActionShow } |
typedef Inkscape::Util::ForwardPointerIterator< SPObject, ParentIteratorStrategy > | ParentIterator |
typedef Inkscape::Util::ForwardPointerIterator< SPObject const, ParentIteratorStrategy > | ConstParentIterator |
using | ChildrenList = boost::intrusive::list< SPObject, boost::intrusive::member_hook< SPObject, ListHook, &SPObject::_child_hook > > |
![]() | |
static unsigned int | display_key_new (unsigned numkeys) |
Allocates unique integer keys. | |
static unsigned | ensure_key (Inkscape::DrawingItem *di) |
Ensures that a drawing item's key is the first of a block of ITEM_KEY_SIZE keys, assigning it such a key if necessary. | |
![]() | |
typedef boost::intrusive::list_member_hook | ListHook |
![]() | |
virtual void | order_changed (Inkscape::XML::Node *child, Inkscape::XML::Node *old_repr, Inkscape::XML::Node *new_repr) |
virtual void | tag_name_changed (gchar const *oldname, gchar const *newname) |
![]() | |
ListHook | _child_hook |
Definition at line 47 of file sp-lpe-item.h.
SPLPEItem::SPLPEItem | ( | ) |
Definition at line 67 of file sp-lpe-item.cpp.
|
overridedefault |
void SPLPEItem::addPathEffect | ( | LivePathEffectObject * | new_lpeobj | ) |
Definition at line 674 of file sp-lpe-item.cpp.
References addPathEffect(), Inkscape::XML::Node::attribute(), and SPObject::getRepr().
void SPLPEItem::addPathEffect | ( | std::string | value, |
bool | reset | ||
) |
Definition at line 627 of file sp-lpe-item.cpp.
References SPObject::document, Inkscape::LivePathEffect::Effect::doOnApply_impl(), LivePathEffectObject::get_lpe(), SPObject::getRepr(), hreflist_svg_string(), path_effect_list, Inkscape::LivePathEffect::Effect::resetDefaults(), SPObject::setAttributeOrRemoveIfEmpty(), sp_lpe_item_create_original_path_recursive(), sp_lpe_item_enable_path_effects(), and sp_lpe_item_update_patheffect().
Referenced by addPathEffect().
void SPLPEItem::applyToClipPath | ( | SPItem * | to, |
Inkscape::LivePathEffect::Effect * | lpe = nullptr |
||
) |
Definition at line 1196 of file sp-lpe-item.cpp.
References Inkscape::LivePathEffect::Effect::apply_to_clippath_and_mask, applyToClipPathOrMask(), SPObject::childList(), SPItem::getClipObject(), and sp_object_unref().
Referenced by sp_group_perform_patheffect(), and SPShape::update_patheffect().
void SPLPEItem::applyToClipPathOrMask | ( | SPItem * | clip_mask, |
SPItem * | to, | ||
Inkscape::LivePathEffect::Effect * | lpe = nullptr |
||
) |
Definition at line 1228 of file sp-lpe-item.cpp.
References applyToClipPathOrMask(), c, SPObject::document, SPDocument::getRoot(), SPGroup::item_list(), performOnePathEffect(), performPathEffect(), root, sp_svg_read_pathv(), sp_svg_write_path(), and Inkscape::WARNING_MESSAGE.
Referenced by applyToClipPath(), applyToClipPathOrMask(), and applyToMask().
void SPLPEItem::applyToMask | ( | SPItem * | to, |
Inkscape::LivePathEffect::Effect * | lpe = nullptr |
||
) |
Definition at line 1212 of file sp-lpe-item.cpp.
References Inkscape::LivePathEffect::Effect::apply_to_clippath_and_mask, applyToClipPathOrMask(), SPObject::childList(), SPItem::getMaskObject(), and sp_object_unref().
Referenced by sp_group_perform_patheffect(), and SPShape::update_patheffect().
|
overridevirtual |
Reimplemented from SPItem.
Reimplemented in SPPolyLine, SPRect, SPSpiral, SPMarker, SPOffset, SPPath, SPPolygon, SPRoot, SPShape, SPStar, and SPSymbol.
Definition at line 78 of file sp-lpe-item.cpp.
References SPItem::build(), INKSCAPE_PATH_EFFECT, isOnSymbol(), onsymbol, SPObject::readAttr(), and SPObject::repr.
Referenced by SPGroup::build(), and SPShape::build().
|
overridevirtual |
Reimplemented from SPObject.
Reimplemented in SPRoot, SPSwitch, and SPSymbol.
Definition at line 1346 of file sp-lpe-item.cpp.
References child, SPObject::child_added(), SPObject::get_child_by_repr(), hasPathEffectRecursive(), ref, and sp_lpe_item_create_original_path_recursive().
Referenced by SPGroup::child_added().
std::size_t SPLPEItem::countLPEOfType | ( | int const | type, |
bool | inc_hidden = true , |
||
bool | is_ready = true |
||
) | const |
Definition at line 1519 of file sp-lpe-item.cpp.
References counter, Inkscape::LivePathEffect::Effect::effectType(), Inkscape::LivePathEffect::Effect::is_visible, Inkscape::LivePathEffect::Effect::isReady(), and path_effect_list.
void SPLPEItem::downCurrentPathEffect | ( | ) |
Definition at line 774 of file sp-lpe-item.cpp.
References getCurrentLPEReference(), path_effect_list, patheffectlist_svg_string(), SPObject::setAttributeOrRemoveIfEmpty(), and sp_lpe_item_cleanup_original_path_recursive().
Referenced by Inkscape::UI::Dialog::LivePathEffectEditor::add_item_actions().
void SPLPEItem::duplicateCurrentPathEffect | ( | ) |
Definition at line 795 of file sp-lpe-item.cpp.
References LivePathEffectObject::fork_private_if_necessary(), getCurrentLPEReference(), hreflist_svg_string(), path_effect_list, SPObject::setAttributeOrRemoveIfEmpty(), sp_lpe_item_cleanup_original_path_recursive(), and update_satellites().
Referenced by Inkscape::UI::Dialog::LivePathEffectEditor::add_item_actions().
void SPLPEItem::editNextParamOncanvas | ( | SPDesktop * | dt | ) |
Definition at line 1338 of file sp-lpe-item.cpp.
References getCurrentLPEReference().
SPLPEItem * SPLPEItem::flattenCurrentPathEffect | ( | ) |
Definition at line 818 of file sp-lpe-item.cpp.
References getCurrentLPEReference(), hreflist_svg_string(), path_effect_list, removeAllPathEffects(), SPObject::setAttributeOrRemoveIfEmpty(), sp_lpe_item_cleanup_original_path_recursive(), sp_lpe_item_create_original_path_recursive(), sp_lpe_item_enable_path_effects(), and sp_lpe_item_update_patheffect().
bool SPLPEItem::forkPathEffectsIfNecessary | ( | unsigned int | nr_of_allowed_users = 1 , |
bool | recursive = true , |
||
bool | force = false |
||
) |
Check all effects in the stack if they are used by other items, and fork them if so.
It is not recommended to fork the effects by yourself calling LivePathEffectObject::fork_private_if_necessary, use this method instead. Returns true if one or more effects were forked; returns false if nothing was done.
Definition at line 1649 of file sp-lpe-item.cpp.
References child, LivePathEffectObject::fork_private_if_necessary(), LivePathEffectObject::get_lpe(), getEffectList(), hasPathEffect(), SPObject::hrefcount, Inkscape::LivePathEffect::Effect::is_load, replacePathEffects(), and Inkscape::LivePathEffect::Effect::sp_lpe_item.
Referenced by Inkscape::ObjectSet::breakApart().
std::vector< SPObject * > SPLPEItem::get_satellites | ( | bool | force = true , |
bool | recursive = false , |
||
bool | onchilds = false |
||
) |
Definition at line 1578 of file sp-lpe-item.cpp.
References child, Inkscape::LivePathEffect::Effect::effect_get_satellites(), LivePathEffectObject::get_lpe(), get_satellites(), and path_effect_list.
Referenced by get_satellites().
Inkscape::LivePathEffect::Effect * SPLPEItem::getCurrentLPE | ( | ) |
Definition at line 1473 of file sp-lpe-item.cpp.
References getCurrentLPEReference().
Referenced by Inkscape::LivePathEffect::Effect::doOnBeforeCommit(), Inkscape::UI::Dialog::LivePathEffectEditor::effect_list_reload(), movePathEffect(), Inkscape::UI::Dialog::LivePathEffectEditor::onAdd(), and removeCurrentPathEffect().
PathEffectSharedPtr SPLPEItem::getCurrentLPEReference | ( | ) |
Definition at line 1462 of file sp-lpe-item.cpp.
References current_path_effect, path_effect_list, and setCurrentPathEffect().
Referenced by downCurrentPathEffect(), duplicateCurrentPathEffect(), editNextParamOncanvas(), flattenCurrentPathEffect(), getCurrentLPE(), removeCurrentPathEffect(), and upCurrentPathEffect().
PathEffectList SPLPEItem::getEffectList | ( | ) |
Definition at line 1404 of file sp-lpe-item.cpp.
References path_effect_list.
Referenced by SPPath::description(), Inkscape::UI::Dialog::LivePathEffectEditor::effect_list_reload(), forkPathEffectsIfNecessary(), and Inkscape::UI::Dialog::LivePathEffectEditor::selectionModified().
PathEffectList const SPLPEItem::getEffectList | ( | ) | const |
Definition at line 1410 of file sp-lpe-item.cpp.
References path_effect_list.
Inkscape::LivePathEffect::Effect * SPLPEItem::getFirstPathEffectOfType | ( | int | type | ) |
Definition at line 1275 of file sp-lpe-item.cpp.
Referenced by Inkscape::LivePathEffect::LPEPowerStroke::doAfterEffect().
Inkscape::LivePathEffect::Effect const * SPLPEItem::getFirstPathEffectOfType | ( | int | type | ) | const |
Definition at line 1281 of file sp-lpe-item.cpp.
References Inkscape::LivePathEffect::Effect::effectType(), LivePathEffectObject::get_lpe(), and path_effect_list.
Inkscape::LivePathEffect::Effect * SPLPEItem::getLastLPE | ( | ) |
Definition at line 1509 of file sp-lpe-item.cpp.
References path_effect_list.
PathEffectSharedPtr SPLPEItem::getLastLPEReference | ( | ) |
Definition at line 1444 of file sp-lpe-item.cpp.
References path_effect_list.
std::size_t SPLPEItem::getLPEIndex | ( | Inkscape::LivePathEffect::Effect * | lpe | ) | const |
Definition at line 1542 of file sp-lpe-item.cpp.
References counter, Inkscape::LivePathEffect::Effect::getLPEObj(), and path_effect_list.
Referenced by Inkscape::LivePathEffect::LPESlice::getSplitLines().
std::size_t SPLPEItem::getLPEReferenceIndex | ( | PathEffectSharedPtr const & | lperef | ) | const |
Definition at line 1450 of file sp-lpe-item.cpp.
References counter, and path_effect_list.
Inkscape::LivePathEffect::Effect * SPLPEItem::getNextLPE | ( | Inkscape::LivePathEffect::Effect * | lpe | ) |
Definition at line 1495 of file sp-lpe-item.cpp.
References Inkscape::LivePathEffect::Effect::getLPEObj(), and path_effect_list.
Referenced by Inkscape::LivePathEffect::LPESlice::doAfterEffect(), Inkscape::LivePathEffect::LPESlice::doBeforeEffect(), and Inkscape::LivePathEffect::LPESlice::resetStyles().
PathEffectSharedPtr SPLPEItem::getNextLPEReference | ( | PathEffectSharedPtr const & | lperef | ) |
Definition at line 1429 of file sp-lpe-item.cpp.
References path_effect_list.
std::vector< Inkscape::LivePathEffect::Effect * > SPLPEItem::getPathEffects | ( | ) |
Definition at line 1326 of file sp-lpe-item.cpp.
References path_effect_list.
std::vector< Inkscape::LivePathEffect::Effect const * > SPLPEItem::getPathEffects | ( | ) | const |
Definition at line 1332 of file sp-lpe-item.cpp.
References path_effect_list.
std::vector< Inkscape::LivePathEffect::Effect * > SPLPEItem::getPathEffectsOfType | ( | int | type | ) |
Definition at line 1314 of file sp-lpe-item.cpp.
References path_effect_list.
std::vector< Inkscape::LivePathEffect::Effect const * > SPLPEItem::getPathEffectsOfType | ( | int | type | ) | const |
Definition at line 1320 of file sp-lpe-item.cpp.
References path_effect_list.
Inkscape::LivePathEffect::Effect * SPLPEItem::getPrevLPE | ( | Inkscape::LivePathEffect::Effect * | lpe | ) |
Definition at line 1483 of file sp-lpe-item.cpp.
References Inkscape::LivePathEffect::Effect::getLPEObj(), and path_effect_list.
Referenced by Inkscape::LivePathEffect::LPESlice::doAfterEffect(), Inkscape::LivePathEffect::LPESlice::doBeforeEffect(), Inkscape::LivePathEffect::LPESlice::doOnApply(), and Inkscape::LivePathEffect::LPESlice::getSplitLines().
PathEffectSharedPtr SPLPEItem::getPrevLPEReference | ( | PathEffectSharedPtr const & | lperef | ) |
Definition at line 1416 of file sp-lpe-item.cpp.
References path_effect_list.
SPLPEItem const * SPLPEItem::getTopPathEffect | ( | ) | const |
returns top most LPE item with LPE
Definition at line 1103 of file sp-lpe-item.cpp.
References hasPathEffect(), hasPathEffectRecursive(), and SPObject::parent.
bool SPLPEItem::hasBrokenPathEffect | ( | ) | const |
used for shapes so they can see if they should also disable shape calculation and read from d=
Definition at line 982 of file sp-lpe-item.cpp.
References LivePathEffectObject::get_lpe(), and path_effect_list.
Referenced by SPShape::checkBrokenPathEffect().
bool SPLPEItem::hasPathEffect | ( | ) | const |
Definition at line 1071 of file sp-lpe-item.cpp.
References LivePathEffectObject::get_lpe(), and path_effect_list.
Referenced by SPPath::description(), Inkscape::LivePathEffect::LPEPowerMask::doOnApply(), forkPathEffectsIfNecessary(), getTopPathEffect(), hasPathEffectRecursive(), performPathEffect(), removeAllPathEffects(), SPGroup::update_patheffect(), SPShape::update_patheffect(), and write().
bool SPLPEItem::hasPathEffectOfType | ( | int const | type, |
bool | is_ready = true |
||
) | const |
Definition at line 1010 of file sp-lpe-item.cpp.
References Inkscape::LivePathEffect::Effect::effectType(), Inkscape::LivePathEffect::Effect::isReady(), and path_effect_list.
Referenced by hasPathEffectOfTypeRecursive(), and Inkscape::LivePathEffect::LPESlice::split().
bool SPLPEItem::hasPathEffectOfTypeRecursive | ( | int const | type, |
bool | is_ready = true |
||
) | const |
Definition at line 1000 of file sp-lpe-item.cpp.
References hasPathEffectOfType(), and SPObject::parent.
bool SPLPEItem::hasPathEffectOnClipOrMask | ( | SPLPEItem * | shape | ) | const |
returns true when any LPE apply to clip or mask.
Definition at line 1034 of file sp-lpe-item.cpp.
References Inkscape::LivePathEffect::Effect::apply_to_clippath_and_mask, LivePathEffectObject::get_lpe(), hasPathEffectRecursive(), and path_effect_list.
Referenced by hasPathEffectOnClipOrMaskRecursive().
bool SPLPEItem::hasPathEffectOnClipOrMaskRecursive | ( | SPLPEItem * | shape | ) | const |
returns true when any LPE apply to clip or mask.
recursive mode
Definition at line 1060 of file sp-lpe-item.cpp.
References hasPathEffectOnClipOrMask(), and SPObject::parent.
Referenced by SPShape::build(), SPShape::prepareShapeForLPE(), resetClipPathAndMaskLPE(), Box3DSide::set_shape(), SPRect::update_patheffect(), SPGenericEllipse::write(), and SPRect::write().
bool SPLPEItem::hasPathEffectRecursive | ( | ) | const |
Definition at line 1089 of file sp-lpe-item.cpp.
References hasPathEffect(), and SPObject::parent.
Referenced by child_added(), getTopPathEffect(), hasPathEffectOnClipOrMask(), SPGroup::remove_child(), remove_child(), SPPath::removeTransformsRecursively(), SPPath::set_transform(), and sp_lpe_item_cleanup_original_path_recursive().
bool SPLPEItem::isOnClipboard | ( | ) |
The lpeitem is on clipboard.
Definition at line 186 of file sp-lpe-item.cpp.
References SPObject::document, SPDocument::getReprRoot(), root, and sp_repr_lookup_name().
Referenced by SPShape::build(), and set().
bool SPLPEItem::isOnSymbol | ( | ) | const |
|
overridevirtual |
Reimplemented from SPItem.
Reimplemented in SPRect, SPRoot, SPShape, and SPSymbol.
Definition at line 162 of file sp-lpe-item.cpp.
Referenced by SPGroup::modified(), and SPShape::modified().
void SPLPEItem::movePathEffect | ( | gint | origin, |
gint | dest, | ||
bool | select_moved = false |
||
) |
Definition at line 878 of file sp-lpe-item.cpp.
References getCurrentLPE(), origin, path_effect_list, patheffectlist_svg_string(), SPObject::setAttributeOrRemoveIfEmpty(), setCurrentPathEffect(), and sp_lpe_item_cleanup_original_path_recursive().
void SPLPEItem::notifyTransform | ( | Geom::Affine const & | postmul | ) |
notify tranbsform applied to a LPE
Definition at line 348 of file sp-lpe-item.cpp.
References LivePathEffectObject::get_lpe(), Inkscape::LivePathEffect::Effect::is_load, path_effect_list, pathEffectsEnabled(), and Inkscape::LivePathEffect::Effect::transform_multiply_impl().
bool SPLPEItem::optimizeTransforms | ( | ) |
returns false when LPE write unoptimiced
Definition at line 299 of file sp-lpe-item.cpp.
References Inkscape::Preferences::get(), LivePathEffectObject::get_lpe(), Inkscape::Preferences::getBool(), SPItem::getClipObject(), SPItem::getMaskObject(), Geom::Affine::isUniformScale(), path_effect_list, SPItem::transform, and SPItem::unoptimized().
Referenced by SPPath::set_transform(), SPGenericEllipse::set_transform(), SPRect::set_transform(), SPSpiral::set_transform(), SPStar::set_transform(), Inkscape::LivePathEffect::LPEBendPath::transform_multiply(), Inkscape::LivePathEffect::LPEEnvelope::transform_multiply(), Inkscape::LivePathEffect::LPEInterpolate::transform_multiply(), Inkscape::LivePathEffect::LPEPatternAlongPath::transform_multiply(), Inkscape::LivePathEffect::LPEPerspectiveEnvelope::transform_multiply(), and Inkscape::LivePathEffect::LPETransform2Pts::transform_multiply().
bool SPLPEItem::pathEffectsEnabled | ( | ) | const |
Definition at line 1719 of file sp-lpe-item.cpp.
References onsymbol, and path_effects_enabled.
Referenced by Inkscape::LivePathEffect::LPEPowerMask::doOnApply(), notifyTransform(), performPathEffect(), SPPath::removeTransformsRecursively(), SPPath::set_transform(), SPGenericEllipse::set_transform(), SPRect::set_transform(), SPSpiral::set_transform(), SPStar::set_transform(), sp_lpe_item_update_patheffect(), Inkscape::LivePathEffect::LPEBendPath::transform_multiply(), Inkscape::LivePathEffect::LPEBool::transform_multiply(), Inkscape::LivePathEffect::LPEEnvelope::transform_multiply(), Inkscape::LivePathEffect::LPEInterpolate::transform_multiply(), Inkscape::LivePathEffect::LPEPatternAlongPath::transform_multiply(), Inkscape::LivePathEffect::LPEPerspectiveEnvelope::transform_multiply(), Inkscape::LivePathEffect::LPETransform2Pts::transform_multiply(), Inkscape::LivePathEffect::LPEFillBetweenMany::transform_multiply_nested(), Inkscape::LivePathEffect::LPEFillBetweenStrokes::transform_multiply_nested(), SPGroup::update_patheffect(), and SPShape::update_patheffect().
bool SPLPEItem::performOnePathEffect | ( | Geom::PathVector & | curve, |
SPShape * | current, | ||
Inkscape::LivePathEffect::Effect * | lpe, | ||
bool | is_clip_or_mask = false |
||
) |
returns true when LPE was successful.
Definition at line 233 of file sp-lpe-item.cpp.
References Inkscape::LivePathEffect::Effect::acceptsNumClicks(), Inkscape::LivePathEffect::Effect::apply_to_clippath_and_mask, current, Inkscape::LivePathEffect::Effect::doAfterEffect_impl(), Inkscape::LivePathEffect::Effect::doBeforeEffect_impl(), SPObject::document, Inkscape::LivePathEffect::Effect::doEffect(), Inkscape::LivePathEffect::Effect::doOnException(), Inkscape::LivePathEffect::Effect::getName(), Inkscape::LivePathEffect::Effect::has_exception, Inkscape::LivePathEffect::Effect::isReady(), SPDocument::isSeeking(), Inkscape::LivePathEffect::Effect::isVisible(), Inkscape::LivePathEffect::Effect::lpeversion, Inkscape::LivePathEffect::HiddenParam::param_getSVGValue(), Inkscape::LivePathEffect::Effect::pathvector_after_effect, Inkscape::LivePathEffect::Effect::pathvector_before_effect, Inkscape::LivePathEffect::Effect::refresh_widgets, Inkscape::LivePathEffect::Effect::setCurrentShape(), and Inkscape::WARNING_MESSAGE.
Referenced by applyToClipPathOrMask(), performPathEffect(), and sp_group_perform_patheffect().
bool SPLPEItem::performPathEffect | ( | Geom::PathVector & | curve, |
SPShape * | current, | ||
bool | is_clip_or_mask = false |
||
) |
returns true when LPE was successful.
Definition at line 200 of file sp-lpe-item.cpp.
References current, LivePathEffectObject::get_lpe(), hasPathEffect(), SPObject::hrefList, path_effect_list, pathEffectsEnabled(), and performOnePathEffect().
Referenced by applyToClipPathOrMask(), and SPShape::update_patheffect().
|
overridevirtual |
Reimplemented from SPItem.
Reimplemented in SPMarker, SPOffset, SPPath, SPRoot, SPShape, and SPSymbol.
Definition at line 84 of file sp-lpe-item.cpp.
References lpe_modified_connection_list, path_effect_list, and SPItem::release().
Referenced by SPGroup::release(), and SPShape::release().
|
overridevirtual |
Reimplemented from SPObject.
Reimplemented in SPRoot, and SPSwitch.
Definition at line 1357 of file sp-lpe-item.cpp.
References child, SPObject::get_child_by_repr(), hasPathEffectRecursive(), SPObject::remove_child(), and sp_lpe_item_cleanup_original_path_recursive().
Referenced by SPGroup::remove_child().
SPLPEItem * SPLPEItem::removeAllPathEffects | ( | bool | keep_paths, |
bool | recursive = false |
||
) |
If keep_path is true, the item should not be updated, effectively 'flattening' the LPE.
Definition at line 714 of file sp-lpe-item.cpp.
References SPObject::deleteObject(), SPObject::document, Inkscape::LivePathEffect::Effect::doOnRemove_impl(), LivePathEffectObject::get_lpe(), Inkscape::LivePathEffect::Effect::getHolderRemove(), SPObject::getRepr(), hasPathEffect(), Inkscape::LivePathEffect::Effect::keep_paths, Inkscape::LivePathEffect::Effect::on_remove_all, path_effect_list, SPObject::removeAttribute(), sp_lpe_item_cleanup_original_path_recursive(), sp_object_ref(), and sp_object_unref().
Referenced by flattenCurrentPathEffect(), and sp_item_group_ungroup().
SPLPEItem * SPLPEItem::removeCurrentPathEffect | ( | bool | keep_paths | ) |
If keep_path is true, the item should not be updated, effectively 'flattening' the LPE.
Definition at line 685 of file sp-lpe-item.cpp.
References SPObject::deleteObject(), SPObject::document, getCurrentLPE(), getCurrentLPEReference(), SPObject::getRepr(), path_effect_list, patheffectlist_svg_string(), SPObject::setAttributeOrRemoveIfEmpty(), and sp_lpe_item_cleanup_original_path_recursive().
Referenced by Inkscape::LivePathEffect::LPEPowerClip::add(), removePathEffect(), and Inkscape::UI::Tools::PenTool::~PenTool().
void SPLPEItem::removePathEffect | ( | Inkscape::LivePathEffect::Effect * | lpe, |
bool | keep_paths | ||
) |
Definition at line 856 of file sp-lpe-item.cpp.
References Inkscape::LivePathEffect::Effect::getLPEObj(), path_effect_list, removeCurrentPathEffect(), and setCurrentPathEffect().
void SPLPEItem::replacePathEffects | ( | std::vector< LivePathEffectObject const * > const & | old_lpeobjs, |
std::vector< LivePathEffectObject const * > const & | new_lpeobjs | ||
) |
Writes a new "inkscape:path-effect" string to xml, where the old_lpeobjects are substituted by the new ones.
Note that this method messes up the item's PathEffectList
.
Definition at line 1622 of file sp-lpe-item.cpp.
References hreflist_svg_string(), path_effect_list, and SPObject::setAttributeOrRemoveIfEmpty().
Referenced by forkPathEffectsIfNecessary().
void SPLPEItem::resetClipPathAndMaskLPE | ( | bool | fromrecurse = false | ) |
Definition at line 1114 of file sp-lpe-item.cpp.
References SPObject::childList(), SPItem::getClipObject(), SPItem::getMaskObject(), hasPathEffectOnClipOrMaskRecursive(), sp_lpe_item_create_original_path_recursive(), and sp_object_unref().
Referenced by SPGroup::update_patheffect(), and SPShape::update_patheffect().
|
overridevirtual |
Reimplemented from SPItem.
Reimplemented in SPOffset, SPPath, SPPolygon, SPPolyLine, SPRect, SPRoot, SPShape, SPSpiral, SPStar, and SPSymbol.
Definition at line 97 of file sp-lpe-item.cpp.
References current_path_effect, INKSCAPE_PATH_EFFECT, isOnClipboard(), key, lpe_modified_connection_list, lpeobject_ref_modified(), path_effect_list, SPItem::set(), and sp_lpe_item_enable_path_effects().
Referenced by SPGroup::set(), and SPShape::set().
bool SPLPEItem::setCurrentPathEffect | ( | LivePathEffectObject const * | lpeobj | ) |
Definition at line 1566 of file sp-lpe-item.cpp.
References current_path_effect, SPObject::getRepr(), and path_effect_list.
bool SPLPEItem::setCurrentPathEffect | ( | PathEffectSharedPtr const & | lperef | ) |
Definition at line 1554 of file sp-lpe-item.cpp.
References current_path_effect, and path_effect_list.
Referenced by Inkscape::UI::Dialog::LivePathEffectEditor::do_item_action_undoable(), getCurrentLPEReference(), movePathEffect(), and removePathEffect().
|
inlineoverridevirtual |
void SPLPEItem::upCurrentPathEffect | ( | ) |
Definition at line 934 of file sp-lpe-item.cpp.
References getCurrentLPEReference(), path_effect_list, patheffectlist_svg_string(), SPObject::setAttributeOrRemoveIfEmpty(), and sp_lpe_item_cleanup_original_path_recursive().
Referenced by Inkscape::UI::Dialog::LivePathEffectEditor::add_item_actions().
|
overridevirtual |
Reimplemented from SPItem.
Reimplemented in SPOffset, SPPath, SPRect, SPRoot, SPShape, SPSpiral, SPStar, and SPSymbol.
Definition at line 155 of file sp-lpe-item.cpp.
References SPItem::update().
Referenced by SPGroup::update(), and SPShape::update().
|
virtual |
Reimplemented in SPGenericEllipse, SPGroup, SPPath, SPRect, SPShape, SPSpiral, and SPStar.
Definition at line 369 of file sp-lpe-item.cpp.
Referenced by sp_lpe_item_update_patheffect().
void SPLPEItem::update_satellites | ( | bool | recursive = true | ) |
Definition at line 954 of file sp-lpe-item.cpp.
References LivePathEffectObject::get_lpe(), and path_effect_list.
Referenced by duplicateCurrentPathEffect(), and sp_lpe_item_update_patheffect().
|
overridevirtual |
Reimplemented from SPItem.
Reimplemented in SPPath, SPPolygon, SPPolyLine, SPRect, SPRoot, SPShape, SPSpiral, SPStar, and SPSymbol.
Definition at line 169 of file sp-lpe-item.cpp.
References hasPathEffect(), path_effect_list, patheffectlist_svg_string(), Inkscape::XML::Node::removeAttribute(), SPObject::repr, Inkscape::XML::Node::setAttributeOrRemoveIfEmpty(), and SPItem::write().
Referenced by SPGroup::write(), and SPShape::write().
PathEffectSharedPtr SPLPEItem::current_path_effect |
Definition at line 62 of file sp-lpe-item.h.
Referenced by getCurrentLPEReference(), set(), setCurrentPathEffect(), and setCurrentPathEffect().
std::vector<Inkscape::Display::TemporaryItem*> SPLPEItem::lpe_helperpaths |
Definition at line 63 of file sp-lpe-item.h.
bool SPLPEItem::lpe_initialized = false |
Definition at line 108 of file sp-lpe-item.h.
Referenced by SPGroup::update_patheffect(), and SPShape::update_patheffect().
|
private |
Definition at line 49 of file sp-lpe-item.h.
bool SPLPEItem::onsymbol = false |
Definition at line 106 of file sp-lpe-item.h.
Referenced by build(), and pathEffectsEnabled().
PathEffectList* SPLPEItem::path_effect_list |
Definition at line 61 of file sp-lpe-item.h.
Referenced by addPathEffect(), countLPEOfType(), Inkscape::LivePathEffect::LPEPowerMask::doOnApply(), downCurrentPathEffect(), duplicateCurrentPathEffect(), flattenCurrentPathEffect(), get_satellites(), getCurrentLPEReference(), getEffectList(), getEffectList(), getFirstPathEffectOfType(), getLastLPE(), getLastLPEReference(), getLPEIndex(), getLPEReferenceIndex(), getNextLPE(), getNextLPEReference(), getPathEffects(), getPathEffects(), getPathEffectsOfType(), getPathEffectsOfType(), getPrevLPE(), getPrevLPEReference(), hasBrokenPathEffect(), hasPathEffect(), hasPathEffectOfType(), hasPathEffectOnClipOrMask(), movePathEffect(), notifyTransform(), optimizeTransforms(), performPathEffect(), release(), removeAllPathEffects(), removeCurrentPathEffect(), removePathEffect(), replacePathEffects(), set(), setCurrentPathEffect(), setCurrentPathEffect(), sp_lpe_item_cleanup_original_path_recursive(), upCurrentPathEffect(), SPGroup::update_patheffect(), update_satellites(), and write().
int SPLPEItem::path_effects_enabled |
Definition at line 59 of file sp-lpe-item.h.
Referenced by pathEffectsEnabled(), and sp_lpe_item_enable_path_effects().