Skip to content
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

Upgrade to QT6 #670

Draft
wants to merge 3 commits into
base: master
Choose a base branch
from
Draft

Upgrade to QT6 #670

wants to merge 3 commits into from

Conversation

ykeara
Copy link
Member

@ykeara ykeara commented May 1, 2024

This is a very rough first try of an upgrade of the codebase to qt6.
ATM, it contains the following:

  • automatic conversions from easylog++ to qt6's builtin logger (still not missing the configurable log filename)
  • a basic cmake generator
    • test on windows (msvc 2022 buildtools)
    • test on linux (NixOS)
    • further clean up automatically generated CMakeLists.txt file
      • replace resource references in CMakeLists.txt with the AUTORCC feature in cmake
  • CPP fixes
    • upgrade src/overlaycontroller.cpp to use Qt's new rendering pipeline (use this as inspiration)
    • make graphics api selection dependant on a setting (using QQuickWindow::setGraphicsApi; see this)
    • replace vr:VROverlay()->SetOverlayFromFile with something qrc compatible
      • src/tabcontrollers/AudioTabController.cpp
      • src/tabcontrollers/RotationTabController.cpp
      • src/tabcontrollers/UtilitiesTabController.cpp
      • src/tabcontrollers/VideoTabController.cpp
  • upgrade packaging
    • replace homebrew packaging with cpack (nsis,etc.)
    • move src/res/img/icons/ into seperate directory
  • other cleanups
    • decide what to do with unused assets if we want to switch to vector graphics by QSvgRenderer
      • src/res/img/audio/microphone/ptt_notification.svg
      • src/res/img/rotation/noautoturn.svg

Bugs:

  • Settings are all enabled, for whatever reason, when started

This list is not exhaustive and might change/grow later.

ykeara and others added 3 commits April 3, 2024 22:49
* update qt6 upgrade progress

* add flawed addition for QRenderTarget and link needed libs

* update to better logging format

* move many assets and qml files into qrc

* get rid of deprecation messages

* remove additional deprecation notices

* make Qt6 finally render on desktop with some progress on vr

* initialize QRhi with QQuickRenderControl

* use default values to stop SegFaults

* fix compilation on windows

* add windows files for aiding in running exe

* fix formatting of testing qt.conf

* first attempt on using textures instead of files in AudioTabController

* Fix public/private access issue

---------

Co-authored-by: RTUnreal <[email protected]>
* update qt6 upgrade progress

* add flawed addition for QRenderTarget and link needed libs

* update to better logging format

* move many assets and qml files into qrc

* get rid of deprecation messages

* remove additional deprecation notices

* make Qt6 finally render on desktop with some progress on vr

* initialize QRhi with QQuickRenderControl

* use default values to stop SegFaults

* fix compilation on windows

* add windows files for aiding in running exe

* fix formatting of testing qt.conf

* first attempt on using textures instead of files in AudioTabController

* Fix public/private access issue

* use getter instead of directly accessing class members

* use QImage as a base to set overlay textures

* use native  logging

* add more QImage Overlays

* implement faulty vulkan implementation

---------

Co-authored-by: ykeara <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants