12 #include "tm_item_p.h"
14 #include <gwenhywfar/misc.h>
15 #include <gwenhywfar/debug.h>
25 TYPEMAKER2_ITEM *p_struct;
42 free(p_struct->value);
58 p_struct->name=strdup(p_src->name);
62 if (p_struct->value) {
63 free(p_struct->value);
67 p_struct->value=strdup(p_src->value);
82 p_struct->name=strdup(p_src->name);
86 if (p_struct->value) {
87 free(p_struct->value);
91 p_struct->value=strdup(p_src->value);
99 return p_struct->name;
104 return p_struct->value;
109 if (p_struct->name) {
110 free(p_struct->name);
113 p_struct->name=strdup(p_src);
122 if (p_struct->value) {
123 free(p_struct->value);
126 p_struct->value=strdup(p_src);
129 p_struct->value=
NULL;
134 TYPEMAKER2_ITEM_LIST *p_dest;
138 p_dest=Typemaker2_Item_List_new();
139 p_elem=Typemaker2_Item_List_First(p_src);
144 Typemaker2_Item_List_Add(p_cpy, p_dest);
145 p_elem=Typemaker2_Item_List_Next(p_elem);
154 if (p_struct->name) {
155 free(p_struct->name);
158 if (p_struct->name==
NULL) {
163 if (p_struct->value) {
164 free(p_struct->value);
167 if (p_struct->value==
NULL) {
168 p_struct->value=
NULL;
const char * Typemaker2_Item_GetName(const TYPEMAKER2_ITEM *p_struct)
void Typemaker2_Item_ReadXml(TYPEMAKER2_ITEM *p_struct, GWEN_XMLNODE *p_db)
const char * GWEN_XMLNode_GetProperty(const GWEN_XMLNODE *n, const char *name, const char *defaultValue)
#define GWEN_FREE_OBJECT(varname)
void GWEN_XMLNode_SetProperty(GWEN_XMLNODE *n, const char *name, const char *value)
void Typemaker2_Item_toXml(const TYPEMAKER2_ITEM *p_struct, GWEN_XMLNODE *p_db)
struct TYPEMAKER2_ITEM TYPEMAKER2_ITEM
const char * Typemaker2_Item_GetValue(const TYPEMAKER2_ITEM *p_struct)
#define GWEN_NEW_OBJECT(typ, varname)
TYPEMAKER2_ITEM * Typemaker2_Item_fromXml(GWEN_XMLNODE *p_db)
TYPEMAKER2_ITEM_LIST * Typemaker2_Item_List_dup(const TYPEMAKER2_ITEM_LIST *p_src)
TYPEMAKER2_ITEM * Typemaker2_Item_copy(TYPEMAKER2_ITEM *p_struct, const TYPEMAKER2_ITEM *p_src)
void Typemaker2_Item_SetValue(TYPEMAKER2_ITEM *p_struct, const char *p_src)
void Typemaker2_Item_WriteXml(const TYPEMAKER2_ITEM *p_struct, GWEN_XMLNODE *p_db)
GWEN_LIST2_FUNCTIONS(TYPEMAKER2_TYPE, Typemaker2_Type)
TYPEMAKER2_ITEM * Typemaker2_Item_dup(const TYPEMAKER2_ITEM *p_src)
void Typemaker2_Item_SetName(TYPEMAKER2_ITEM *p_struct, const char *p_src)
#define GWEN_LIST_INIT(t, element)
#define GWEN_LIST_FUNCTIONS(t, pr)
TYPEMAKER2_ITEM * Typemaker2_Item_new(void)
void Typemaker2_Item_free(TYPEMAKER2_ITEM *p_struct)
#define GWEN_LIST_FINI(t, element)
struct GWEN__XMLNODE GWEN_XMLNODE