Для тех кто пишет расширения на 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
Коллекции осень-зима’25 ,
вдохновлённые сафари и дикой природой, идеально сочетаются с символикой года Лошади - её энергией, свободой и мощью. 🌟
Хищные принты от Lanvin и Ermanno Scervino добавляют образу харизму, а палитра в оттенках песка, охры, тёмной зелени и глубокого коричневого создаёт основу для многослойности и сложных сочетаний.🌟
Встречайте новый год в безупречном стиле!
До 31 декабря на коллекции осень-зима действуют скидки до –50%.🌟
Начать покупки
#wisteriakids#премиумбренды#wintersale
WISTERIA WINTER SALE!🌟
C 18 по 31 декабря в бутике на Саввинской набережной и онлайн действуют скидки до 50% на коллекцию осень-зима’25. Скидки не суммируются с другими акциями и спецпредложениями. 🌟
Это лучшее время, чтобы приобрести подарки и обновить детский зимний гардероб! 🌟
Встретим праздники стильно – вместе с Wisteria! 🌟
Ждем вас в бутике: Саввинская набережная, 13
А также на сайте: https://wisteriakids.ru/choice/winter-sale-do-50/
#wintersale#распродажа#подарки#стильнаядетскаяодежда
Новогодние каникулы — время волшебных приключений: от катания на катках и детских представлений до уютных семейных вечеров.🌟
Идеальный образ для каждого из этих моментов создают вещи, в которых сочетаются эстетика, комфорт и полная свобода движений.🌟
Подарите детям возможность наслаждаться праздником в безупречных нарядах из наших осенне-зимних коллекций — теперь со скидками до 50%.
Пусть каждый день зимней сказки будет стильным, тёплым и наполненным радостью.🌟
BIG SALE WINTER WISTERIA
#WinterSale#ОсеньЗима2025#ДетскийГардероб#ЗимниеКаникулы
Старый Новый год — это редкий исторический феномен, дополнительный праздник, который получился в результате смены летоисчисления. 🙄
Из-за данного расхождения календарей ряд стран отмечает два «Новых года» — по старому и новому стилю. ✨
Таким образом, в ночь с 13 на 14 января каждый может позволить себе «допраздновать» самый любимый праздник.🎄
⠀
Подарки для себя и своих близких можете выбрать на нашем сайте www.bagohome.com💚
К тому же до конца месяца на праздничные ароматы из Новогодних коллекций действует скидка 20%!💥💥💥
⠀
Для заказа пишите в директ или заходите на наш сайт.👌
⠀
❓А вы отмечаете старый Новый год?🎄
⠀
⠀
⠀
⠀
⠀
#старыйновыйгод#зимнийсейл#акция#скидка#wintersale#sale#love#зимняяраспродажа#home#акции#новыйгод2023#корпоративныеподарки#рождество #2023 #новыйгод#подарки#подарочки#подарок#распродажа#подарочныенаборы#свечи#аромасвечи#ароматыдлядома#ароматическиесвечи#скидки#новогоднеенастроение#новогодниеподарки