gwenhywfar
4.3.3
|
00001 /*************************************************************************** 00002 begin : Sat Feb 20 2010 00003 copyright : (C) 2010 by Martin Preuss 00004 email : martin@libchipcard.de 00005 00006 *************************************************************************** 00007 * Please see toplevel file COPYING for license details * 00008 ***************************************************************************/ 00009 00010 00011 #ifndef HTMLGROUP_L_H 00012 #define HTMLGROUP_L_H 00013 00014 #include <gwenhywfar/inherit.h> 00015 #include <gwenhywfar/xmlctx.h> 00016 00017 00018 00019 typedef struct HTML_GROUP HTML_GROUP; 00020 GWEN_INHERIT_FUNCTION_DEFS(HTML_GROUP) 00021 00022 00023 typedef int (*HTML_GROUP_STARTTAG_FN)(HTML_GROUP *g, 00024 const char *tagName); 00025 typedef int (*HTML_GROUP_ENDTAG_FN)(HTML_GROUP *g, 00026 const char *tagName); 00027 typedef int (*HTML_GROUP_ADDDATA_FN)(HTML_GROUP *g, 00028 const char *data); 00029 00030 typedef int (*HTML_GROUP_ENDSUBGROUP_FN)(HTML_GROUP *g, 00031 HTML_GROUP *sg); 00032 00033 00034 #include "htmlobject_be.h" 00035 #include "htmlprops_be.h" 00036 00037 00038 00039 HTML_GROUP *HtmlGroup_new(const char *groupName, 00040 HTML_GROUP *parent, 00041 GWEN_XML_CONTEXT *ctx); 00042 void HtmlGroup_free(HTML_GROUP *g); 00043 00044 00045 HTML_GROUP *HtmlGroup_GetParent(const HTML_GROUP *g); 00046 GWEN_XML_CONTEXT *HtmlGroup_GetXmlContext(const HTML_GROUP *g); 00047 const char *HtmlGroup_GetGroupName(const HTML_GROUP *g); 00048 00049 HTML_OBJECT *HtmlGroup_GetObject(const HTML_GROUP *g); 00050 void HtmlGroup_SetObject(HTML_GROUP *g, HTML_OBJECT *o); 00051 00052 00053 HTML_PROPS *HtmlGroup_GetProperties(const HTML_GROUP *g); 00054 void HtmlGroup_SetProperties(HTML_GROUP *g, HTML_PROPS *pr); 00055 00056 00057 HTML_GROUP_STARTTAG_FN 00058 HtmlGroup_SetStartTagFn(HTML_GROUP *g, 00059 HTML_GROUP_STARTTAG_FN f); 00060 00061 HTML_GROUP_ENDTAG_FN 00062 HtmlGroup_SetEndTagFn(HTML_GROUP *g, 00063 HTML_GROUP_ENDTAG_FN f); 00064 00065 HTML_GROUP_ADDDATA_FN 00066 HtmlGroup_SetAddDataFn(HTML_GROUP *g, 00067 HTML_GROUP_ADDDATA_FN f); 00068 00069 HTML_GROUP_ENDSUBGROUP_FN 00070 HtmlGroup_SetEndSubGroupFn(HTML_GROUP *g, 00071 HTML_GROUP_ENDSUBGROUP_FN f); 00072 00073 int HtmlGroup_StartTag(HTML_GROUP *g, const char *tagName); 00074 00078 int HtmlGroup_EndTag(HTML_GROUP *g, const char *tagName); 00079 int HtmlGroup_AddData(HTML_GROUP *g, 00080 const char *data); 00081 00082 int HtmlGroup_EndSubGroup(HTML_GROUP *g, HTML_GROUP *sg); 00083 00084 #endif