Diff for /Amaya/amaya/templateInstantiate.c between versions 1.118 and 1.119

version 1.118, 2009/08/28 09:02:27 version 1.119, 2009/08/28 14:15:47
Line 112  Element Template_InsertBagChild (Documen Line 112  Element Template_InsertBagChild (Documen
 {  {
 #ifdef TEMPLATES  #ifdef TEMPLATES
   ElementType newElType, selType;    ElementType newElType, selType;
   Element     use = NULL, el, dummy = NULL;    Element     use = NULL, el;
   SSchema     sstempl;    SSchema     sstempl;
   int         start, end;    int         start, end;
   ThotBool    open;    ThotBool    open;
Line 146  Element Template_InsertBagChild (Documen Line 146  Element Template_InsertBagChild (Documen
           if (el == NULL && sel != bag)            if (el == NULL && sel != bag)
             // force a selection              // force a selection
             TtaSelectElement (doc, sel);              TtaSelectElement (doc, sel);
             GIType (decl->name, &newElType, doc);
             el = TtaNewTree (doc, newElType, "");
           if (sel == bag)            if (sel == bag)
             {              {
               // insert first an empty element                // insert first an empty element
               if (DocumentTypes[doc] == docHTML)                TtaInsertFirstChild (&el, bag, doc);
                 newElType.ElTypeNum = HTML_EL_Element;                TtaRegisterElementCreate (el, doc);
               else if (DocumentTypes[doc] == docMath)                sel = TtaGetFirstChild (el);
                 newElType.ElTypeNum = MathML_EL_Construct;                if (sel == NULL)
               else                  sel = el;
                 newElType.ElTypeNum = XML_EL_XML_Element;                TtaSelectElement (doc, sel);
               newElType.ElSSchema = TtaGetDocumentSSchema (doc);  
               dummy = TtaNewElement(doc, newElType);  
               TtaInsertFirstChild (&dummy, bag, doc);  
               TtaRegisterElementCreate (dummy, doc);  
               TtaSelectElement (doc, dummy);  
             }              }
           GIType (decl->name, &newElType, doc);            else
           TtaInsertAnyElement (doc, before);  
           TtaExtendUndoSequence (doc);  
           TtaInsertElement (newElType, doc);  
           TtaGiveFirstSelectedElement (doc, &sel, &start, &end);  
           if (dummy)  
             {              {
               TtaRegisterElementDelete (dummy, doc);                // insert the new element before or after
               TtaDeleteTree (dummy, doc);                TtaInsertSibling (el, sel, before, doc);
                 TtaRegisterElementCreate (el, doc);
                 sel = TtaGetFirstChild (el);
                 if (sel == NULL)
                   sel = el;
                 TtaSelectElement (doc, sel);
             }              }
             //TtaGiveFirstSelectedElement (doc, &sel, &start, &end);
         }          }
       else if (decl->nature == ComponentNat)        else if (decl->nature == ComponentNat)
         {          {

Removed from v.1.118  
changed lines
  Added in v.1.119


Webmaster