X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyxfind.h;h=781411ce966dccd03b44fc719b5fd1b0ab3e37b7;hb=7800c057884f6a950bb21bce351968f50679f18c;hp=da632bf1a3df9e428baf6d185160fe941273f1bb;hpb=7500590c89fd0fb4e90844300fb1f5f6ce46339a;p=lyx.git diff --git a/src/lyxfind.h b/src/lyxfind.h index da632bf1a3..781411ce96 100644 --- a/src/lyxfind.h +++ b/src/lyxfind.h @@ -26,6 +26,7 @@ namespace lyx { class Buffer; +class Cursor; class BufferView; class DocIterator; class FuncRequest; @@ -48,7 +49,8 @@ docstring const replace2string(docstring const & replace, bool casesensitive, bool matchword, bool all, - bool forward); + bool forward, + bool findnext = true); /** Parse the string encoding of the find request that is found in * \c ev.argument and act on it. @@ -71,9 +73,9 @@ bool findNextChange(BufferView * bv); /// find the previous change in the buffer bool findPreviousChange(BufferView * bv); -/// find the change in the buffer -/// \param next true to find the next change, otherwise the previous -bool findChange(BufferView * bv, bool next); +/// select change under the cursor +bool selectChange(Cursor & cur, bool forward = true); + class FindAndReplaceOptions { public: @@ -83,6 +85,10 @@ public: S_OPEN_BUFFERS, S_ALL_MANUALS } SearchScope; + typedef enum { + R_EVERYTHING, + R_ONLY_MATHS + } SearchRestriction; FindAndReplaceOptions( docstring const & find_buf_name, bool casesensitive, @@ -92,9 +98,11 @@ public: bool ignoreformat, docstring const & repl_buf_name, bool keep_case, - SearchScope scope = S_BUFFER + SearchScope scope = S_BUFFER, + SearchRestriction restr = R_EVERYTHING ); - FindAndReplaceOptions() { } + FindAndReplaceOptions() : casesensitive(false), matchword(false), forward(false), + expandmacros(false), ignoreformat(false) {} docstring find_buf_name; bool casesensitive; bool matchword; @@ -105,6 +113,7 @@ public: docstring repl_buf_name; bool keep_case; SearchScope scope; + SearchRestriction restr; }; /// Write a FindAdvOptions instance to a stringstream