]> git.lyx.org Git - lyx.git/blobdiff - src/paragraph_funcs.h
Fix layout bug. Pasting text into a cell tried to set Standard layout, because
[lyx.git] / src / paragraph_funcs.h
index 412c7aab1c28f62c54d03d7f97b819acb8067de0..bf7a6429fea07885c218203e509a83dc16ec6b14 100644 (file)
 
 #include "support/types.h"
 
+
+namespace lyx {
+
 class Buffer;
 class BufferParams;
-class InsetBase;
-class LyXFont;
+class Inset;
+class Font;
 class Paragraph;
 class ParagraphList;
 
-
-///
+/**
+ * This breaks a paragraph at the specified position.
+ * The new paragraph will:
+ * - Decrease depth by one (or change layout to default layout) when
+ *    keep_layout == false  
+ * - keep current depth and layout when keep_layout == true
+ */
 void breakParagraph(BufferParams const & bparams,
                    ParagraphList & paragraphs,
-                   lyx::par_type par,
-                   lyx::pos_type pos,
-                   int flag);
+                   pit_type par,
+                   pos_type pos,
+                   bool keep_layout);
 
 ///
 void breakParagraphConservative(BufferParams const & bparams,
                                ParagraphList & paragraphs,
-                               lyx::par_type 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, lyx::par_type par);
+       ParagraphList & paragraphs, pit_type par);
 
 
 /// for the environments
-lyx::par_type depthHook(lyx::par_type par,
-       ParagraphList const & plist, lyx::depth_type depth);
+pit_type depthHook(pit_type par,
+       ParagraphList const & plist, depth_type depth);
 
-lyx::par_type outerHook(lyx::par_type par, ParagraphList const & plist);
+pit_type outerHook(pit_type par, ParagraphList const & plist);
 
 /// Is it the first par with same depth and layout?
-bool isFirstInSequence(lyx::par_type par, ParagraphList const & plist);
+bool isFirstInSequence(pit_type par, ParagraphList const & plist);
 
 /** Check if the current paragraph is the last paragraph in a
     proof environment */
-int getEndLabel(lyx::par_type par, ParagraphList const & plist);
-
-LyXFont const outerFont(lyx::par_type par, ParagraphList const & plist);
+int getEndLabel(pit_type par, ParagraphList const & plist);
 
-/// find outermost paragraph containing an inset
-lyx::par_type outerPar(Buffer const & buf, InsetBase const * inset);
+/**
+ * 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.
+ */
+Font const outerFont(pit_type par_offset, ParagraphList const & pars);
 
-/// return the range of pars [beg, end[ owning the range of y [ystart, yend]
-void getParsInRange(ParagraphList & plist,
-                               int ystart, int yend,
-                               lyx::par_type & beg,
-                               lyx::par_type & end);
+/// accept the changes within the complete ParagraphList
+void acceptChanges(ParagraphList & pars, BufferParams const & bparams);
 
-/// return the number of InsetOptArg in a paragraph
-int numberOfOptArgs(Paragraph const & par);
 
+} // namespace lyx
 
 #endif // PARAGRAPH_FUNCS_H