/*
5 * Authors: see git history
7 * Copyright (C) 2018 Authors
8 * Released under GNU GPL v2+, read the file
'COPYING' for more information.
64 if (!this->
cx.
read(value)) {
77 if (!this->
cy.
read(value)) {
90 if (!this->
r.
read(value)) {
98 if (!this->
fx.
read(value)) {
99 this->
fx.
unset(this->
cx.
unit, this->cx.value, this->cx.computed);
106 if (!this->
fy.
read(value)) {
107 this->
fy.
unset(this->
cy.
unit, this->cy.value, this->cy.computed);
114 if (!this->
fr.
read(value)) {
130 if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) {
137 double d = sqrt ((
w*
w + h*h)/2.0);
139 double const ex = 0.5 * em;
155 if ((flags & SP_OBJECT_WRITE_BUILD) && !
repr) {
159 if ((flags & SP_OBJECT_WRITE_ALL) || this->
cx.
_set) {
163 if ((flags & SP_OBJECT_WRITE_ALL) || this->
cy.
_set) {
167 if ((flags & SP_OBJECT_WRITE_ALL) || this->
r.
_set) {
171 if ((flags & SP_OBJECT_WRITE_ALL) || this->
fx.
_set) {
175 if ((flags & SP_OBJECT_WRITE_ALL) || this->
fy.
_set) {
179 if ((flags & SP_OBJECT_WRITE_ALL) || this->
fr.
_set) {
Lookup dictionary for attributes/properties.
C height() const
Get the vertical extent of the rectangle.
C width() const
Get the horizontal extent of the rectangle.
Interface for refcounted XML nodes.
bool setAttributeSvgDouble(Util::const_char_ptr key, double val)
For attributes where an exponent is allowed.
Typed SVG document implementation.
void build(SPDocument *document, Inkscape::XML::Node *repr) override
Virtual build: set gradient attributes from its associated repr.
SPGradientVector vector
Linear and Radial Gradients.
Inkscape::XML::Node * write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, unsigned int flags) override
Write gradient attributes to repr.
Geom::Affine gradientTransform
gradientTransform attribute
SPGradientSpread getSpread() const
SPGradientUnits getUnits() const
void set(SPAttr key, char const *value) override
Set gradient attribute to value.
void ensureVector()
Forces vector to be built, if not present (i.e.
Inkscape::XML::Node * repr
void requestModified(unsigned int flags)
Requests that a modification notification signal be emitted later (e.g.
SPStyle * style
Represents the style properties, whether from presentation attributes, the style attribute,...
void readAttr(char const *key)
Read value of key attribute from XML node into object.
Inkscape::XML::Node * write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, unsigned int flags) override
Write radial gradient attributes to associated repr.
std::unique_ptr< Inkscape::DrawingPaintServer > create_drawing_paintserver() override
void build(SPDocument *document, Inkscape::XML::Node *repr) override
Set radial gradient attributes from associated repr.
void set(SPAttr key, char const *value) override
Set radial gradient attribute.
~SPRadialGradient() override
void update(SPCtx *ctx, unsigned int flags) override
T< SPAttr::FONT_SIZE, SPIFontSize > font_size
Size of the font.
bool read(char const *str)
void unset(Unit u=NONE, float v=0, float c=0)
void update(double em, double ex, double scale)
Representation of paint servers used when rendering.
static cairo_user_data_key_t key
TODO: insert short description here.
@ SP_GRADIENT_UNITS_USERSPACEONUSE
TODO: insert short description here.
Some things pertinent to all visible shapes: SPItem, SPItemView, SPItemCtx.
TODO: insert short description here.
Interface for XML documents.
virtual Node * createElement(char const *name)=0
std::vector< SPGradientStop > stops
Contains transformations to document/viewport and the viewport size.
Geom::Rect viewport
Viewport size.
SPStyle internal: classes that are internal to SPStyle.
SPStyle - a style object for SPItem objects.
Interface for XML documents.