Skip to content

Commit

Permalink
QML Rewrite (#116)
Browse files Browse the repository at this point in the history
* initial qml experiments

Signed-off-by: swurl <[email protected]>

* Tabs!!

Signed-off-by: swurl <[email protected]>

* drag and drop

Signed-off-by: swurl <[email protected]>

* close resize

needs drop event and to not be red all the time

Signed-off-by: swurl <[email protected]>

* fully working drag & drop and mouse resize

Signed-off-by: swurl <[email protected]>

* multi-type widgets

Signed-off-by: swurl <[email protected]>

* remove unneeded stuff

Signed-off-by: swurl <[email protected]>

* NT value list

need to do tree

Signed-off-by: swurl <[email protected]>

* nsis new version

Signed-off-by: swurl <[email protected]>

* buildconfig

Signed-off-by: swurl <[email protected]>

* update qt, nsis 3.09

Signed-off-by: swurl <[email protected]>

* fix qml

Signed-off-by: swurl <[email protected]>

* fix

Signed-off-by: swurl <[email protected]>

* oopsies

Signed-off-by: swurl <[email protected]>

* fix nsis

Signed-off-by: swurl <[email protected]>

* fix all 3 actiosn

Signed-off-by: swurl <[email protected]>

* tree view

Signed-off-by: swurl <[email protected]>

* side menu

Signed-off-by: swurl <[email protected]>

* woohoo

Signed-off-by: swurl <[email protected]>

* working NT value widgets

Signed-off-by: swurl <[email protected]>

* better widget menu, real widget adding

Signed-off-by: swurl <[email protected]>

* all primitives implemented

Signed-off-by: swurl <[email protected]>

* add widget configuration

Signed-off-by: swurl <[email protected]>

* fix win build, macos bundle, title

Signed-off-by: swurl <[email protected]>

* more prim widgets, type switching

Signed-off-by: swurl <[email protected]>

* sendable support & FMSInfo

Signed-off-by: swurl <[email protected]>

* Field2d widget

Signed-off-by: swurl <[email protected]>

* Command & StringChooser

Signed-off-by: swurl <[email protected]>

* Tab Settings

Signed-off-by: swurl <[email protected]>

* bug fixes, save/load

Fixed:
- drag bug with multicell widgets
- Field2d coordinate swaps

Signed-off-by: swurl <[email protected]>

* server settings, fix crash

Signed-off-by: swurl <[email protected]>

* Drag & Drop from the menu

Solution is extremely hacky, but it works, may fix later

Signed-off-by: swurl <[email protected]>

* 6.7.2

Signed-off-by: swurl <[email protected]>

* fix threading crash

Signed-off-by: swurl <[email protected]>

* fix doublespinboxes

Signed-off-by: swurl <[email protected]>

* cameraview widget

Signed-off-by: swurl <[email protected]>

* completely untested CameraView and list. :(

Signed-off-by: swurl <[email protected]>

* camera view & store

need to figure out mjpg

Signed-off-by: swurl <[email protected]>

* color saving & shape for color widget

Signed-off-by: swurl <[email protected]>

* macos latest

Signed-off-by: swurl <[email protected]>

* enum widget

Signed-off-by: swurl <[email protected]>

* load recent

Signed-off-by: swurl <[email protected]>

* backbone for switch topic

Signed-off-by: swurl <[email protected]>

* woopsie daisey

Signed-off-by: swurl <[email protected]>

* cameraview fixes & mirror field2d

Signed-off-by: swurl <[email protected]>

* camera & field fixes

Signed-off-by: swurl <[email protected]>

* add back multimedia to nsis

Signed-off-by: swurl <[email protected]>

* remove dup code, add widget duplication

Signed-off-by: swurl <[email protected]>

* real copy & paste

Signed-off-by: swurl <[email protected]>

* theming improvements

Signed-off-by: swurl <[email protected]>

* light & dark mode

Signed-off-by: swurl <[email protected]>

* fix topic updating, drag bugs

Signed-off-by: swurl <[email protected]>

* title management, cameraview reconnect + resolution

Signed-off-by: swurl <[email protected]>

* add accent color setting

Signed-off-by: swurl <[email protected]>

* Field2d shape/color, finish theming

Signed-off-by: swurl <[email protected]>

* more themes, ctrl+tab shortcuts

Signed-off-by: swurl <[email protected]>

* working CameraView

Signed-off-by: swurl <[email protected]>

---------

Signed-off-by: swurl <[email protected]>
  • Loading branch information
crueter authored Oct 17, 2024
1 parent aea9350 commit b47d8b2
Show file tree
Hide file tree
Showing 504 changed files with 7,111 additions and 21,390 deletions.
55 changes: 28 additions & 27 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,18 +19,21 @@ jobs:

- os: ubuntu-20.04
qt_host: linux
qt_version: '6.6.0'
qt_version: '6.8.0'
qt_modules: 'qtmultimedia qtcharts qtwaylandcompositor'
qt_arch: 'linux_gcc_64'

- os: windows-2022
qt_host: windows
qt_version: '6.6.0'
qt_version: '6.8.0'
qt_modules: 'qtmultimedia qtcharts'
qt_arch: 'win64_msvc2022_64'

- os: macOS-12
- os: macos-latest
qt_host: mac
qt_version: '6.6.0'
qt_version: '6.7.2'
qt_modules: 'qtmultimedia qtcharts'
qt_arch: 'clang_64'

runs-on: ${{ matrix.os }}

Expand Down Expand Up @@ -69,16 +72,18 @@ jobs:
- uses: ilammy/msvc-dev-cmd@v1
if: runner.os == 'Windows'

- uses: repolevedavaj/[email protected].1
- uses: repolevedavaj/[email protected].2
if: runner.os == 'Windows'
with:
nsis-version: 3.08
nsis-version: 3.09

- name: Install Qt
uses: jurplel/[email protected]
with:
version: 6.6.0
version: ${{ matrix.qt_version }}
modules: ${{ matrix.qt_modules }}
arch: ${{ matrix.qt_arch }}
aqtversion: ==3.1.*
cache: true

- name: Set up Python 3.8 (macOS)
Expand Down Expand Up @@ -121,14 +126,6 @@ jobs:
run: |
cmake --build ${{ env.BUILD_DIR }} --parallel $(nproc) --config ${{ inputs.build_type }}
- name: Test
if: inputs.build_type == 'Debug'
working-directory: ${{ env.BUILD_DIR }}/tests
shell: bash
run: |
export QT_QPA_PLATFORM=minimal
ctest --build-config ${{ inputs.build_type }} --verbose
- name: Package (Linux)
if: runner.os == 'Linux'
run: |
Expand All @@ -147,12 +144,13 @@ jobs:
cmake --install ${{ env.BUILD_DIR }} --prefix ${{ env.INSTALL_APPIMAGE_DIR }}/usr
export OUTPUT="QFRCDashboard-${{ runner.os }}-${{ env.VERSION }}-${{ inputs.build_type }}-x86_64.AppImage"
export QML_SOURCES_PATHS="${{ runner.workspace }}/Qt/${{ matrix.qt_version }}/gcc_64/qml:${{ github.workspace }}"
chmod +x linuxdeploy-*.AppImage
mkdir -p ${{ env.INSTALL_APPIMAGE_DIR }}/usr/plugins/iconengines
mkdir -p ${{ env.INSTALL_APPIMAGE_DIR }}/usr/plugins/
cp -r /home/runner/work/QFRCDashboard/Qt/${{ matrix.qt_version }}/gcc_64/plugins/iconengines/* ${{ env.INSTALL_APPIMAGE_DIR }}/usr/plugins/iconengines
cp -r ${{ runner.workspace }}/Qt/${{ matrix.qt_version }}/gcc_64/plugins/ ${{ env.INSTALL_APPIMAGE_DIR }}/usr/
cp /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 ${{ env.INSTALL_APPIMAGE_DIR }}/usr/lib/
cp /usr/lib/x86_64-linux-gnu/libssl.so.1.1 ${{ env.INSTALL_APPIMAGE_DIR }}/usr/lib/
Expand All @@ -162,16 +160,18 @@ jobs:
- name: Package (macOS)
if: runner.os == 'macOS'
run: |
export PATH="$PATH;${{ runner.workspace }}/Qt/6.6.0/*/bin"
export PATH="$PATH;${{ runner.workspace }}/Qt/${{ matrix.qt_version }}/*/bin"
export QML_DIR_PATH="${{ github.workspace }}"
export QML_SOURCES_PATHS="${{ runner.workspace }}/Qt/${{ matrix.qt_version }}/macos/qml"
cd ${{ env.BUILD_DIR }}
macdeployqt QFRCDashboard.app
macdeployqt Dashboard.app -qmldir=$QML_DIR_PATH -qmlimport=$QML_SOURCES_PATHS
ls
sudo codesign --sign - --deep --force --entitlements ../program_info/App.entitlements --options runtime QFRCDashboard.app/Contents/MacOS/QFRCDashboard
chmod a+x QFRCDashboard.app/Contents/MacOS/QFRCDashboard
cp ../program_info/QFRCDashboard.icns QFRCDashboard.app/Contents/Resources
tar czf ../QFRCDashboard.tar.gz QFRCDashboard.app
sudo codesign --sign - --deep --force --entitlements ../program_info/App.entitlements --options runtime Dashboard.app/Contents/MacOS/Dashboard
chmod a+x Dashboard.app/Contents/MacOS/Dashboard
cp ../program_info/QFRCDashboard.icns Dashboard.app/Contents/Resources
tar czf ../QFRCDashboard.tar.gz Dashboard.app
- name: Package (Windows, Portable)
if: runner.os == 'Windows'
Expand All @@ -181,10 +181,11 @@ jobs:
cmake --install ${{ env.BUILD_DIR }}\_deps\protobuf-build --prefix ${{ env.PROTOBUF_INSTALL_DIR }}
mkdir ${{ env.INSTALL_DIR }}
set PATH=%PATH%;"${{ runner.workspace }}\Qt\6.6.0\msvc2019_64\bin"
set PATH=%PATH%;"${{ runner.workspace }}\Qt\${{ matrix.qt_version }}\${{ matrix.qt_arch }}\bin"
windeployqt ${{ env.BUILD_DIR }}\QFRCDashboard.exe --dir ${{ env.INSTALL_DIR }}
cp ${{ env.BUILD_DIR }}\QFRCDashboard.exe ${{ env.INSTALL_DIR }}
windeployqt ${{ env.BUILD_DIR }}\Dashboard.exe --dir ${{ env.INSTALL_DIR }} --qmldir ${{ github.workspace }} --qmlimport %QML2_IMPORT_PATH%
cp ${{ env.BUILD_DIR }}\Dashboard.exe ${{ env.INSTALL_DIR }}
cp -r ${{ runner.workspace }}\Qt\${{ matrix.qt_version }}\msvc2022_64\qml ${{ env.INSTALL_DIR }}
if "${{ inputs.build_type }}" == "Debug" (
cp C:\Windows\System32\ucrtbased.dll ${{ env.INSTALL_DIR }}
Expand Down Expand Up @@ -242,4 +243,4 @@ jobs:
uses: actions/upload-artifact@v3
with:
name: QFRCDashboard-${{ runner.os }}-Setup-${{ env.VERSION }}-${{ inputs.build_type }}
path: QFRCDashboard-Setup.exe
path: Dashboard-Setup.exe
Loading

0 comments on commit b47d8b2

Please sign in to comment.