-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathPanelFindReplace.h
85 lines (56 loc) · 1.84 KB
/
PanelFindReplace.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#ifndef FINDBOX_H
#define FINDBOX_H
#include <QWidget>
class QLineEdit;
class QQueryInput;
class QToolButton;
class QLabel;
class QCheckBox;
class QStyleCustomPanel;
class QPanelFindReplace : public QWidget {
Q_OBJECT
protected:
QLabel * m_pStaticTitle;
QLineEdit * m_pEditFind;
QLineEdit * m_pEditReplace;
QToolButton * m_pBtnFindNext;
QToolButton * m_pBtnFindPrevious;
QToolButton * m_pBtnReplace;
QToolButton * m_pBtnReplaceAll;
QToolButton * m_pBtnClose;
QCheckBox * m_pChkCase;
QCheckBox * m_pChkWholeWord;
QCheckBox * m_pChkUseRegExp;
QCheckBox * m_pChkHighlight;
public:
QPanelFindReplace(QWidget* parent);
virtual void setVisible(bool bVisible);
void setFocusOnFindInput();
void setFocusOnReplaceInput();
void highlight(bool b);
QString findString() const;
void setFindString(const QString& sText);
QString replaceWithString() const;
bool isCaseSensitive() const;
bool isMatchWholeWord() const;
bool isHighlightAll() const;
bool useRegExp() const;
protected slots:
void onFindStrChanged();
void onFindNext();
void onFindPrevious();
void onReplace();
void onReplaceAll();
void onToggleCase(bool b);
void onToggleWholeWord(bool b);
void onToggleUseRegExp(bool b);
void onToggleHighlightAll(bool b);
void onClosePanel(){setVisible(false);}
signals:
void highlightOccurrences(const QString& sText, bool bCaseSensitively, bool bWholeWord, bool bUseRegExp);
void findNext(const QString& sExp, bool bWrapsAround, bool bCaseSensitively, bool bWholeWord, bool bUseRegExp, bool bBackWard);
void replace(const QString& sExp, const QString& sReplaceWith, bool bWrapsAround, bool bCaseSensitively, bool bWholeWord, bool bUseRegExp);
void replaceAll(const QString& sExp, const QString& sReplaceWith, bool bCaseSensitively, bool bWholeWord, bool bUseRegExp);
void visibilityChanged(bool bVisible);
};
#endif