X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fsgml.h;h=d32b799b4997211b1b8d9f41fce60ffb3eeb3fa3;hb=848c89564fce9c4bfec79b915746dc6bc47abc3d;hp=e3f65c49e01cbce991ee0012d8d48a77b152356e;hpb=68b7ef25fb7d2da230d3eb11d6737701abfc2e64;p=lyx.git diff --git a/src/sgml.h b/src/sgml.h index e3f65c49e0..d32b799b49 100644 --- a/src/sgml.h +++ b/src/sgml.h @@ -14,35 +14,52 @@ #define SGML_H #include "support/types.h" +#include "support/docstream.h" #include +#include #include + +namespace lyx { + +class Buffer; +class Paragraph; +class OutputParams; + namespace sgml { /** - * Escape the given character if necessary - * to an SGML entity. Returns true - * if it was a whitespace character. + * Escape the given character, if necessary, + * to an SGML entity. */ -std::pair escapeChar(char c); +docstring escapeChar(char_type c); + +/// Escape a word instead of a single character +docstring escapeString(docstring const & raw); + +/// replaces illegal characters from SGML/XML ID attributes +docstring cleanID(Buffer const & buf, OutputParams const & runparams, + docstring const & orig); + +/// returns a unique numeric id +docstring const uniqueID(docstring const label); + +/// Opens tag +void openTag(odocstream & os, std::string const & name, + std::string const & attribute = std::string()); -/// FIXME -int openTag(std::ostream & os, lyx::depth_type depth, - bool mixcont, std::string const & latexname, - std::string const & latexparam = std::string()); +/// Open tag +void openTag(Buffer const & buf, odocstream & os, + OutputParams const & runparams, Paragraph const & par); -/// FIXME -int closeTag(std::ostream & os, lyx::depth_type depth, - bool mixcont, std::string const & latexname); +/// Close tag +void closeTag(odocstream & os, std::string const & name); -/// -unsigned int closeEnvTags(std::ostream & os, - bool mixcont, - std::string const & environment_inner_depth, - std::string const & item_tag, - lyx::depth_type total_depth); +/// Close tag +void closeTag(odocstream & os, Paragraph const & par); -} +} // namespace sgml +} // namespace lyx #endif // SGML_H