Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
8251040
Improve lifetime tracking over messages
kunitoki Jun 6, 2025
c37e622
Code formatting
yup-bot Jun 6, 2025
7df72f2
Fix component bail outs
kunitoki Jun 6, 2025
f4979c5
More work on popup menus
kunitoki Jun 6, 2025
9dae7da
Code formatting
yup-bot Jun 6, 2025
818cd3a
Improvements to native component tracking
kunitoki Jun 8, 2025
0ff4e7e
Code formatting
yup-bot Jun 8, 2025
bdfbe38
More tweaks
kunitoki Jun 8, 2025
dc696a6
Merge branch 'main' into dev/popup_menu
kunitoki Jun 13, 2025
5117eff
Code formatting
yup-bot Jun 13, 2025
7e0900c
More popup work
kunitoki Jun 13, 2025
7a16bde
Code formatting
yup-bot Jun 13, 2025
6c39595
Coverage updates
kunitoki Jun 13, 2025
6c9602c
Moved menu
kunitoki Jun 13, 2025
2c6f49c
Improved Path handling
kunitoki Jun 13, 2025
6f6ea70
Code formatting
yup-bot Jun 13, 2025
87e013c
Merge branch 'main' into dev/popup_menu
kunitoki Jun 18, 2025
ba50bda
Merge branch 'main' into dev/popup_menu
kunitoki Jun 20, 2025
644a54b
Merge branch 'main' into dev/popup_menu
kunitoki Jun 20, 2025
1add1f3
Fix issues
kunitoki Jun 20, 2025
c339ef8
More tweaks to opengl
kunitoki Jun 21, 2025
302010d
Fixes
kunitoki Jun 21, 2025
51f3495
Code formatting
yup-bot Jun 21, 2025
a5d78f0
Merge branch 'main' into dev/popup_menu
kunitoki Jun 22, 2025
6d64f07
Merge branch 'dev/popup_menu' into dev/opengl_improvements
kunitoki Jun 22, 2025
cfe7ed0
More tweaks
kunitoki Jun 22, 2025
ae4cc65
More tweaks
kunitoki Jun 22, 2025
9ba588b
Code formatting
yup-bot Jun 22, 2025
0824f9d
More fixes
kunitoki Jun 23, 2025
8996144
Code formatting
yup-bot Jun 23, 2025
a3463f6
Fixes
kunitoki Jun 23, 2025
349087d
Merge branch 'dev/popup_menu' into dev/opengl_improvements
kunitoki Jun 23, 2025
691ceaa
More fixes
kunitoki Jun 23, 2025
30f9c76
Tweaks
kunitoki Jun 23, 2025
3045af7
Improve code coverage
kunitoki Jun 23, 2025
7defb7b
Shutdown
kunitoki Jun 25, 2025
886f1cf
More tweaks
kunitoki Jun 25, 2025
1b804b2
More popup menu work
kunitoki Jun 25, 2025
c7dc3d8
Code formatting
yup-bot Jun 25, 2025
e5c8733
Improvements
kunitoki Jun 25, 2025
03e135f
Code formatting
yup-bot Jun 25, 2025
ab1e47a
More tweaks
kunitoki Jun 25, 2025
2182c78
More tweaks
kunitoki Jun 25, 2025
8c5e09c
More tweaks
kunitoki Jun 25, 2025
2fd15a2
More work
kunitoki Jun 26, 2025
1616bf6
More work
kunitoki Jun 26, 2025
492d3fb
More work
kunitoki Jun 26, 2025
065da80
Code formatting
yup-bot Jun 26, 2025
d087d55
Combo Box and Other Widgets (#62)
kunitoki Jun 30, 2025
aa846b2
Fix PopupMenu behaviour
kunitoki Jun 30, 2025
f2bc4e3
More tweaks
kunitoki Jun 30, 2025
bf17dad
More tweaks
kunitoki Jun 30, 2025
e7f3d03
Code formatting
yup-bot Jun 30, 2025
90f6bdc
More working stuff
kunitoki Jul 1, 2025
a004902
Code formatting
yup-bot Jul 1, 2025
522c808
More tweaks
kunitoki Jul 1, 2025
6a7b5e8
Improve font standardisation
kunitoki Jul 1, 2025
5328b43
Code formatting
yup-bot Jul 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 0 additions & 30 deletions .github/workflows/build_android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -119,33 +119,3 @@ jobs:
run: ./gradlew assembleDebug
- working-directory: ${{ runner.workspace }}/build/examples/graphics
run: ./gradlew assemble

build_render:
runs-on: ubuntu-latest
needs: [configure]
steps:
- uses: actions/checkout@v4
- uses: seanmiddleditch/gha-setup-ninja@master
- name: Setup Java
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: 17
- name: Setup Android SDK
uses: android-actions/setup-android@v2.0.10
- name: Setup Android NDK
uses: nttld/setup-ndk@v1
with:
ndk-version: r26d
- uses: actions/cache/restore@v4
id: cache-restore
with:
path: ${{ runner.workspace }}/build
key: android-build-${{ github.sha }}
- name: Configure If Cache Missed
if: steps.cache-restore.outputs.cache-hit != 'true'
run: cmake ${{ github.workspace }} -G "Ninja Multi-Config" -B ${{ runner.workspace }}/build -DYUP_TARGET_ANDROID=ON -DYUP_ENABLE_EXAMPLES=ON
- working-directory: ${{ runner.workspace }}/build/examples/render
run: ./gradlew assembleDebug
- working-directory: ${{ runner.workspace }}/build/examples/render
run: ./gradlew assemble
19 changes: 0 additions & 19 deletions .github/workflows/build_ios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -107,22 +107,3 @@ jobs:
-DPLATFORM=${{ env.IOS_PLATFORM }} -B ${{ runner.workspace }}/build -DYUP_ENABLE_EXAMPLES=ON
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target example_graphics
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target example_graphics

build_render:
runs-on: macos-latest
needs: [configure]
steps:
- uses: actions/checkout@v4
- uses: seanmiddleditch/gha-setup-ninja@master
- uses: actions/cache/restore@v4
id: cache-restore
with:
path: ${{ runner.workspace }}/build
key: ios-build-${{ github.sha }}
- name: Configure If Cache Missed
if: steps.cache-restore.outputs.cache-hit != 'true'
run: |
cmake ${{ github.workspace }} -G "Ninja Multi-Config" -DCMAKE_TOOLCHAIN_FILE=cmake/toolchains/ios.cmake \
-DPLATFORM=${{ env.IOS_PLATFORM }} -B ${{ runner.workspace }}/build -DYUP_ENABLE_EXAMPLES=ON
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target example_render
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target example_render
18 changes: 0 additions & 18 deletions .github/workflows/build_linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -131,24 +131,6 @@ jobs:
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target example_graphics
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target example_graphics

build_render:
runs-on: ubuntu-latest
needs: [configure]
steps:
- uses: actions/checkout@v4
- uses: seanmiddleditch/gha-setup-ninja@master
- run: sudo apt-get update && sudo apt-get install -y ${INSTALL_DEPS}
- uses: actions/cache/restore@v4
id: cache-restore
with:
path: ${{ runner.workspace }}/build
key: linux-build-${{ github.sha }}
- name: Configure If Cache Missed
if: steps.cache-restore.outputs.cache-hit != 'true'
run: cmake ${{ github.workspace }} -G "Ninja Multi-Config" -B ${{ runner.workspace }}/build -DYUP_ENABLE_EXAMPLES=ON
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target example_render
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target example_render

build_plugin:
runs-on: ubuntu-latest
needs: [configure]
Expand Down
21 changes: 2 additions & 19 deletions .github/workflows/build_macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,10 +65,10 @@ jobs:
run: cmake ${{ github.workspace }} -G "Ninja Multi-Config" -B ${{ runner.workspace }}/build -DYUP_ENABLE_TESTS=ON
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target yup_tests
- working-directory: ${{ runner.workspace }}/build/tests/Debug
run: ./yup_tests
run: ./yup_tests.app/Contents/MacOS/yup_tests
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target yup_tests
- working-directory: ${{ runner.workspace }}/build/tests/Release
run: ./yup_tests
run: ./yup_tests.app/Contents/MacOS/yup_tests

build_console:
runs-on: macos-latest
Expand Down Expand Up @@ -121,23 +121,6 @@ jobs:
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target example_graphics
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target example_graphics

build_render:
runs-on: macos-latest
needs: [configure]
steps:
- uses: actions/checkout@v4
- uses: seanmiddleditch/gha-setup-ninja@master
- uses: actions/cache/restore@v4
id: cache-restore
with:
path: ${{ runner.workspace }}/build
key: macos-build-${{ github.sha }}
- name: Configure If Cache Missed
if: steps.cache-restore.outputs.cache-hit != 'true'
run: cmake ${{ github.workspace }} -G "Ninja Multi-Config" -B ${{ runner.workspace }}/build -DYUP_ENABLE_EXAMPLES=ON
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target example_render
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target example_render

build_plugins:
runs-on: macos-latest
needs: [configure]
Expand Down
16 changes: 0 additions & 16 deletions .github/workflows/build_wasm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -99,19 +99,3 @@ jobs:
run: emcmake cmake ${{ github.workspace }} -G "Ninja Multi-Config" -B ${{ runner.workspace }}/build -DYUP_ENABLE_TESTS=ON -DYUP_ENABLE_EXAMPLES=ON
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target example_graphics
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target example_graphics

build_render:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: seanmiddleditch/gha-setup-ninja@master
- run: sudo apt-get update && sudo apt-get install -y ${INSTALL_DEPS}
- name: Setup emsdk
uses: mymindstorm/setup-emsdk@v14
with:
version: ${{ env.EM_VERSION }}
actions-cache-folder: ${{ env.EM_CACHE_FOLDER }}
- name: Configure
run: emcmake cmake ${{ github.workspace }} -G "Ninja Multi-Config" -B ${{ runner.workspace }}/build -DYUP_ENABLE_TESTS=ON -DYUP_ENABLE_EXAMPLES=ON
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target example_render
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target example_render
8 changes: 0 additions & 8 deletions .github/workflows/build_windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,14 +62,6 @@ jobs:
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target example_graphics
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target example_graphics

build_render:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- run: cmake ${{ github.workspace }} -B ${{ runner.workspace }}/build -DYUP_ENABLE_EXAMPLES=ON
- run: cmake --build ${{ runner.workspace }}/build --config Debug --parallel 4 --target example_render
- run: cmake --build ${{ runner.workspace }}/build --config Release --parallel 4 --target example_render

build_plugin:
runs-on: windows-latest
steps:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ env:
libasound2-dev libjack-jackd2-dev ladspa-sdk libcurl4-openssl-dev libfreetype6-dev
libx11-dev libxcomposite-dev libxcursor-dev libxcursor-dev libxext-dev libxi-dev libxinerama-dev
libxrandr-dev libxrender-dev libglu1-mesa-dev libegl1-mesa-dev mesa-common-dev lcov
IGNORE_ERRORS: "mismatch,gcov,source,negative,unused,empty"

jobs:
coverage:
Expand Down
1 change: 0 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,6 @@ if (YUP_BUILD_EXAMPLES)
add_subdirectory (examples/console)
add_subdirectory (examples/app)
add_subdirectory (examples/graphics)
add_subdirectory (examples/render)
if (YUP_PLATFORM_DESKTOP)
add_subdirectory (examples/plugin)
endif()
Expand Down
66 changes: 56 additions & 10 deletions codecov.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ coverage:
status:
project:
default:
informational: true
target: 70%
threshold: 5%
base: auto
Expand All @@ -22,9 +23,61 @@ coverage:
- yup_gui
patch:
default:
informational: true
target: 70%
threshold: 5%

component_management:
default_rules:
statuses:
- type: project
target: auto
branches:
- "!main"

individual_components:
- component_id: yup_core
name: "YUP Core"
description: "Core functionality of the YUP framework."
paths:
- modules/yup_core/**

- component_id: yup_events
name: "YUP Events"
description: "Event handling system for the YUP framework."
paths:
- modules/yup_events/**

- component_id: yup_audio_basics
name: "YUP Audio Basics"
description: "Basic audio functionalities in the YUP framework."
paths:
- modules/yup_audio_basics/**

- component_id: yup_audio_devices
name: "YUP Audio Devices"
description: "Audio device management in the YUP framework."
paths:
- modules/yup_audio_devices/**

- component_id: yup_audio_processors
name: "YUP Audio Processors"
description: "Audio processing capabilities in the YUP framework."
paths:
- modules/yup_audio_processors/**

- component_id: yup_graphics
name: "YUP Graphics"
description: "Graphics rendering and management in the YUP framework."
paths:
- modules/yup_graphics/**

- component_id: yup_gui
name: "YUP GUI"
description: "Graphical User Interface components of the YUP framework."
paths:
- modules/yup_gui/**

flags:
yup_core:
paths:
Expand Down Expand Up @@ -63,16 +116,9 @@ ignore:
- "cmake/**/*"
- "docs/**/*"
- "standalone/**/*"
- "**/*.mm"
- "**/*_android.*"
- "**/*_windows.*"
- "**/*_ios.*"
- "**/*_mac.*"
- "**/*_apple.*"
- "**/*_emscripten.*"
- "**/*_wasm.*"
- "modules/*/native/**/*"

comment:
layout: "reach,diff,flags,files,footer"
layout: "header, reach, components, diff, flags, files, footer"
behavior: default
require_changes: false
require_changes: false
4 changes: 2 additions & 2 deletions examples/app/source/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,12 @@ class Application : public yup::YUPApplication
public:
Application() = default;

const yup::String getApplicationName() override
yup::String getApplicationName() override
{
return "yup app!";
}

const yup::String getApplicationVersion() override
yup::String getApplicationVersion() override
{
return "1.0";
}
Expand Down
32 changes: 21 additions & 11 deletions examples/graphics/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,23 +25,26 @@ set (target_version "1.0.0")

project (${target_name} VERSION ${target_version})

set (rive_file "data/alien.riv")

# ==== Prepare Android build
set (link_libraries "")
if (ANDROID)
include (../../cmake/yup.cmake)
_yup_setup_platform()
_yup_add_default_modules ("${CMAKE_CURRENT_LIST_DIR}/../..")

#yup_add_embedded_binary_resources (
# "${target_name}_binary_data"
# OUT_DIR BinaryData
# HEADER BinaryData.h
# NAMESPACE yup
# RESOURCE_NAMES
# RobotoFont
# RESOURCES
# "${CMAKE_CURRENT_LIST_DIR}/data/RobotoFlex-VariableFont.ttf")
#set (link_libraries "${target_name}_binary_data")
yup_add_embedded_binary_resources (
"${target_name}_binary_data"
OUT_DIR BinaryData
HEADER BinaryData.h
NAMESPACE yup
RESOURCE_NAMES
RiveFile
RESOURCES
"${CMAKE_CURRENT_LIST_DIR}/${rive_file}")

set (link_libraries "${target_name}_binary_data")
endif()

# ==== Prepare target
Expand All @@ -51,13 +54,20 @@ yup_standalone_app (
TARGET_IDE_GROUP "Examples"
TARGET_APP_ID "org.yup.${target_name}"
TARGET_APP_NAMESPACE "org.yup"
DEFINITIONS
YUP_EXAMPLE_GRAPHICS_RIVE_FILE="${rive_file}"
PRELOAD_FILES
"${CMAKE_CURRENT_LIST_DIR}/data/RobotoFlex-VariableFont.ttf@data/RobotoFlex-VariableFont.ttf"
"${CMAKE_CURRENT_LIST_DIR}/${rive_file}@${rive_file}"
MODULES
yup::yup_core
yup::yup_audio_basics
yup::yup_audio_devices
yup::yup_events
yup::yup_graphics
yup::yup_gui
yup::yup_audio_processors
libpng
libwebp
${link_libraries})

# ==== Prepare sources
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading