Code

more unreffing temporary styles properly
[inkscape.git] / src / style.h
index a200a970f2e076ccb38e0f2073d18d6b25116886..544bde55778251ae3c9bf978c7cbd67ae3b5757a 100644 (file)
@@ -159,14 +159,14 @@ struct SPIPaint {
     unsigned inherit : 1;
     unsigned currentcolor : 1;
     unsigned type : 2;
-    union {
-        SPColor color;
+    struct {
         struct {
             SPPaintServer *server;
             gchar *uri;
         } paint;
+        SPColor color;
+        SVGICCColor *iccColor;
     } value;
-    SVGICCColor *iccColor;
 };
 
 /// Filter type internal to SPStyle
@@ -336,6 +336,12 @@ struct SPStyle {
     /** Filter effect */
     SPIFilter filter;
 
+    SPIEnum filter_blend_mode;
+
+   /** normally not used, but duplicates the Gaussian blur deviation (if any) from the attached
+        filter when the style is used for querying */
+    SPILength filter_gaussianBlur_deviation;
+
     /** enable-background, used for defining where filter effects get
      * their background image */
     SPIEnum enable_background;
@@ -354,6 +360,9 @@ struct SPStyle {
 
     sigc::connection stroke_release_connection;
     sigc::connection stroke_modified_connection;
+
+    sigc::connection filter_release_connection;
+    sigc::connection filter_modified_connection;
 };
 
 SPStyle *sp_style_new();
@@ -532,6 +541,11 @@ SPCSSAttr *sp_css_attr_scale(SPCSSAttr *css, double ex);
 
 void sp_style_unset_property_attrs(SPObject *o);
 
+void sp_style_set_property_url (SPObject *item, gchar const *property, SPObject *linked, bool recursive);
+
+gchar *attribute_unquote(gchar const *val);
+gchar *css2_escape_quote(gchar const *val);
+
 #endif