Qt4.3. Есть иерархическое дерево построенное с помощью QTreeWidget + QTreeWidgetItem. Нужно в этом дереве выключить (сделать серым и выключить кликабельность) один из узлов (не трогая его детей). Как этого достичь?
Делаю примерно так:
i = obtain_required_item(myTree); // myTree is QTreeWidget*
i->setFlags(i->flags() & (~Qt::ItemIsEnabled | ~Qt::ItemIsSelectable));
после чего получается, что нетолько узел i стал серым, но и все его дети, хотя только он перестал быть кликабельным.
Что я делаю не так? Почему enable/disable распространяется на детей узла и как этого избежать? Спасибо.