// -*- 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
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
#ifndef LYXFIND_H
#define LYXFIND_H
-#ifdef __GNUG__
-#pragma interface
-#endif
+#include "support/types.h"
-#include "LString.h"
+#include <string>
class BufferView;
class LyXText;
-namespace lyxfind {
+namespace lyx {
+namespace find {
enum SearchResult {
//
};
-int LyXReplace(BufferView * bv,
- string const &, string const &,
+int replace(BufferView * bv,
+ std::string const &, std::string const &,
bool, bool = true, bool = false,
bool = false, bool = false);
* text from the actual cursor position in whatever direction
* we want to go. This does also update the screen.
*/
-bool LyXFind(BufferView *,
- string const & searchstr, bool forward,
+bool find(BufferView *,
+ std::string const & searchstr, bool forward,
bool casesens = true, bool matchwrd = false);
/**
* returning to the calling function.
*/
-SearchResult LyXFind(BufferView *, LyXText * text,
- string const & searchstr, bool forward,
+SearchResult find(BufferView *, LyXText * text,
+ std::string const & searchstr, bool forward,
bool casesens = true, bool matchwrd = false);
-} // end namespace LyXFind
-#endif
+/// 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