diff options
author | Roland Knall <roland.knall@br-automation.com> | 2017-07-05 14:15:38 +0200 |
---|---|---|
committer | Roland Knall <rknall@gmail.com> | 2017-07-06 13:21:10 +0000 |
commit | a2fe8be60317e9ce74014fb75bf95ac5ac3968e1 (patch) | |
tree | 71e05303b4014eff00169bca466c3f6f48ad0dc3 | |
parent | a70df2ce4c4eab238e1f16111b6816cd5d4d416b (diff) |
Qt: Add convenience function and cleanup
Add a convenience function for the displayfilter combobox
and clean up some code. On Linux, the AltModifier does not work
as it is being used by xDMs to move the window around. Setting
it to Shift.
Change-Id: I1ee9638c1cf37f40dc21f19c4e0860adc4629d4e
Reviewed-on: https://code.wireshark.org/review/22529
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Reviewed-by: Roland Knall <rknall@gmail.com>
-rw-r--r-- | ui/qt/CMakeLists.txt | 4 | ||||
-rw-r--r-- | ui/qt/Makefile.am | 4 | ||||
-rw-r--r-- | ui/qt/coloring_rules_dialog.cpp | 2 | ||||
-rw-r--r-- | ui/qt/display_filter_edit.cpp | 4 | ||||
-rw-r--r-- | ui/qt/main_window.h | 2 | ||||
-rw-r--r-- | ui/qt/main_window_slots.cpp | 23 | ||||
-rw-r--r-- | ui/qt/widgets/display_filter_combo.cpp (renamed from ui/qt/display_filter_combo.cpp) | 6 | ||||
-rw-r--r-- | ui/qt/widgets/display_filter_combo.h (renamed from ui/qt/display_filter_combo.h) | 1 |
8 files changed, 23 insertions, 23 deletions
diff --git a/ui/qt/CMakeLists.txt b/ui/qt/CMakeLists.txt index 8024e3fdab..ca849a7ae8 100644 --- a/ui/qt/CMakeLists.txt +++ b/ui/qt/CMakeLists.txt @@ -56,7 +56,7 @@ set(WIRESHARK_QT_HEADERS conversation_dialog.h conversation_hash_tables_dialog.h decode_as_dialog.h - display_filter_combo.h + widgets/display_filter_combo.h display_filter_edit.h display_filter_expression_dialog.h dissector_tables_dialog.h @@ -235,7 +235,7 @@ set(WIRESHARK_QT_SRC conversation_dialog.cpp conversation_hash_tables_dialog.cpp decode_as_dialog.cpp - display_filter_combo.cpp + widgets/display_filter_combo.cpp display_filter_edit.cpp display_filter_expression_dialog.cpp dissector_tables_dialog.cpp diff --git a/ui/qt/Makefile.am b/ui/qt/Makefile.am index b8c4720998..870d4ed4f3 100644 --- a/ui/qt/Makefile.am +++ b/ui/qt/Makefile.am @@ -185,7 +185,7 @@ MOC_HDRS = \ conversation_dialog.h \ conversation_hash_tables_dialog.h \ decode_as_dialog.h \ - display_filter_combo.h \ + widgets/display_filter_combo.h \ display_filter_edit.h \ display_filter_expression_dialog.h \ dissector_tables_dialog.h \ @@ -478,7 +478,7 @@ WIRESHARK_QT_SRC = \ conversation_dialog.cpp \ conversation_hash_tables_dialog.cpp \ decode_as_dialog.cpp \ - display_filter_combo.cpp \ + widgets/display_filter_combo.cpp \ display_filter_edit.cpp \ display_filter_expression_dialog.cpp \ dissector_tables_dialog.cpp \ diff --git a/ui/qt/coloring_rules_dialog.cpp b/ui/qt/coloring_rules_dialog.cpp index d6cddc72d3..9014011515 100644 --- a/ui/qt/coloring_rules_dialog.cpp +++ b/ui/qt/coloring_rules_dialog.cpp @@ -41,7 +41,7 @@ #include "color_utils.h" #include "ui/ui_util.h" -#include "display_filter_combo.h" +#include <ui/qt/widgets/display_filter_combo.h> #include "syntax_line_edit.h" #include "display_filter_edit.h" #include "wireshark_application.h" diff --git a/ui/qt/display_filter_edit.cpp b/ui/qt/display_filter_edit.cpp index eb44075462..b590cb2ebd 100644 --- a/ui/qt/display_filter_edit.cpp +++ b/ui/qt/display_filter_edit.cpp @@ -560,8 +560,8 @@ void DisplayFilterEdit::applyOrPrepareFilter() setText(pa->data().toString()); - // Holding down the Alt key will only prepare filter. - if (!(QApplication::keyboardModifiers() & Qt::AltModifier)) { + // Holding down the Shift key will only prepare filter. + if (!(QApplication::keyboardModifiers() & Qt::ShiftModifier)) { applyDisplayFilter(); } } diff --git a/ui/qt/main_window.h b/ui/qt/main_window.h index 26b76d8317..ea46cd6125 100644 --- a/ui/qt/main_window.h +++ b/ui/qt/main_window.h @@ -54,7 +54,7 @@ #include "capture_file.h" #include "capture_file_dialog.h" #include "capture_file_properties_dialog.h" -#include "display_filter_combo.h" +#include <ui/qt/widgets/display_filter_combo.h> #include "filter_action.h" #include "follow_stream_dialog.h" #include "preferences_dialog.h" diff --git a/ui/qt/main_window_slots.cpp b/ui/qt/main_window_slots.cpp index f41f13b104..e6082c1b66 100644 --- a/ui/qt/main_window_slots.cpp +++ b/ui/qt/main_window_slots.cpp @@ -935,14 +935,7 @@ void MainWindow::filterExpressionsChanged() data.window = this; data.actions_added = false; - // Recreate filter buttons - foreach (QAction *act, filter_expression_toolbar_->actions()) { - // Permanent actions shouldn't have data - if (act->property(dfe_property_).isValid()) { - filter_expression_toolbar_->removeAction(act); - delete act; - } - } + filter_expression_toolbar_->clear(); // XXX Add a context menu for removing and changing buttons. filter_expression_iterate_expressions(filter_expression_add_action, &data); @@ -1750,13 +1743,13 @@ void MainWindow::displayFilterButtonClicked() { QAction *dfb_action = qobject_cast<QAction*>(sender()); - if (dfb_action) { - df_combo_box_->lineEdit()->setText(dfb_action->data().toString()); - // Holding down the Alt key will only prepare filter. - if (!(QApplication::keyboardModifiers() & Qt::AltModifier)) { - df_combo_box_->applyDisplayFilter(); - } - df_combo_box_->lineEdit()->setFocus(); + if (!dfb_action) + return; + + df_combo_box_->setDisplayFilter(dfb_action->data().toString()); + // Holding down the Shift key will only prepare filter. + if (!(QApplication::keyboardModifiers() & Qt::ShiftModifier)) { + df_combo_box_->applyDisplayFilter(); } } diff --git a/ui/qt/display_filter_combo.cpp b/ui/qt/widgets/display_filter_combo.cpp index 03b7a12d6a..52323756de 100644 --- a/ui/qt/display_filter_combo.cpp +++ b/ui/qt/widgets/display_filter_combo.cpp @@ -138,6 +138,12 @@ void DisplayFilterCombo::applyDisplayFilter() if (df_edit) df_edit->applyDisplayFilter(); } +void DisplayFilterCombo::setDisplayFilter(QString filter) +{ + lineEdit()->setText(filter); + lineEdit()->setFocus(); +} + void DisplayFilterCombo::updateMaxCount() { setMaxCount(prefs.gui_recent_df_entries_max); diff --git a/ui/qt/display_filter_combo.h b/ui/qt/widgets/display_filter_combo.h index 30cc377da8..869e6a6db9 100644 --- a/ui/qt/display_filter_combo.h +++ b/ui/qt/widgets/display_filter_combo.h @@ -41,6 +41,7 @@ protected: public slots: bool checkDisplayFilter(); void applyDisplayFilter(); + void setDisplayFilter(QString filter); private slots: void updateMaxCount(); |