From de026fac863b247cfe89278ccd69fc244bdb8e4f Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Sun, 7 Aug 2022 23:10:09 +0200 Subject: [PATCH] WIP: debugging --- src/layui/layui/layNetlistBrowserPage.cc | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/layui/layui/layNetlistBrowserPage.cc b/src/layui/layui/layNetlistBrowserPage.cc index 639ac3a58..abd0ae71b 100644 --- a/src/layui/layui/layNetlistBrowserPage.cc +++ b/src/layui/layui/layNetlistBrowserPage.cc @@ -839,6 +839,7 @@ static QModelIndex find_next (QTreeView *view, QAbstractItemModel *model, const return index; } + int max_depth = 4; QModelIndex current = index; std::vector parent_stack; @@ -856,6 +857,13 @@ static QModelIndex find_next (QTreeView *view, QAbstractItemModel *model, const std::reverse (parent_stack.begin (), parent_stack.end ()); std::reverse (rows_stack.begin (), rows_stack.end ()); + while (int (rows_stack.size ()) > max_depth) { + rows_stack.pop_back (); + parent_stack.pop_back (); + } + + std::vector > initial_rows_stack = rows_stack; + tl::AbsoluteProgress progress (tl::to_string (tr ("Searching ..."))); do { @@ -864,7 +872,7 @@ static QModelIndex find_next (QTreeView *view, QAbstractItemModel *model, const bool has_next = false; - if (model->hasChildren (current) && rows_stack.size () < 2) { + if (model->hasChildren (current) && rows_stack.size () < max_depth - 1) { int row_count = model->rowCount (current); if (row_count > 0) { @@ -908,7 +916,7 @@ static QModelIndex find_next (QTreeView *view, QAbstractItemModel *model, const } - } while (current.internalPointer () != from.internalPointer () || current.row () != from.row ()); + } while (rows_stack != initial_rows_stack); return QModelIndex (); }