version 1.12, 2007/01/11 11:57:12
|
version 1.13, 2007/01/11 13:17:28
|
Line 350 Element Template_GetNewXmlElementInstanc
|
Line 350 Element Template_GetNewXmlElementInstanc
|
#ifdef TEMPLATES |
#ifdef TEMPLATES |
ElementType elType; |
ElementType elType; |
|
|
GIType(decl->elementType.name, &elType, doc); |
GIType(decl->name, &elType, doc); |
if(elType.ElTypeNum!=0) |
if(elType.ElTypeNum!=0) |
{ |
{ |
newEl = TtaNewElement (doc, elType); |
newEl = TtaNewElement (doc, elType); |
Line 378 Element Template_GetNewComponentInstance
|
Line 378 Element Template_GetNewComponentInstance
|
#endif /* TEMPLATES */ |
#endif /* TEMPLATES */ |
return newEl; |
return newEl; |
} |
} |
|
|
|
|
|
|
/*---------------------------------------------------------------------- |
|
Template_GetNewUseInstance |
|
Create an new instance of xt:use |
|
@param dec Template declaration of the element to insert |
|
@param parent Future parent element |
|
@param doc Document |
|
@return The new element |
|
----------------------------------------------------------------------*/ |
|
Element Template_GetNewUseInstance(Document doc, Element parent, Declaration dec) |
|
{ |
|
Element newEl = NULL; |
|
#ifdef TEMPLATES |
|
ThotBool oldStructureChecking; |
|
ElementType elType; |
|
char* empty = " "; |
|
|
|
oldStructureChecking = TtaGetStructureChecking (doc); |
|
TtaSetStructureChecking (FALSE, doc); |
|
|
|
elType = TtaGetElementType(parent); |
|
|
|
switch (dec->nature) |
|
{ |
|
case SimpleTypeNat : |
|
elType.ElTypeNum = Template_EL_TEXT_UNIT; |
|
newEl = TtaNewElement (doc, elType); |
|
TtaInsertFirstChild (&newEl, parent, doc); |
|
TtaSetTextContent (newEl, (unsigned char*) empty, 0, doc); |
|
newEl = NULL; |
|
break; |
|
|
|
/* @@@@@ */ |
|
break; |
|
case XmlElementNat : |
|
/* @@@@@ */ |
|
break; |
|
case ComponentNat : |
|
/* copy element dec->componentType.content */ |
|
newEl = TtaCopyTree (dec->componentType.content, doc, doc, parent); |
|
TtaInsertFirstChild (&newEl, parent, doc); |
|
return newEl; |
|
/* @@@@@ */ |
|
break; |
|
case UnionNat : |
|
/* @@@@@ */ |
|
break; |
|
default : |
|
//Impossible |
|
break; |
|
} |
|
#endif /* TEMPLATES */ |
|
return newEl; |
|
} |
|
|
|
|
|
/*---------------------------------------------------------------------- |
/*---------------------------------------------------------------------- |