]> git.lyx.org Git - lyx.git/blobdiff - src/paragraph_funcs.h
continue spellchecking after "replace all"
[lyx.git] / src / paragraph_funcs.h
index c02a33006cb96adc9cf2e39df9f5891842ed9de4..067ba94ba1e115c76ada49bd422638d34413e2b6 100644 (file)
@@ -1,54 +1,87 @@
 // -*- C++ -*-
-/* This file is part of
- * ======================================================
+/**
+ * \file paragraph_funcs.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
- *           LyX, The Document Processor
+ * \author Lars Gullik Bjønnes
  *
- *           Copyright 1995 Matthias Ettrich
- *           Copyright 1995-2001 The LyX Team.
- *
- * ====================================================== */
+ * 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/strfwd.h"
 #include "support/types.h"
 
+
+namespace lyx {
+
+class Buffer;
 class BufferParams;
+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,
-                   Paragraph *,
-                   lyx::pos_type pos,
-                   int flag);
+                   ParagraphList & paragraphs,
+                   pit_type par,
+                   pos_type pos,
+                   bool keep_layout);
 
 ///
 void breakParagraphConservative(BufferParams const & bparams,
-                               Paragraph *,
-                               lyx::pos_type pos);
+                               ParagraphList & paragraphs,
+                               pit_type par,
+                               pos_type pos);
 
-/** Paste this paragraph with the next one.
-    Be carefull, this doesent make any check at all.
-*/
-void pasteParagraph(BufferParams const & bparams,
-                   Paragraph *);
+/**
+ * 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, pit_type par);
 
 
-#if 0
 /// 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);
+
+/** Set Label Width string to all paragraphs of the same layout
+    and depth in a sequence */
+void setLabelWidthStringToSequence(pit_type par_offset,
+       ParagraphList & pars, docstring const & s);
 
 /** Check if the current paragraph is the last paragraph in a
     proof environment */
-int getEndLabel(Paragraph * para, BufferParams const & bparams);
-#endif
+int getEndLabel(pit_type par, ParagraphList const & plist);
+
+/**
+ * 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);
+
+/// accept the changes within the complete ParagraphList
+void acceptChanges(ParagraphList & pars, BufferParams const & bparams);
+
+/// return true if the whole ParagraphList is deleted
+bool isFullyDeleted(ParagraphList const & pars);
+
+} // namespace lyx
 
-#endif
+#endif // PARAGRAPH_FUNCS_H