]> git.lyx.org Git - lyx.git/blobdiff - src/paragraph_funcs.h
merge LyXTabular.{cpp,h} and insets/InsetTabular.{cpp,h}. More reorganization necessa...
[lyx.git] / src / paragraph_funcs.h
index ca8c312b10395fef7028bdb98cd4717fb825e9e4..3593a65d24b2e9be8a1c3646eb5a8801c7e40bff 100644 (file)
@@ -6,71 +6,76 @@
  *
  * \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 "paragraph.h"
 #include "support/types.h"
 
+
+namespace lyx {
+
 class Buffer;
 class BufferParams;
-class TexRow;
-class LyXLex;
+class InsetBase;
+class LyXFont;
+class Paragraph;
+class ParagraphList;
 
-///
+/**
+ * This breaks a paragraph at the specified position.
+ * The new paragraph will:
+ * get the default layout, when flag == 0
+ * will inherit the existing one, except for depth, when flag == 1
+ * will inherit the existing one, including depth, when flag == 2
+ * Be aware that the old or new paragraph does not contain any rows
+ * after this.
+ */
 void breakParagraph(BufferParams const & bparams,
                    ParagraphList & paragraphs,
-                   ParagraphList::iterator par,
-                   lyx::pos_type pos,
+                   pit_type par,
+                   pos_type pos,
                    int flag);
 
 ///
 void breakParagraphConservative(BufferParams const & bparams,
                                ParagraphList & paragraphs,
-                               ParagraphList::iterator par,
-                               lyx::pos_type pos);
+                               pit_type par,
+                               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,
-                   ParagraphList & paragraphs,
-                   ParagraphList::iterator par);
+       ParagraphList & paragraphs, pit_type par);
+
 
 /// for the environments
-Paragraph * depthHook(Paragraph * par, Paragraph::depth_type depth);
+pit_type depthHook(pit_type par,
+       ParagraphList const & plist, depth_type depth);
 
-Paragraph * outerHook(Paragraph * par);
+pit_type outerHook(pit_type par, ParagraphList const & plist);
 
 /// Is it the first par with same depth and layout?
-bool isFirstInSequence(Paragraph * par);
+bool isFirstInSequence(pit_type par, ParagraphList const & plist);
 
 /** Check if the current paragraph is the last paragraph in a
     proof environment */
-int getEndLabel(Paragraph * para);
-
+int getEndLabel(pit_type par, ParagraphList const & plist);
 
-void latexParagraphs(Buffer const * buf,
-                    ParagraphList const & paragraphs,
-                    ParagraphList::iterator par,
-                    ParagraphList::iterator endpar,
-                    std::ostream & ofs,
-                    TexRow & texrow,
-                    bool moving_arg = false);
+/**
+ * Get the font of the "environment" of paragraph \p par_offset in \p pars.
+ * All font changes of the paragraph are relative to this font.
+ */
+LyXFont const outerFont(pit_type par_offset, ParagraphList const & pars);
 
-/// read a paragraph from a .lyx file. Returns number of unrecognised tokens
-int readParagraph(Buffer & buf, Paragraph & par, LyXLex & lex);
+/// return the number of InsetOptArg in a paragraph
+int numberOfOptArgs(Paragraph const & par);
 
-LyXFont const realizeFont(LyXFont const & font,
-                         BufferParams const & params,
-                         ParagraphList::iterator pit,
-                         bool outerhook = true);
 
-LyXFont const outerFont(ParagraphList::iterator pit);
+} // namespace lyx
 
 #endif // PARAGRAPH_FUNCS_H