X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2FDEVEL%2Fmathml_editor%2Focaml%2Fc_mathml_editor.cc;h=f610a7ff5d92bd810ee56dcefdb67310f65a9274;hb=d2c60bae1c4badba0a0f29e3fd2faed6d3a1869e;hp=284f1ed508f4904c5abe5e21fd9fae75b6d9dd7b;hpb=387aeebf96181c051b7f527a0901b173cfcdf194;p=helm.git diff --git a/helm/DEVEL/mathml_editor/ocaml/c_mathml_editor.cc b/helm/DEVEL/mathml_editor/ocaml/c_mathml_editor.cc index 284f1ed50..f610a7ff5 100644 --- a/helm/DEVEL/mathml_editor/ocaml/c_mathml_editor.cc +++ b/helm/DEVEL/mathml_editor/ocaml/c_mathml_editor.cc @@ -1,3 +1,27 @@ +/* This file is part of EdiTeX, an editor of mathematical + * expressions based on TeX syntax. + * + * Copyright (C) 2002-2003 Luca Padovani , + * 2003 Paolo Marinelli . + * + * 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 + */ #include @@ -72,6 +96,24 @@ Editor::~Editor() delete logger; } +extern "C" const char* +c_mathml_editor_get_default_dictionary_path() +{ + return TDictionary::getDefaultDictionaryPath().c_str(); +} + +extern "C" const char* +c_mathml_editor_get_default_mathml_stylesheet_path() +{ + return AMathMLFactory::getDefaultMathMLStylesheetPath().c_str(); +} + +extern "C" const char* +c_mathml_editor_get_default_tex_stylesheet_path() +{ + return AMathMLFactory::getDefaultTeXStylesheetPath().c_str(); +} + extern "C" Editor* c_mathml_editor_new(GdomeDocument* dictionary, GdomeDocument* tml_mml, @@ -119,13 +161,29 @@ c_mathml_editor_drop(Editor* editor, int alt) editor->lexer->drop(alt != 0); } +extern "C" int +c_mathml_editor_cursor_hide(Editor* editor) +{ + assert(editor); + return editor->parser->hideCursor(); +} + +extern "C" int +c_mathml_editor_cursor_show(Editor* editor) +{ + assert(editor); + return editor->parser->showCursor(); +} + extern "C" char* c_mathml_editor_get_tex(const Editor* editor) { assert(editor); DOM::Document res = editor->tml_tex->apply(editor->parser->document()); - DOM::Element root = res.get_documentElement(); - return strdup(std::string(root.get_nodeValue()).c_str()); + assert(res); + res.normalize(); + assert(res.get_firstChild() && res.get_firstChild().get_nodeName() == "#text"); + return strdup(std::string(res.get_firstChild().get_nodeValue()).c_str()); } extern "C" void