The search panel displays the index inside the list of search matching entries. Signed-off-by: Yordan Karadzhov <ykaradzhov@xxxxxxxxxx> --- kernel-shark-qt/src/KsTraceViewer.cpp | 17 +++++++++++++++-- kernel-shark-qt/src/KsTraceViewer.hpp | 2 ++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/kernel-shark-qt/src/KsTraceViewer.cpp b/kernel-shark-qt/src/KsTraceViewer.cpp index e92dd83..3df4a5d 100644 --- a/kernel-shark-qt/src/KsTraceViewer.cpp +++ b/kernel-shark-qt/src/KsTraceViewer.cpp @@ -362,6 +362,8 @@ void KsTraceViewer::_next() if (_graphFollows) emit select(*_it); // Send a signal to the Graph widget. } + + _updateSearchCount(); } void KsTraceViewer::_prev() @@ -385,6 +387,16 @@ void KsTraceViewer::_prev() if (_graphFollows) emit select(*_it); // Send a signal to the Graph widget. } + + _updateSearchCount(); +} + +void KsTraceViewer::_updateSearchCount() +{ + int index(_it - _matchList.begin()); + int total(_matchList.count()); + + _searchCountLabel.setText(QString(" %1 / %2").arg(index).arg(total)); } void KsTraceViewer::_searchStop() @@ -571,7 +583,6 @@ size_t KsTraceViewer::_searchItems(int column, count = _matchList.count(); _pbAction->setVisible(false); - _searchCountLabel.setText(QString(" %1").arg(count)); _searchDone = true; if (count == 0) // No items have been found. Do nothing. @@ -605,6 +616,8 @@ size_t KsTraceViewer::_searchItems(int column, _it = _matchList.begin(); } + _updateSearchCount(); + return count; } @@ -645,7 +658,7 @@ void KsTraceViewer::_searchItemsMapReduce(int column, for (int r = 1; r < nThreads; ++r) maps.push_back(std::async(lamSearchMap, ranges[r], false)); - while (_proxyModel.searchProgress() < KS_PROGRESS_BAR_MAX- nThreads) { + while (_proxyModel.searchProgress() < KS_PROGRESS_BAR_MAX - nThreads) { std::unique_lock<std::mutex> lk(_proxyModel._mutex); _proxyModel._pbCond.wait(lk); _searchProgBar.setValue(_proxyModel.searchProgress()); diff --git a/kernel-shark-qt/src/KsTraceViewer.hpp b/kernel-shark-qt/src/KsTraceViewer.hpp index de8af97..19371de 100644 --- a/kernel-shark-qt/src/KsTraceViewer.hpp +++ b/kernel-shark-qt/src/KsTraceViewer.hpp @@ -132,6 +132,8 @@ private: void _prev(); + void _updateSearchCount(); + void _searchStop(); void _clicked(const QModelIndex& i); -- 2.17.1