X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fparagraph_funcs.h;h=3593a65d24b2e9be8a1c3646eb5a8801c7e40bff;hb=ef1a53c4929133e2d261a78a62cbbd87a687ca14;hp=0b1284962c5f94f4a0b8f39d96b12bdd12268521;hpb=1eaa3eb913b16f4e6f5991b9c53b0b9ab3f84948;p=lyx.git diff --git a/src/paragraph_funcs.h b/src/paragraph_funcs.h index 0b1284962c..3593a65d24 100644 --- a/src/paragraph_funcs.h +++ b/src/paragraph_funcs.h @@ -12,75 +12,70 @@ #ifndef PARAGRAPH_FUNCS_H #define PARAGRAPH_FUNCS_H -#include "ParagraphList_fwd.h" #include "support/types.h" -#include +namespace lyx { class Buffer; class BufferParams; -class LyXFont; -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 -ParagraphList::iterator depthHook(ParagraphList::iterator pit, - ParagraphList const & plist, - lyx::depth_type depth); +pit_type depthHook(pit_type par, + ParagraphList const & plist, depth_type depth); -ParagraphList::iterator outerHook(ParagraphList::iterator pit, - ParagraphList const & plist); +pit_type outerHook(pit_type par, ParagraphList const & plist); /// Is it the first par with same depth and layout? -bool isFirstInSequence(ParagraphList::iterator 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(ParagraphList::iterator pit, - ParagraphList const & plist); +int getEndLabel(pit_type par, ParagraphList const & plist); -/// read a paragraph from a .lyx file. Returns number of unrecognised tokens -int readParagraph(Buffer const & 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, InsetBase const * inset); - -/// find owning paragraph containing an inset -Paragraph const & ownerPar(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. + */ +LyXFont 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 & pl, - int ystart, int yend, - ParagraphList::iterator & beg, - ParagraphList::iterator & end); +/// return the number of InsetOptArg in a paragraph +int numberOfOptArgs(Paragraph const & par); +} // namespace lyx #endif // PARAGRAPH_FUNCS_H