X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fbufferview_funcs.h;h=c2268f8a29bed3732f1c70c5ea309a1a4e12d1e3;hb=d2574b7d8e2716d3d3aea92df6576bd01c421a6c;hp=2514ec737f7a1e75c6a7d18c3393a325e5efa8e8;hpb=4bcfc43c2958ef6dd083210ed25db4eb5a290a87;p=lyx.git diff --git a/src/bufferview_funcs.h b/src/bufferview_funcs.h index 2514ec737f..c2268f8a29 100644 --- a/src/bufferview_funcs.h +++ b/src/bufferview_funcs.h @@ -15,40 +15,61 @@ #define BUFFERVIEW_FUNCS_H #include +#include +namespace lyx { +class Point; class BufferView; -class LCursor; +class DocIterator; +class InsetBase_code; class LyXFont; -class LyXText; -class PosIterator; - namespace bv_funcs { -/** Set \param data using \param font and \param toggle. - * If successful, returns true. - */ +/// Set \param data using \param font and \param toggle. Return success. bool font2string(LyXFont const & font, bool toggle, std::string & data); -/** Set \param font and \param toggle using \param data. - * If successful, returns true. - */ + +/// Set \param font and \param toggle using \param data. Return success. bool string2font(std::string const & data, LyXFont & font, bool & toggle); + /** Returns the current freefont, encoded as a std::string to be passed to the * frontends. */ std::string const freefont2string(); +Point getPos(BufferView const & bv, DocIterator const & dit, bool boundary); -/// what type of depth change to make -enum DEPTH_CHANGE { - INC_DEPTH, - DEC_DEPTH +enum CurStatus { + CUR_INSIDE, + CUR_ABOVE, + CUR_BELOW }; -/// Returns whether something would be changed by changeDepth -bool changeDepthAllowed(LCursor & cur, LyXText * text, DEPTH_CHANGE); -}; // namespace bv_funcs +CurStatus status(BufferView const * bv, DocIterator const & dit); + + +Point coordOffset(BufferView const & bv, DocIterator const & dit, bool boundary); + +/// Moves cursor to the next inset with one of the given codes. +void gotoInset(BufferView * bv, std::vector const & codes, + bool same_content); + +/// Moves cursor to the next inset with given code. +void gotoInset(BufferView * bv, InsetBase_code code, bool same_content); + +/// Looks for next inset with one of the the given code +bool findInset(DocIterator & dit, std::vector const & codes, + bool same_content); + +/// Looks for next inset with the given code +void findInset(DocIterator & dit, InsetBase_code code, bool same_content); + + +} // namespace bv_funcs + + +} // namespace lyx #endif