diff --git a/src/style.h b/src/style.h
index 1233b795866c8d8c462a3ae768485fb4914aac5a..5c956302bbfacc81fe3d4eb42c5dc01da55753ba 100644 (file)
--- a/src/style.h
+++ b/src/style.h
#include "color.h"
#include "forward.h"
#include "sp-marker-loc.h"
+#include "sp-filter.h"
+
+#include <sigc++/connection.h>
namespace Inkscape {
namespace XML {
SP_PAINT_TYPE_IMPOSSIBLE
};
+class SVGICCColor;
+
/// Paint type internal to SPStyle.
struct SPIPaint {
unsigned set : 1;
gchar *uri;
} paint;
} value;
+ SVGICCColor *iccColor;
+};
+
+/// Filter type internal to SPStyle
+struct SPIFilter {
+ unsigned set : 1;
+ unsigned inherit : 1;
+ SPFilter *filter;
+ gchar *uri;
};
enum {
/** Marker list */
SPIString marker[SP_MARKER_LOC_QTY];
+ /** Filter effect */
+ SPIFilter filter;
+
+ /** 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;
+
/// style belongs to a cloned object, must not href anything
bool cloned;
+ /// style has hreffed its fill/stroke paintservers, needs to release.
+ bool fill_hreffed;
+ bool stroke_hreffed;
+ bool filter_hreffed;
+
+ sigc::connection release_connection;
+
+ sigc::connection fill_release_connection;
+ sigc::connection fill_modified_connection;
+
+ sigc::connection stroke_release_connection;
+ sigc::connection stroke_modified_connection;
+
+ sigc::connection filter_release_connection;
+ sigc::connection filter_modified_connection;
};
SPStyle *sp_style_new();
SP_CSS_DISPLAY_TABLE_CAPTION
};
+enum SPEnableBackground {
+ SP_CSS_BACKGROUND_ACCUMULATE,
+ SP_CSS_BACKGROUND_NEW
+};
+
/// An SPTextStyle has a refcount, a font family, and a font name.
struct SPTextStyle {
int refcount;
void sp_style_unset_property_attrs(SPObject *o);
+void sp_style_set_property_url (SPObject *item, gchar const *property, SPObject *linked, bool recursive);
+
#endif