Для тех кто пишет расширения на PyQt/PySide для CG-софтов.
Когда я только начинал писать тулзы под Maya (тогда еще версия 2010-2011) мне приходилось ручками ставить PyQt4 под Maya. Даже написал мануалы по установке на своём сайте. Но потом стал доступен из коробки PySide и позже он обновится до PySide2. Для некоторых систем была поддержка PyQt5.
И как простому разработчику поддерживать этот зоопарк? Ведь хочется чтобы тул работал на любой версии (вы тоже делали модуль что-то типа import_qt.py?😁)
На помощь приходит проект Qt.py который поставил себе цель унифицировать использование Qt-биндингов вне зависимости от среды где запускается код. Те, кто давно пишут на Qt, скорее всего знают этот проект.
Он стал стандартом для CG-индустрии и используется в топовых студиях и проектах.
Qt․py помогает запускать один и тот же код на разных платформах с разными вариантами Qt-библиотек. Это может быть как интеграция в CG-софт, так и переносимость стендалонов между разными платформами с разными версиями Python.
Я решил рассказать о некоторых особенностях работы с этой библиотекой.
Сегодня о том, как установить и использовать Qt․py и что это вам даёт.
Установка
pip install Qt.py
Чтобы начать использовать Qt․py в коде достаточно заменить импорт вашего варианта Qt-биндинга на Qt․py
from [PySide|PyQt4|PySide2|PyQt5] import QtWidgets
=>
from Qt import QtWidgets
Теперь ваш код будет поддерживать любой вариант биндинга Qt в Python.
При этом не потребуется использовать if-else конструкции под разные версии. Все вызовы теперь одинаковы.
Всё что нужно сделать, это написать его по правилам PySide2. Именно эта версия была взята за основу.
Приоритет импорта такой:
1. PySide2
2. PyQt5
3. PySide
4. PyQt4
Что именно загрузилось можно посмотреть в переменной __binding__
>>> import Qt
>>> Qt.__binding__
'PySide2'
Приоритет имопрта можно изменить через переменные QT_PREFERRED_BINDING и QT_PREFERRED_BINDING_JSON. Причем под каждый проект оверрайды можно настраивать индивидеально.
#qt#libs
📑🖊 OPINION | Demonizing Nicolás Maduro: Fallacies and Consequences
In his latest opinion piece, Steve Ellner argues that saying 'I oppose sanctions' while criticizing the Maduro government’s policies as if they were separate issues is misleading. He stresses that sanctions and domestic policy are deeply interconnected, and that ignoring this relationship reinforces regime-change narratives and undermines international solidarity.
🔗 Read the full opinion piece here: https://shorturl.at/3J2tg
#NicolasMaduro#Sanctions#USSanctions
The fight over CITGO intensifies as the Delaware auction restarts amid low bids, creditor disputes, and parallel lawsuits. Behind the corporate scramble lies a deeper story of US sanctions and opposition mismanagement, threatening what Venezuela calls the ‘theft of the century.’
Watch the full video to learn more!
#venezuela#citgo#sanctions#ussanctions
US-sanctioned Chinese tanker passes Strait of Hormuz despite US blockade, data shows
[Read FullArticle]
@WorldNews#ChinaTanker#StraitOfHormuz#USSanctions
📝 INTERVIEW | Descendents of Cacique Ähuänumä: The 4F Huo̧ttö̧ja̧ Commune
In Venezuela’s Amazonas state, the February 4 Huo̧ttö̧ja̧ Commune brings together Indigenous governance and communal socialism. With collective land tenure and assembly-based decision-making, its people continue a tradition of resistance.
The Life Plan is central to their way of life. Integrating ancestral wisdom and modern education, it dictates when to plant, hunt, and harvest—ensuring harmony with nature.
🔗 Read the latest interview from VA’s Communal Resistance Series here: https://shorturl.at/B37yt
#CommunalandWorkingClassResistance#Communes#IndigenousPeoples#USSanctions
🚀 Iran Utilizes Cryptocurrency for Strait of Hormuz Passage Fees
Iran is employing cryptocurrency to collect fees from ships passing through the Strait of Hormuz. According to NS3.AI, TRM highlighted that the rapid nature of digital currency transactions and their operation outside the U.S. banking system complicate efforts by the U.S. to freeze or block these payments in real time.
#Iran#Cryptocurrency#StraitOfHormuz#DigitalCurrency#Shipping#USSanctions#Blockchain