DocIterator selectionBegin() const;
/// access start of selection
DocIterator selectionEnd() const;
- ///
+ /// FIXME: document this
bool selHandle(bool selecting);
- //
+ ///
docstring selectionAsString(bool label) const;
///
docstring currentState();
///
DispatchResult disp_;
+ ///
+ DocIterator const & beforeDispatchCursor() { return beforeDispatchCursor_; }
private:
/**
/// y position before dispatch started
int beforeDispY_;
/// position before dispatch started
- size_t beforeDispDepth_;
-
+ DocIterator beforeDispatchCursor_;
+
private:
//
bool isInside(Inset const *);
/// make sure cursor position is valid
+ /// FIXME: It does a subset of fixIfBroken. Maybe merge them?
void normalize();
/// mark current cursor trace for redraw
void touch();
};
+/**
+ * Notifies all insets which appear in old, but not in cur. Make
+ * Sure that the cursor old is valid, i.e. als inset pointer
+ * point to valid insets! Use Cursor::fixIfBroken if necessary.
+ */
+bool notifyCursorLeaves(DocIterator const & old, Cursor & cur);
+
} // namespace lyx