Для тех кто пишет расширения на 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
Президент Шавкат Мирзиёев Ислом цивилизацияси марказига ташриф буюриб, халқимизнинг бой тарихий ва маънавий меросини кенг намойиш этишга қаратилган ишлар билан танишди.
—
Президент Шавкат Мирзиёев посетил Центр исламской цивилизации и ознакомился с проводимой работой по широкому представлению богатого исторического и духовного наследия нашего народа.
#Mirziyoyev#tanishuv#markaz#marifat
Prezident.uz|Facebook|Instagram|YouTube|X
Президент Шавкат Мирзиёев Ўзбекистондаги Ислом цивилизациясимарказига ташриф буюриб, сўнгги пардозлаш ва жиҳозлаш ишларини кўздан кечирди.
—
Президент Шавкат Мирзиёев посетил Центр исламской цивилизации в Узбекистане и ознакомился с ходом заключительных работ по отделке и оснащению.
#Mirziyoyev#tanishuv#markaz#marifat
Prezident.uz|Facebook|Instagram|YouTube|X
Президент Шавкат Мирзиёев аҳоли ҳаёти билан яқиндан танишиш мақсадида Сирдарё вилоятига йўл олди. Сафар асносида давлатимиз раҳбари Ўзбекистон мусулмонлари идораси раиси, муфтий Нуриддин Холиқназаров билан самимий суҳбатлашди.
—
Президент Шавкат Мирзиёев для ознакомления с условиями жизни населения отбыл в Сырдарьинскую область. По пути глава государства провел искреннюю беседу с председателем Управления мусульман Узбекистана, муфтием Нуриддином Холикназаровым.
#Mirziyoyev#uchrashuv#Ramazon#marifat
Prezident.uz|Facebook|Instagram|YouTube|X
Давлатимиз раҳбари Ўзбекистон Миллий кутубхонаси, Тошкент давлат педагогика университети ва "Янги Ўзбекистон" университети биноларининг қурилиши билан танишди.
—
Глава государства ознакомился с ходом строительства Национальной библиотеки Узбекистана, зданий Ташкентского государственного педагогического университета и Университета "Новый Узбекистан".
#Mirziyoyev#tanishuv#YangiToshkent#marifat
Prezident.uz|Facebook|Instagram|YouTube|X
Президент Шавкат Мирзиёев Ислом цивилизацияси марказига ташриф буюриб, халқимизнинг бой тарихий ва маънавий меросини кенг намойиш этишга қаратилган ишлар билан танишди.
—
Президент Шавкат Мирзиёев посетил Центр исламской цивилизации и ознакомился с проводимой работой по широкому представлению богатого исторического и духовного наследия нашего народа.
#Mirziyoyev#tanishuv#markaz#marifat
Prezident.uz|Facebook|Instagram|YouTube|X
Президент Шавкат Мирзиёев янгиланган Республика болалар кутубхонасини бориб кўрди.
—
Президент Шавкат Мирзиёев посетил обновленную Республиканскую детскую библиотеку.
#Mirziyoyev#tanishuv#marifat#kutubxona
Prezident.uz|Facebook|Instagram|YouTube|Twitter
Президент Шавкат Мирзиёев Ислом цивилизацияси марказига ташриф буюриб, халқимизнинг бой тарихий ва маънавий меросини кенг намойиш этишга қаратилган ишлар билан танишди.
—
Президент Шавкат Мирзиёев посетил Центр исламской цивилизации и ознакомился с проводимой работой по широкому представлению богатого исторического и духовного наследия нашего народа.
#Mirziyoyev#tanishuv#markaz#marifat
Prezident.uz|Facebook|Instagram|YouTube|X
#Chilonzor
#MFY
#Ekskursiya
#IslomSivilizatsiyasi
#Manaviyat
#Marifat
Chilonzor MFY raislari uchun Islom sivilizatsiyasi markaziga ma’naviy-ma’rifiy ekskursiya tashkil etildi
Chilonzor tumanidagi mahalla fuqarolar yig‘inlari raislari uchun Islom sivilizatsiyasi markaziga ma’naviy-ma’rifiy ekskursiya tashkil etildi.
Ekskursiya davomida ishtirokchilar ushbu markazning boy tarixiy merosi, ajdodlarimizning ilmiy va madaniy yutuqlari bilan yaqindan tanishdilar. Tarix va kelajak o‘rtasida mustahkam ma’naviy ko‘prik vazifasini o‘tayotgan mazkur maskan MFY raislarida katta qiziqish uyg‘otdi.
Tashrif davomida ular ko‘plab yangi va qiziqarli ma’lumotlarga ega bo‘lib, yurtimizning boy ma’naviy merosi yuzasidan chuqur taassurotlar bilan qaytdilar.
🔵@Chilonzor_tuman_hokimligi
📚Ma'rifat johillikka qarshi: TIUE talabalari bilan dialog.
Tashkent International University of Educationda talabalar bilan ma'naviy-axloqiy rivojlanish va bag'rikenglik madaniyatini shakllantirishga bag'ishlangan ma'rifiy uchrashuv bo'lib o'tdi.✔️
Tadbirda Din ishlari qo'mitasi vakili Rahimjon Ashirmatov, shuningdek O'zbekiston Xalqaro Islom akademiyasi dotsenti Anvar Hudo'yorov ishtirok etdi.
📌 Uchrashuv doirasida "Ma'rifat johillikga qarshi" mavzusida suhbat bo'lib o'tdi, uning davomida ekspertlar talabalar bilan dinni to'g'ri tushunish, diniy bag'rikenglik ahamiyati, hamda destruktiv va ekstremistik g'oyalar tarqalish xavflari masalalarini muhokama qildi.
Alohida e'tibor ta'lim roli, bilimga intilish va milliy hamda umuminsoniy qadriyatlarga hurmat ko'rsatish yoshlarning uyg'un rivojlanishining muhim omillari sifatida qaratildi.
🗣️ Uchrashuv oxirida talabalar o'zlarini qiziqtirgan savollarni berishdi va ma'ruzachilar bilan ochiq dialogda qatnashdi.
#TIUE#Marifat#Bagrikenglik#Talim#Yoshlar
〰️〰️〰️
📚Просвещение против невежества: диалог со студентами в TIUE.
В Tashkent International University of Education состоялась просветительская встреча со студентами, посвящённая вопросам духовно-нравственного развития и формирования культуры толерантности.✔️
В мероприятии приняли участие представитель Комитета по делам религий Рахимжон Аширматов, а также доцент Международной Исламской Академии Узбекистана Анвар Худоёров.
📌 В рамках встречи состоялась беседа на тему «Просвещение против невежества», в ходе которой эксперты обсудили со студентами вопросы правильного понимания религии, значимость религиозной толерантности, а также риски распространения деструктивных и экстремистских идей.
Особое внимание было уделено роли образования, стремлению к знаниям и уважению к национальным и общечеловеческим ценностям как важным факторам гармоничного развития молодёжи.
🗣️ В завершение встречи студенты смогли задать интересующие вопросы и принять участие в открытом диалоге со спикерами.
#TIUE#Просвещение#Толерантность#Образование#Молодежь