Diff for /Amaya/amaya/insertelem.c between versions 1.27 and 1.28

version 1.27, 2008/08/06 13:18:48 version 1.28, 2008/12/02 16:55:34
Line 396  void InsertableElement_DoInsertElement ( Line 396  void InsertableElement_DoInsertElement (
                                               TtaGetLastChild(ref));                                                TtaGetLastChild(ref));
         break;          break;
       case Template_EL_bag:        case Template_EL_bag:
         newEl = Template_InsertBagChild (doc, ref,          newEl = Template_InsertBagChild (doc, NULL, ref,
                                          (Declaration)elem->elem.component.declaration,                                           (Declaration)elem->elem.component.declaration,
                                          FALSE);                                           FALSE);
         break;          break;
Line 458  Element InsertableElement_InsertElement Line 458  Element InsertableElement_InsertElement
     switch(refType.ElTypeNum)      switch(refType.ElTypeNum)
     {      {
       case Template_EL_repeat:        case Template_EL_repeat:
         if(elem->typeClass==DefinedComponent)          if (elem->typeClass == DefinedComponent)
           dec = (Declaration)elem->elem.component.declaration;            dec = (Declaration)elem->elem.component.declaration;
         else if (elem->typeClass==LanguageElement)          else if (elem->typeClass == LanguageElement)
           {            {
             t = GetXTigerDocTemplate(TtaGetDocument(elem->refElem));              t = GetXTigerDocTemplate(TtaGetDocument(elem->refElem));
             if (t)              if (t)
Line 468  Element InsertableElement_InsertElement Line 468  Element InsertableElement_InsertElement
           }            }
         if (dec)          if (dec)
           {            {
                           TtaGiveFirstSelectedElement (doc, &sel, &car1, &car2);
             TtaGiveFirstSelectedElement(doc, &sel, &car1, &car2);              sibling = GetFirstChildElementTo (ref, sel);
             sibling = GetFirstChildElementTo(ref, sel);              if (sibling)
             if(sibling)  
               {                {
                 if(before)                  if (before)
                   TtaPreviousSibling(&sibling);                    TtaPreviousSibling(&sibling);
                 newEl = Template_InsertRepeatChildAfter (doc, ref, dec, sibling);                  newEl = Template_InsertRepeatChildAfter (doc, ref, dec, sibling);
               }                }
           }            }
         break;          break;
       case Template_EL_bag:        case Template_EL_bag:
         if(elem->typeClass==DefinedComponent)          if (elem->typeClass == DefinedComponent)
           dec = (Declaration)elem->elem.component.declaration;            dec = (Declaration)elem->elem.component.declaration;
         else if (elem->typeClass==LanguageElement)          else if (elem->typeClass == LanguageElement)
           {            {
             t = GetXTigerDocTemplate(TtaGetDocument(elem->refElem));              t = GetXTigerDocTemplate (TtaGetDocument (elem->refElem));
             if (t)              if (t)
                 dec = Template_GetElementDeclaration(t, ElemListElement_GetName(elem));                dec = Template_GetElementDeclaration (t, ElemListElement_GetName(elem));
           }            }
         if (dec)          if (dec)
             newEl = Template_InsertBagChild (doc, ref, dec, before);                         newEl = Template_InsertBagChild (doc, NULL, ref, dec, before);           
         break;          break;
       default:        default:
         break;          break;

Removed from v.1.27  
changed lines
  Added in v.1.28


Webmaster