X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyxfind.h;h=8a82caac878c06251190ea40caf07f6f871aa56f;hb=e2cd4d4c44f7c604a45dd9de9c9ade0d7c09eefc;hp=03a70e3408ed4bae71047edb583e266bafbfb646;hpb=99d1627a471b92f403598d03dfc861ddc3c11be0;p=lyx.git diff --git a/src/lyxfind.h b/src/lyxfind.h index 03a70e3408..8a82caac87 100644 --- a/src/lyxfind.h +++ b/src/lyxfind.h @@ -1,58 +1,66 @@ // -*- C++ -*- +/** + * \file lyxfind.h + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author Lars Gullik Bjønnes + * \author John Levon + * \author Jürgen Vigna + * \author Alfredo Braunstein + * + * Full author contact details are available in file CREDITS. + */ + #ifndef LYXFIND_H #define LYXFIND_H -#include "LString.h" #include "support/types.h" +#include + class BufferView; +class FuncRequest; class LyXText; -namespace lyxfind { - -enum SearchResult { - // - SR_NOT_FOUND = 0, - // - SR_FOUND, - // - SR_FOUND_NOUPDATE -}; - +namespace lyx { +namespace find { -int LyXReplace(BufferView * bv, - string const &, 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 LyXFind(BufferView *, - 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 LyXFind(BufferView *, LyXText * text, - 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); - -} // end namespace LyXFind - + +} // namespace find +} // namespace lyx + #endif // LYXFIND_H