Доброго всем дня.
Имеется 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
Подскажите куда копать? перегружать сортировку элементов? дерева? или вставлять элементы сразу в правильном порядке? Последнее очень не желательно, так как храню ссылки на элементы.