2#ifndef SEEN_SP_CLIPPATH_H
3#define SEEN_SP_CLIPPATH_H
38 int tag()
const override {
return tag_of<
decltype(*this)>; }
62 void modified(
unsigned flags)
override;
85 return static_cast<SPClipPath*
>(URIReference::getObject());
constexpr int tag_of
Convenience function to retrieve the tag (class id) of a given type.
3x3 matrix representing an affine transformation.
Axis-aligned rectangle that can be empty.
SVG drawing item for display.
A class encapsulating a reference to a particular URI; observers can be notified when the URI comes t...
URIReference(SPObject *owner)
Constructor.
Interface for refcounted XML nodes.
SPClipPathReference(SPObject *obj)
bool _acceptObject(SPObject *obj) const override
If the owner element of this reference (the element with <... clippath="...">) is a child of the clip...
sigc::connection modified_connection
SPClipPath * getObject() const
void modified(unsigned flags) override
Inkscape::XML::Node * write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, unsigned flags) override
void setBBox(unsigned key, Geom::OptRect const &bbox)
Geom::OptRect geometricBounds(Geom::Affine const &transform) const
void removeTransformsRecursively(SPObject const *root)
Geom::PathVector getPathVector(Geom::Affine const &transform) const
This gets a compiled path vector from all the objects.
void transform_multiply(Geom::Affine postmul, bool set=true)
void build(SPDocument *doc, Inkscape::XML::Node *repr) override
Geom::OptRect get_last_bbox() const
bool clippath_units() const
SPText const * getTextObject() const
This gets a text object, if the clip path is made up of a single sp-text.
void update(SPCtx *ctx, unsigned flags) override
void update_view(View &v)
void child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) override
Inkscape::DrawingItem * show(Inkscape::Drawing &drawing, unsigned key, Geom::OptRect const &bbox)
std::vector< View > views
Typed SVG document implementation.
SPObject is an abstract base class of all of the document nodes at the SVG document level.
Inkscape::XML::Node * repr
Helper class to stream background task notifications as a series of messages.
static cairo_user_data_key_t key
View helper class used by hatch, clippath, mask and pattern.
Interface for XML documents.