Для тех кто пишет расширения на 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
📈 Are employers ready to navigate the shifting demands of the economy? Benjamin Chua, Founder & CEO of SPECO, shares an insightful roadmap on for navigating the evolution of the workforce with the Skills Demand for the Future Economy 2023/24 report.
Read more: https://go.gov.sg/20240108tg#SkillsFutureSG#lifelonglearning
🚢 From business graduate to manager in the Maritime industry, Kumaresh pursued a dream that sparked off during his internship. Book a free consultation with a Skills Ambassador today: https://go.gov.sg/ssg-20231113tg#SkillsFutureSG#lifelonglearning
SSG has signed an MOU with the Institute for Adult Learning Singapore and SUTD Singapore University of Technology & Design to drive cyber-physical learning in the fields of higher education and lifelong learning. The collaboration includes a joint Living Lab, which will allow the study of "live" interaction between the instructors and learners, and use the insights to develop andragogies, professional practices and educational innovations for adult educators and CET learners, leading to higher quality and relevant training for Singaporeans.
#SkillsFutureSG#lifelonglearning
🎉 Big thanks to all who joined us the past 7 weeks at SkillsFuture Festival 2023! Let's continue to embrace #lifelonglearning and get ready to join us again next year for more knowledge, skills, and inspiration. 🌟📚
#SkillsFutureFestival#SkillsFutureSG
🚨 Final week alert! 🚨
SkillsFuture Festival 2023 is coming to a close, but the learning activities are as exciting as week 1 ⚡️.
Check out the full lineup here: go.gov.sg/sffest2023
#SkillsFutureFestival#SkillsFutureSG#lifelonglearning
🌟 Weekly Highlights Alert! 🌟 7-13 August: Embrace a week filled with empowering events and activities designed to supercharge your skills and ignite your career!
Check out the full lineup here: go.gov.sg/sffest2023
#SkillsFutureFestival#SkillsFutureSG#lifelonglearning
🌟 Weekly Highlights Alert! 🌟 From July 31st to August 6th, an incredible lineup of exclusive events and activities await you. Embrace the journey of lifelong learning with us!
Check out the full lineup here: go.gov.sg/sffest2023
#SkillsFutureFestival#SkillsFutureSG#lifelonglearning
🤩 From interior design to sound engineering, Chan Chue proves that the pursuit of knowledge knows no age limits. Inspired to learn a new skill?
Filter to your course of interest here: https://go.gov.sg/ssg20240111tg#SkillsFutureSG#lifelonglearning#OwnYourSkills
Announced today by DPM Lawrence Wong, #ForwardSG report unveils more upskilling and reskilling support for mature mid-career Singaporeans to thrive and build career resilience in a fast-changing economy.
#SkillsFutureSG#lifelonglearning
The Industrial Transformation Asia-Pacific 2022 (ITAP 2022) opens today till 20 Oct at the Singapore EXPO Convention & Exhibition Centre.
To encourage enterprises to invest in their workers’ skills development alongside business transformation, @SkillsFutureSG also showcased initiatives, such as the SkillsFuture Queen Bee, SkillsFuture Career Transition Programme and the SkillsFuture Work-Study Programme, alongside Industry Connect talks by partners to share insights and case studies over the 3-day trade event.
DPM Heng also launched the refreshed Industry Transformation Maps across five sectors at ITAP 2022, in line with Singaporeans goal to grow manufacturing value-added (VA) by 50% from 2020 to 2030. This will be done by focusing on innovation, embracing sustainability and training talent to seize job opportunities.
#SkillsFutureSG#ITAP2022#I4.0