Для тех кто пишет расширения на 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
📺 - SHIFTING GEARS - 📺
Título original: Shifting Gears
Título Alternativo: Cambiando Marchas
Género:#Comedia#Familiar#Drama
Temporadas: 2 📼
Año: 2025 - presente
Origen: EEUU 🇺🇸
Tráiler:youtu.be/cgGK3AQf3Cw
Sinopsis:
Matt, un viudo testarudo, dirige un taller de coches clásicos. Su vida da un giro inesperado cuando su hija separada y sus hijos adolescentes se mudan con él. Entre choques generacionales, humor y emociones, la familia aprende a reconstruir sus lazos mientras enfrentan los retos de la convivencia.
Disponible:Disney+
@SeriesClubHD
🎬Sonic 2: O Filme (2022)
Gênero: #Ação, #Aventura , #Comedia, #Familiar
⭐️ IMDb: 6.5
⏳ Duração: 2 h 02 min
📝 Sinopse:
Quando o Dr. Robotnik retorna com um novo parceiro, Knuckles, em busca de uma esmeralda que tem o poder de destruir civilizações, Sonic se une ao seu próprio ajudante, Tails, em uma jornada pelo mundo para encontrar a esmeralda antes.
Fonte: IMDb
🔵Inscreva-se em @Assistir
*Patrocinado: Anime Bot
📺 - FIND E SEMANA EN FAMILIA - 📺
Título original: Week-end Family
Título Alternativo: Familia De Fin De Semana
Género:#Comedia#Familiar#Romántica
Temporadas: 2 📼
Año: 2022 - 2023
Origen: Francia 🇫🇷
Tráiler:youtu.be/brRQbVje1lk
Sinopsis:
Fred, un padre divertido y caótico, pasa los fines de semana con sus tres hijas de diferentes madres. Cuando su nueva pareja se une a la familia, todos deberán aprender a convivir en un ambiente lleno de humor y cariño.
Disponible:Disney+
@SeriesClubHD
Apollo 10½: A Space Age Adventure
📅Año 2022
⏱Duración 90min.
🎥Dirección#RichardLinklater
📄Guion Richard Linklater
🌄Fotografía Shane F. Kelly
🎬Productora Detour Filmproduction, Submarine, Minnow Mountain.
🚚Distribuidora Netflix
Género#Animación#Aventuras#Comedia#Drama#Cienciaficción#AventuraEspacial#Infancia#Familiar#Años60
Reparto | Trailer | Sinopsis
Ver Aquí
AnexoAnimación | Drama | Aventura | Comedia | Familiar | SciFi