В фреймворке 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
ПАМЯТНИК НЕЛЬСОНУ МАНДЕЛЕ В ПРЕТОРИИ
🕊Девятиметровая статуя Нельсона Манделы установлена на территории комплекса правительственных зданий «Юнион Билдинг» (англ. Union Buildings) в Претории.
🗓 Памятник был торжественно открыт 16 декабря 2013 года, на следующий день после завершения 10-дневного национального траура, объявленного в связи со смертью Манделы 5 декабря.
📍 Церемония открытия прошла в День примирения — символический момент, ознаменовавший начало новой главы в истории ЮАР.
Статуя с раскинутыми руками воплощает идеи единства, примирения и «убу́нту» — ценности, которыми Мандела вдохновлял не только свою страну, но и весь мир.
Про философию «убунту» (Ubuntu) мы расскажем в одном из следующих постов.
#ЮАР#Мандела#Претория#архитектура#история#ЮнионБилдинг#Ubuntu#MandelaLegacy#ДеньПримирения
NELSON MANDELA STATUE IN PRETORIA
🕊 The nine-meter statue of Nelson Mandela stands on the grounds of the Union Buildings in Pretoria.
🗓 It was officially unveiled on December 16, 2013, one day after the end of South Africa’s 10-day national mourning period, which followed Mandela’s passing on 5 December.
📍 The unveiling took place on Reconciliation Day, a symbolic moment marking a new chapter in the nation’s journey.
With outstretched arms, the statue represents unity, reconciliation, and the spirit of Ubuntu — values Mandela championed throughout his life.
More on Ubuntu in an upcoming post.
#SouthAfrica#Mandela#Pretoria#UnionBuildings#Ubuntu#MandelaLegacy#ReconciliationDay#History#Architecture
🕊Nelson Mandela International Day, or Mandela Day, is celebrated every year on July 18, the birthday of South Africa’s legendary freedom fighter and first Black president. 🇿🇦
🗓 The United Nations officially declared the day in 2009, with the first Mandela Day held on July 18, 2010.
#MandelaDay#NelsonMandela#SouthAfrica#UN#HumanRights#Ubuntu#Freedom#Justice#Inspiration#MandelaLegacy