В фреймворке PyQt (и PySide тоже) часто встречается настройка чего-либо с помощью так называемых флагов.
widget.setWindowFlags(Qt.Window)
Взаимодействие нескольких флагов делается с помощью бинарных (или побитовых) операторов.
Несколько флагов можно указать с помощью оператора "|"
list_item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
исключить флаг из уже имеющегося набора можно так
list_item.setFlags(list_item.flags() ^ Qt.ItemIsEnabled)
Добавить новый флаг к имеющимся можно так
list_item.setFlags(list_item.flags() | Qt.ItemIsEnabled)
А проверка наличия делается так
is_enabled = item.flags() & Qt.ItemIsEnabled > 0
Почему именно так? Всё дело в том как именно работают побитовые операторы. Но об этом в следующем посте.
#qt
📝 INTERVIEW | Seeds, GMOs and Sovereignty: A Conversation with Esquisa Omaña
Venezuelan researcher and activist Esquisa Omaña takes stock of the country's Seed Law and the struggle for food sovereignty.
Approved in 2015, the Seed Law bans the sowing of GMOs and uniquely recognizes two knowledge systems: certified seeds and those developed by campesino, Indigenous, and Afro-descendant communities.
But a decade later, Omaña warns that the law remains largely unimplemented. The biosecurity commission never took off, and the GMO detection lab remains unopened. As GMO imports continue and local varieties face contamination risks, the law’s vision, to protect agro-biodiversity and campesino knowledge, hangs in the balance.
🔗 Read the full interview here: https://shorturl.at/eGGWP
#FoodSovereignty#GMO#SeedLaw