Для тех кто пишет расширения на 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
💛 Bugun oddiy kun emas.Bu — sen o‘zingni isbotlaydigan kun.
🕊 Kimdir hali “yana 5 daqiqa” deydi…Sen esa “hozir boshlayman” deganlardan bo‘l.
📌 Esingda bo‘lsin:Hayot — kutganlarga emas,harakat qilganlarga jilmayadi.
🌅 Bugun boshqacha yashab ko‘r.Balki aynan shu kun — hammasini o‘zgartirar.
#motivation
🛫@Milliarderlarim
💱#motivation
🫴 "Har bir katta o‘zgarish — kichik bir qadamdan boshlanadi. Harakatdan to‘xtama, orzularing yo‘lida yurishda davom et!"
Do'stlarga ham ulashing
🛫@Milliarderlarim
🔝#motivation
👍 "Kichik qadamlar katta o'zgarishlarga olib keladi."
Agar hozir boshlamasangiz, bir yildan keyin ham shu joyda bo‘lishingiz mumkin. Ammo bugun kichik bir qadam tashlasangiz, bir yil ichida o‘zgarishingiz mumkin.
Shunchaki boshlang. Hozir. Bugun.
Shubha qilsangiz ham, davom eting.
Hech kim sizga ishonmasa ham, o‘zingizga ishoning.
🫶Hayrlı kun yaxshilar!! Barcha maqsadlaringiz gozal tarzda amalga oshsin! 💕
Do'stlarga ham ulashing!
🏆@Milliarderlarim
💱#motivation
🫴 "Har bir katta o‘zgarish — kichik bir qadamdan boshlanadi. Harakatdan to‘xtama, orzularing yo‘lida yurishda davom et!"
Do'stlarga ham ulashing
🛫@Milliarderlarim
🔜#motivation
Harakat – bu orzularni haqiqatga aylantiradigan kuchdir. Boshlamasang – o‘zgarmaydi. Qadam tashla, natija keladi! 💞
Do'stlarga ham ulashing!
🔵@Milliarderlarim
👍#motivation
✔️ Muvaffaqiyat osmondan tushmaydi, u harakat, sabr va ishonch bilan yaratiladi.
✔️ Harakat qilgan odamda har doim umid bor. Harakat to‘xtasa – orzular so‘nadi.
✔️Bugun qilgan mehnating – ertangi muvaffaqiyatingning poydevori.
✔️ Qiyinchiliklar – bu sinov emas, o‘sishga imkoniyatdir.
Hayrlı kun @Milliarderlarim
Bugün sevgi va yutuqlarga boy kun! ❤️
Do'stlarga ham ulashing!
🫴@Milliarderlarim
👀#motivation
O‘zgarish qo‘rqinchli, lekin bir joyda qolish undan ham qo‘rqinchli.
O‘zing uchun harakat qil, ertangi “sen” senga rahmat aytsin!
Do'stlarga ham ulashing
🏆@Biglibrary_uz
#motivation
▶️ O‘z hayotingizning rejissyori bo‘ling!
Hayot – bu sahna, siz esa uning bosh qahramoni va rejissyorisiz. Qanday ssenariy yozsangiz, shunday yashaysiz.
🎬 Orzularingiz – bu filmning eng muhim syujeti. Ularni unutmang!
🎬 Harakatlaringiz – natijani belgilovchi rejissyorlik qarorlaringiz.
Agar boshqalar hayotingizni boshqarishini istamasangiz, kamerani o‘z qo‘lingizga oling! Bugun o‘z orzularingiz sari bir qadam tashlang.
📹
✨
Do'stlarga ham ulashing
👍@Milliarderlarim
#motivation
🙂 Hayrli kun @Milliarderlarim
Keling bugungi kunni 400 ta tabassum kuni deb nomlaymiz! Qani Kim uddalaydi bugün 400 ta tabassumni
🛒 Eng yaxshi tayyorgarlik - bu Ishga kirishish Va boshlash!!
🧾 Orqaga surib yurgan rejalaringizni Bugün Boshlang! HOZİROQ boshlang
❤️
Yurakchani ham bosib qo'ying
🛫@Milliarderlarim
#motivation🩷🩷🩷🩷
Foyda keltirmaydigan ishlarni to'xtating!
Kelajak hozirdan boshlanadi! Hozirdan energiyangizni foydali ishlarga sarflang!
🩷 Reaksiyalarni bosib qo'ying
@Milliarderlarim
🔗#Motivation
🩷 Sen hayotga nimadir bera olsang, Hayot ham senga albatta javob qaytaradi!
Qarang Juda chiroyli jumlalar-a. Meni o'ylantirib qo'ydi. Siznichi? Siz nima angladingiz, kommentlarda yozingchi✍️
@Milliarderlarim