* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
// The public inheritance should go in favour of a suitable data member
// (or maybe private inheritance) at some point of time.
// The public inheritance should go in favour of a suitable data member
// (or maybe private inheritance) at some point of time.
/// dispatch from innermost inset upwards
void dispatch(FuncRequest const & cmd);
/// get the resut of the last dispatch
/// dispatch from innermost inset upwards
void dispatch(FuncRequest const & cmd);
/// get the resut of the last dispatch
/// do we have a multicell selection?
bool selIsMultiCell() const
{ return selection_ && selBegin().idx() != selEnd().idx(); }
/// do we have a multiline selection?
bool selIsMultiLine() const
{ return selection_ && selBegin().pit() != selEnd().pit(); }
/// do we have a multicell selection?
bool selIsMultiCell() const
{ return selection_ && selBegin().idx() != selEnd().idx(); }
/// do we have a multiline selection?
bool selIsMultiLine() const
{ return selection_ && selBegin().pit() != selEnd().pit(); }
/// did we place the anchor?
bool mark() const { return mark_; }
/// did we place the anchor?
/// did we place the anchor?
bool mark() const { return mark_; }
/// did we place the anchor?
DocIterator selectionBegin() const;
/// access start of selection
DocIterator selectionEnd() const;
DocIterator selectionBegin() const;
/// access start of selection
DocIterator selectionEnd() const;
/// get some interesting description of top position
void info(odocstream & os) const;
/// are we in math mode (2), text mode (1) or unsure (0)?
int currentMode();
/// get some interesting description of top position
void info(odocstream & os) const;
/// are we in math mode (2), text mode (1) or unsure (0)?
int currentMode();
/// If true, we are behind the previous char, otherwise we are in front
// of the next char. This only make a difference when we are in front
// of a big inset spanning a whole row and computing coordinates for
/// If true, we are behind the previous char, otherwise we are in front
// of the next char. This only make a difference when we are in front
// of a big inset spanning a whole row and computing coordinates for
/// move the cursor up by sending an internal LFUN_DOWN,
/// return true if fullscreen update is needed
bool down();
/// move the cursor up by sending an internal LFUN_DOWN,
/// return true if fullscreen update is needed
bool down();
/// move up/down in a text inset, called for LFUN_UP/DOWN,
/// return true if successful, updateNeeded set to true if fullscreen
/// update is needed, otherwise it's not touched
/// move up/down in a text inset, called for LFUN_UP/DOWN,
/// return true if successful, updateNeeded set to true if fullscreen
/// update is needed, otherwise it's not touched
/// in pixels from top of screen
void setScreenPos(int x, int y);
/// in pixels from top of screen
void setScreenPos(int x, int y);
- * Notifies all insets which appear in old, but not in cur. Make
- * Sure that the cursor old is valid, i.e. all inset pointers
+ * Notifies all insets which appear in old, but not in cur. And then
+ * notify all insets which appear in cur, but not in old.
+ * Make sure that the cursor old is valid, i.e. all inset pointers