X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fparagraph_funcs.h;h=5ae3ad555410afe7d208914249bb7bd3c5d371ff;hb=4ba4d701f798488c098ecbc740c3020ed514cd96;hp=c9322a56093fe947bd4aad44123c61787f13a320;hpb=e2ab5aa8e17ad1ecba32485acf9e9a08d38e9ee1;p=lyx.git diff --git a/src/paragraph_funcs.h b/src/paragraph_funcs.h index c9322a5609..5ae3ad5554 100644 --- a/src/paragraph_funcs.h +++ b/src/paragraph_funcs.h @@ -1,52 +1,81 @@ // -*- 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 "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: + * 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, - Paragraph *, - lyx::pos_type pos, + ParagraphList & paragraphs, + pit_type par, + pos_type pos, int flag); /// 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); /** 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); + +/// return the number of InsetOptArg in a paragraph +int numberOfOptArgs(Paragraph const & par); + + +} // namespace lyx -#endif +#endif // PARAGRAPH_FUNCS_H