X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyxfind.h;h=0e4887bf3f6c005d6b36d9b8d367dc86ef5d3841;hb=35204f8f33d7400a5fefeffea533fb4cb4097211;hp=93b167efec7666c454c4dcb4775e84a5e2e315f1;hpb=44cd0fc9a1687cc63911c7f98d978594458e7813;p=lyx.git diff --git a/src/lyxfind.h b/src/lyxfind.h index 93b167efec..0e4887bf3f 100644 --- a/src/lyxfind.h +++ b/src/lyxfind.h @@ -7,6 +7,7 @@ * \author Lars Gullik Bjønnes * \author John Levon * \author Jürgen Vigna + * \author Alfredo Braunstein * * Full author contact details are available in file CREDITS. */ @@ -16,56 +17,48 @@ #include "support/types.h" -class BufferView; -class LyXText; +#include namespace lyx { -namespace find { - -enum SearchResult { - // - SR_NOT_FOUND = 0, - // - SR_FOUND, - // - SR_FOUND_NOUPDATE -}; +class BufferView; +class FuncRequest; +class LyXText; -int replace(BufferView * bv, - std::string const &, std::string const &, - bool, bool = true, bool = false, - bool = false, bool = false); +/** Encode the parameters needed to find \c search as a string + * that can be dispatched to the LyX core in a FuncRequest wrapper. + */ +std::string const find2string(std::string const & search, + bool casesensitive, + bool matchword, + bool forward); -/** - * This function is called as a general interface to find some - * text from the actual cursor position in whatever direction - * we want to go. This does also update the screen. +/** Encode the parameters needed to replace \c search with \c replace + * as a string that can be dispatched to the LyX core in a FuncRequest + * wrapper. */ -bool find(BufferView *, - std::string const & searchstr, bool forward, - bool casesens = true, bool matchwrd = false); +std::string const replace2string(std::string const & search, + std::string const & replace, + bool casesensitive, + bool matchword, + bool all, + bool forward); -/** - * This function does search from the cursor position inside the - * passed LyXText parameter and regards this LyXText as the root - * LyXText. It will NOT update any screen stuff. It will however - * set the cursor to the new position inside LyXText, before - * returning to the calling function. +/** Parse the string encoding of the find request that is found in + * \c ev.argument and act on it. + * The string is encoded by \c find2string. */ +void find(BufferView * bv, FuncRequest const & ev); -SearchResult find(BufferView *, LyXText * text, - std::string const & searchstr, bool forward, - bool casesens = true, bool matchwrd = false); +/** Parse the string encoding of the replace request that is found in + * \c ev.argument and act on it. + * The string is encoded by \c replace2string. + */ +void replace(BufferView * bv, FuncRequest const &); /// find the next change in the buffer bool findNextChange(BufferView * bv); -SearchResult findNextChange(BufferView * bv, LyXText * text, lyx::pos_type & length); - -SearchResult nextChange(BufferView * bv, LyXText * text, lyx::pos_type & length); - -} // namespace find } // namespace lyx #endif // LYXFIND_H