Для тех кто пишет расширения на 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
😄As
➖➖➖➖➖➖
🔘 As, as a conjunction, can be used to say that things are happening at the same time. We use 'as' with the background event, or when there are two short events
🔜 As you watch this video, I hope you take notes
🔘 As can introduce the reason for something, especially when it's something that we already know about.
🔜 As it's nice today, I'm going to work outside.
🔘 As can link to the way that something is done.
🔜 Watch me and do it as I do it.
#As👨🏫@America
➖➖➖➖➖➖➖➖➖➖➖➖
🆕 Crypto News @Money
😁 Crypto Game @Egame
🇺🇸 US News @America
🇯🇵 Japan News @Japan
🇦🇪 UAE News @Dubai
▶️ Popular Movies @Videos
😜 Best Funny Video @Funnys
Telegram Telah Mengubah Pendekatannya dalam Bekerja Sama dengan Pihak Berwenang AS
Menurut data baru yang dirilis Telegram, perusahaan pengirim pesan itu telah meningkatkan kerja samanya dengan lembaga penegak hukum Amerika Serikat secara signifikan pada tahun 2024.
• Telegram telah memenuhi 900 permintaan dari otoritas AS untuk tahun 2024, menyediakan data untuk 2.253 pengguna.
• Hanya 14 permintaan yang memengaruhi 108 pengguna yang telah diproses hingga Oktober 2024.
• Jumlah permintaan yang dipenuhi meroket setelah CEO Pavel Durov ditangkap di Prancis pada bulan Agustus 2024.
• Telegram memperbarui kebijakan privasinya pada bulan September, yang mengizinkan pengungkapan alamat IP dan nomor telepon kepada penegak hukum, tetapi hanya jika diwajibkan secara hukum.
Para ahli mengaitkan perubahan kebijakan Telegram dengan meningkatnya tekanan dari regulator di berbagai negara. Sebelumnya, perusahaan tersebut dikenal karena penolakannya untuk bekerja sama dengan pihak berwenang dalam penyediaan data pengguna.
Telegram belum memberikan komentar resmi apa pun tentang peningkatan jumlah permintaan yang terpenuhi saat artikel ini ditulis.
#AS