#include <stdbool.h>
#include <dom/dom.h>
+#include <libcss/libcss.h>
#ifndef UNUSED
#define UNUSED(x) ((void) (x))
float a, b, c, d, e, f;
} ctm;
+ /* A libcss context to hold any stylesheets that are present
+ * in the SVG document. This should be pre-populated rather
+ * than on-the-fly, because, for example, a <style> sheet at
+ * the end of the document should affect the SVG elements that
+ * precede it. */
+ css_select_ctx *select_ctx;
+
/* paint attributes */
svgtiny_colour fill;
svgtiny_colour stroke;
#include "svgtiny_strings.h"
#undef SVGTINY_STRING_ACTION2
+ /* Where we store the interned copy of the SVG XML namespace,
+ *
+ * http://www.w3.org/2000/svg
+ *
+ * We handle it separately it has a different type
+ * (lwc_string) than those above (dom_string).
+ */
+ lwc_string *interned_svg_xmlns;
};
struct svgtiny_list;
#define strndup svgtiny_strndup
#endif
+/* svgtiny_css.c */
+css_error svgtiny_create_stylesheet(css_stylesheet **sheet,
+ bool inline_style);
+
/* svgtiny_gradient.c */
void svgtiny_find_gradient(const char *id,
struct svgtiny_parse_state_gradient *grad,