diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 7134400d..918263d3 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -64,7 +64,7 @@ jobs: - name: Install Qt uses: jurplel/install-qt-action@v3 with: - version: 6.5.1 + version: 6.5.3 modules: qtwebsockets qtimageformats - name: macos install deps if: matrix.os == 'macos-latest' diff --git a/.github/workflows/tagged_master_release.yml b/.github/workflows/tagged_master_release.yml index e4706715..b6cc5626 100644 --- a/.github/workflows/tagged_master_release.yml +++ b/.github/workflows/tagged_master_release.yml @@ -19,7 +19,7 @@ jobs: - name: Install Qt uses: jurplel/install-qt-action@v3 with: - version: 6.5.1 + version: 6.5.3 modules: qtwebsockets qtimageformats - name: macos install deps if: matrix.os == 'macos-latest' diff --git a/CMakeLists.txt b/CMakeLists.txt index 686fa7ce..1d36c750 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -48,7 +48,7 @@ if(DEFINED ENV{Qt6_DIR}) list(INSERT CMAKE_PREFIX_PATH 0 $ENV{Qt6_DIR}) endif() -set(AGAVE_QT_VERSION 6.5.1) +set(AGAVE_QT_VERSION 6.5.3) if(WIN32) set(GUESS_Qt6_DIR C:/Qt/${AGAVE_QT_VERSION}/msvc2019_64 CACHE STRING "Qt6 directory") @@ -137,12 +137,12 @@ CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/CMake/conf.py.cmake ${CMAKE_SOURCE_DIR}/docs/ # ##################### # CPack # ##################### -find_package(Qt6QTiffPlugin 6.5.1 REQUIRED PATHS ${Qt6Gui_DIR}) +find_package(Qt6QTiffPlugin 6.5.3 REQUIRED PATHS ${Qt6Gui_DIR}) # copy all dlls into place. if(WIN32) - # find_package(Qt6QWindowsIntegrationPlugin 6.5.1 REQUIRED PATHS ${Qt6Gui_DIR}) - # find_package(Qt6QWindowsVistaStylePlugin 6.5.1 REQUIRED PATHS ${Qt6Gui_DIR}) + # find_package(Qt6QWindowsIntegrationPlugin 6.5.3 REQUIRED PATHS ${Qt6Gui_DIR}) + # find_package(Qt6QWindowsVistaStylePlugin 6.5.3 REQUIRED PATHS ${Qt6Gui_DIR}) # assuming vcpkg has done some work already to get dlls in here install( @@ -212,8 +212,8 @@ if(WIN32) # ############### elseif(APPLE) - find_package(Qt6QCocoaIntegrationPlugin 6.5.1 REQUIRED PATHS ${Qt6Gui_DIR}) - find_package(Qt6QMacStylePlugin 6.5.1 REQUIRED PATHS ${Qt6Widgets_DIR}) + find_package(Qt6QCocoaIntegrationPlugin 6.5.3 REQUIRED PATHS ${Qt6Gui_DIR}) + find_package(Qt6QMacStylePlugin 6.5.3 REQUIRED PATHS ${Qt6Widgets_DIR}) # ############### set(PACKAGE_OSX_TARGET ${CMAKE_OSX_DEPLOYMENT_TARGET}) @@ -305,7 +305,7 @@ elseif(APPLE) include(CPack) else() # Linux - find_package(Qt6QXcbIntegrationPlugin 6.5.1 REQUIRED PATHS ${Qt6Gui_DIR}) + find_package(Qt6QXcbIntegrationPlugin 6.5.3 REQUIRED PATHS ${Qt6Gui_DIR}) install(FILES ${PROJECT_SOURCE_DIR}/LICENSE.txt diff --git a/Dockerfile b/Dockerfile index c414b81e..3a7e9588 100644 --- a/Dockerfile +++ b/Dockerfile @@ -45,7 +45,7 @@ RUN apt-get install -y python3-pip RUN pip3 install --upgrade pip # get Qt installed -ENV QT_VERSION=6.5.1 +ENV QT_VERSION=6.5.3 RUN pip3 install aqtinstall RUN aqt install-qt --outputdir /qt linux desktop ${QT_VERSION} -m qtwebsockets qtimageformats # required for qt offscreen platform plugin diff --git a/README.md b/README.md index cdbff26d..8924cd2d 100644 --- a/README.md +++ b/README.md @@ -17,9 +17,11 @@ git submodule update --init ``` ### For WINDOWS: + Make sure you are in an environment where vsvarsall has been run, e.g. a "VS2022 x64 Native Tools Command Prompt" **tensorstore** requires: + - Python 3.7 or later - CMake 3.24 or later - Perl, for building libaom from source (default). Must be in PATH. Not required if -DTENSORSTORE_USE_SYSTEM_LIBAOM=ON is specified. @@ -27,25 +29,28 @@ Make sure you are in an environment where vsvarsall has been run, e.g. a "VS2022 - GNU Patch or equivalent. Must be in PATH. A convenient way to install Perl, NASM, and GNU Patch is with chocolatey. + ``` choco install strawberryperl nasm patch ``` -**Install Qt LTS 6.5.1.** +**Install Qt LTS 6.5.3.** In your favorite Python virtual environment: ``` pip install aqtinstall -aqt install-qt --outputdir C:\Qt windows desktop 6.5.1 win64_msvc2019_64 -m qtwebsockets qtimageformats +aqt install-qt --outputdir C:\Qt windows desktop 6.5.3 win64_msvc2019_64 -m qtwebsockets qtimageformats ``` Use vcpkg (must use target triplet x64-windows) to install the following: + ``` vcpkg install spdlog glm zlib libjpeg-turbo liblzma tiff zstd --triplet x64-windows ``` **Build AGAVE** + ``` mkdir build cd build @@ -53,18 +58,19 @@ cd build cmake -DCMAKE_TOOLCHAIN_FILE=D:\vcpkg\scripts\buildsystems\vcpkg.cmake -G "Visual Studio 17 2022" -A x64 -DVCPKG_TARGET_TRIPLET=x64-windows .. cmake --build . ``` + You may need to adjust the vcpkg path depending on your configuration. If you encounter issues during your build, check that all of your dependencies are installed and try again. You can also build to the INSTALL target with Visual Studio by opening the project solution (`agave.sln`). - ### For MAC OS: (using homebrew) In your favorite Python virtual environment: + ``` pip install aqtinstall -aqt install-qt --outputdir ~/Qt mac desktop 6.5.1 -m qtwebsockets qtimageformats -export Qt6_DIR=~/Qt/6.5.1/macos +aqt install-qt --outputdir ~/Qt mac desktop 6.5.3 -m qtwebsockets qtimageformats +export Qt6_DIR=~/Qt/6.5.3/macos # and then: brew install spdlog glm libtiff @@ -79,15 +85,15 @@ sudo make install ### For LINUX: -Install Qt 6.5.1 in your directory of choice and tell the build where to find it. +Install Qt 6.5.3 in your directory of choice and tell the build where to find it. In your favorite Python virtual environment: ``` pip install aqtinstall -aqt install-qt --outputdir ~/Qt linux desktop 6.5.1 -m qtwebsockets qtimageformats +aqt install-qt --outputdir ~/Qt linux desktop 6.5.3 -m qtwebsockets qtimageformats # the next line is needed for CMake -export Qt6_DIR=~/Qt/6.5.1/gcc_64 +export Qt6_DIR=~/Qt/6.5.3/gcc_64 ``` - sudo apt install libtiff-dev diff --git a/agave_app/agaveGui.cpp b/agave_app/agaveGui.cpp index f4ea0d10..15b5041d 100644 --- a/agave_app/agaveGui.cpp +++ b/agave_app/agaveGui.cpp @@ -76,7 +76,13 @@ agaveGui::agaveGui(QWidget* parent) m_appScene.initLights(); - resize(1280, 720); + // find a nice size to init agave + QScreen* screen = QApplication::primaryScreen(); + QRect screenGeometry = screen->geometry(); + int height = screenGeometry.height(); + int width = screenGeometry.width(); + resize(width * 0.8, height * 0.8); + // consider resizeDocks to widen the appearance dock } void