X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FText.h;h=72f8b89902350ecbbc6efca746e98a8d0ff7b8c8;hb=fb12b282f1300123c7f4c7f10525c29cb598e1fe;hp=0f8ba1c7f0a7bc1edbd3f99f72fe82dd8dd117c6;hpb=a97b6295c430edcc1f448cfb34bdbacf520b1c5a;p=lyx.git diff --git a/src/Text.h b/src/Text.h index 0f8ba1c7f0..72f8b89902 100644 --- a/src/Text.h +++ b/src/Text.h @@ -22,6 +22,7 @@ namespace lyx { class Buffer; class BufferParams; class BufferView; +class CompletionList; class CursorSlice; class DocIterator; class ErrorList; @@ -48,9 +49,9 @@ public: bool empty() const; /// - FontInfo getLayoutFont(Buffer const & buffer, pit_type pit) const; + FontInfo layoutFont(Buffer const & buffer, pit_type pit) const; /// - FontInfo getLabelFont(Buffer const & buffer, + FontInfo labelFont(Buffer const & buffer, Paragraph const & par) const; /** Set font of character at position \p pos in paragraph \p pit. * Must not be called if \p pos denotes an inset with text contents, @@ -127,17 +128,19 @@ public: Paragraph & getPar(pit_type pit) { return pars_[pit]; } // Returns the current font and depth as a message. /// FIXME: replace Cursor with DocIterator. - docstring currentState(Cursor & cur); + docstring currentState(Cursor const & cur) const; /** Find the word under \c from in the relative location * defined by \c word_location. * @param from return here the start of the word * @param to return here the end of the word */ - void getWord(CursorSlice & from, CursorSlice & to, word_location const); + void getWord(CursorSlice & from, CursorSlice & to, word_location const) const; /// just selects the word the cursor is in void selectWord(Cursor & cur, word_location loc); - + /// convenience function get the previous word or an empty string + docstring previousWord(CursorSlice const & sl) const; + /// what type of change operation to make enum ChangeOp { ACCEPT, @@ -190,6 +193,10 @@ public: bool cursorBackwardOneWord(Cursor & cur); /// bool cursorForwardOneWord(Cursor & cur); + /// + bool cursorVisLeftOneWord(Cursor & cur); + /// + bool cursorVisRightOneWord(Cursor & cur); /// Delete from cursor up to the end of the current or next word. void deleteWordForward(Cursor & cur); /// Delete from cursor to start of current or prior word. @@ -247,7 +254,7 @@ public: double spacing(Buffer const & buffer, Paragraph const & par) const; /// make a suggestion for a label /// FIXME: replace Cursor with DocIterator. - docstring getPossibleLabel(Cursor & cur) const; + docstring getPossibleLabel(Cursor const & cur) const; /// is this paragraph right-to-left? bool isRTL(Buffer const &, Paragraph const & par) const; @@ -282,6 +289,15 @@ public: /// void setMacrocontextPosition(DocIterator const & pos); + /// + bool completionSupported(Cursor const & cur) const; + /// + CompletionList const * createCompletionList(Cursor const & cur) const; + /// + bool insertCompletion(Cursor & cur, docstring const & s, bool /*finished*/); + /// + docstring completionPrefix(Cursor const & cur) const; + public: /// ParagraphList pars_; @@ -319,4 +335,4 @@ private: } // namespace lyx -#endif // LYXTEXT_H +#endif // TEXT_H