00001
00002
00003
00004
00005
00006 #ifndef FINDREPLACEFORM_H
00007 #define FINDREPLACEFORM_H
00008
00009 #include <QWidget>
00010 #include <QTextCursor>
00011
00012 #include "findreplace_global.h"
00013
00014 namespace Ui {
00015 class FindReplaceForm;
00016 }
00017
00018 class QTextEdit;
00019 class QSettings;
00020
00050 class FINDREPLACESHARED_EXPORT FindReplaceForm : public QWidget {
00051 Q_OBJECT
00052 public:
00053 FindReplaceForm(QWidget *parent = 0);
00054 virtual ~FindReplaceForm();
00055
00060 void setTextEdit(QTextEdit *textEdit_);
00061
00063 void hideReplaceWidgets();
00064
00070 virtual void writeSettings(QSettings &settings, const QString &prefix = "FindReplaceDialog");
00071
00077 virtual void readSettings(QSettings &settings, const QString &prefix = "FindReplaceDialog");
00078
00079 public slots:
00085 void find(bool down);
00086
00090 void find();
00091
00095 void findNext() { find(true); }
00096
00100 void findPrev() { find(false); }
00101
00105 void replace();
00106
00110 void replaceAll();
00111
00112 protected:
00113 void changeEvent(QEvent *e);
00114
00116 void showError(const QString &error);
00117
00119 void showMessage(const QString &message);
00120
00121 protected slots:
00123 void textToFindChanged();
00124
00126 void validateRegExp(const QString &text);
00127
00129 void regexpSelected(bool sel);
00130
00131 protected:
00132 Ui::FindReplaceForm *ui;
00133
00135 QTextCursor textCursor;
00136
00138 QTextEdit *textEdit;
00139 };
00140
00141 #endif // FINDREPLACEFORM_H