#include "support/types.h"
+#include <boost/assert.hpp>
+
#include <string>
class Buffer;
LyXFont const & outerfont, std::ostream &,
TexRow & texrow, OutputParams const &) const;
- ///
+ /// Writes to stream the content of the paragraph for linuxdoc
void simpleLinuxDocOnePar(Buffer const & buf,
std::ostream & os,
LyXFont const & outerfont,
OutputParams const & runparams,
lyx::depth_type depth) const;
- /// Get the id of the paragraph, usefull for docbook
- std::string getDocbookId() const;
+ /// Can we drop the standard paragraph wrapper?
+ bool Paragraph::emptyTag() const;
- ///
+ /// Get the id of the paragraph, usefull for docbook and linuxdoc
+ std::string getID(Buffer const & buf,
+ OutputParams const & runparams) const;
+
+ // Get the first word of a paragraph, return the position where it left
+ lyx::pos_type getFirstWord(Buffer const & buf,
+ std::ostream & os,
+ OutputParams const & runparams) const;
+
+ /// Checks if the paragraph contains only text and no inset or font change.
+ bool onlyText(Buffer const & buf, LyXFont const & outerfont,
+ lyx::pos_type initial) const;
+
+ /// Writes to stream the docbook representation
void simpleDocBookOnePar(Buffer const & buf,
std::ostream &,
- LyXFont const & outerfont,
OutputParams const & runparams,
- lyx::depth_type depth) const;
+ LyXFont const & outerfont,
+ lyx::pos_type initial = 0) const;
///
bool hasSameLayout(Paragraph const & par) const;
*/
lyx::pos_type getEndPosOfFontSpan(lyx::pos_type pos) const;
///
- value_type getChar(lyx::pos_type pos) const;
+ /// this is a bottleneck.
+ value_type getChar(lyx::pos_type pos) const
+ {
+ BOOST_ASSERT(pos >= 0);
+ BOOST_ASSERT(pos < int(text_.size()));
+ return text_[pos];
+ }
///
value_type getUChar(BufferParams const &, lyx::pos_type pos) const;
/// The position must already exist.
///
bool checkInsertChar(LyXFont &);
///
- void insertInset(lyx::pos_type pos, InsetBase * inset,
+ void insertInset(lyx::pos_type pos, InsetBase * inset,
Change change = Change(Change::INSERTED));
///
void insertInset(lyx::pos_type pos, InsetBase * inset,