* Licence details can be found in the file COPYING.
*
* \author John Levon
+ * \author Angus Leeming
*
* Full author contact details are available in file CREDITS.
*/
-#ifndef QSEARCH_H
-#define QSEARCH_H
+#ifndef GUISEARCH_H
+#define GUISEARCH_H
-#include "GuiDialogView.h"
+#include "GuiDialog.h"
#include "ui_SearchUi.h"
-#include <string>
-
-#include <QDialog>
namespace lyx {
namespace frontend {
-class ControlSearch;
-
-class GuiSearch;
-
-class GuiSearchDialog : public QDialog, public Ui::SearchUi {
+class GuiSearch : public GuiDialog, public Ui::SearchUi
+{
Q_OBJECT
+
public:
- GuiSearchDialog(GuiSearch * form);
+ GuiSearch(GuiView & lv);
- virtual void show();
-protected Q_SLOTS:
+private Q_SLOTS:
void findChanged();
void findClicked();
void replaceClicked();
void replaceallClicked();
-protected:
- virtual void closeEvent(QCloseEvent * e);
private:
- // add a string to the combo if needed
- void remember(std::string const & find, QComboBox & combo);
-
- GuiSearch * form_;
-};
-
-
-class GuiSearch
- : public QController<ControlSearch, GuiView<GuiSearchDialog> >
-{
-public:
- ///
- friend class GuiSearchDialog;
+ void showEvent(QShowEvent * e);
///
- GuiSearch(Dialog &);
-private:
- /// Apply changes
- virtual void apply() {}
- /// update
- virtual void update_contents() {}
- /// build the dialog
- virtual void build_dialog();
-
- void find(docstring const & str, bool casesens,
- bool words, bool backwards);
-
- void replace(docstring const & findstr,
- docstring const & replacestr,
- bool casesens, bool words, bool backwards, bool all);
+ bool initialiseParams(std::string const &) { return true; }
+ void clearParams() {}
+ void dispatchParams() {}
+ bool isBufferDependent() const { return true; }
+
+ /// Dispatches repeatedly func with wrap around question
+ void wrap_dispatch(const FuncRequest & func, bool forward);
+
+ /// Searches occurence of string
+ void find(docstring const & search,
+ bool casesensitive, bool matchword, bool forward);
+
+ /// Replaces occurence of string
+ void replace(docstring const & search, docstring const & replace,
+ bool casesensitive, bool matchword,
+ bool forward, bool all);
};
} // namespace frontend
} // namespace lyx
-#endif // QSEARCH_H
+#endif // GUISEARCH_H