#include "support/types.h"
#include "changes.h"
+#include "ParagraphList.h"
#include "LString.h"
class BufferParams;
/// A Paragraph holds all text, attributes and insets in a text paragraph
class Paragraph {
public:
+ // Remove this whan ParagraphList transition is over. (Lgb)
+ friend class ParagraphList;
+ friend class ParagraphList::iterator;
+
///
enum META_KIND {
/// Note that this is 1 right now to avoid
/// return the unique ID of this paragraph
int id() const;
- ///
- void read();
///
int startTeXParParams(BufferParams const &, std::ostream &, bool) const;
///
bool simpleTeXOnePar(Buffer const *, BufferParams const &,
- std::ostream &, TexRow & texrow, bool moving_arg);
+ LyXFont const & outerfont, std::ostream &,
+ TexRow & texrow, bool moving_arg);
///
- bool hasSameLayout(Paragraph const * par) const;
+ bool hasSameLayout(Paragraph const & par) const;
///
- void makeSameLayout(Paragraph const * par);
+ void makeSameLayout(Paragraph const & par);
- /// Is it the first par with same depth and layout?
- bool isFirstInSequence() const;
-
- /** Check if the current paragraph is the last paragraph in a
- proof environment */
- int getEndLabel() const;
///
Inset * inInset() const;
///
///
bool empty() const;
///
- void setContentsFromPar(Paragraph * par);
+ void setContentsFromPar(Paragraph const & par);
///
void clearContents();
/// mark whole par as erased
void markErased();
- /// for the environments
- Paragraph * depthHook(depth_type depth);
- /// for the environments
- Paragraph const * depthHook(depth_type depth) const;
- ///
- Paragraph * outerHook();
- ///
- Paragraph const * outerHook() const;
-
/// Paragraphs can contain "manual labels", for example, Description environment.
/// The text for this user-editable label is stored in the paragraph alongside
/// the text of the rest of the paragraph (the body). This function returns
void eraseIntern(lyx::pos_type pos);
/// erase the char at the given position
void erase(lyx::pos_type pos);
- /// erase the given range. Returns true if actually erased.
- bool erase(lyx::pos_type start, lyx::pos_type end);
+ /// erase the given range. Returns the number of chars actually erased
+ int erase(lyx::pos_type start, lyx::pos_type end);
/** Get uninstantiated font setting. Returns the difference
between the characters font and the layoutfont.
attributes with values LyXFont::INHERIT, LyXFont::IGNORE or
LyXFont::TOGGLE.
*/
- LyXFont const getFont(BufferParams const &, lyx::pos_type pos) const;
- LyXFont const getLayoutFont(BufferParams const &) const;
- LyXFont const getLabelFont(BufferParams const &) const;
+ LyXFont const getFont(BufferParams const &, lyx::pos_type pos,
+ LyXFont const & outerfont) const;
+ LyXFont const getLayoutFont(BufferParams const &,
+ LyXFont const & outerfont) const;
+ LyXFont const getLabelFont(BufferParams const &,
+ LyXFont const & outerfont) const;
///
value_type getChar(lyx::pos_type pos) const;
///
Paragraph * next_;
///
Paragraph * previous_;
+#else
+ Paragraph * next_par_;
+ Paragraph * prev_par_;
#endif
struct Pimpl;
///
friend struct Paragraph::Pimpl;
///
Pimpl * pimpl_;
+
+ /// unimplemented
+ void operator=(Paragraph const &);
};