We have been developing a software with Qt-4.8.x and recently started to port it with 5.3. I was able to built it with modifying a few lines of code using compatibility QDeclarative modules, however, most of icons and texts using QML are not correctly displayed though they function as before. I thought this may be due to some declarative module issue, I went further to port the software with QQml and QQuick modules. Some icons (SVG) are now displayed correctly, but not all of them. Icons produces via QQuickImageProvider are still not displayed correctly, while when I dump a pixmap in requestPixmap function to a png file, it looked fine.
The software uses OpenGL draw calls a lot. We used to use QGLWidget as canvas (now trying to use a custom QQuickItem). I started to suspect our OpenGL context state management may have caused these issues.
My question is:
- Are all QQuickItems use one single shared OpenGL context?
- Does QGLWidget have its own OpenGL context? If we use QGLWidget and QQuickView (separate windows) in a single application, do we they manage their own context?
My guess is that QQuickView has a context and all QQuickItems that are drawn on top of it share the context. I might need a separate context for now if our context management is causing QML items to be displayed in a wrong way.
Thank you very much in advance.
Hi and welcome to devnet,
For such "low level" question, I would recommend asking on the interest mailing list. You'll find there Qt's developers/maintainers (this forum is more user oriented)
Hi SGaist, thank you for your reply. I would ask it in the mailing list as you recommended.
Don't forget to subscribe first