Для тех кто пишет расширения на 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
Wenn draußen die Kälte🥶 kommt, bringen wir den Sommer☀️ auf die Leinwand📺: das Komödiendrama „Erster Sommer” wird am 19. November um 19:00 Uhr in russischer Sprache mit englischen Untertiteln gezeigt.
🎞️ Der 15-jährige Sascha lebt in einer Kleinstadt an der Wolga, und dieser Sommer wird sein Leben verändern. Gemeinsam mit seinen Freunden startet er ein kleines Geschäft, um sich eine Sony PlayStation🎮 leisten zu können. Das Haus des Nachbarmädchens wird plötzlich zum Mittelpunkt seiner Aufmerksamkeit, und auf der Sommerdisco💃🏻 kommt es zur ersten handfesten Auseinandersetzung. Während er erwachsen wird, lernt Sascha den Wert anderer Leben kennen, erlebt Schmerz und Verlust und steht vor Entscheidungen, die alles andere als kindlich sind.
🗣️Der Film wird vom Produzenten Denis Kovalevsky vorgestellt.
FSK: 18+
📲Anmeldung ist erforderlich.
#kino#berlinevents#drama#komödie#sommer#film
Wenn draußen die Kälte🥶 kommt, bringen wir den Sommer☀️ auf die Leinwand📺: das Komödiendrama „Erster Sommer” wird am 19. November um 19:00 Uhr in russischer Sprache mit englischen Untertiteln gezeigt.
🎞️ Der 15-jährige Sascha lebt in einer Kleinstadt an der Wolga, und dieser Sommer wird sein Leben verändern. Gemeinsam mit seinen Freunden startet er ein kleines Geschäft, um sich eine Sony PlayStation🎮 leisten zu können. Das Haus des Nachbarmädchens wird plötzlich zum Mittelpunkt seiner Aufmerksamkeit, und auf der Sommerdisco💃🏻 kommt es zur ersten handfesten Auseinandersetzung. Während er erwachsen wird, lernt Sascha den Wert anderer Leben kennen, erlebt Schmerz und Verlust und steht vor Entscheidungen, die alles andere als kindlich sind.
🗣️Der Film wird vom Produzenten Denis Kovalevsky vorgestellt.
FSK: 18+
📲Anmeldung ist erforderlich.
#kino#berlinevents#drama#komödie#sommer#film
Am 20. Januar um 19:00 Uhr wird die Familienkomödie „Das Feld der Wunder“ in russischer Sprache gezeigt.📽️
🌞 Jeden Sommer versammelt sich eine Gruppe von Kindern in ihrem geheimen Versteck mitten zwischen den hohen Maisstängeln eines alten Ferienorts. Es kursiert die Legende von den Schätzen einer Fürstin, die vor Napoleon geflohen ist, und der Traum vom Abenteuer wird Wirklichkeit, als die neue Schülerin Katja auftaucht: ihr Vater, ein Geschäftsmann, plant, das Feld zu kaufen, um dort einen Baumarkt zu errichten. Die Kinder schließen sich zusammen, um ihren heiligen Ort zu verteidigen.
Meldet euch an und kommt ins Filmtheater im Russischen Haus vorbei!🫶🏻
#kino#komödie#familienfilm#sommer#jugend#kindern
DasKrimidrama „Der Sommer kommt“, das bei großen Filmfestivals mehrmalsausgezeichnet wurde, wird am 29. Januar um 19:00 Uhr im Russischen Haus in Berlin gezeigt!
🎬 Der Film erzählt die Geschichte eines jungen Mannes namens Nikita, der aus der Provinz nach Moskau kommt. Er mietet ein Zimmer, lernt seine Mitbewohnerin kennen und verstrickt sich in eine komplizierte Beziehung. Durch einen Freund erfährt er von einem reichen Typen namens Dan. Der Film greift Motive aus der Welt des Verbrechens, moralische Entscheidungen und deren Auswirkungen auf das Leben der Protagonisten in der Großstadt auf. Die Geschichte spielt vor dem Hintergrund sozialer Unterschiede und innerer Widersprüche, die für das moderne Stadtleben charakteristisch sind.
🎞️Die Vorführung findet im Rahmen des Internationalen Filmfestivals ARCTIC OPEN in russischer Sprache mit englischen Untertiteln statt.
🖇️ FSK: 18+
📲Anmeldung
#filmfestival#kino#drama#krimi#sommer#berlinkino
Am 20. Januar um 19:00 Uhr wird die Familienkomödie „Das Feld der Wunder“ in russischer Sprache gezeigt.📽️
🌞 Jeden Sommer versammelt sich eine Gruppe von Kindern in ihrem geheimen Versteck mitten zwischen den hohen Maisstängeln eines alten Ferienorts. Es kursiert die Legende von den Schätzen einer Fürstin, die vor Napoleon geflohen ist, und der Traum vom Abenteuer wird Wirklichkeit, als die neue Schülerin Katja auftaucht: ihr Vater, ein Geschäftsmann, plant, das Feld zu kaufen, um dort einen Baumarkt zu errichten. Die Kinder schließen sich zusammen, um ihren heiligen Ort zu verteidigen.
Meldet euch an und kommt ins Filmtheater im Russischen Haus vorbei!🫶🏻
#kino#komödie#familienfilm#sommer#jugend#kindern