1 #ifndef _GNM_XML_SAX_H_
2 # define _GNM_XML_SAX_H_
3 
4 #include <gnumeric.h>
5 #include <gsf/gsf-output-memory.h>
6 
7 G_BEGIN_DECLS
8 
9 /* Gnumeric specific SAX utilities */
10 void gnm_xml_out_add_gocolor (GsfXMLOut *o, char const *id, GOColor c);
11 gboolean gnm_xml_attr_int     (xmlChar const * const *attrs,
12 			       char const *name, int * res);
13 gboolean gnm_xml_attr_double  (xmlChar const * const *attrs,
14 			       char const *name, double * res);
15 gboolean gnm_xml_attr_bool    (xmlChar const * const *attrs,
16 			       char const *name, gboolean *res);
17 
18 SheetObject *gnm_xml_in_cur_obj   (GsfXMLIn const *xin);
19 Sheet	    *gnm_xml_in_cur_sheet (GsfXMLIn const *xin);
20 
21 
22 GsfOutputMemory *gnm_cellregion_to_xml (GnmCellRegion const *cr);
23 
24 GnmCellRegion *gnm_xml_cellregion_read (WorkbookControl *wbc,
25 				    GOIOContext *io_context,
26 				    Sheet *sheet,
27 				    const char *buffer, int length);
28 
29 typedef void (*GnmXmlStyleHandler) (GsfXMLIn *xin,
30 				    GnmStyle *style,
31 				    gpointer user);
32 void      gnm_xml_prep_style_parser (GsfXMLIn *xin,
33 				     xmlChar const **attrs,
34 				     GnmXmlStyleHandler handler,
35 				     gpointer user);
36 
37 void      gnm_xml_sax_read_init (void);
38 void      gnm_xml_sax_read_shutdown (void);
39 
40 void      gnm_xml_sax_write_init (void);
41 void      gnm_xml_sax_write_shutdown (void);
42 
43 GnmConventions *gnm_xml_io_conventions (void);
44 
45 G_END_DECLS
46 
47 #endif /* _GNM_XML_SAX_H_ */
48