Inkscape
Vector Graphics Editor
|
#include <sp-marker.h>
Public Member Functions | |
SPMarker () | |
~SPMarker () override | |
Initializes an SPMarker object. | |
int | tag () const override |
Geom::Affine | get_marker_transform (Geom::Affine const &base, double linewidth, bool for_display=false) const |
Calculate the transformation for this marker. | |
void | build (SPDocument *document, Inkscape::XML::Node *repr) override |
Virtual build callback for SPMarker. | |
void | release () override |
Removes, releases and unrefs all children of object. | |
void | set (SPAttr key, gchar const *value) override |
void | update (SPCtx *ctx, guint flags) override |
Inkscape::XML::Node * | write (Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) override |
Inkscape::DrawingItem * | show (Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) override |
virtual Inkscape::DrawingItem * | private_show (Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) |
void | hide (unsigned int key) override |
void | print (SPPrintContext *ctx) override |
![]() | |
SPGroup () | |
~SPGroup () override | |
bool | isLayer () const |
LayerMode | layerMode () const |
void | setLayerMode (LayerMode mode) |
bool | insertBottom () const |
void | setInsertBottom (bool insertbottom) |
LayerMode | effectiveLayerMode (unsigned int display_key) const |
LayerMode | layerDisplayMode (unsigned int display_key) const |
void | setLayerDisplayMode (unsigned int display_key, LayerMode mode) |
void | translateChildItems (Geom::Translate const &tr) |
void | scaleChildItemsRec (Geom::Scale const &sc, Geom::Point const &p, bool noRecurse) |
int | getItemCount () const |
virtual void | _showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags) |
std::vector< SPItem * > | item_list () |
void | child_added (Inkscape::XML::Node *child, Inkscape::XML::Node *ref) override |
void | remove_child (Inkscape::XML::Node *child) override |
void | order_changed (Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref) override |
void | update (SPCtx *ctx, unsigned int flags) override |
void | modified (unsigned int flags) override |
void | set (SPAttr key, char const *value) override |
Inkscape::XML::Node * | write (Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, unsigned int flags) override |
Geom::OptRect | bbox (Geom::Affine const &transform, SPItem::BBoxType bboxtype) const override |
const char * | typeName () const override |
The item's type name, not node tag name. | |
const char * | displayName () const override |
The item's type name as a translated human string. | |
char * | description () const override |
void | snappoints (std::vector< Inkscape::SnapCandidatePoint > &p, Inkscape::SnapPreferences const *snapprefs) const override |
void | update_patheffect (bool write) override |
Inkscape::Colors::Color | highlight_color () const override |
Generate a highlight colour if one isn't set and return it. | |
void | removeTransformsRecursively (SPObject const *root) override |
![]() | |
SPLPEItem () | |
~SPLPEItem () 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 | 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 |
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 |
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::Affine | set_transform (Geom::Affine const &transform) |
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. | |
![]() | |
SPViewBox () | |
void | set_viewBox (const gchar *value) |
void | set_preserveAspectRatio (const gchar *value) |
void | write_viewBox (Inkscape::XML::Node *repr) const |
Write viewBox attribute to XML, if set. | |
void | write_preserveAspectRatio (Inkscape::XML::Node *repr) const |
Write preserveAspectRatio attribute to XML, if set. | |
void | apply_viewbox (const Geom::Rect &in, double scale_none=1.0) |
SPItemCtx | get_rctx (const SPItemCtx *ictx, double scale_none=1.0) |
Geom::OptRect | get_paintbox (double width, double height, Geom::OptRect const &size) const |
Public Attributes | |
unsigned int | markerUnits_set: 1 |
unsigned int | markerUnits: 1 |
SVGLength | refX |
SVGLength | refY |
SVGLength | markerWidth |
SVGLength | markerHeight |
unsigned int | orient_set: 1 |
markerOrient | orient_mode: 2 |
SVGAngle | orient |
std::map< unsigned int, SPMarkerView > | views_map |
![]() | |
bool | _insert_bottom |
LayerMode | _layer_mode |
std::map< unsigned int, LayerMode > | _display_modes |
![]() | |
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 |
![]() | |
bool | viewBox_set |
Geom::Rect | viewBox |
bool | aspect_set |
unsigned int | aspect_align |
unsigned int | aspect_clip |
Geom::Affine | c2p |
Additional Inherited Members | |
![]() | |
enum | LayerMode { GROUP , LAYER , MASK_HELPER } |
![]() | |
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 std::vector< SPItem * > | get_expanded (std::vector< SPItem * > const &items) |
Return the result of recursively ungrouping all groups in items. | |
![]() | |
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 | tag_name_changed (gchar const *oldname, gchar const *newname) |
![]() | |
ListHook | _child_hook |
Definition at line 41 of file sp-marker.h.
SPMarker::SPMarker | ( | ) |
Definition at line 49 of file sp-marker.cpp.
References orient.
|
overridedefault |
Initializes an SPMarker object.
This notes the marker's viewBox is not set and initializes the marker's c2p identity matrix.
|
overridevirtual |
Virtual build callback for SPMarker.
This is to be invoked immediately after creation of an SPMarker. This method fills an SPMarker object with its SVG attributes, and calls the parent class' build routine to attach the object to its document and repr. The result will be creation of the whole document tree.
Reimplemented from SPGroup.
Definition at line 80 of file sp-marker.cpp.
References SPGroup::build(), MARKERHEIGHT, MARKERUNITS, MARKERWIDTH, ORIENT, PRESERVEASPECTRATIO, SPObject::readAttr(), REFX, REFY, SPObject::repr, STYLE, and VIEWBOX.
Geom::Affine SPMarker::get_marker_transform | ( | Geom::Affine const & | base, |
double | linewidth, | ||
bool | for_display = false |
||
) | const |
Calculate the transformation for this marker.
Definition at line 305 of file sp-marker.cpp.
References SVGAngle::computed, Geom::Rotate::from_degrees(), MARKER_ORIENT_AUTO, MARKER_ORIENT_AUTO_START_REVERSE, markerUnits, orient, orient_mode, result, SP_MARKER_UNITS_STROKEWIDTH, and Geom::Affine::translation().
|
overridevirtual |
Reimplemented from SPGroup.
Definition at line 297 of file sp-marker.cpp.
References SPGroup::hide(), and key.
Referenced by sp_marker_hide(), and sp_marker_show_dimension().
|
overridevirtual |
Reimplemented from SPGroup.
Definition at line 400 of file sp-marker.cpp.
|
virtual |
Definition at line 293 of file sp-marker.cpp.
References key, and SPGroup::show().
Referenced by sp_marker_show_instance().
|
overridevirtual |
Removes, releases and unrefs all children of object.
This is the inverse of sp_marker_build(). It must be invoked as soon as the marker is removed from the tree, even if it is still referenced by other objects. It hides and removes any views of the marker, then calls the parent classes' release function to deregister the object and release its SPRepr bindings. The result will be the destruction of the entire document tree.
Reimplemented from SPGroup.
Definition at line 107 of file sp-marker.cpp.
References SPGroup::hide(), SPGroup::release(), and views_map.
|
override |
Definition at line 117 of file sp-marker.cpp.
References SVGAngle::_set, key, MARKER_ORIENT_ANGLE, MARKER_ORIENT_AUTO, MARKER_ORIENT_AUTO_START_REVERSE, MARKERHEIGHT, markerHeight, MARKERUNITS, markerUnits, markerUnits_set, MARKERWIDTH, markerWidth, SVGLength::NONE, ORIENT, orient, orient_mode, orient_set, PRESERVEASPECTRATIO, SVGLength::readOrUnset(), SVGAngle::readOrUnset(), REFX, refX, REFY, refY, SPObject::requestDisplayUpdate(), SPGroup::set(), SPViewBox::set_preserveAspectRatio(), SPViewBox::set_viewBox(), SP_MARKER_UNITS_STROKEWIDTH, SP_MARKER_UNITS_USERSPACEONUSE, and VIEWBOX.
|
overridevirtual |
Reimplemented from SPGroup.
Definition at line 288 of file sp-marker.cpp.
|
inlineoverridevirtual |
|
override |
Definition at line 194 of file sp-marker.cpp.
References SPViewBox::c2p, SVGLength::computed, SPCtx::flags, Geom::GenericRect< Coord >::from_xywh(), SPViewBox::get_rctx(), SPItemCtx::i2doc, SPItemCtx::i2vp, Geom::identity(), item, markerWidth, ref, refX, SPGroup::update(), SPItemCtx::viewport, and views_map.
|
override |
Definition at line 229 of file sp-marker.cpp.
References SVGLength::_set, SVGAngle::computed, SVGLength::computed, Inkscape::XML::Document::createElement(), MARKER_ORIENT_AUTO, MARKER_ORIENT_AUTO_START_REVERSE, markerHeight, markerUnits, markerUnits_set, markerWidth, orient, orient_mode, orient_set, refX, refY, Inkscape::XML::Node::removeAttribute(), SPObject::repr, Inkscape::XML::Node::setAttribute(), Inkscape::XML::Node::setAttributeCssDouble(), Inkscape::XML::Node::setAttributeSvgDouble(), SP_MARKER_UNITS_STROKEWIDTH, SPGroup::write(), SPViewBox::write_preserveAspectRatio(), and SPViewBox::write_viewBox().
SVGLength SPMarker::markerHeight |
Definition at line 57 of file sp-marker.h.
Referenced by set(), sp_validate_marker(), and write().
unsigned int SPMarker::markerUnits |
Definition at line 49 of file sp-marker.h.
Referenced by get_marker_transform(), Inkscape::UI::Tools::MarkerTool::get_marker_transform(), set(), sp_marker_show_instance(), and write().
unsigned int SPMarker::markerUnits_set |
Definition at line 48 of file sp-marker.h.
SVGLength SPMarker::markerWidth |
Definition at line 56 of file sp-marker.h.
Referenced by set(), sp_validate_marker(), update(), and write().
SVGAngle SPMarker::orient |
Definition at line 62 of file sp-marker.h.
Referenced by get_marker_transform(), set(), sp_validate_marker(), SPMarker(), and write().
markerOrient SPMarker::orient_mode |
Definition at line 61 of file sp-marker.h.
Referenced by get_marker_transform(), set(), and write().
unsigned int SPMarker::orient_set |
Definition at line 60 of file sp-marker.h.
SVGLength SPMarker::refX |
Definition at line 52 of file sp-marker.h.
Referenced by set(), sp_validate_marker(), update(), and write().
SVGLength SPMarker::refY |
Definition at line 53 of file sp-marker.h.
Referenced by set(), sp_validate_marker(), and write().
std::map<unsigned int, SPMarkerView> SPMarker::views_map |
Definition at line 72 of file sp-marker.h.
Referenced by release(), sp_marker_hide(), sp_marker_show_dimension(), sp_marker_show_instance(), and update().