-
Notifications
You must be signed in to change notification settings - Fork 180
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for Qt6 #2296
Support for Qt6 #2296
Conversation
Not convinced that this will work with older Qt versions. The issue appears to be that: whereas in this branch I have replaced all instances of QGLWidget by QOpenGLWidget, so this will probably only work in Qt>=5.4 and will break both Qt4 and older Qt5 versions. EDIT: Given that we require Qt>=5.5 now, this is probably not an issue... |
Thanks Ben! It'll take me a while to get through that... Just one comment though:
I'm pretty sure we're using one or the other, depending on the Qt version - but we shouldn't be mixing both at the same time, right...?!? There's a version check based on |
I think EDIT: An alternative is to make all those additional files also use QGLWidget or QOpenGLWidget depending on the Qt version, but since we have Qt>=5.5 in our dependency list, which supports QOpenGLWidget, I think it would be cleaner to remove all use of QGLWidget. |
Noticed that the Tool widgets don't work properly when docked when using Qt6. You can see them being rendered for a split second, but then the entire widget becomes empty and no interaction whatsoever is possible (e.g. undocking or changing between different Tools by clicking the vertical tabs). Everything works fine when using mrview with |
Have not followed along here or even looked at Qt6, but want to explicitly link to #2157, and make sure it's recognised that those changes were made on While there's a strong argument for adding support for Qt6 as a hotfix on |
Thanks Rob, I did not realize that the 5.5 requirement was only on master in the documentation. I think it makes a lot of sense to move Qt6 support to dev given the overlap with the Qt5 requirement work. |
Moved here: #2297 |
Not sure if this should go to master.
Today homebrew upgraded my qt installation to qt6, so I tried rebuilding mrtrix3 against it, which did not work out-of-the-box.
I believe that all of the changes here are backward compatible with Qt5. Most of the things I had to change were things that were already deprecated in Qt5.
I tested this on:
One caveat is the
configure
script:openglwidgets
to the project file (as in this branch)opengl
to the project file (as in master)but we detect the Qt-version by building a binary using this project file...
What would be the preferred solution here?