]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/FindAndReplace.h
Improve wording (#10670)
[lyx.git] / src / frontends / qt4 / FindAndReplace.h
index 87a732867863599e8516cd68b66138055b5d19cd..93af5357029f7107a5ebc74ac0e23cc6f029dd73 100644 (file)
 #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 findAdv(bool casesensitive,
-                       bool matchword, bool backwards,
-                       bool expandmacros, bool ignoreformat);
-       void find(docstring const & str, int len, bool casesens,
-                 bool words, bool backwards, bool expandmacros);
-       void find(bool backwards);
-
-       void replace(docstring const & findstr,
-                    docstring const & replacestr,
-                    bool casesens, bool words, bool backwards, bool expandmacros, bool all);
+
+       /// 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_replacePB_clicked();
        void on_replaceallPB_clicked();
-       void on_closePB_clicked();
-       void on_regexpInsertCombo_currentIndexChanged(int index);
 };
 
 
@@ -83,11 +83,12 @@ public:
        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: