#include <iosfwd>
+
+namespace lyx {
+
class Buffer;
class BufferParams;
class BufferView;
class CursorSlice;
class Dimension;
+class ErrorList;
class InsetBase;
class InsetBase_code;
class FuncRequest;
/// This class encapsulates the main text data and operations in LyX
class LyXText {
public:
- ///
- typedef lyx::pos_type pos_type;
- ///
- typedef lyx::pit_type pit_type;
-
/// constructor
explicit LyXText(BufferView *);
///
std::string getStringToIndex(LCursor const & cur);
/// insert a character at cursor position
- void insertChar(LCursor & cur, char c);
+ void insertChar(LCursor & cur, char_type c);
/// insert an inset at cursor position
void insertInset(LCursor & cur, InsetBase * inset);
* @param from return here the start of the word
* @param to return here the end of the word
*/
- void getWord(CursorSlice & from, CursorSlice & to, lyx::word_location const);
+ void getWord(CursorSlice & from, CursorSlice & to, word_location const);
/// just selects the word the cursor is in
- void selectWord(LCursor & cur, lyx::word_location loc);
+ void selectWord(LCursor & cur, word_location loc);
/// accept selected change
void acceptChange(LCursor & cur);
bool backspacePos0(LCursor & cur);
/// Delete character before cursor. Honour CT
bool backspace(LCursor & cur);
+ // Dissolve the inset under cursor
+ bool dissolveInset(LCursor & cur);
///
- bool selectWordWhenUnderCursor(LCursor & cur, lyx::word_location);
+ bool selectWordWhenUnderCursor(LCursor & cur, word_location);
///
enum TextCase {
///
/* these things are for search and replace */
/// needed to insert the selection
- void insertStringAsLines(LCursor & cur, std::string const & str);
+ void insertStringAsLines(LCursor & cur, docstring const & str);
/// needed to insert the selection
- void insertStringAsParagraphs(LCursor & cur, std::string const & str);
+ void insertStringAsParagraphs(LCursor & cur, docstring const & str);
/// current text width
int width() const;
int singleWidth(Paragraph const & par, pos_type pos) const;
///
int singleWidth(Paragraph const & par,
- pos_type pos, char c, LyXFont const & Font) const;
+ pos_type pos, char_type c, LyXFont const & Font) const;
/// return the color of the canvas
LColor_color backgroundColor() const;
///
void write(Buffer const & buf, std::ostream & os) const;
/// returns whether we've seen our usual 'end' marker
- bool read(Buffer const & buf, LyXLex & lex);
+ bool read(Buffer const & buf, LyXLex & lex, ErrorList & errorList);
///
int ascent() const;
/// delete double space or empty paragraphs around old cursor
bool deleteEmptyParagraphMechanism(LCursor & cur, LCursor & old);
- ///
- friend class LyXScreen;
-
public:
///
Dimension dim_;
/// return the default height of a row in pixels, considering font zoom
int defaultRowHeight();
+
+} // namespace lyx
+
#endif // LYXTEXT_H