]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/DEVEL/mathml_editor/src/TDocument.cc
ocaml 3.09 transition
[helm.git] / helm / DEVEL / mathml_editor / src / TDocument.cc
index e578b79f46ae9d8411f3d00931c8c5dcbacac2e1..ca4878e6c75b385b31a2418b9062255556b6a4c5 100644 (file)
@@ -1,5 +1,30 @@
+/* This file is part of EdiTeX, an editor of mathematical
+ * expressions based on TeX syntax.
+ * 
+ * Copyright (C) 2002-2003 Luca Padovani <lpadovan@cs.unibo.it>,
+ *                    2003 Paolo Marinelli <pmarinel@cs.unibo.it>.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ * For more information, please visit the project's home page
+ * http://helm.cs.unibo.it/editex/
+ * or send an email to <lpadovan@cs.unibo.it>
+ */
 
 #include <sstream>
+#include <cassert>
 
 #include "globals.hh"
 #include "dom.hh"
@@ -27,6 +52,15 @@ TDocument::~TDocument()
   et.removeEventListener("DOMSubtreeModified", *this, false);
 }
 
+void
+TDocument::reset()
+{
+  DOM::Element root = doc.createElementNS(TML_NS_URI, "tml:tex");
+  root.setAttributeNS(XMLNS_NS_URI, "xmlns:tml", TML_NS_URI);
+  doc.replaceChild(root, doc.get_documentElement());
+  clearDirty();
+}
+
 void
 TDocument::serialize(const char* filename) const
 {
@@ -37,7 +71,7 @@ TDocument::serialize(const char* filename) const
 std::string
 TDocument::makeId(unsigned id)
 {
-  ostringstream os;
+  std::ostringstream os;
   os << "I" << id;
   return os.str();
 }
@@ -89,7 +123,7 @@ TDocument::findCommonAncestor(const DOM::Node& node1, const DOM::Node& node2)
   unsigned d1 = nodeDepth(n1);
   unsigned d2 = nodeDepth(n2);
 
-  cout << "finding common ancestor " << d1 << " " << d2 << endl;
+  // cout << "finding common ancestor " << d1 << " " << d2 << endl;
 
   while (d1 < d2)
     {
@@ -157,10 +191,12 @@ TDocument::handleEvent(const DOM::Event& ev)
   DOM::MutationEvent me(ev);
   assert(me);
 
+#if 0
   if (dirty)
     cout << "TDocument::handleEvent DIRTY BEFORE = " << dirty.getAttribute("id") << endl;
   else
     cout << "TDocument::handleEvent DIRTY BEFORE = (nil)" << endl;
+#endif
 
   if (DOM::Node node = me.get_target())
     if (dirty)
@@ -170,7 +206,8 @@ TDocument::handleEvent(const DOM::Event& ev)
   else
     assert(0);
 
+#if 0
   cout << "TDocument::handleEvent target = " << DOM::Node(me.get_target()).get_nodeName() << " DIRTY AFTER = "
        << dirty.getAttribute("id") << " ME = " << DOM::Node(me.get_target()).get_nodeName() << endl;
-  
+#endif
 }