The original motivation for this change was to fix the problem that all negative ID filters which are set using the Quick Context menu of KernelSharlk are not visible when you open the main Filtering menus. The logic of the main menus is optimized to use both type of filtering and to automatically decide whether is more efficient to set positive (show only) or negative (do not show) filter. The patch-set also includes one very simple bug fix (patch 2/5) that was found during the development of the new filtering logic. v2 changes: - Patch [4/6] is new. It adds a simple inline method to the KsCheckBoxWidget class for retrieving all Ids (can be PID CPU Ids etc.) managed by this widget. - The inplementation of the new logic of the filtering menus is improved in order to avoid having duplicated code. Yordan Karadzhov (VMware) (6): kernel-shark: Add method for checking if a given ID filter is set kernel-shark: Fix bug in bool kshark_export_all_cpu_filters() kernel-shark: Add two helper methods to KsUtils kernel-shark: Add getIds() to class KsCheckBoxWidget kernel-shark: Remove unused methods from KsMainWindow class kernel-shark: Optimize the logic of the filtering menus kernel-shark/src/KsCaptureDialog.cpp | 6 +- kernel-shark/src/KsMainWindow.cpp | 248 +++++++++++++------------- kernel-shark/src/KsMainWindow.hpp | 13 +- kernel-shark/src/KsUtils.cpp | 38 ++++ kernel-shark/src/KsUtils.hpp | 4 + kernel-shark/src/KsWidgetsLib.hpp | 6 + kernel-shark/src/libkshark-configio.c | 17 +- kernel-shark/src/libkshark.c | 21 ++- kernel-shark/src/libkshark.h | 2 + 9 files changed, 208 insertions(+), 147 deletions(-) -- 2.20.1