CTK icon indicating copy to clipboard operation
CTK copied to clipboard

COMP: Update PythonQt version with generated Qt 5.15 wrappers

Open jamesobutler opened this issue 1 year ago • 2 comments

This updates CTK to use a recent Python Qt version with a generator that works for Qt 5.15 and includes Qt 5.15 wrapping. To do this I first took the latest of https://github.com/MeVisLab/pythonqt (as of https://github.com/MeVisLab/pythonqt/commit/d0ddad60fe81b882e76c5f8fc5e2347ab28490d0) and then rebased the customizations at https://github.com/jamesobutler/PythonQt/tree/patched-9 which is currently being used in CTK and also included https://github.com/commontk/PythonQt/commit/14fa99a66aa6d1fcc95d084515834dcdb3c6ab46 which was one additional CommonTK customization. The CommonTK customizations are mostly about adding CMake support.

The base of patched-9 is https://github.com/MeVisLab/pythonqt/commit/c07f09fddb9cbb85395578d9836c371635221036 from June 25th 2019, while the new base https://github.com/MeVisLab/pythonqt/commit/d0ddad60fe81b882e76c5f8fc5e2347ab28490d0 is from December 13th 2023.

@jcfr I propose a few changes for the https://github.com/commontk/PythonQt repo which will need your support as I do not have write access to make the changes myself.

  • [ ] Adopt https://github.com/jamesobutler/PythonQt/tree/patched-11 as a new patched-11 branch within the https://github.com/commontk/PythonQt repo.
  • [ ] Update https://github.com/commontk/PythonQt/tree/welcome specifying that patched-11 is based off of https://github.com/MeVisLab/pythonqt/commit/d0ddad60fe81b882e76c5f8fc5e2347ab28490d0
  • [ ] Following the above, update this PR with the PythonQt repo and commit hash back to one in the CommonTK organization.

Further work to be considered:

  • [ ] Contribute the CMake based build system commits to the upstream https://github.com/MeVisLab/pythonqt as there has been public mention of supporting a CMake build system (see https://github.com/MeVisLab/pythonqt/pull/128#pullrequestreview-1677848592 and https://github.com/MeVisLab/pythonqt/pull/79#issuecomment-1364495287)
  • [ ] Following the above, switch to CommonTK using https://github.com/MeVisLab/pythonqt or possibly reforking it so that there is a clear upstream reference in GitHub to https://github.com/MeVisLab/pythonqt. Previously the upstream source was hosted on sourceforge which is why https://github.com/commontk/PythonQt is not listed as a fork in GitHub.

jamesobutler avatar Dec 14 '23 23:12 jamesobutler

I can also update my PythonQt branch with a newer base than what I currently have (https://github.com/MeVisLab/pythonqt/commit/d0ddad60fe81b882e76c5f8fc5e2347ab28490d0). The new base could match the recent pre-release v3.5.0-rc.1 which the developer has instructed for people to test. It has support for Qt5 and Qt6.

jamesobutler avatar Dec 22 '23 19:12 jamesobutler

@jamesobutler thanks for your patience with this.

Currently #focus on finalizing the updates related to SlicerVirtualReality, I will get back to you on a few days.

jcfr avatar Dec 22 '23 21:12 jcfr