/// create the cursor of a BufferView
explicit Cursor(BufferView & bv);
+ /// returns true if we made a decision
+ bool getStatus(FuncRequest const & cmd, FuncStatus & flag) const;
/// dispatch from innermost inset upwards
void dispatch(FuncRequest const & cmd);
/// get the resut of the last dispatch
void leaveInset(Inset const & inset);
/// sets cursor part
void setCursor(DocIterator const & it);
+ /// sets the cursor to the anchor
+ void setCursorToAnchor();
///
void setCurrentFont();
void resetAnchor();
/// access to owning BufferView
BufferView & bv() const;
- /// access to owning Buffer
- Buffer & buffer() 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();
- /// reset cursor bottom to the beginning of the given inset
+ /// reset cursor bottom to the beginning of the top inset
// (sort of 'chroot' environment...)
- void reset(Inset &);
+ void reset();
/// for spellchecking
void replaceWord(std::string const & replacestring);
/**
/// move the cursor up by sending an internal LFUN_DOWN,
/// return true if fullscreen update is needed
bool down();
+ /// whether the cursor is either at the first or last row
+ bool atFirstOrLastRow(bool up);
/// 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