*
* \author Lars Gullik Bjønnes
*
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
*/
#ifndef PARAGRAPH_FUNCS_H
#define PARAGRAPH_FUNCS_H
+#include "ParagraphList.h"
#include "support/types.h"
class Buffer;
class BufferParams;
-class Paragraph;
class TexRow;
+class LatexRunParams;
+class LyXLex;
+class InsetOld;
///
void breakParagraph(BufferParams const & bparams,
- Paragraph *,
+ ParagraphList & paragraphs,
+ ParagraphList::iterator par,
lyx::pos_type pos,
int flag);
///
void breakParagraphConservative(BufferParams const & bparams,
- Paragraph *,
+ ParagraphList & paragraphs,
+ ParagraphList::iterator par,
lyx::pos_type pos);
/**
* Append the next paragraph onto the tail of this one.
* Be careful, this doesent make any check at all.
*/
-void mergeParagraph(BufferParams const & bparams, Paragraph *);
+void mergeParagraph(BufferParams const & bparams,
+ ParagraphList & paragraphs,
+ ParagraphList::iterator par);
-#if 0
/// for the environments
-Paragraph * depthHook(Paragraph * par, Paragraph::depth_type depth);
+ParagraphList::iterator depthHook(ParagraphList::iterator pit,
+ ParagraphList const & plist,
+ Paragraph::depth_type depth);
-Paragraph * outerHook(Paragraph * par);
+ParagraphList::iterator outerHook(ParagraphList::iterator pit,
+ ParagraphList const & plist);
/// Is it the first par with same depth and layout?
-bool isFirstInSequence(Paragraph * par);
+bool isFirstInSequence(ParagraphList::iterator par,
+ ParagraphList const & plist);
/** Check if the current paragraph is the last paragraph in a
proof environment */
-int getEndLabel(Paragraph * para, BufferParams const & bparams);
-#endif
-
-Paragraph * TeXDeeper(Buffer const * buf,
- BufferParams const & bparams,
- Paragraph * pit,
- std::ostream & os, TexRow & texrow);
-
-Paragraph * TeXEnvironment(Buffer const * buf,
- BufferParams const & bparams,
- Paragraph * pit,
- std::ostream & os, TexRow & texrow);
-
-Paragraph * TeXOnePar(Buffer const * buf,
- BufferParams const & bparams,
- Paragraph * pit,
- std::ostream & os, TexRow & texrow,
- bool moving_arg);
+int getEndLabel(ParagraphList::iterator pit,
+ ParagraphList const & plist);
+
+
+void latexParagraphs(Buffer const & buf,
+ ParagraphList const & paragraphs,
+ std::ostream & ofs,
+ TexRow & texrow,
+ LatexRunParams const &,
+ string const & everypar = string());
+
+/// read a paragraph from a .lyx file. Returns number of unrecognised tokens
+int readParagraph(Buffer & buf, Paragraph & par, LyXLex & lex);
+
+LyXFont const outerFont(ParagraphList::iterator pit,
+ ParagraphList const & plist);
+
+/// find outermost paragraph containing an inset
+ParagraphList::iterator outerPar(Buffer const & buf, InsetOld const * inset);
+
+/// find owning paragraph containing an inset
+Paragraph const & ownerPar(Buffer const & buf, InsetOld const * inset);
+
#endif // PARAGRAPH_FUNCS_H