+ /// return the inline completion postfix.
+ docstring const & inlineCompletion() const;
+ /// return the number of unique characters in the inline completion.
+ size_t const & inlineCompletionUniqueChars() const;
+ /// return the position in the buffer of the inline completion postfix.
+ DocIterator const & inlineCompletionPos() const;
+ /// make sure inline completion position is OK
+ void resetInlineCompletionPos();
+ /// set the inline completion postfix and its position in the buffer.
+ /// Updates the updateFlags in \c cur.
+ void setInlineCompletion(Cursor const & cur, DocIterator const & pos,
+ docstring const & completion, size_t uniqueChars = 0);
+
+ /// translate and insert a character, using the correct keymap.
+ void translateAndInsert(char_type c, Text * t, Cursor & cur);
+
+ /// \return true if we've made a decision
+ bool getStatus(FuncRequest const & cmd, FuncStatus & flag);
+ /// execute the given function.
+ void dispatch(FuncRequest const & cmd, DispatchResult & dr);
+
+ /// request an X11 selection.
+ /// \return the selected string.
+ docstring const requestSelection();
+ /// clear the X11 selection.
+ void clearSelection();
+
+ /// resize the BufferView.
+ /// \sa WorkArea
+ void resize(int width, int height);
+
+ /// dispatch method helper for \c WorkArea
+ /// \sa WorkArea
+ void mouseEventDispatch(FuncRequest const & ev);
+
+ /// access to anchor.
+ pit_type anchor_ref() const;
+
+ ///
+ CursorStatus cursorStatus(DocIterator const & dit) const;
+ /// access to full cursor.
+ Cursor & cursor();
+ /// access to full cursor.
+ Cursor const & cursor() const;
+ /// sets cursor.
+ /// This will also open all relevant collapsable insets.
+ void setCursor(DocIterator const &);
+ /// Check deleteEmptyParagraphMechanism and update metrics if needed.
+ /// \retval true if an update was needed.
+ bool checkDepm(Cursor & cur, Cursor & old);
+ /// sets cursor.
+ /// This is used when handling LFUN_MOUSE_PRESS.
+ bool mouseSetCursor(Cursor & cur, bool select = false);
+
+ /// sets the selection.
+ /* When \c backwards == false, set anchor
+ * to \c cur and cursor to \c cur + \c length. When \c
+ * backwards == true, set anchor to \c cur and cursor to \c
+ * cur + \c length.
+ */
+ void putSelectionAt(DocIterator const & cur,
+ int length, bool backwards);
+
+ /// selects the item at cursor if its paragraph is empty.
+ bool selectIfEmpty(DocIterator & cur);