]> git.lyx.org Git - lyx.git/blobdiff - src/output_xhtml.h
Make the fake sequence for braces highly unlikely (addressing #6478).
[lyx.git] / src / output_xhtml.h
index de88282a8044a773f03a3cf8fb956a6988d8d770..0e69424426be5b86441d890f4462b1b3149237b6 100644 (file)
@@ -27,8 +27,9 @@ class Text;
 // Inspiration for the *Tag structs and for XHTMLStream
 // came from MathStream and its cousins.
 
+namespace html {
 /// Attributes will be escaped automatically and so should NOT
-/// be escaped before passing to the constructor.
+/// be escaped before being passed to the constructor.
 struct StartTag {
        ///
        explicit StartTag(std::string const & tag) : tag_(tag) {}
@@ -60,9 +61,13 @@ struct EndTag {
 };
 
 
+// FIXME XHTML
+// We need to allow these to be deferrable, which means it should
+// inherit from StartTag. This is probably better, anyway, but we'll
+// need to re-work a bit of code....
 /// Tags like <img />
 /// Attributes will be escaped automatically and so should NOT
-/// be escaped before passing to the constructor.
+/// be escaped before being passed to the constructor.
 struct CompTag {
        ///
        explicit CompTag(std::string const & tag)
@@ -78,6 +83,7 @@ struct CompTag {
        std::string attr_;
 };
 
+} // namespace html
 
 class XHTMLStream {
 public:
@@ -101,11 +107,13 @@ public:
        ///
        XHTMLStream & operator<<(char_type);
        ///
-       XHTMLStream & operator<<(StartTag const &);
+       XHTMLStream & operator<<(int);
+       ///
+       XHTMLStream & operator<<(html::StartTag const &);
        ///
-       XHTMLStream & operator<<(EndTag const &);
+       XHTMLStream & operator<<(html::EndTag const &);
        ///
-       XHTMLStream & operator<<(CompTag const &);
+       XHTMLStream & operator<<(html::CompTag const &);
        /// A trivial struct that functions as a stream modifier.
        /// << NextRaw() causes the next string-like thing sent to the
        /// stream not to be escaped.
@@ -124,9 +132,9 @@ private:
        ///
        // int tab_;
        ///
-       typedef std::deque<StartTag> TagDeque;
+       typedef std::deque<html::StartTag> TagDeque;
        ///
-       typedef std::vector<StartTag> TagStack;
+       typedef std::vector<html::StartTag> TagStack;
        /// holds start tags until we know there is content in them.
        TagDeque pending_tags_;
        /// remembers the history, so we can make sure we nest properly.
@@ -156,13 +164,7 @@ std::string htmlize(std::string const & str);
 /// 
 std::string cleanAttr(std::string const & str);
 
-// to be removed
-/// \return true if tag was opened, false if not 
-bool openTag(odocstream & os, std::string const & tag, 
-                                                std::string const & attr);
-/// \return true if tag was opened, false if not 
-bool closeTag(odocstream & os, std::string const & tag);
-}
+} // namespace html
 } // namespace lyx
 
 #endif