QtPy: Abstraction layer for PyQt5, PySide2, PyQt6, and PySide6

Schimon Jehudah sjehuda at yandex.com
Mon Dec 4 03:34:27 GMT 2023


Top posting is the best form of email posting, to me.

Cheers,
Schimon

On Sun, 03 Dec 2023 18:29:37 +0100
Juraj Oravec <jurajoravec at mailo.com> wrote:

> Hello Schimon,
> 
> This looks like something which would help with python addons, but at 
> the same time plugin API for many things in Falkon is not defined and 
> plugins (C++ and Python) can touch internal stuff which may change 
> between different versions.
> 
> The QML plugins are a bit better since they do have "stable" API but
> his API is very limited.
> 
> Thank you for providing the link, but I will wait for the code or 
> documentation on how to use this within Falkon.
> 
> Best regards,
> Juraj
> 
> PS: Sorry for top posting.
> 
> On nedeľa 3. decembra 2023 18:15:58 CET Schimon Jehudah wrote:
> > Greetings
> > 
> > I figured this might be of good use to Falkon.
> >   
> > > QtPy is a small abstraction layer that lets you write applications
> > > using a single API call to either PyQt or PySide.
> > > 
> > > It provides support for PyQt5, PySide2, PyQt6 and PySide6 using
> > > the Qt5 layout (where the QtGui module has been split into QtGui
> > > and QtWidgets).
> > > 
> > > Basically, you can write your code as if you were using PyQt or
> > > PySide directly, but import Qt modules from qtpy instead of PyQt5,
> > > PySide2, PyQt6 or PySide6.
> > > 
> > > Accordingly, when porting code between different Qt bindings (PyQt
> > > vs
> > > PySide) or Qt versions (Qt5 vs Qt6), QtPy makes this much more
> > > painless, and allows you to easily and incrementally transition
> > > between them. QtPy handles incompatibilities and differences
> > > between bindings or Qt versions for you while keeping your
> > > project running, so you can focus more on your own code and less
> > > on keeping track of supporting every Qt version and binding.
> > > Furthermore, when you do want to upgrade or support new bindings,
> > > it allows you to update your
> > > project module by module rather than all at once. You can check
> > > out examples of this approach in projects using QtPy, like
> > > git-cola.  
> > 
> > Source: https://github.com/spyder-ide/qtpy
> > 
> > Kind regards,
> > Schimon  


More information about the Falkon mailing list