1 /* 2 * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client 3 * Copyright (C) 2002-2012 Match Grun and the Claws Mail team 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation; either version 3 of the License, or 8 * (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program. If not, see <http://www.gnu.org/licenses/>. 17 * 18 */ 19 20 /* 21 * General functions for saving properties to an XML file. 22 */ 23 24 #ifndef __XMLSAVER_H__ 25 #define __XMLSAVER_H__ 26 27 #include <stdio.h> 28 #include <glib.h> 29 30 /* XML property data */ 31 typedef struct _XmlProperty XmlProperty; 32 33 struct _XmlProperty { 34 gchar *path; 35 gchar *encoding; 36 GHashTable *propertyTable; 37 gint retVal; 38 }; 39 40 /* Function prototypes */ 41 42 XmlProperty *xmlprops_create ( void ); 43 void xmlprops_free ( XmlProperty *props ); 44 void xmlprops_set_path ( XmlProperty *props, const gchar *value ); 45 gint xmlprops_load_file ( XmlProperty *props ); 46 gint xmlprops_save_file ( XmlProperty *props ); 47 void xmlprops_set_property ( XmlProperty *props, const gchar *name, 48 const gchar *value ); 49 void xmlprops_set_property_i ( XmlProperty *props, const gchar *name, 50 const gint value ); 51 void xmlprops_set_property_b ( XmlProperty *props, const gchar *name, 52 const gboolean value ); 53 void xmlprops_get_property_s ( XmlProperty *props, const gchar *name, 54 gchar *buffer ); 55 gint xmlprops_get_property_i ( XmlProperty *props, const gchar *name ); 56 gboolean xmlprops_get_property_b( XmlProperty *props, const gchar *name ); 57 58 #endif /* __XMLSAVER_H__ */ 59