-// -*- C++ -*-
/* This file is part of
* ======================================================
*
#include "lyxfind.h"
#include "debug.h"
#include "gettext.h"
+#include "BufferView.h"
+#include "support/lstrings.h"
using Liason::setMinibuffer;
using SigC::slot;
ControlSearch::ControlSearch(LyXView & lv, Dialogs & d)
- : ControlDialog<ControlConnectBD>(lv, d)
+ : ControlDialogBD(lv, d)
{
d_.showSearch.connect(SigC::slot(this, &ControlSearch::show));
void ControlSearch::find(string const & search,
bool casesensitive, bool matchword, bool forward) const
{
- bool const found = LyXFind(lv_.view(), search, casesensitive,
- matchword, forward);
+ bool const found = LyXFind(lv_.view(), search,
+ forward, false, casesensitive, matchword);
if (!found)
setMinibuffer(&lv_, _("String not found!"));
void ControlSearch::replace(string const & search, string const & replace,
bool casesensitive, bool matchword, bool all) const
{
+ // If not replacing all instances of the word, then do not
+ // move on to the next instance once the present instance has been
+ // changed
+ bool const once = !all;
int const replace_count = LyXReplace(lv_.view(),
- search, replace, casesensitive,
- matchword, true, all);
+ search, replace, true, casesensitive,
+ matchword, all, once);
if (replace_count == 0) {
setMinibuffer(&lv_, _("String not found!"));