diff options
author | Gerald Combs <gerald@wireshark.org> | 2015-06-01 16:29:17 -0700 |
---|---|---|
committer | Gerald Combs <gerald@wireshark.org> | 2015-06-03 02:27:00 +0000 |
commit | ec3f923e3e693a3ca469bb7073a8c9ce2c33cb7d (patch) | |
tree | 0c22e44bfe372915d7831e8fde1c74504b480075 /ui/qt/syntax_line_edit.cpp | |
parent | 32177ceec8aedc9130f95e4ead34d5b5155ea17d (diff) |
Add the Display Filter Expression dialog.
Changes from the GTK+ UI:
- The display filter is built on the fly with immediate syntax feedback.
- Slightly different layout.
- You can search for fields.
Make the plain SyntaxLineEdit a bit more plain.
Bug: 11128
Change-Id: I06a48cd7b9ba7b9dc193b0199540aede4eb62fa7
Reviewed-on: https://code.wireshark.org/review/8742
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Diffstat (limited to 'ui/qt/syntax_line_edit.cpp')
-rw-r--r-- | ui/qt/syntax_line_edit.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/ui/qt/syntax_line_edit.cpp b/ui/qt/syntax_line_edit.cpp index ac1b029a9f..282d969edd 100644 --- a/ui/qt/syntax_line_edit.cpp +++ b/ui/qt/syntax_line_edit.cpp @@ -115,6 +115,24 @@ void SyntaxLineEdit::setStyleSheet(const QString &style_sheet) { QLineEdit::setStyleSheet(style_sheet_ + state_style_sheet_); } +void SyntaxLineEdit::insertFilter(const QString &filter) +{ + QString padded_filter = filter; + + if (hasSelectedText()) { + backspace(); + } + + int pos = cursorPosition(); + if (pos > 0 && !text().at(pos - 1).isSpace()) { + padded_filter.prepend(" "); + } + if (pos < text().length() - 1 && !text().at(pos + 1).isSpace()) { + padded_filter.append(" "); + } + insert(padded_filter); +} + void SyntaxLineEdit::checkDisplayFilter(QString filter) { if (filter.isEmpty()) { |