LINUX.ORG.RU

Как перемещать содержимое QTreeWidget по фильтру ?

 


0

1

Нужно в большом дереве QTreeWidget находить по фильтру нужные элементы и просто перемещать их вверх. Через findItems нахожу нужные QTreeWidgetItems, а как переместиться к ним подскажите ?

Ответ на: комментарий от XMs

Ничто не мешает сделать и без фильтр-модели, расширив основную модель парой слотов/методов.

Но, даже при не очень большом кол-ве элементов данных (от 1к), появятся фризы гуя, если/когда у поля ввода используется «textChanged».

Теперь, расширяя модель придётся писать и конкурентный запуск фильтра. Но зачем? Ведь QSortFilterProxyModel уже всё это делает сама.

С другой стороны, если во вьюхе будет драг-н-дроп, то фильтр-модель лучше не использовать — с ней вьюха глючит (индекс, положение, невозможность получения некоторых данных маймтайпа(?), непонятные дёргания отображения в процессе тащения мышой). В таком случае, лучше всё же нормально расширить руками первичную модель, в том числе и конкурентный запуск фильтра, а не применять фильтр-модель.

Нюансы, сэр.

deep-purple ★★★★★ ()