Для тех кто пишет расширения на 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
23 маяINFERNAL ВНЕ КОНТРОЛЯ в Factory3💀
Дима INFERNAL - один из мастодонтов Сосновоборской диджей сцены, начал раскачивать танцполы ещё в далёком 2004 году. После долгого перерыва в начале 2023 года вернулся в мир музыки и вечеринок, чтобы снова заряжать своей энергией💥
Адепт разрывного и динамичного Drum & Bass. Настоящий генератор адской энергии. В его сетах - быстрые, ритмичные треки, тяжёлые басы и проверенные танцпол-уничтожители. Минимум пауз, максимум дропов - гарантированно!
Фронтмен команды SOLID BANGERZ😈
23 мая на вечеринке ВНЕ КОНТРОЛЯ:KDJS x Veterans Avenue Дима будет раздавать мега заряженный драм-энд-бейс. Всем быть🔊
📍Factory3 (большой зал) // Суббота, 23 мая, 23:50-06:00
Санкт-Петербург, Кожевенная линия, 40Д
м. Горный институт
🎫 Билеты для самых быстрых по спец цене + ВЕЛКОМ-ДРИНК🍸😱
Успей забрать здесь➡️[КУПИТЬ БИЛЕТ]
На входе цена поползёт вверх - рейверы, покупайте билеты заранее! Плохого не посоветуем😎
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
@kdj_crew x @VeteransAvenue
#ukgarage#dubstep#drumandbass#speedgarage#ukbounce#bailefunk#breaks
23.05 ВНЕ КОНТРОЛЯ: KDJS x Veterans Avenue @ Factory3
Старый кирпич и бетон. Дух рейва на окраине Лондона. И музыка. Настоящая. Громкая. Та, от которой дрожат стены, пол и всё внутри тебя🔊
* UK Garage * Drum and Bass * Dubstep * UK Bounce * Breaks и это не всё *
Коллаборация двенадцати диджеев, знающих толк в бэйс-музыке. Ломаный бит и прямая бочка. Мощный грув, быстрый бас и злые дропы. Всё для тебя🤌🏽
Мы не приглашаем - мы предупреждаем! Будет мощно и весело😄🔥
📍Factory3 (большой зал) // Суббота, 23 мая, 23:50-06:00
Санкт-Петербург, Кожевенная линия, 40Д
м. Горный институт
🎫 Билеты для самых быстрых по спец цене + ВЕЛКОМ-ДРИНК🍸😱
Успей забрать здесь➡️[КУПИТЬ БИЛЕТ]
На входе цена поползёт вверх - рейверы, покупайте билеты заранее! Плохого не посоветуем😎
P.S.: никакого дресс-кода - просто будь чистым, внешне и внутри. Нет правил, кроме одного - не нарушай личное пространство других. И конечно - тебе уже есть 18+ (ты же не хочешь, чтобы твои родители испортили вечеринку?)
Остальное - неважно😏
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
🗝🗝🗝🗝🗝🗝🗝🗝🗝🗝
@kdj_crew x @VeteransAvenue
#ukgarage#dubstep#drumandbass#speedgarage#ukbounce#bailefunk#breaks