#ifndef QSEARCHADV_H
#define QSEARCHADV_H
-#include "GuiWorkArea.h"
-
#include "DockView.h"
+// This is needed so that ui_FindAndReplaceUi.h can find qt_()
+#include "qt_helpers.h"
#include "ui_FindAndReplaceUi.h"
-#include "BufferView.h"
-#include "Buffer.h"
-#include "LyX.h"
-#include "LyXFunc.h"
-#include "Text.h"
-
-#include <QDialog>
+#include "lyxfind.h"
#include <string>
namespace lyx {
namespace frontend {
-class FindAndReplaceWidget : public QWidget, public Ui::FindAndReplaceUi
+class FindAndReplaceWidget : public QTabWidget, public Ui::FindAndReplaceUi
{
Q_OBJECT
public:
FindAndReplaceWidget(GuiView & view);
bool initialiseParams(std::string const & params);
+ void updateGUI();
+
+public Q_SLOTS:
+ ///
+ void dockLocationChanged(Qt::DockWidgetArea area);
private:
///
GuiView & view_;
- // add a string to the combo if needed
+ /// add a string to the combo if needed
void remember(std::string const & find, QComboBox & combo);
- void findAndReplace(
- bool casesensitive, bool matchword, bool backwards,
- bool expandmacros, bool ignoreformat, bool replace
- );
- void find(docstring const & str, int len, bool casesens,
- bool words, bool backwards, bool expandmacros);
- void findAndReplace(bool backwards, bool replace);
+
+ /// Perform the scope-related buffer switch while searching
+ bool findAndReplaceScope(FindAndReplaceOptions & opt, bool replace_all = false);
+
+ /// Collect options from the GUI elements, then perform the search
+ bool findAndReplace(bool backwards, bool replace, bool replace_all = false);
+
+ /// FIXME Probably to be merged with findAndReplace(bool, bool, bool)
+ bool findAndReplace(bool casesensitive, bool matchword, bool backwards,
+ bool expandmacros, bool ignoreformat, bool replace,
+ bool keep_case, bool replace_all = false);
bool eventFilter(QObject *obj, QEvent *event);
void virtual showEvent(QShowEvent *ev);
void virtual hideEvent(QHideEvent *ev);
+ void hideDialog();
+
protected Q_SLOTS:
void on_findNextPB_clicked();
- void on_findPrevPB_clicked();
- void on_replaceNextPB_clicked();
- void on_replacePrevPB_clicked();
+ void on_replacePB_clicked();
void on_replaceallPB_clicked();
- void on_closePB_clicked();
- void on_regexpInsertCombo_currentIndexChanged(int index);
};
bool initialiseParams(std::string const &);
void clearParams() {}
void dispatchParams() {}
- bool isBufferDependent() const { return true; }
+ bool isBufferDependent() const { return false; }
+ bool canApplyToReadOnly() const { return true; }
void selectAll();
/// update
- void updateView() {}
+ void updateView();
//virtual void update_contents() {}
protected: