[PyQt] cursor icon not changing over QSplitter

Rembrand (daxLAB Limitted) rembrand at daxlab.com
Sun Sep 20 10:21:14 BST 2015


    
If it was the GIL then your app would not respond at all if clicking on  or hovering  over a button for example.  I have not come across this issue and  have more or less the same setup (using VLC python bindings) with the difference I use Qt5.5 with python 2.7 on Mac OS Yoshmite. 
I can resize my tab widgets using a vertical splitter while playing a movie.  HOWEVER I did on Fedora 20 KDE Linux come across such an issue (among others) when using QtMultimedia combined with QWebEngine in the same app...... which was for me the reason to stay with VLC python bindings. 

Best regards,Rembrand
Cell phone: +31 646.224.526Email: rembrand at daxlab.comSent from my smart phone.


-------- Original message --------
From: pyqt-request at riverbankcomputing.com 
Date: 19/09/2015  13:00  (GMT+01:00) 
To: pyqt at riverbankcomputing.com 
Subject: PyQt Digest, Vol 134, Issue 23 

Send PyQt mailing list submissions to
	pyqt at riverbankcomputing.com

To subscribe or unsubscribe via the World Wide Web, visit
	https://www.riverbankcomputing.com/mailman/listinfo/pyqt
or, via email, send a message with subject or body 'help' to
	pyqt-request at riverbankcomputing.com

You can reach the person managing the list at
	pyqt-owner at riverbankcomputing.com

When replying, please edit your Subject line so it is more specific
than "Re: Contents of PyQt digest..."


Today's Topics:

   1. segfault creating an empty QGraphicsScene (Russell Warren)
   2. Re: Implementation of the QQuickFramebufferObject (Phil Thompson)
   3. porting PyQt4 to PyQt5 on OSX - cursor icon not changing	over
      QSplitter (Timothy Grove)
   4. Bug in qpycore_PyObject_AsQString (Kovid Goyal)


----------------------------------------------------------------------

Message: 1
Date: Fri, 18 Sep 2015 10:49:13 -0400
From: Russell Warren <russ at perspexis.com>
To: pyqt <pyqt at riverbankcomputing.com>
Subject: [PyQt] segfault creating an empty QGraphicsScene
Message-ID:
	<CAD91c15k4-rOgwDN--h+MNc2_qXXNWnKbshw2js45W+DKjzyWg at mail.gmail.com>
Content-Type: text/plain; charset="utf-8"

I'm creating a QGraphicsScene with the intent to render to a
QQuickPaintedItem and I'm having segfault issues.

I've stripped the problem down to a very small script pair and attached
them.  Note that the QGraphicsScene.render() call is not even present since
it didn't have anything to do with the segfault.

The segfault happens on the creation of the QGraphicsScene.  Remove the
line and the (bogus) application works.

fwiw, even when you remove the line and it works, this program segfaults on
me when I close the window.  I don't know why.  Also fwiw, at some point I
did have similar code working and the QGraphicsScene was rendering properly
to the QQuickPaintedItem.  I'm not sure what the difference is.

My environment is Qt5.5.0 and PyQt 5.5,  Running on Debian 7.8 (wheezy)
64-bit.  This was also happening to me on Qt 5.4.1 and I upgraded in hopes
of the problem disappearing.  It has also been confirmed to fail on Windows.

Am I doing something wrong that is causing the segfaults, or is this a
Qt/PyQt bug?

Thanks,
Russ
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.riverbankcomputing.com/pipermail/pyqt/attachments/20150918/7e0783c3/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: segfault.py
Type: text/x-python
Size: 1190 bytes
Desc: not available
URL: <https://www.riverbankcomputing.com/pipermail/pyqt/attachments/20150918/7e0783c3/attachment-0001.py>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: segfault.qml
Type: text/x-qml
Size: 128 bytes
Desc: not available
URL: <https://www.riverbankcomputing.com/pipermail/pyqt/attachments/20150918/7e0783c3/attachment-0001.bin>

------------------------------

Message: 2
Date: Fri, 18 Sep 2015 18:03:12 +0100
From: Phil Thompson <phil at riverbankcomputing.com>
To: Rostyslav Lyulinetskyy <info at rostik.de>
Cc: pyqt at riverbankcomputing.com
Subject: Re: [PyQt] Implementation of the QQuickFramebufferObject
Message-ID:
	<B709A6AE-5A13-4523-8F0F-14C8BA518AFD at riverbankcomputing.com>
Content-Type: text/plain; charset=us-ascii

On 15 Sep 2015, at 12:14 pm, Rostyslav Lyulinetskyy <info at rostik.de> wrote:
> 
> Hi,
> 
> I am trying to port my c++ code to python and I am integrating a custom OpenGL rendering with Qt Quick via QQuickFramebufferObject (as described here: https://blog.qt.io/blog/2015/05/11/integrating-custom-opengl-rendering-with-qt-quick-via-qquickframebufferobject/)
> Everything works well in c++, but for various reasons I need to port this to python and it doesn't seem to work. The virtual function createRenderer() in the QQuickFramebufferObject must be overridden so one can return a new renderer, but for some reason this function is not even called when using PyQt.
> 
> Is it even possible to override this virtual function from python? Am I missing something?
> 
> Here is a small example to replicate that the createRenderer() function is not called:
> https://gist.github.com/rostikL/7876e4c47fc8dd8ce02f

Tonight's snapshot will make sure createRenderer() is called. However there may well be issues with the ownership of the returned renderer. Please test and let me know.

Phil

------------------------------

Message: 3
Date: Sat, 19 Sep 2015 09:23:16 +0100
From: Timothy Grove <tim_grove at sil.org>
To: PyQT mailing list <PyQt at riverbankcomputing.com>
Subject: [PyQt] porting PyQt4 to PyQt5 on OSX - cursor icon not
	changing	over QSplitter
Message-ID:
	<CAJbHV24+sTT1iL3-B6-oiuY40CiaURh6-Rpxq+Z6smABOgALWQ at mail.gmail.com>
Content-Type: text/plain; charset="utf-8"

I'm porting an application from PyQt4 to PyQt5 on Mac OSX (Mavericks).
Generally a good experience, but I'm seeing a few strange behaviours that I
haven't been able to work around; possibly due to accessing the window id
of the widget in my video player, or possibly a GIL release issue?

*1. The cursor doesn't change when moved over a splitter handle. *This
"might" be related to a "closed' issue where a widget's window id was
accessed with the widget in a QSplitter [
https://bugreports.qt.io/browse/QTBUG-33479], but might it also be related
to not releasing the GIL? I'm using the python bindings for VLC [
https://wiki.videolan.org/Python_bindings] which uses the window id to make
the link between VLC and a widget for video display; in my case, a QLabel.
I've also tried replacing VLC use with QVideoWidget from
PyQt5.QtMultimediaWidgets, but with similar results. Before a video is
loaded I can see the expected change in cursor icon over the splitter
handle, but once a video has loaded - no change.

Using Macports Mavericks (10.9.5):
python3.4 @3.4.3_5
qt5-mac @5.4.2_1
py34-sip @4.16.9_0
py34-pyqt5 @5.5_0

Best regards,
Timothy Grove
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.riverbankcomputing.com/pipermail/pyqt/attachments/20150919/3a6f7f0e/attachment-0001.html>

------------------------------

Message: 4
Date: Sat, 19 Sep 2015 14:06:02 +0530
From: Kovid Goyal <kovid at kovidgoyal.net>
To: pyqt at riverbankcomputing.com
Subject: [PyQt] Bug in qpycore_PyObject_AsQString
Message-ID: <20150919083602.GL918 at qedette>
Content-Type: text/plain; charset=us-ascii

I saw the following assert in one of my programs:

python3: ../qpy/QtCore/qpycore_qstring.cpp:165: QString qpycore_PyObject_AsQString(PyObject*): Assertion `(((PyASCIIObject*)obj)->state.ready)' failed.

This will happen if a python string that is not "ready" is passed into a
PyQt API (such strings can be created by C python extensions, notably
sqlite). That function should call PyUnicode_READY (and check its return
value). 

As a workaround, one can call str() on the string before passing it to
PyQt.

Kovid.

-- 
_____________________________________

Dr. Kovid Goyal 
http://www.kovidgoyal.net
http://calibre-ebook.com
_____________________________________


------------------------------

Subject: Digest Footer

_______________________________________________
PyQt mailing list
PyQt at riverbankcomputing.com
https://www.riverbankcomputing.com/mailman/listinfo/pyqt

------------------------------

End of PyQt Digest, Vol 134, Issue 23
*************************************
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.riverbankcomputing.com/pipermail/pyqt/attachments/20150920/d7e509b6/attachment-0001.html>


More information about the PyQt mailing list