Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 3, 2013 15:51:13

Ashedu
Зарегистрирован: 2012-11-23
Сообщения: 22
Репутация: +  0  -
Профиль   Отправить e-mail  

QTreeWidget и сортировка

Доброго всем дня.

Имеется QtreeWidget и список элементов класса (MyClass), по которому создаются QtreeWidgetItem'ы
таким образом дерево выглядит примерно так:
1 | one
2 | two
3 | three

Но у MyClass есть некоторое интовое значение приоритета, по которому я хочу сгруппировать елементы дерева. Допустим третий и первый елементы имеют приоритет 2, а второй - 1. Если идет сортировка по возрастанию должно быть так:
1 | one
3 | three
2 | two
А в случае с сортировкой по убыванию должно быть так:
3 | three
1 | one
2 | two
То есть нужно чтобы элементы с максимальным приоритетом всегда группировались сверху, но внутри группы сортировка работала правильно.
Все элементы - topLevelItem'ы

Пробовал перегружать метод __lt__ для элементов, но максимум что вышло, это сохранить группирование, но при изменении порядка сортировки группы элементов так же сортируются, и группа максимального приоритета уходит то вниз то вверх, в зависимости от порядка сортировки. То есть при сортировке по убыванию получается так:
2 | two
3 | three
1 | one

Подскажите куда копать? перегружать сортировку элементов? дерева? или вставлять элементы сразу в правильном порядке? Последнее очень не желательно, так как храню ссылки на элементы.

Офлайн

#2 Апрель 3, 2013 19:05:10

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

QTreeWidget и сортировка

Ashedu
Подскажите куда копать?
Думаю, сюда http://qt-project.org/doc/qt-4.8/model-view-programming.html
Создать свою модель, переопределить sort().

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version